Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs(recordings): update for auto-start and new names #1633

Merged
merged 19 commits into from
Aug 7, 2023
1 change: 1 addition & 0 deletions .github/styles/Vocab/HMSVocab/accept.txt
Original file line number Diff line number Diff line change
Expand Up @@ -139,3 +139,4 @@ presign_duration
single_file_per_layer
asset_types
audio_only
hls
4 changes: 0 additions & 4 deletions common/faq.md
Original file line number Diff line number Diff line change
Expand Up @@ -176,10 +176,6 @@ You can continue using the existing routes (room_id/role) or set up your own rou

## Recording

#### What is the difference between the Beam recording vs. SFU recording?

Beam recording is the browser recording, built to give users a participant-first recording experience. SFU recording is a composite recording which gets created after recording each of the individual peers and merging it. Please check this [guide](/javascript/v2/foundation/recordings) for more information.

#### After a live stream ends, how long does it take (for both Beam recording and SFU) to show up in our s3 bucket?

Beam recording should be available within 15-20 minutes after the call ends. SFU recording will take ~1.5 times the call duration, after the call ends. For example, if the call duration is 30 minutes, then SFU recording will be available in 45 minutes.
Expand Down
198 changes: 0 additions & 198 deletions common/recordings.md

This file was deleted.

8 changes: 0 additions & 8 deletions docs/get-started/v2/get-started/features/recordings.mdx

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
---
title: Chat recording
nav: 3.12
---

100ms can record chat messages sent in a room when a [video recording](./overview) 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](./storage) 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](https://dashboard.100ms.live/sessions) in the 100ms Dashboard.

![Recording Links](/docs/v2/recording-links-session.png)

### With the REST API

Recordings generate [recording assets](/server-side/v2/api-reference/recording-assets/overview) 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](/server-side/v2/introduction/webhook#beamrecordingsuccess) (attribute: `chat_recording_path` ; `chat_recording_presigned_url`)
- SFU Recording: [recording.success](/server-side/v2/introduction/webhook#sfu-recording-events) (attribute: `chat_recording_path` ; `chat_recording_presigned_url`)
- Multiresolution Recording: [hls.recording.success](/server-side/v2/introduction/webhook#hlsrecordingsuccess) (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 |
27 changes: 27 additions & 0 deletions docs/get-started/v2/get-started/features/recordings/migrating.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
---
title: Migrating from SFU recording
nav: 3.14
---

There are 2 methods to get composite recordings in 100ms. If you have been using "SFU recording", we recommend you move over to using "Room composite recordings".

### Quick comparison

| Features | Composite recordings | SFU recording (legacy) |
| ----------------------- | -------------- | --------------------- |
| Asset type generated | room-composite | room-composite-legacy |
| Recording method | Browser | SFU |
| Composition quality | Higher | Lower |
| Portrait/landscape mode | Available | Not available |
| Start method | Auto-start and on-demand | Auto start only |
| UI customization | Available | Not available |
| Role-specific recording | Available | Not available |
| Resolution | Customizable up to 1080p | 720p |

### How-to migrate

Migrating to room composite recordings is just a few toggles of work on the 100ms Dashboard.

![Quick migration](/docs/v2/sfu-migration.png)

Go through our [recordings overview](./overview) to learn more.
Loading
Loading