Link Search Menu Expand Document

Выгрузка видеозаписи и аналитики проведенного вебинара\конференции

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 для получения аналитики.