Обработка ответа от удаленной системы

Получив ответ от удаленной системы, можно произвести следующие действия:

  1. Передать оператору ссылку на страницу
    Например, для того, чтобы открыть карточку созданного или отредактированного контрагента в CRM.
  2. Изменить значения дополнительных полей посетителя
    Например, записать полученный идентификатор для дальнейшего использования.
  3. Записать дополнительное поле оператора
    Данные, привязанные к оператору. Например, ключи авторизации.

Разбор ответа

Вы можете использовать данные, которые вернула удаленная система для формирования ссылки на страницу и для записи значений дополнительных полей посетителя. Для этого используется конструкция [:ЗАПРОС:] (Открывающая квадратная скобка с двоеточием, после которой следует выражение, содержащее запрос к элементам ответа, двоеточие и закрывающая квадратная скобка). Синтаксис запроса отличается в зависимости от формата.

В выпадающем меню "Тип ответа" блока "Ответ" выберите формат возвращаемых удаленной системой. Netrox SC способна работать с тремя форматами ответа:

  1. Данные в формате JSON
  2. Данные в формате XML
  3. Простой текст

Разбор JSON-ответа

Для перехода между элементами используется символ / (косая черта). В зависимости от структуры используется либо строка-ключ, либо числовой индекс элемента в наборе значений (отсчет начинается с нуля).

К примеру, мы получили в ответе следующую структуру:

{
    "things" : [
        {
            "id"      : 1,
            "color"   : "red"
        },
        {
            "id"      : 2,
            "color"   : "green"
        },
        {
            "id"      : 3,
            "color"   : "blue"
        }
    ] 
}       

Для того, чтобы получить доступ к значению свойства "color" второго элемента списка "things", потребуется такое выражение: [:/things/1/color:]. Результатом будет "green".

Разбор XML-ответа

При работе с XML используется язык запросов XPath (подробнее об XPath на Википедии).

Если ответ содержит такую структуру:

<things>
    <thing id="1" color="red" />
    <superthing>
        <text>Some Example Text</text>
    </superthing>
</things>

Для получения значения атрибута "color" элемента "thing": [:/things/thing/@color:] (Результат: red)

Для получения содержимого элемента "text" элемента "superthing": [:/things/superthing/text:] (Результат: Some Example Text)

Разбор текстового ответа

Если выбран тип ответа "Текст", к использованию доступно только одно выражение: [:text:], которое выдаст все содержимое тела ответа.

Ссылка на страницу

В блоке "Ответ" поставьте галочку "Открывать URL" и в появившемся поле ввода сформируйте адрес страницы, ссылку на которую должен увидеть оператор.

Изменение значения дополнительных полей информации

Поля посетителя

Для того, чтобы назначить значение одному или нескольким полям посетителя, поставьте галочку "Задать значение поля посетителя". Появится список полей, для которых будут заданы значения. Доступные поля посетителя для записи.

Для добавления поля нажмите "+ Поле" справа над таблицей. В появившейся строке выберите поле для задания значения в выпадающем списке и укажите шаблон формирования значения.

Для удаления элемента наведите на соответствующую строку курсор мыши и нажмите появившуюся кнопку "Удалить".

Поля оператора

Чтобы задать значение для дополнительного поля оператора поставьте галочку "Задать значение поля оператора". Для хранения данных доступно 10 дополнительных полей, привязанных к сайту.


Все права защищены. Copyright © 2017 Netrox SC