Для создания нового диалога необходимо выполнить несколько последовательных вызовов API
{
ApiKey: "",
ApiVersion: "100",
UserKey:"cb09abf1-263c-4633-88d9-2c1465a3eb2c",
Method: "Dialogs.GetChannels",
Parameters:
{
}
}
{
"Result": [
{
"channelId": "69322e69-5f01-41e9-9a58-da774c8085b5",
"transport": "whatsapp",
"plainId": "79629031736",
"state": "active",
"id": null,
"type": "",
"login": "",
"avatar": "",
"exteranlId": "",
"status": "",
"identifier": "",
"url": ""
},
{
"channelId": "c269167d-4b3c-48a4-a217-96aea3cc7490",
"transport": "tgapi",
"plainId": "79629031736",
"state": "active",
"id": null,
"type": "",
"login": "",
"avatar": "",
"exteranlId": "",
"status": "",
"identifier": "",
"url": ""
}
],
"ApiKey": "",
"ApiVersion": "100",
"Method": "Dialogs.GetChannels",
"Errors": [],
"Duration": 0.0
}
<aside> 💡 ВАЖНО! отправлять запрос на сервер необходимо после ввода пробела, т.е. после того как клиент полностью ввел фамилию или телефон клиента, если клиент введет только часть фамилии, например “солда “, нажмет пробел и отправит запрос на сервер то ничего найдено не будет.
</aside>
{
ApiKey: "",
ApiVersion: "100",
UserKey:"cb09abf1-263c-4633-88d9-2c1465a3eb2c",
Method: "Clients.GetAutoComliteList",
Parameters:
{
Pattern:"солдатов"
}
}
{
"Result": [
{
"Id": 144432,
"BaseObjectType": 0,
"BaseObjectName": "Солдатов Максим Алексеевич, (910) 6**-***3, 30.08.1997, ID:144432",
"BaseObjectDate": "01.01.0001 00:00:00"
},
{
"Id": 144433,
"BaseObjectType": 0,
"BaseObjectName": "Солдатов Максим Алексеевич, (910) 6**-***3, 30.08.1997, ID:144433",
"BaseObjectDate": "01.01.0001 00:00:00"
},
{
"Id": 144438,
"BaseObjectType": 0,
"BaseObjectName": "Солдатов Максим Алексеевич, (262) 4**-***3, 30.08.1997, ID:144438",
"BaseObjectDate": "01.01.0001 00:00:00"
},
{
"Id": 144922,
"BaseObjectType": 0,
"BaseObjectName": "Солдатов Максим Алексеевич, (999) 5**-***1, 30.08.1997, ID:144922",
"BaseObjectDate": "01.01.0001 00:00:00"
},
{
"Id": 144938,
"BaseObjectType": 0,
"BaseObjectName": "Солдатов Ибрагим Алексеевич, (555) 5**-***5, 30.08.1997, ID:144938",
"BaseObjectDate": "01.01.0001 00:00:00"
},
{
"Id": 144939,
"BaseObjectType": 0,
"BaseObjectName": "Солдатов Максим Алексеевич, (353) 4**-***7, 30.08.1998, ID:144939",
"BaseObjectDate": "01.01.0001 00:00:00"
},
{
"Id": 144981,
"BaseObjectType": 0,
"BaseObjectName": "Солдатов Ибрагим Максимович, (236) 2**-***1, 30.09.1997, ID:144981",
"BaseObjectDate": "01.01.0001 00:00:00"
},
{
"Id": 144982,
"BaseObjectType": 0,
"BaseObjectName": "Солдатов Кирил Барсович, (132) 4**-***1, 30.07.1988, ID:144982",
"BaseObjectDate": "01.01.0001 00:00:00"
}
],
"ApiKey": "",
"ApiVersion": "100",
"Method": "Clients.GetAutoComliteList",
"Errors": [],
"Duration": 0.0
}
{
ApiKey: "",
ApiVersion: "100",
UserKey:"cb09abf1-263c-4633-88d9-2c1465a3eb2c",
Method: "Clients.GetClientPhones",
Parameters:
{
LongParamValue:144432
}
}
{
"Result": [
"(910) 6**-***3"
],
"ApiKey": "",
"ApiVersion": "100",
"Method": "Clients.GetClientPhones",
"Errors": [],
"Duration": 0.0
}
{
ApiKey: "",
ApiVersion: "100",
UserKey:"cb09abf1-263c-4633-88d9-2c1465a3eb2c",
Method: "Dialogs.CreateNewDialog",
Parameters:
{
ClientId:144432,
ChannelId:"69322e69-5f01-41e9-9a58-da774c8085b5",
PhoneIndex:0
}
}
{
"Result": {
"ChangedReason": 0,
"DialogClientId": 144432,
"DialogClientFio": "Солдатов Максим Алексеевич",
"Channel": "79629031736 (WhatsApp)",
"ChannelId": "69322e69-5f01-41e9-9a58-da774c8085b5",
"ClientAccount": "",
"ClientUsername": "",
"IsFinihed": false,
"ContractId": 0,
"RequestId": 0,
"FilialId": 1,
"AlreadyExists": true
},
"ApiKey": "",
"ApiVersion": "100",
"Method": "Dialogs.CreateNewDialog",
"Errors": [],
"Duration": 562.50560000000007
}
<aside> 💡 ВАЖНО! Если диалог уже существовал, то вернется объект существующего диалога, с признаком AlreadyExists == true, и приложение при этом должно переключить фокус на уже существующий диалог. Если же флаг равен false, то в панель с диалогами нужно будет добавить новую плашку с только что добавленным диалогом.
</aside>
<aside> 💡 ОЧЕНЬ ВАЖНО! при создании диалога передается не телефон клиента, а его индекс в списке доступных номеров. Сделано это для того, чтобы не “светить” номера клиента в случае если они скрыты политиками безопасности.
</aside>