Мероприятия

Мероприятия — это запланированные встречи и конференции (аудио/видео) с участниками, правами доступа, чатом и расписанием (в том числе повторяющимся). Через API можно создавать, изменять и удалять мероприятия, получать их список и управлять составом участников.

Доступность объекта: общедоступный объект.

Объекты:

Планируемое мероприятие и расписание:

Участники плана:

Активная конференция:

Чат мероприятия:

Участники-справочники и веб-доступ:

Типы участия:

id

Описание

0

Обязательное присутствие

1

Опционально

2

Информационное участие

Типы ролей участников:

id

Описание

0

Организатор

1

Спикер

2

Участник

3

Со-организатор

Коды и статусы

Помимо типов участия и ролей (выше), используются коды:

  • Тип участника (participant_type): 0 — пользователь домена, 1 — постоянный участник, 2 — временный участник, 3 — участник по дозвону.

  • Состояние участника (state): 0 — не подключён, 1 — в зале ожидания, 2 — подключается, 3 — подключён, 4 — заблокирован, 5 — отключился.

  • Режим входа (entry_mode): 0 — без зала ожидания, 1 — через зал ожидания с приглашением, 2 — при появлении организатора/со-организатора, 3 — режимы 1 и 2 вместе.

  • Автозапуск (autostart): 0 — отключён, 1 — по расписанию, 2 — по расписанию, организатор заходит первым, 3 — при дозвоне.

  • Статус мероприятия (status у DTScheduledMeeting): 1 — активно/запланировано, 0 — отменено.

  • Статус сообщения (DTMessageStatus.s): 1 — получено, 2 — прочитано.

Получение списка:

POST http://{{v2_host}}/api/teams/
Content-Type: application/json
Authorization: Bearer {{auth_token}}

{
  "action": "list",
  "obj": "DTScheduledMeeting",
  "action_id": "123",
  "params": {
    "domain_id": 1
  },
  "filter": {
    "field_list": [
      {
        "field": "schedule->start_dt",
        "value": 1718571600,
        "condition_type": 5
      },
      {
        "field": "schedule->end_dt",
        "value": 1719176399,
        "condition_type": 7
      }
    ],
    "type": 0
  }
}

Добавление объекта:

POST http://{{v2_host}}/api/
Content-Type: application/json
Authorization: Bearer {{auth_token}}

{
  "action": "append",
  "obj": "DTScheduledMeeting",
  "action_id": "123",
  "params": {
    "domain_id": 1,
    "name": "test",
    "description": null,
    "scheduled_meeting_id": null,
    "start_dt": "2024-06-20",
    "start_time": "12:00",
    "end_time": "12:30",
    "repeat": null,
    "secret": "b9408837-6f7b-580748af-9730-8698",
    "number": null,
    "params": {
      "allow_video": true,
      "allow_screen_share": false,
      "allow_recording": false,
      "allow_chat": true,
      "default_perm": 2,
      "entry_mode": 0,
      "autostart": 0,
      "outbound_group": null,
      "cc_pin": null
    },
    "attendees": [
      {
        "model_name": "DTScheduledMeetingAttendeeUser",
        "id": 5552,
        "perm": 0,
        "role": 0
      }
    ],
    "status": 1
  }
}

Обновление объекта:

POST http://{{v2_host}}/api/teams/
Content-Type: application/json
Authorization: Bearer {{auth_token}}

{
  "action": "update",
  "obj": "DTScheduledMeeting",
  "action_id": "123",
  "params": {
    "domain_id": 1,
    "id": 1,
    "name": "test",
    "description": null,
    "scheduled_meeting_id": null,
    "start_dt": "2024-06-20",
    "start_time": "13:00",
    "end_time": "13:30",
    "repeat": null,
    "secret": "b9408837-6f7b-580748af-9730-8698",
    "number": "346009056",
    "params": {
      "allow_video": true,
      "allow_screen_share": false,
      "allow_recording": false,
      "allow_chat": true,
      "default_perm": 2,
      "entry_mode": 0,
      "autostart": 0,
      "outbound_group": null,
      "cc_pin": "049100"
    },
    "attendees": [
      {
        "model_name": "DTScheduledMeetingAttendeeUser",
        "id": 5552,
        "perm": 0,
        "role": 0
      },
    ],
    "status": 1
  }
}

Удаление объекта:

POST http://{{v2_host}}/api/
Content-Type: application/json
Authorization: Bearer {{auth_token}}

{
  "action": "delete",
  "obj": "DTScheduledMeeting",
  "action_id": "123",
  "params": {
    "id": 2,
    "domain_id": 1
  }
}