Мероприятия
Мероприятия — это запланированные встречи и конференции (аудио/видео) с участниками, правами доступа, чатом и расписанием (в том числе повторяющимся). Через API можно создавать, изменять и удалять мероприятия, получать их список и управлять составом участников.
Доступность объекта: общедоступный объект.
Объекты:
Планируемое мероприятие и расписание:
DTScheduledMeeting — запланированное мероприятие;
DTScheduledMeetingParams — параметры мероприятия (видео, запись, чат, режим входа и т.д.);
DTMeetingSchedule — расписание;
DTMeetingScheduleRepeat — повторение (базовое);
DTMeetingScheduleRepeatDaily — ежедневное повторение;
DTMeetingScheduleRepeatWeekly — еженедельное повторение.
Участники плана:
DTScheduledMeetingAttendee — участник плана (базовый);
DTScheduledMeetingAttendeeUser — пользователь домена;
DTScheduledMeetingAttendeePermanentParticipant — постоянный участник;
DTScheduledMeetingAttendeeTemporaryParticipant — временный участник;
DTScheduledMeetingAttendeeCallParticipant — участник по дозвону;
DTAttendeeBaseEPerms — персональные разрешения участника.
Активная конференция:
DTMeeting — идущая конференция;
DTMeetingConfData — данные конференции из FreeSWITCH;
DTMeetingAttendee — участник активной конференции;
DTMeetingAttendeeConfDataFlags — флаги состояния участника.
Чат мероприятия:
DTMeetingMessage — сообщение чата;
DTMessageStatus — статус доставки/прочтения.
Участники-справочники и веб-доступ:
DTPermanentParticipant — постоянный участник (учётная запись);
DTTemporaryParticipant — временный участник (сессия);
DTWebRTCUser — данные для подключения по WebRTC.
Типы участия:
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
}
}