5.1.2. Передача команд
Реализуется с помощью передачи в ДП XML-пакета с тегом <Command> и совокупностью атрибутов этого тега, детализирующих команду, объект, место применения и направление взаимодействия, а также уточняющих момент возникновения и указание как реакции на команду:
Подписка на события определенной категории
<Command [ID=”GUID”] Action=”Вид команды” Mode=”место”> </Command>
Если разработчик внешнего приложения нуждается в контроле исполнения команды, то он самостоятельно генерирует GUID и указывает его в качестве идентификатора конкретной команды (атрибут ID) - в таком случае от ДП поступит ответ
Результат исполнения команды на подписку
<CommandResult ID=”GUID, указанный разработчиком” Action=”указанный вид команды” Mode=”указанное место”> <Result></Result> [<Error>Описание ошибки по-английски</Error>] </CommandResult>
Action | Описание | Входной параметр (тег) | Примечание | Пример |
---|---|---|---|---|
ChangeMyOnlineStatus | Сменить собственный онлайн-статус | <Status> | Атрибут Mode не указывается | Смена статуса <Command ID="123" Action="ChangeMyOnlineStatus"><Status>Away</Status></Command> |
SendMessage | Отправить пользовательское сообщение в чат | теги, присущие указанному значению атрибута Mode | Отправка сообщения <Command ID="123" Action="SendMessage" Mode="Colleagues"><ColleagueID>11111111-1111-1111-1111-111111111111</ColleagueID> <MessageBody>test</MessageBody></Command> | |
теги, присущие Object="Message" | ||||
CallTo | Позвонить в чат | теги, присущие указанному значению атрибута Mode | ||
теги, присущие Object="Call" для State=”Initialized” | ||||
Позвонить в софтфон | теги, присущие указанному значению атрибута Mode | Звонок в софтфон <Command ID="123" Action="CallTo" Mode="Softphone"><CallTo>11111111111</CallTo></Command> | ||
GetAvailableSpecialists | Получить список специалистов, доступных для перевода обращения в чате по ЛП | <ServiceID> | Только Mode="ServicesClients" | Получить список специалистов <Command ID=”123” Action=”GetAvailableSpecialists” Mode=”ServicesClients”><ServiceID>22222222-2222-2222-2222-222222222222</ServiceID></Command> |
GetAvailableServiceLines | Получить список других ЛП, доступных для перевода обращения в чате по ЛП | теги, присущие Mode="ServicesClients" | Получить список ЛП <Command ID=”123” Action=”GetAvailableServiceLines” Mode=”ServicesClients”><ServiceID>22222222-2222-2222-2222-222222222222</ServiceID><UserID>11111111-1111-1111-1111-111111111111</UserID></Command> | |
OpenTreatment | Открыть обращение на ЛП (самоназначиться) | теги, присущие Mode="ServicesClients" | Открыть обращение <Command ID=”123” Action=”OpenTreatment” Mode=”ServicesClients”><UserID>11111111-1111-1111-1111-111111111111</UserID><ServiceID>22222222-2222-2222-2222-222222222222</ServiceID></Command> | |
CloseTreatment | Закрыть обращение в ЛП | <TreatmentID> | Только Mode="ServicesClients" | Закрыть обращение <Command ID=”123” Action=”CloseTreatment” Mode=”ServicesClients”><TreatmentID>33333333-3333-3333-3333-333333333333</TreatmentID></Command> |
TransferTreatment | Перевести обращение на другого специалиста/другую ЛП | <TreatmentID> | Только Mode="ServicesClients" | Перевод обращения <Command ID=”123” Action=”TransferTreatment” Mode=”ServicesClients”><TreatmentID>33333333-3333-3333-3333-333333333333</TreatmentID><SpecialistID>1111111-1111-1111-1111-111111111111</SpecialistID></Command> Перевод обращения <Command ID=”123” Action=”TransferTreatment” Mode=”ServicesClients”><TreatmentID>33333333-3333-3333-3333-333333333333</TreatmentID><ServiceID>2222222-2222-2222-2222-222222222222</ServiceID><Citation>Имя [04.02.2019 12:30] текст</Citation></Command> |
<SpecialistID>/<ServiceID> | Указывать либо специалиста, либо линию поддержки. Возможные значения получать командами GetAvailableSpecialists и GetAvailableServiceLines | |||
[ <Citation> ] | Цитата, сопровождающая перевод обращения, формат цитаты: Имя_автора [dd.mm.yyyy hh:mm] текст_цитаты |