# setCustomScheduler

Версия: 4.3.0+

Описание: добавить запланированные конференции или виртуальные комнаты в локальный список мероприятий.

Команда используется для добавления конференций в список, который будет в дальнейшем использоваться во всех соответствующих местах: API, выводе информации на главном экране и т.п. При этом мероприятия не создаются на стороне сервера и не происходит проверки указанных данных на соответствие реальности: проверяется только то, что указанные ID конференции (параметр id) на момент выполнения команды отсутствуют в списке конференций (который возвращается в нотификации conferenceList). То есть за корректность данных отвечает тот, кто выполняет команду. Добавленные конференции будут отображаться исключительно на управляемом VideoSDK/Room. Предыдущий локальный список полностью заменяется новым добавленным.

Данная команда может быть полезна, например, для добавления в локальный список мероприятий тех, которые созданы на федеративном сервере и ваш VideoSDK/Room добавлен в её участники.

Пример:

{
    "method": "setCustomScheduler",
    "requestId": "1",
    "conferences": [
        {
            "id": "0048411008",
            "created_at": "2023-01-20T16:44:43Z",
            "session_id": "",
            "mode": "S|L",
            "owner": "user@some.server",
            "topic": "Interview",
            "state": "stopped",
            "access": "private",
            "invitations": [
                {
                    "id": "ivanov",
                    "display_name": "Ivan Ivanov"
                }
            ],
            "schedule_type": "week",
            "schedule": {
                "start_time": "2023-02-20T16:54:00Z",
                "duration": 28800,
                "days": [
                    0,
                    1,
                    1,
                    1,
                    1,
                    1,
                    0
                ]
            }
        },
        {
            "id": "0048881003",
            "created_at": "2023-01-20T18:44:43Z",
            "session_id": "",
            "mode": "S|L",
            "owner": "user2@some.server",
            "topic": "Interview 2",
            "state": "stopped",
            "access": "private",
            "invitations": [
                {
                    "id": "igor",
                    "display_name": "Igor Ivanov"
                }
            ],
            "schedule_type": "week",
            "schedule": {
                "start_time": "2023-03-20T16:44:00Z",
                "duration": 30000,
                "days": [
                    0,
                    1,
                    1,
                    1,
                    1,
                    1,
                    0
                ]
            }
        }
    ]
}

Пример ответа:

{
  "method": "setCustomScheduler",
  "requestId" : "1",
  "result": true
}

Описание параметров:

  • conferences - локальный список мероприятий

  • id - уникальный идентификатор конференции

  • created_at - время создания конференции в RFC3339

  • session_id - уникальный идентификатор сессии, может отсутствовать или быть пустым

  • mode - тип конференции. Принимает значения:

    • PxP - все на экране

    • OxP - видеоурок

    • S|L - видеоселектор

  • owner - идентификатор пользователя (TrueConf ID) владельца конференции

  • topic - тема конференции

  • state - состояние конференции. Принимает значения:

    • running - конференция активна

    • stopped - конференция не активна

  • access - доступность конференции, может отсутствовать. Принимает значения:

    • private - внутренняя конференция

    • public - публичная конференция

  • invitations - список приглашений, которые используются для автоматического приглашения в конференцию. Объект приглашения состоит из:

    • id - идентификатор пользователя (TrueConf ID)

    • display_name - отображаемое имя пользования

  • schedule_type - тип расписания конференции. Может принимать значения:

    • none - без расписания

    • week - повторяется каждую неделю

    • once - без повторения, с одноразовым расписанием

  • schedule - данные о расписании конференции. Содержит данные, если конференция с расписанием (schedule_type != none) Состоит из:

    • start_time - время начала конференции в RFC3339

    • duration - длительность конференции в секундах

    Дополнительные поля, если конференция с повторением (schedule_type == week):

    • days - дни недели, в которых конференция запускается. Состоит из семи последовательных значений 0 или 1 для каждого дня недели, начиная с воскресенья. 1 означает, что конференция на этот день запланирована. Например, список [0,1,0,0,1,0,0] означает, что мероприятие будет запускаться каждые понедельник и четверг, а список [0,0,0,1,0,1,0] - что каждую среду и пятницу.
  • requestId - уникальный идентификатор запроса. Детальнее с ним можно ознакомиться здесь

См. также: