Выгрузка видеозаписи и аналитики проведенного вебинара\конференции
API позволяет выгружать запись проведенного вебинара или конференции и аналитический отчет по вебинару\конференции в формате JSON или XLSX.
Выгрузка видео с записью вебинара\конференции
Метод RedirectToDownloadRoomRecord
позволяет получить ссылку на загрузку видео с проведенным вебинаром или конференцией. Ссылка будет действительна в течении 24 часов.
В строке запроса RedirectToDownloadRoomRecord
обязательно передаются идентификаторы группы, комнаты и записи - параметры spaceId
, roomId
и recordId
. Идентификаторы группы и комнаты для заданной вебинарной комнаты должны быть известны (см. раздел Создание групп и комнат). А получить идентификатор записи можно двумя способами: с помощью вебхуков или с помощью специального метода (см. описание обоих способов ниже).
Полная спецификация метода приведена в Swagger.
Пример выполнения запроса RedirectToDownloadRoomRecord
GET https://moodhood-api.livedigital.space/v1/spaces/{spaceId}/rooms/{roomId}/records/download/{recordId}
В результате выполнения запроса возвращается текстовая строка, содержащая URL записи, вида https://some.url/record.mp4.
Как получить идентификатор записи вебинара\конференции
Как было сказано выше, идентификатор записи можно получить, если настроен механизм отправки обратных запросов (вебхуков) с уведомлением о наступлении в системе определенного события (см. Отслеживание событий в группе. Так для событий record_finished
или record started
в теле обратного запроса возвращается идентификатор законченной или начатой видеозаписи (recordId
).
Пример обратного запроса для отслеживания события record_finished
:
{
"signature": "ae6edba49d063002f2957d94e47f5ff5de3dda0a5c1ce98848d15c777b9df7ce",
"body": {
"eventName": "record_finished",
"roomId": "649c18e086b915cae33041a2",
"spaceId": "64217150224cd9e040e114d1",
"recordId": "64b6544f7b3b4f29d70afec2"
}
}
В теле обратного запроса передается значение recordId
, которое и нужно использовать в качестве идентификатора записи в строке запроса RedirectToDownloadRoomRecord
.
Если вебхуки для отслеживания событий не настроены, то можно использовать метод GetRecords
для получения списка идентификаторов всех записей. После чего выбрать нужный идентификатор и использовать его в методе RedirectToDownloadRoomRecord
.
В строке запроса для метода GetRecords
передаются обязательные параметры spaceId
и roomId
- идентификаторы группы и комнаты, записи для которых нужно получить, а также дополнительные параметры для фильтрации записей, например, dateFrom
и dateTo
- ограничения по датам начала и конца периода, за который нужны записи. Полная спецификация метода приведена в Swagger.
Пример выполнения запроса GetRecords
GET https://moodhood-api.livedigital.space/v1/spaces/{spaceId}/rooms/{roomId}/records
В результате выполнения запроса возвращается JSON, содержащий список items
, где каждый элемент списка это объект типа RoomRecord
, а поле id
этого объекта это идентификатор записи.
{
"items": [
{
"id": "60d55c0eb9ef88ab17b0aabb",
"name": "string",
"fileSize": 0,
"roomId": "60d55c0eb9ef88ab17b0aabb",
"spaceId": "60d55c0eb9ef88ab17b0aabb",
"callId": "60d55c0eb9ef88ab17b0aabb",
"state": "new",
"createdAt": "2023-08-08T07:05:59.369Z",
"startedAt": "2023-08-08T07:05:59.369Z",
"finishedAt": "2023-08-08T07:05:59.369Z"
}
],
"total": 0
}
Для каждой записи также возвращаются различные параметры, например, callId
- идентификатор события, startedAt
, finishedAt
- время начала и конца записи; по которым можно идентифицировать нужную запись.
Значение id
для нужной записи необходимо передать в качестве параметра recordId
в вызове метода RedirectToDownloadRoomRecord
для получения ссылки на запись.
Примечание! Помимо получения списка записей и загрузки записи с видео API позволяет проводить другие операции с видео, например, стартовать и останавливать запись для комнаты, удалять видеозаписи и др. Полный набор методов для работы с видео можно посмотреть в Swagger.
Выгрузка аналитики по проведенному вебинару или конференции
Для выгрузки аналитики по вебинару\конференции используется метод getRoomAnalyticsReport
, который возвращает данные аналитики в формате JSON или XLSX. В параметрах метода указывается идентификатор вызова callId
, который можно получить с помощью метода analyticsCalls
. В отличие от записи видео идентификатор callId
для аналитики нельзя получить с помощью вебхука для события call_finished
. Но обратный вызов для этого события означает формирование аналитики после мероприятия (т.е. нет смысла запрашивать аналитику, пока не получено уведомление о событии call_finished
).
В строке запроса getRoomAnalyticsReport
как часть URL обязательно передается идентификатор группы spaceId
, а также в качестве обязательных параметров запроса передается идентификатор комнаты и идентификатор вызова - параметры roomId
и callId
. Также указывается параметр format
, который определяет формат выгрузки отчета и может принимать значение xlsx
или json
.
Идентификаторы группы и комнаты для заданной вебинарной комнаты должны быть известны (см. раздел Создание групп и комнат). А получить идентификатор вызова callId
можно с помощью метода analyticsCalls
(см. описание ниже).
Полная спецификация метода getRoomAnalyticsReport
приведена в Swagger.
Пример выполнения запроса getRoomAnalyticsReport
:
GET https://moodhood-api.livedigital.space/v1/spaces/60d55c0eb9ef88ab17b0aabb/analytics/report?roomId=60d55c0eb9ef88ab17b0aabb&callId=60d55c0eb9ef88ab17b0aabb&format=xlsx
В результате выполнения запроса возвращается аналитика по событию в формате JSON или XLSX.
Для получения callId
нужно использовать метод analyticsCalls
. В строке запроса как часть URL обязательно передается идентификатор группы spaceId
, а также в качестве обязательных параметров запроса передается идентификатор комнаты и дата, за которую надо получить аналитику - параметры roomId
и date
. Дополнительно можно указать, например, фильтр по минимальному количеству участников события.
Полная спецификация метода приведена в Swagger.
Пример выполнения запроса analyticsCalls
:
GET https://moodhood-api.livedigital.space/v1/spaces/60d55c0eb9ef88ab17b0aabb/analytics/calls?roomId=60d55c0eb9ef88ab17b0aabb&date=2023-08-01T12%3A25%3A40.253Z
В результате выполнения запроса возвращается JSON со списком завершенных вызовов за указанную дату.
{
"items": [
{
"id": "60d55c0eb9ef88ab17b0aabb",
"active": true,
"roomId": "60d55c0eb9ef88ab17b0aabb",
"participantsCount": 0,
"isBreakoutRoom": true,
"planAlias": "string",
"roomType": "lesson",
"totalParticipantsCount": 0,
"uniqueParticipantsCount": 0,
"startedAt": "2023-08-12T12:26:51.553Z",
"finishedAt": "2023-08-12T12:26:51.553Z"
}
]
}
Значение id
- это и есть идентификатор вызова, который необходимо передать в качестве параметра callId
в методе getRoomAnalyticsReport
для получения аналитики.