← Cloudflare Realtime / realtime / realtimekit / recording-guide
Отслеживание статуса записи
Состояния записи
Запись встречи может находиться в одном из следующих состояний:
| Название | Описание |
|---|---|
| INVOKED | Backend-серверы RealtimeKit получили запрос на запись, и мастер ищет свободный воркер, чтобы назначить ему задачу записи. |
| ЗАПИСЬ | Встреча в данный момент записывается воркером; учтите, что это также справедливо, если встреча транслируется в прямом эфире. |
| ЗАГРУЗКА | Запись остановлена, и файл загружается в облачное хранилище. Если вы не указали данные хранилища, файлы будут загружены только на сервер RealtimeKit. Любая ссылка RTMP и ссылка для прямой трансляции также прекратят работу на этом этапе. |
| ЗАГРУЖЕНО | Загрузка файла записи завершена, и также срабатывает вебхук статуса. |
| ERRORED | Во время записи встречи произошла неустранимая ошибка, поэтому файл будет недоступен. |
Получение состояния
Есть два способа отслеживать состояние записи или просматривать более подробные сведения о записи:
С помощью recording.statusUpdate вебхук
RealtimeKit отправляет recording.statusUpdate вебхук при переходе записи между состояниями в течение её жизненного цикла. Добавьте recording.statusUpdate к URL вашего вебхука events массив для получения этих уведомлений.
curl --request POST "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/realtime/kit/$APP_ID/webhooks" \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--header "Content-Type: application/json" \
--data '{
"name": "Recording status webhook",
"url": "https://example.com/webhook",
"events": ["recording.statusUpdate"],
"enabled": true
}'Payload вебхука включает текущий статус записи, метаданные записи и связанные сведения о встрече. Когда статус UPLOADED, payload может включать downloadUrl, audioDownloadUrl, а также downloadUrlExpiry поля для доступа к загруженным файлам.
Подробнее о настройке, проверке подписи, поведении при повторных попытках и полном примере полезной нагрузки см. в Вебхуки RealtimeKit.
Опрос HTTP API
Как вариант, можно также использовать следующие API:
- Список записей: Этот эндпойнт возвращает все прошлые и текущие записи, связанные со встречей.
- Получение активной записи: Этот эндпоинт возвращает все текущие записи встречи.
- Получение сведений о записи: Этот эндпоинт получает определенную запись по ID записи.