События клиента
client.activity
Поменять AFK (не у клавиатуры) статус
afk
- Не у клавиатуры
{
"confirm_id": "75a406625c58",
"event": "client.activity",
"params": {
"afk": "BOOL"
}
}
client.call.buzzcancel
Отмена звонка
jid
- id чата или контакта
{
"confirm_id": "8c52201ff7ed",
"event": "client.call.buzzcancel",
"params": {
"jid": "JID"
}
}
client.call.leave
Покинуть звонок
jid
- id чата или контактаreason
- Причина если есть
{
"confirm_id": "f5b6d29013c3",
"event": "client.call.leave",
"params": {
"jid": "JID",
"reason": "STRING"
}
}
client.call.muteall
Заглушить всех других участников звонка
jid
- id чата или контакта
ПРИМЕР ОТСУТСТВУЕТ
client.call.offer
Начать звонок
jid
- id чата или контактаmuted
- состояние безмолвностиsdp
- SDP (session description protocol) данныеtrickle
- струйный режим включен
{
"confirm_id": "b45fdc034116",
"event": "client.call.offer",
"params": {
"jid": "JID",
"muted": "BOOL",
"sdp": "STRING",
"trickle": "BOOL"
}
}
client.call.reject
Отвергнуть звонок
jid
- id чата или контактаreason
- Причина если есть
{
"confirm_id": "55e8cc25d534",
"event": "client.call.reject",
"params": {
"jid": "JID"
}
}
client.call.sdp
Для обмена Session Description с сервером когда Local Session Description клиента был изменен
jid
- id чата или контактаjsep
- SDP данныеuid
- Id звонка
ПРИМЕР ОТСУТСТВУЕТ
client.call.sound
Поменять состояние безмолвности
jid
- id чата или контактаmuted
- состояние безмолвности
{
"confirm_id": "4a24b770a659",
"event": "client.call.sound",
"params": {
"jid": "JID",
"muted": "BOOL"
}
}
client.call.trickle
Послать trickle кандидата для webrtc соединения
candidate
- Trickle кандидатjid
- id чата или контактаsdp_mid
- SDP midsdp_mline_index
- SDP индекс
{
"confirm_id": "5bde78b37316",
"event": "client.call.trickle",
"params": {
"candidate": "STRING",
"jid": "JID",
"sdp_mid": "STRING",
"sdp_mline_index": "INT"
}
}
client.chat.composing
Пишет или записывает аудио сообщение
composing
- true = начать писать / записывать аудио, false = остановитьсяdraft
- Данные черновика сообщенияis_audio
- true = аудио сообщение, false = набор текстаjid
- id чата или контакта
{
"confirm_id": "2bd5afaf39af",
"event": "client.chat.composing",
"params": {
"jid": "JID"
}
}
client.chat.lastread
Последние прочитанное сообщение в чате изменилось
jid
- id чата или контактаlast_read_message_id
- Id последнего прочитанного сообщения. Если нет то последние сообщение в чате
{
"confirm_id": "8561d892f3d8",
"event": "client.chat.lastread",
"params": {
"jid": "JID",
"last_read_message_id": "STRING"
}
}
client.confirm
Клиент подтвердил сообщение с сервера
confirm_id
- Уникальный идентификатор созданный клиентом.
{
"event": "client.confirm",
"params": {
"confirm_id": "str"
}
}
client.message.deleted
Сообщение удалено
message_id
- Id сообщения
{
"confirm_id": "cd778785149a",
"event": "client.message.deleted",
"params": {
"message_id": "STRING"
}
}
client.message.updated
Сообщение создано или изменено
comment
- Устарелоcontent
- содержание сообщения. Обязательноimportant
- флаг важности. Не обязательно. По умолчанию: falselinked_messages
- Пересланные сообщения (ранее тоже были для ответа). Не требуетсяmessage_id
- Uid созданное клиентом. Рекомендуетсяnopreview
- Отключить создание предварительного просмотра ссылок. Не требуется. По умолчанию: falseold_style_attachment
- Режим обратной совместимостиreply_to
- Ответил на сообщение на заданном Id. Не требуетсяto
- JID чата, задачи или контакта. Требуетсяuploads
- Прикрепления сообщения
{
"confirm_id": "2694a2864526",
"event": "client.message.updated",
"params": {
"comment": "STRING",
"content": {
"text": "...",
"type": "plain"
},
"important": "BOOL",
"linked_messages": [
"STRING"
],
"message_id": "STRING",
"nopreview": "BOOL",
"to": "JID"
}
}
client.ping
Пустое сообщение чтобы проверить статус соединения
{
"confirm_id": "8aad294579b8",
"event": "client.ping"
}
События сервера
server.call.answer
Параметры звонка (устарело: используйте ServerCallSdp)
candidates
- Список ICE кандидатов (когда trickle = false)jid
- id чата или контактаjsep
- SDP данныеonliners
- Текушие участники звонкаuid
- Id звонка
{
"event": "server.call.answer",
"params": {
"candidates": [
{
"candidate": "candidate:2 1 tcp 1019216383 95.213.181.86 0 typ host tcptype active",
"sdpMLineIndex": 0
}
],
"jid": "g-3f7e2a85-49f5-4586-8229-d9c52813dcb2",
"jsep": {
"sdp": ".....SDP....",
"type": "answer"
},
"onliners": [
{
"devices": [
{
"browser": null,
"muted": true
},
{
"browser": null,
"muted": true
}
],
"jid": "d-ef53637c-f44c-4f49-9ffb-05436eb995ce",
"muted": true
}
]
}
}
server.call.buzz
Звонок гудит
actor
- Краткая информация о создателе звонкаbuzz_timeout
- Количество секунд до окончания звонкаchat
- Краткая информация о чатеdisplay_name
- Титул чатаicons
- Иконки чатаjid
- id чата или контактаteam
- Устарелоteaminfo
- Краткая информация о командеuid
- Id звонка
{
"event": "server.call.buzz",
"params": {
"display_name": "имя фамилия",
"icons": {
"lg": {
"height": 512,
"url": "http://127.0.0.1:8000/static/tada-bots/systembot512.png",
"width": 512
},
"sm": {
"height": 256,
"url": "http://127.0.0.1:8000/static/tada-bots/systembot256.png",
"width": 256
}
},
"jid": "g-3f7e2a85-49f5-4586-8229-d9c52813dcb2",
"team": "6aefcf3b-e61c-4f35-8b5b-9d762a6a6cf9"
}
}
server.call.buzzcancel
Звонок отменен на гудке
jid
- id чата или контактаteam
- Id командыuid
- Id звонка
{
"event": "server.call.buzzcancel",
"params": {
"jid": "d-0bdfbbf5-abfa-4ed2-9f98-991d5bb80127",
"team": "848cc926-3048-44b3-a9ba-3195a394351d"
}
}
server.call.checkfingerprint
Экспериментальная функция
fingerprint
- Отсутствует документация
ПРИМЕР ОТСУТСТВУЕТ
server.call.leave
Участник звонка покинул звонок
jid
- id чата или контактаuid
- uid звонка
ПРИМЕР ОТСУТСТВУЕТ
server.call.muteall
Все участники звонка заглушены
jid
- id чата или контактаmuted
- состояние безмолвности
ПРИМЕР ОТСУТСТВУЕТ
server.call.reject
Отвергнуть звонок
jid
- id чата или контактаreason
- Причина если естьuid
- Id звонка
ПРИМЕР ОТСУТСТВУЕТ
server.call.restart
Звонок перезапущен
jid
- id чата или контактаteam
- Id командыuid
- Id звонка
ПРИМЕР ОТСУТСТВУЕТ
server.call.sdp
Для обмена Session Description с клиентом когда Local Session Description сервера был изменен
jid
- id чата или контактаjsep
- SDP данныеuid
- Id звонка
ПРИМЕР ОТСУТСТВУЕТ
server.call.sound
Отключить / включить микрофон участника звонка
jid
- id чата или контактаmuted
- состояние безмолвности
ПРИМЕР ОТСУТСТВУЕТ
server.call.state
Информация о звонке
audiorecord
- Запись звонка включенаbuzz
- Звонок гудитcreated
- время создания в формате isofinish
- Звонок оконченgentime
- Версияjid
- id чата или контактаonliners
- Участники звонкаstart
- Начало звонка. Для прямых звонков может быть пустым во время гудкаtimestamp
- Устарело: используйте поляgentime
илиcreated
uid
- Id звонка
{
"event": "server.call.state",
"params": {
"audiorecord": true,
"buzz": false,
"finish": null,
"jid": "g-3f7e2a85-49f5-4586-8229-d9c52813dcb2",
"onliners": [
{
"devices": [
{
"muted": false,
"useragent": "Chrome"
}
],
"jid": "d-d6de9748-0bcd-4145-b1ce-3d7f41c1c26f",
"muted": false
}
],
"start": "2019-09-27T01:01:35.264095Z"
}
}
server.call.talking
Кото-то говорит в звонке
actor
- Id исполнителяjid
- id чата или контактаtalking
- говорит сейчас?
{
"event": "server.call.talking",
"params": {
"_level": null,
"actor": "d-bd500a50-3a38-44d1-a43c-fb1a48e1a79e",
"jid": "d-bd500a50-3a38-44d1-a43c-fb1a48e1a79e",
"talking": true
}
}
server.chat.composing
Кто-то пишет или записывает звонок в чате
actor
- Id исполнителяcomposing
- true = начать писать / записывать аудио, false = остановитьсяis_audio
- true = аудио сообщение, false = набор текстаjid
- id чата или контактаvalid_until
- Максимальная длительность жизни
{
"event": "server.chat.composing",
"params": {
"actor": "d-bd500a50-3a38-44d1-a43c-fb1a48e1a79e",
"composing": true,
"is_audio": false,
"jid": "d-bd500a50-3a38-44d1-a43c-fb1a48e1a79e"
}
}
server.chat.deleted
Чат удален
badge
- количество непрочитанных сообщенийchats
- список удаленных чатовteam_unread
- количество непрочитанных в этой команде
{
"event": "server.chat.deleted",
"params": {
"badge": 449,
"chats": [
{
"chat_type": "group",
"gentime": 1569546094920474368,
"is_archive": true,
"jid": "g-3f7e2a85-49f5-4586-8229-d9c52813dcb2"
}
],
"team_unread": {
"direct": {
"chats": 1,
"messages": 31
},
"group": {
"chats": 0,
"messages": 0
},
"task": {
"chats": 1,
"messages": 1
}
}
}
}
server.chat.draft
Черновик сообщения был изменен
draft
- Текст черновикаdraft_gentime
- Версия черновикаdraft_num
- Устарелоjid
- id чата или контакта
ПРИМЕР ОТСУТСТВУЕТ
server.chat.lastread
Изменение последнего прочитанного сообщения
badge
- количество непрочитанных сообщенийchats
- Счетчик чатаteam_unread
- количество непрочитанных в этой команде
{
"event": "server.chat.lastread",
"params": {
"badge": 0,
"chats": [
{
"chat_type": "direct",
"gentime": 1569546084300075149,
"jid": "d-2a9d8c43-41d1-479c-9c8c-f029f799a724",
"last_read_message_id": "f4f1f09c-f978-4b54-a321-b4c82604010d",
"num_unread": 0,
"num_unread_notices": 0
}
],
"team_unread": {
"direct": {
"chats": 0,
"messages": 0
},
"group": {
"chats": 0,
"messages": 0
},
"task": {
"chats": 0,
"messages": 0
}
}
}
}
server.chat.updated
Чат создан или обновлен
badge
- количество непрочитанных сообщенийchats
- Счетчик чатаteam_unread
- количество непрочитанных в этой команде
{
"event": "server.chat.updated",
"params": {
"badge": 449,
"chats": [
{
"can_call": true,
"can_send_message": true,
"chat_type": "group",
"counters_enabled": true,
"created": "2019-09-18T00:00:06.105362Z",
"default_for_all": true,
"description": "Сюда автоматически попадают все участники команды",
"display_name": "Общий чат",
"gentime": 1568764808134709248,
"icons": {
"stub": "http://127.0.0.1:8000/u/f0769a/%D0%9E%D1%87/256.png"
},
"jid": "g-82d6c0d4-8921-4519-abb3-02f17373112f",
"notifications_enabled": true,
"num_members": 32,
"public": true,
"status": "member"
}
],
"team_unread": {
"direct": {
"chats": 1,
"messages": 31
},
"group": {
"chats": 0,
"messages": 0
},
"task": {
"chats": 1,
"messages": 1
}
}
}
}
server.confirm
Сервер потвердил сообщение клиента
confirm_id
- UID созданное сервером
{
"event": "server.confirm",
"params": {
"confirm_id": "b8b2ccd6-35a6-408f-a591-c696a9f9e73e"
}
}
server.contact.updated
Контакт создан или обновлен
contacts
- информация контакта
{
"event": "server.contact.updated",
"params": {
"contacts": [
{
"can_add_to_group": true,
"can_call": true,
"can_create_task": true,
"can_send_message": true,
"changeable_fields": [],
"contact_email": "",
"contact_phone": "+75550000031",
"display_name": "Контакт №32",
"icons": {
"stub": "http://127.0.0.1:8000/u/8e88eb/32/256.png"
},
"jid": "d-a792832a-d9f6-4bbc-b545-f2800e329c8c",
"last_activity": null,
"role": "",
"sections": [],
"status": "member"
}
]
}
}
server.debug
Отладочное сообщение
text
- Отладочное сообщение
ПРИМЕР ОТСУТСТВУЕТ
server.login
Логин с другого устройства
device_name
- имя устройства
{
"event": "server.login",
"params": {
"device_name": "(unknown device)"
}
}
server.message.push
Проталкивание сообщения для настольного клиента
chat
- Id чатаclick_action
- ссылка открываемая на нажатииcreated
- время создания сообщенияicon_url
- абсолютная ссылка на иконкуmessage
- тело сообщения pushmessage_id
- Id сообщенияsender
- Id контакта отправителяsubtitle
- субтитры pushtag
- тэг (для объединенных push)team
- uid командыtitle
- титул push
ПРИМЕР ОТСУТСТВУЕТ
server.message.received
Сообщение полученное кем-то в чате
messages
- данные полученных сообщений
{
"event": "server.message.received",
"params": {
"messages": [
{
"chat": "t-be962c01-14ae-4c59-aeb0-f0ff5cffab74",
"message_id": "e0fca4c2-0d17-4317-96cd-703c2ca781e4",
"num_received": 0,
"received": false
}
]
}
}
server.message.updated
Сообщение было создано, изменено или удалено
badge
- общее количество непрочитанных, если измененоchat_counters
- счетчик чатаdelayed
- true = бесшумное обновление сообщения, false = новое сообщениеmessages
- данные сообщенийteam_unread
- количество непрочитанных в этой команде
{
"event": "server.message.updated",
"params": {
"badge": 51,
"chat_counters": [
{
"chat_type": "task",
"gentime": 1569546093662061959,
"jid": "t-be962c01-14ae-4c59-aeb0-f0ff5cffab74",
"last_read_message_id": null,
"num_unread": 0,
"num_unread_notices": 0
}
],
"delayed": false,
"messages": [
{
"chat": "t-be962c01-14ae-4c59-aeb0-f0ff5cffab74",
"chat_type": "task",
"content": {
"actor": "d-0b1b2362-fb69-4dd6-8bfb-90c89517168d",
"text": "Создана задача для @Контакт_№394: Тест",
"title": "Создана задача для @Контакт_№394: Тест",
"type": "change"
},
"created": "2019-09-27T01:01:33.661466Z",
"editable_until": "2019-09-28T01:01:33.661466Z",
"from": "d-a2d94e8e-74aa-4b0b-b55d-0b4fc1ce07f4",
"gentime": 1569546093662061959,
"is_first": true,
"is_last": true,
"message_id": "e0fca4c2-0d17-4317-96cd-703c2ca781e4",
"to": "t-be962c01-14ae-4c59-aeb0-f0ff5cffab74"
}
],
"team_unread": {
"direct": {
"chats": 1,
"messages": 51
},
"group": {
"chats": 0,
"messages": 0
},
"task": {
"chats": 0,
"messages": 0
}
}
}
}
server.online
Текшие активные звонки и члены команд онлайн
calls
- звонки в прогрессеcontacts
- члены команд онлайн
{
"event": "server.online",
"params": {
"calls": [
{
"jid": "g-3f7e2a85-49f5-4586-8229-d9c52813dcb2"
}
],
"contacts": [
{
"afk": false,
"jid": "d-bd500a50-3a38-44d1-a43c-fb1a48e1a79e",
"mobile": false
}
]
}
}
server.processing
Состояние операции на заднем фоне
action
- Имя действияhas_error
- Есть ли ошибкаmessage
- сообщениеnum
- количество текуще обрабатываемых предметовtotal
- Total processing items
ПРИМЕР ОТСУТСТВУЕТ
server.remind.deleted
Напоминание было удалено
reminds
- данные напоминания
{
"event": "server.remind.deleted",
"params": {
"reminds": [
{
"uid": "22018199-c3ae-4a9c-829e-985e975eb62a"
}
]
}
}
server.remind.fired
Напоминание сработало
reminds
- данные напоминания
{
"event": "server.remind.fired",
"params": {
"reminds": [
{
"chat": "t-2c527748-2e00-440e-a625-58121d42fdad",
"fire_at": "2019-09-27T11:01:03.428564Z",
"uid": "22018199-c3ae-4a9c-829e-985e975eb62a"
}
]
}
}
server.remind.updated
Напоминание обновлено
reminds
- данные напоминания
{
"event": "server.remind.updated",
"params": {
"reminds": [
{
"chat": "t-2c527748-2e00-440e-a625-58121d42fdad",
"fire_at": "2019-09-27T11:01:03.428564Z",
"uid": "22018199-c3ae-4a9c-829e-985e975eb62a"
}
]
}
}
server.section.deleted
Секция контактов или задача была удалена
chat_type
- Тип чатаgentime
- Устаревшее полеsections
- информация о проекте или секции
{
"event": "server.section.deleted",
"params": {
"chat_type": "direct",
"gentime": 1568786364815431424,
"sections": [
{
"uid": "8daeb4a2-4863-4953-bcf1-c58b84dc5272"
}
]
}
}
server.section.updated
Секция контактов или задача была создана или удалена
chat_type
- Тип чатаgentime
- Устаревшее полеsections
- информация о проекте или секции
{
"event": "server.section.updated",
"params": {
"chat_type": "group",
"gentime": 1569546093241191168,
"sections": []
}
}
server.tag.deleted
Тэг удален
tags
- информация о тэге
ПРИМЕР ОТСУТСТВУЕТ
server.tag.updated
Тэг создан или удален
tags
- информация о тэге
ПРИМЕР ОТСУТСТВУЕТ
server.team.counters
Счетчик других комманд
badge
- количество непрочитанных сообщенийteams
- счетчики
{
"event": "server.team.counters",
"params": {
"teams": [
{
"uid": "b3e92407-41d0-456a-9b1d-3d6b79bfa7d3",
"unread": {
"direct": {
"chats": 1,
"messages": 161
},
"group": {
"chats": 0,
"messages": 0
},
"task": {
"chats": 1,
"messages": 1
}
}
},
{
"uid": "8b05a648-d43a-4d17-9a0e-c2a119453494",
"unread": {
"direct": {
"chats": 0,
"messages": 0
},
"group": {
"chats": 0,
"messages": 0
},
"task": {
"chats": 1,
"messages": 1
}
}
},
{
"uid": "6aefcf3b-e61c-4f35-8b5b-9d762a6a6cf9",
"unread": {
"direct": {
"chats": 1,
"messages": 3
},
"group": {
"chats": 0,
"messages": 0
},
"task": {
"chats": 0,
"messages": 0
}
}
},
{
"uid": "5e854825-d1ac-4b28-a389-f0e8cc3bd675",
"unread": {
"direct": {
"chats": 1,
"messages": 1
},
"group": {
"chats": 0,
"messages": 0
},
"task": {
"chats": 0,
"messages": 0
}
}
},
{
"uid": "180b9b6d-ecb0-47aa-8712-33dbd9b4a642",
"unread": {
"direct": {
"chats": 0,
"messages": 0
},
"group": {
"chats": 1,
"messages": 58
},
"task": {
"chats": 0,
"messages": 0
}
}
},
{
"uid": "99cabb3b-d4fd-464d-b33d-144b67e3c1df",
"unread": {
"direct": {
"chats": 1,
"messages": 127
},
"group": {
"chats": 0,
"messages": 0
},
"task": {
"chats": 1,
"messages": 1
}
}
},
{
"uid": "523e7bdc-e73f-4150-b6b9-656d6178ba51",
"unread": {
"direct": {
"chats": 1,
"messages": 63
},
"group": {
"chats": 0,
"messages": 0
},
"task": {
"chats": 1,
"messages": 1
}
}
},
{
"uid": "c9d8a896-a2b6-40a1-869e-2ecc0ef2436b",
"unread": {
"direct": {
"chats": 1,
"messages": 31
},
"group": {
"chats": 0,
"messages": 0
},
"task": {
"chats": 1,
"messages": 1
}
}
}
]
}
}
server.team.deleted
Комманда архивирована
teams
- информация комманд
{
"event": "server.team.deleted",
"params": {
"teams": [
{
"is_archive": true,
"uid": "c9d8a896-a2b6-40a1-869e-2ecc0ef2436b"
}
]
}
}
server.team.updated
Комманда создана или изменена
teams
- отсутствует документация
{
"event": "server.team.updated",
"params": {
"teams": [
{
"can_manage_sections": true,
"default_task_deadline": "18:00:00",
"icons": {
"stub": "http://127.0.0.1:8000/u/f0769a/00/256.png"
},
"last_active": false,
"max_message_update_age": 86400,
"me": {
"alt_send": false,
"can_add_to_group": true,
"can_create_task": true,
"can_delete": true,
"changeable_fields": [
"alt_send",
"contact_email",
"contact_mshort_view",
"contact_phone",
"contact_short_view",
"contact_show_archived",
"debug_show_activity",
"default_lang",
"family_name",
"given_name",
"group_mshort_view",
"group_notifications_enabled",
"group_short_view",
"icons",
"phone",
"role",
"task_mshort_view",
"task_notifications_enabled",
"task_short_view",
"unread_first"
],
"contact_email": "",
"contact_mshort_view": false,
"contact_phone": "+75550000001",
"contact_short_view": false,
"contact_show_archived": false,
"debug_show_activity": false,
"default_lang": null,
"display_name": "Контакт №2",
"family_name": "№2",
"given_name": "Контакт",
"group_mshort_view": false,
"group_notifications_enabled": true,
"group_short_view": false,
"icons": {
"stub": "http://127.0.0.1:8000/u/63bed3/%D0%9A%E2%84%96/256.png"
},
"jid": "d-bd500a50-3a38-44d1-a43c-fb1a48e1a79e",
"last_activity": null,
"role": "",
"sections": [],
"status": "member",
"task_mshort_view": false,
"task_notifications_enabled": true,
"task_short_view": false,
"unread_first": false
},
"name": "T-32 2019-09-18 00:00:05.603182+00:00",
"need_confirmation": true,
"uid": "c9d8a896-a2b6-40a1-869e-2ecc0ef2436b",
"unread": {
"direct": {
"chats": 1,
"messages": 31
},
"group": {
"chats": 0,
"messages": 0
},
"task": {
"chats": 1,
"messages": 1
}
}
}
]
}
}
server.time
Текущее время на сервере
time
- текущее время
{
"event": "server.time",
"params": {
"time": "2019-09-27T01:01:33.216665Z"
}
}
server.uisettings
Часть настроик интерфейса была изменена
data
- Настройки пользовательского интерфейсаnamespace
- Сфера. Например: web, app
{
"last-tab": 91238475
}
server.upload.updated
Загрузочный объект создан или изменен
uploads
- данные загрузки
ПРИМЕР ОТСУТСТВУЕТ
server.warning
Что-то пошло не так с сообщением клиента
message
- сообщениеorig
- отладочная информация
{
"event": "server.warning",
"params": {
"message": "unknown event: client.deeeeeaddddbeeeeeef",
"orig": {
"confirm_id": "c6280a82ed1c",
"event": "client.deeeeeaddddbeeeeeef"
}
}
}