exec_crmcall
Добавить ссылку на команды CRM
1 Описание
Назначение | Выполнение произвольной команды к CRM |
Тип запроса | Асинхронный |
2 Формат запросов
2.1 Формат запроса
<?xml version="1.0" encoding="utf-8"?> <RQ cmd="exec_crmcall" tasktype="any_call" callback="http://ya.ru" groupguid="guid" timeout="int"> <PARAM name="object_id" val="000000000"/> <CRMQuery> <!--любой запрос для CRM --> </CRMQuery> </RQ>
Описание параметров
Параметр | Тип | Обязательный | Описание | Значение по умолчанию |
---|---|---|---|---|
object_id | int | + | Код ресторана в системе лицензирования | |
groupguid | guid | - | Необязательный guid для группировки запросов в рамках одного пользовательского сценария. Если создаётся серия запросов (создан заказ, сохранён, оплачен), то лучше группировать их в один сценарий для упрощения диагностики проблем. | |
callback | string | + | HTTP адрес, по которому WhiteServer отправит запрос после выполнения команды |
2.2 Формат ответа
<?xml version="1.0" encoding="utf-8"?> <RP taskguid="6774b0bc-dd5e-4eca-a1f9-d982607feb2e" code="0" version="1.5.0.7155" />
Описание параметров
Параметр | Тип | Описание |
---|---|---|
taskguid | guid | Уникальный код этой задачи. При отправке callback будет использован этот код, чтобы вызывающий сервис мог сопоставить запрос и ответ |
2.3 Формат callback (асинхронного ответа)
<RP cmdguid="d87eb27c-6220-4ff4-9d1b-0951b50447a7" posid="4D7B18F2-58CE-4F0F-A2B6-2D90A6BFCF67"> результат выполнения команды </RP>
Параметр | Тип | Описание |
---|---|---|
cmdguid | guid | Совпадает с taskguid в ответе |
posid | guid | POS id кассового сервера (можно игнорировать) |
4 Примеры вызовов
3.1 Пример Get version
3.1.1 Запрос
<?xml version="1.0" encoding="utf-8"?> <RQ cmd="exec_crmcall" tasktype="any_call" callback="http://ya.ru"> <PARAM name="object_id" val="000000000"/> <CRMQuery> <Message Action="Get version" Terminal_Type="№ терминала" Global_Type="blablabla"></Message> </CRMQuery> </RQ>
Описание параметров
Параметр | Тип | Описание |
---|---|---|
Global_Type | string | выдается при получении ключа, требуется указывать при каждом запросе |
Terminal_Type | string | тип терминала, буквенно-цифровой код заводится в карточной системе в меню |
3.1.2 Ответ
<?xml version="1.0" encoding="utf-8"?> <RP taskguid="0a85447e-f4da-4424-8c36-d20c63fe6b89" code="0" version="1.7.0.8215" />
3.1.3 Callback (асинхронный ответ)
<RP cmdguid="0a85447e-f4da-4424-8c36-d20c63fe6b89" posid="797C3E3B-3C33-4D97-87F8-25578FE48BE6"> <Version> <Server_Info>5.09.04.000</Server_Info> <Major>5</Major> <Minor>9</Minor> <Release>4</Release> <Build>0</Build> </Version> </RP>
Обратите внимание, что в 3.1.2 taskguid и 3.1.3 cmdguid совпадают.