Text Chat Component
The Text Chat component enables real-time text messaging between participants during experiments. It uses LiveKit's data channels for reliable, low-latency communication.
Key Features
- Real-time text messaging
- Message history persistence
- Configurable position on screen
- Message deletion (optional)
- Read-only observer mode
- Automatic participant identification
- Timestamps on messages
When to Use
Use the Text Chat component when you need to:
- Enable text-based communication between participants
- Allow collaboration without audio/video
- Supplement video chat with text
- Record written discussions for analysis
- Provide an accessible communication option
Configuration
Basic Settings
| Setting | Description | Default |
|---|---|---|
| Position | Screen position of chat panel | bottom-right |
| Allow Sending Messages | Whether participants can send | true |
| Allow Message Deletion | Whether senders can delete their messages | true |
Position Options
| Position | Description |
|---|---|
top-left | Upper left corner |
top-right | Upper right corner |
bottom-left | Lower left corner |
bottom-right | Lower right corner |
Appearance
| Setting | Description | Default |
|---|---|---|
| Width | Chat panel width | 300px |
| Height | Chat panel height | 400px |
| Minimizable | Allow collapsing the panel | true |
| Show Timestamps | Display message times | true |
Examples
Default Chat
Read-Only Mode
For observers who can see but not participate.
Different Positions
Position the chat where it won't interfere with main content.
As a Global Component
Text Chat is a global component that persists across experiment states:
- Enable in the Global Components tab
- Configure position and settings
- Set visibility per state using the matrix view
This allows chat to remain active while participants complete different tasks.
Message Persistence
Chat messages are:
- Stored for the duration of the experiment session
- Available for data export after the experiment
- Associated with participant IDs and timestamps
Data Collection
Text Chat stores all messages:
{
"messages": [
{
"id": "msg_1234",
"senderId": "participant_1",
"senderName": "Participant A",
"content": "Hello, can you see this?",
"timestamp": 1621453287000,
"deleted": false
},
{
"id": "msg_1235",
"senderId": "participant_2",
"senderName": "Participant B",
"content": "Yes, I can see it!",
"timestamp": 1621453290000,
"deleted": false
}
]
}
Best Practices
- Clear Purpose: Explain to participants when and how to use chat
- Position Wisely: Place chat where it won't obscure important content
- Monitor Usage: Review chat logs for research-relevant content
- Set Expectations: Let participants know messages are recorded
- Consider Accessibility: Text chat helps participants who can't use audio
Text Chat vs Video Chat
| Feature | Text Chat | Video Chat |
|---|---|---|
| Communication | Written messages | Audio/video |
| Bandwidth | Very low | Higher |
| Permanence | Messages saved | Real-time only |
| Accessibility | Easy to review | Harder to transcribe |
| Privacy | More anonymous | Face visible |
Many experiments use both together for flexible communication.
Common Use Cases
Collaborative Tasks
Enable participants to coordinate on shared tasks.
Discussion Experiments
Study how participants communicate about topics.
Supplemental Communication
Backup channel when video chat isn't suitable.
Observer Mode
Let researchers monitor without interfering.
Related Components
- Video Chat - For audio/video communication
- Waiting - For synchronization between participants