Chat recording
100ms can record chat messages sent in a room when a video recording is used. Chat messages that are broadcasted to the room or sent to a role are recorded (direct messages are not recorded).
Chat recording generates a .csv
file, which will be uploaded to the storage bucket configured for your video recordings.
File structure
The file header will be: SenderPeerID,SenderName,SenderUserID,Roles,SentAt,Type,Message
Header information
Header | Description |
---|---|
SenderPeerID | Sender's peer id |
SenderName | Sender's name |
SenderUserID | Sender's user id |
Roles | Roles to which the message is sent; [] in case of all roles |
SentAt | SentAt in RFC.3339 format |
Type | Message type - chat |
Message | Message that was sent |
Fetch chat recording
On the 100ms Dashboard
You can access your chat recordings on the sessions page in the 100ms Dashboard.
With the REST API
Recordings generate recording assets that can be fetched with the REST API.
With webhooks
100ms can send webhooks when the recording has stopped and is available for download. The recording path is available in following webhook responses:
- Browser Recording: beam.recording.success (attribute:
chat_recording_path
;chat_recording_presigned_url
) - SFU Recording: recording.success (attribute:
chat_recording_path
;chat_recording_presigned_url
) - Multiresolution Recording: hls.recording.success (attribute:
chat_recording_path
;chat_recording_presigned_url
)
Path structure
The recording path will look like:
s3://<location>/<prefix>/chat/<room_id>/<start_date>/Rec-<room_id>-<epoch>.csv
The breakdown of the aforementioned tags is as follows:
Tag Name | Description |
---|---|
Location | Name of the bucket where recordings are stored |
Prefix | Prefix for upload path which is configured in storage settings of your template. If not configured, the default value for this will be your Customer ID |
Room ID | The identifier for the room which was recorded |
Start Date | Start date of the session |
Epoch | Start time of the recorder in the session |