Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

REST-метод

Пример тела REST-запроса

Пример тела REST-ответа

Статусы ответа

Описание

/multipleRecorder/startup


Code Block
languagejs
themeRDark
{
 "nameuri": "test_multi-recorder://test-record"
}

409 - Conflict

500 - Internal error


Запустить рекордер для записи нескольких потоков

/multipleRecorder/add
Code Block
languagejs
themeRDark
{
 "nameuri": "test_multi-recorder://test-record",
 "mediaSessionId": "866a9910-fbfe-11eb-aae4-6f99b0c80a3a"
}

404 - Not found

409 - Conflict

500 - Internal error

Добавить в рекордер поток из указанной медиасессии
/multipleRecorder/find_all
Code Block
languagejs
themeRDark
[
  {
    "mediaSessionsId": [
      "866a9910-fbfe-11eb-aae4-6f99b0c80a3a",
      "9f1e2530-fbfe-11eb-9ec1-77172ac14d86",
      "a970d0a0-fbfe-11eb-8fcc-912807bab442"
    ],
    "uri": "multi-recorder://test-record",
    "fileName": "stream_multiRecordedmulti-recorder___test-record.mp4"
  }
]

404 - Not found

500 - Internal error

Найти все рекордеры
/multipleRecorder/remove
Code Block
languagejs
themeRDark
{
 "nameuri": "test_multi-recorder://test-record",
 "mediaSessionId": "866a9910-fbfe-11eb-aae4-6f99b0c80a3a"
}

404 - Not found

500 - Internal error

Удалить поток из рекордера
/multipleRecorder/terminate
Code Block
languagejs
themeRDark
{
 "nameuri": "test_multi-recorder://test-record"
}

404 - Not found

500 - Internal error

Остановить рекордер

...

Имя параметра

Описание

Пример

nameuriИмя URI рекордераtest_multi-recorder://test-record

mediaSessionId

Идентификатор медиасессии потока

866a9910-fbfe-11eb-aae4-6f99b0c80a3a

filenameИмя файла, куда производится записьstream_multiRecordedmulti-recorder___test-record.mp4

Имя записываемого файла

Имя файла для записи нескольких потоков формируется по шаблону, с добавлением суффикса _multiRecorded. При этом параметры . При этом:

1. Параметр {streamName} подставляется согласно URI рекордера, с заменой символов, не допустимых к использованию в именах файлов, на подчеркивания.

2. Параметры {startTime},  {endTime} не могут быть определены, поскольку зависят от меток времени в потоке, а потоков в данном случае несколько. Поэтому рекомендуется для присвоения метки времени файлу использовать параметры {startTimeMillis}, {endTimeMillis}, которые проставляются согласно часам сервера.

Например, с шаблоном

Code Block
languagejs
themeRDark
stream_record_policy_template={streamName}-{startTime}-{startTimeMillis}-{endTime}-{endTimeMillis}

имя файла для рекордера с URI

Code Block
languagejs
themeRDark
"uri": "multi-recorder://test-record"

будет следующим:

Code Block
themeRDark
test_multi-recorder___test-record--1-1628821032180--1-1628821151750_multiRecorded.mp4

Здесь {startTime},  {endTime} заменены на -1.

...

Code Block
languagebash
themeRDark
cd /usr/local/FlashphonerWebCallServer/tools
./offline_mixer_tool.sh test_multi-recorder___test-record--1-1628821032180--1-1628821151750_multiRecorded.mp4

Настройки микширования задаются в файле /usr/local/FlashphonerWebCallServer/conf/offline_mixer.json. По умолчанию настройки следующие:

...

Микшированный файл помещается в тот же каталог, где лежит оригинальный файл, к его имени добавлется добавляется суффикс _mixed, например

Code Block
themeRDark
test_multi-recorder___test-record--1-1628821032180--1-1628821151750_multiRecorded_mixed.mp4

Пример кадра из микшированного файла

...