{
ApiKey: "",
ApiVersion: "100",
UserKey:"0431575d-82ca-4a9b-803f-31c534d0553f",
Method: "Dialogs.GetCurrentDialogs",
Parameters:
{
Filter:""
}
}
В параметре Filter можно передать любое строковое значение по которому будет отфильтрован список диалогов.
{
"Result": {
"MyDialogs": [],
"OtherDialogs": [
{
"DialogId": 16,
"ChangedReason": 0,
"DialogClientId": 144464,
"DialogClientFio": "Белоусов Максим Николаевич",
"Channel": "79154551391 (WhatsApp)",
"ChannelId": "014e3e30-18e3-4bce-8c93-0b418abcb70f",
"ClientAccount": "",
"ClientUsername": "",
"IsFinihed": false,
"ContractId": 0,
"RequestId": 0,
"FilialId": 1,
"EmployeeId": 10144,
"EmployeeTitle": "Поддержка Техническая",
"LabelClient": "Белоусов Максим Николаевич",
//информация о непрочитанных сообщениях
//используется для построеня LabelUnread
"UnreadMetaInfo": {
"DialogId": 16,
//время поступления последнего непрочитанного
"CreationTime": "18.10.2023 16:57:21",
//кол-во непрочитанных
"Count": 2
},
"LabelUnread": "+2, 0 м.",
"LabelInfo": "91 Wh, Поддержка Техническая, 18.10 16:57",
"LastMessageTime": "18.10.2023 16:57:21",
"AlreadyExists": false
}
]
},
"ApiKey": "",
"ApiVersion": "100",
"Method": "Dialogs.GetCurrentDialogs",
"Errors": [],
"Duration": 2.0017
}
В возвращаемом объекте присутствуют две коллекции MyDialogs - список текущих диалогов пользователя, OtherDialogs - список диалогов других пользователей.
<aside> 💡 Обновление списка диалогов рекомендуется делать НЕ чаще 1 раза в три секунды
</aside>
<aside> 💡 ВАЖНО! В списке MyDialogs также содержатся диалоги, в который пользователь МОЖЕТ стать владельцем. У таких диалогов на момент запроса еще не инициализирован параметр EmployeeId
</aside>
<aside> 💡 ВАЖНО! Параметры с префиксом Label желательно использовать для отображения в интерфейсе. Например, LabelClient будет корректно отображать фразу “не задано” для имени клиента, даже если в параметре DialogClientFio пусто.
</aside>
Применение полей Label см. на картинке ниже
Дополнительная информация: