<
  • Главная
Статьи

Salesbot - amoCRM

  1. Початок роботи з Salesbot
  2. Підключення інтеграції з чатами і настройка Salesbot на вхідні звернення в Digital воронці
  3. Налаштування Salesbot в статусі в Digital воронці
  4. Мова Salesbot
  5. приклад
  6. приклад
  7. Оброблювач помилок Salesbot
  8. приклад
  9. приклад
  10. приклад
  11. приклад
  12. оброблювач goto
  13. приклад
  14. приклад
  15. приклад
  16. приклад
  17. дія unsorted
  18. приклад
  19. приклад
  20. приклад
  21. приклад
  22. приклад
  23. приклад
  24. приклад
  25. приклад
  26. приклад
  27. приклад
  28. приклад
  29. приклад
  30. приклад
  31. приклад
  32. приклад
  33. пресет contacts.validate_base_info
  34. приклад
  35. пресет contacts.get_base_info
  36. приклад
  37. приклад
  38. приклад
  39. приклад
  40. приклад
  41. приклад
  42. приклад
  43. приклад
  44. приклад

Початок роботи з Salesbot

Salesbot - це бот, який можна запрограмувати на виконання певних дій. Він допомагає отримувати від користувачів дані через месенджери (Telegram, Facebook Messenger, VK, Viber).

Для початку роботи вам необхідно підключити інтеграцію з чатами в лівій колонці Digital воронки. Інструкцію для кожного з месенджерів ви знайдете у вікні налаштувань. Після підключення інтеграції з чатами ви можете активувати Salesbot для обробки вхідних нових чатів, а також налаштувати ботів на певні статуси.

Для настройки Salesbot для вхідних повідомлень натисніть на напис Salesbot в лівій частині Digital воронки.
Переведіть перемикач у включене положення, а в поле введення команду або скористаєтеся однієї з наявних заготовок.

Підключення інтеграції з чатами і настройка Salesbot на вхідні звернення в Digital воронці

Для настройки Salesbot в статусах натисніть на кнопку додавання дії і у вікні, натисніть кнопку "Salesbot".
Ви можете вибрати одну з умов терміну виконання дії, або вказати точну дату виконання.
Увага! Угоди потрапили в статус до появи дії в Digital воронці будуть проігноровані.

Налаштування Salesbot в статусі в Digital воронці

Salesbot в статусах може бути написаний у вигляді звичайного повідомлення, яке буде надіслано користувачеві, або у вигляді спецально коду, який дозволить зробити роботу бота більш інтерактивною і виконати ті чи інші завдання бізнесу. Salesbot для обробки вхідних повідомлень підтримує тільки спеціальний код.

Мова Salesbot

Мовою управління Salesbot є структурований JSON об'єкт з певними ключами.
Приклад нижче задасть питання "Повідомте, будь ласка, ваш номер телефону та e-mail" і проставить тег угоді Salesbot.
Після відповіді користувача він провалідірует дані і відповість одним із зазначених повідомлень. Детальніше про пресети читайте в наступному розділі.

приклад

[{ "Question": [{ "handler": "show", "params": { "type": "text", "value": "Будь ласка, повідомте, будь ласка, вашномер телефону іe-mail"}}, { "handler ":" action "," params ": {" name ":" set_tag "," params ": {" type ": 2," value ":" salesbot "}}}]," answer ": [{" handler ":" preset "," params ": {" name ":" contacts.validate_base_info "," params ": {" empty_email ":" Надішліть, будь ласка, вашe-mail "," empty_phone ":" Надішліть, будь ласка, вашномер телефону "," invalid_phone ":" Нам здається, що вномере телефонаошібка "," success ":" Спасибі "}}}]}]

В об'єкті повинен бути ключ question або answer.
Дані в об'єкті question відповідають за дії, які будуть відбуватися під час надсилання повідомлення користувачу.
Дані в об'єкті answer відповідають за дії, які будуть відбуватися при відповіді користувача.

Ключів question або answer може бути більше одного. Однак, існує обмеження на розмір JSON, не більше 64 Кб.

В об'єкті question або answer повинні знаходиться обработчкі. Оброблювачем є об'єкт з ключами handler і params.

Перед додаванням JSON об'єкта в бота, перевірте його на валідність. Також валідний об'єкт можна отримати, використовуючи PHP. Вам необхідно створити масив Salesbot, а потім застосувати функцію json_encode c прапорами JSON_PRETTY_PRINT і JSON_UNESCAPED_UNICODE.

приклад

$ Bot_text = 'Привіт світ!'; $ Salesbot = [[ 'question' => [[ 'handler' => 'show', 'params' => [ 'type' => 'text', 'value' => $ bot_text,],],], 'answer' => [[ 'handler' => 'preset', 'params' => [ 'name' => 'contacts.get_base_info',],],],],]; echo json_encode ($ salesbot, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE);

Результатом виконання коду вище буде валідний JSON об'єкт, готовий для вставки в Salesbot'а Digital воронки.

Оброблювач помилок Salesbot

Якщо повідомлення від Бота не може бути доставлено клієнту, наприклад коли клієнт заблокував повідомлення з цього чату. Бот може обробити помилку, і виконати будь-які обробники.

приклад

{ "0": { "question": [...], "answer": [...]}, "error": [{ "handler": "action", "params": { "name": "change_status", "params": { "value": 142}}}]}

обробники Salesbot

Код Опис show Відправляє повідомлення з текстом buttons Обробка відповіді, отриманого від кнопок з месенджерів (VK не підтримує відображення кнопок) action Дія meta Обробка мета-даних condition Умова preset Обробляє дані за певним алгоритмом goto Перехід сценарію до певного кроку find Пошук filter Фільтрація send_internal Відправити внутрішнє повідомлення

оброблювач show

Увага! Даний обробник приймає неразобранное, в разі, якщо налаштований в Salesbot'е вхідної черги.

Оброблювач show відправляє повідомлення або кнопки в чат з клієнтом
Будь-текст, що відправляється на даний момент підтримує наступні елементи розмітки:

  • {{Contact.name}}, {{name}} - установка імені контакту
  • {{Lead.id}} - установка id угоди
  • {{Contact.id}} - установка id контакту
  • {{Customer.id}} - установка id покупця
  • {{Origin}} - установка джерела угоди (telegram, vk, viber, facebook)
  • {{Message_text}} - отримане повідомлення клієнта в логічному блоці відповіді
  • {{Lead.cf. # custom_field_id #}} - установка значення кастомними поля угоди, замість # custom_field_id # підставте id додаткового поля
  • {{Contact.cf. # Custom_field_id #}} - установка значення кастомними поля контакту, замість # custom_field_id # підставте id додаткового поля
  • {{Rand}} - установка злучення рядки
  • {{Message_text.email}} - установка email, якщо він є в повідомленні від клієнта
  • {{Message_text.phone}} - установка телефону, якщо він є в повідомленні від клієнта
  • {{Regexp./([1-9]+) речей /}} - установка значення за регулярним вирази з відповіді користувача. Підставитися значення з круглих дужок. Може бути використано в блоці answer
  • {{Lead.price}} - установка бюджету угоди
  • {{Current_date}} - встановити дату
  • {{Short_rand}} - установка короткою випадкової рядки
  • {{Lead.status_id}} - установка id статусу
  • {{Customer.groups_subscribers}} - установка id груп підписаних на чат покупця, до якого прив'язаний контакт
  • {{Lead.groups_subscribers}} - установка id груп підписаних на чат угоди, до якої прив'язаний контакт
  • {{Customer.users_subscribers}} - установка id користувачів підписаних на чат покупця, до якого прив'язаний контакт
  • {{Lead.users_subscribers}} - установка id користувачів підписаних на чат угоди, до якої прив'язаний контакт

Параметри обробника для відправки тексту

приклад

{ "Handler": "show", "params": { "type": "text", "value": "Будь ласка, повідомте, будь ласка, ваш номер телефону та e-mail", "quick_replies": [ "user_phone_number", " user_email "]}} Параметр Тип Опис type text Відправка тексту або кнопок value string Текст, який буде відправлений користувачеві quick_replies array Масив елементів (на даний момент доступні" user_phone_number "і" user_email "), який відправляє кнопки швидких відповідей (Доступно тільки для facebook - відображаються кнопки, що містять інформацію facebook аккаунта користувача (телефон, email))

Параметри обробника для відправки кнопок

приклад

{ "Handler": "show", "params": { "type": "buttons", "value": "Виберіть, будь ласка, тип участі:", "buttons": [ "Особиста присутність", "Онлайн"] }} Параметр Тип Опис type button Відправка тексту або кнопок value string текст, який буде відправлений користувачеві (в Messenger текст довше 80 символів буде обрізаний) buttons array Масив, елементами якого є тексти кнопок, які будуть відправлені accept_unsorted bool Встановити в false, якщо не потрібно розбирати неразобранное при першій відповіді

оброблювач buttons

Оброблювач buttons призначений для вставки в логічний блок відповіді і дозволяє обробляти відповідь з відправлених кнопок або відповідь за точним збігом

приклад

{ "Handler": "buttons", "params": [{ "value": "Особиста присутність", "params": [{ "handler": "...", "params": {...}} ]}, { "value": "Онлайн", "params": [{ "handler": "...", "params": {...}}]}]}

Оброблювач buttons очікує на вхід в параметри масив об'єктів, в яких можна зателефонувати за одним з обробників, зазначених на цій сторінці

оброблювач goto

Оброблювач goto дозволяє перейти до потрібного кроку в сценарієм, наприклад якщо вам потрібно циклічно виконувати якісь дії. Звертаємо увагу, що відлік етапів ведеться з 0.

приклад

{ "Handler": "goto", "params": { "type": "question", "step": 3}} Параметр Тип Опис type string Якою блок буде здійснений перехід. Можливі значення "question" і "answer" step int На який крок бота буде здійснений перехід

оброблювач find

Оброблювач find дозволяє визначити сутність і використовувати її дані. Якщо знайдений елемент, можна використовувати маркер {{founded_id}}

приклад

{ "Handler": "find", "params": { "type": "contact_double", "params": { "type": "name", "actions": [{ "handler": "show", " params ": {" type ":" buttons "," value ":" Це ваш номер {{contact_double.cf.3574}}? "," buttons ": [" Так "," Ні "]}}]}} } Параметр Тип Опис type string contact_double - пошук дубля поточного контакту catalog_elements - пошук елемента каталогу params array type - може бути name (пошук доступний на ім'я), actions - дії, які треба виконати якщо сутність була знайдена value string Слово яке шукаємо, можуть бути використані маркери з блоку SHOW catalog_id int Id каталогу - в якому шукаємо елементи

оброблювач filter

Оброблювач filter дозволяє визначити сутність і використовувати її дані. Якщо знайдений елемент, можна використовувати в маркерах по кастомними полях external_lead і external_contact

приклад

{ "Handler": "filter", "params": { "type": 2, "value": "{{lead.cf.111}}", "custom_fields_id": 222, "actions": [{ "handler ":" action "," params ": {" name ":" set_custom_fields "," params ": {" type ": 1," value ":" {{external_contact.cf.333}} "," custom_fields_id ": 444, "enum": "WORK"}}}]}} Параметр Тип Опис type int Тип сутності по якій проіхсодіт фільтр: 1 - контакт, 2 - угода, 12 - покупець value string Слово за яким фільтруємо, можуть бути використані маркери з блоку SHOW custom_fields_id int Id кастомними поля, який погашатиметься фільтр

оброблювач send_internal

Оброблювач send_internal дозволяє відправити внутрішнє повідомлення в чат угоди або покупця.

приклад

{ "Handler": "send_internal", "params": { "entity_id": "{{customer.id}}", "entity_type": 12, "message": "Всім привіт"}} Параметр Тип Опис entity_id int Id суті, в яку буде відправлено повідомлення. Можуть бути використані маркери {{customer.id}}, {{lead.id}} entity_type int Тип сутності, в яку буде відправлено повідомлення: 2 - угода, 12 - покупець message string Рядок з повідомленням

оброблювач action

Оброблювач action дозволяє виконати одну з можливих дій

Код Опис unsorted Дії я нерозібраних change_status Зміна статусу set_tag Установка тега unset_tag Видалення тега set_custom_fields Установка значень полів угоди / контакту subscribe Підписка групи користувачів на чат по суті add_lead_contact Додавання угоди і контакту, пов'язаних між собою set_budget Установка бюджету угоди add_linked_company Додавання компанії add_note Додавання примітки link пов'язує елементи change_responsible_user Змінює відповідального link_to_unsorted Створює контакт з нерозібраних і пов'язує його з сутністю

дія unsorted

Дія unsorted дозволяє прийняти або відхилити неразобранное

приклад

{ "Handler": "action", "params": { "name": "unsorted", "params": { "value": "accept"}}}, { "handler": "action", "params" : { "name": "unsorted", "params": { "value": "decline"}}} Параметр Тип Опис value string accept / decline для прийняття / відхилення

дія change_status

Дія change_status дозволяє змінити статус угоди

приклад

{ "Handler": "action", "params": { "name": "change_status", "params": { "value": 142}}} Параметр Тип Опис value int id статусу, в який буде переведена угода entity int Не обов'язково параметр, може бути double, якщо перед цим використовувалася функція find, тоді статус зміниться у угоди знайденого конаткта, якщо вона є

дія set_tag

Дія set_tag встановить угоді або контакту тег, має підтримку розмітки {{origin}}, яка проставить джерело угоди

приклад

{ "Handler": "action", "params": { "name": "set_tag", "params": { "type": 2, "value": "Salesbot"}}}, { "handler": " action "," params ": {" name ":" set_tag "," params ": {" type ": 2," value ":" {{origin}} "}}} Параметр Тип Опис type int Тип сутності, якій буде встановлено тег (1 - контакт, 2 - угода) value string Назва тега

дія unset_tag

Дія unset_tag видалить тег у угоди або контакту

приклад

{ "Handler": "action", "params": { "name": "unset_tag", "params": { "type": 2, "value": "Salesbot"}}} Параметр Тип Опис type int Тип сутності , у якій буде видалений тег (1 - контакт, 2 - угода) value string Назва тега, який буде видалений

дія set_custom_fields

Дія set_custom_fields встановить угоді або контакту значення кастомних полів.
ID полів можна дізнатися в розділі Настройки> Поля або використовуючи метод GET accounts / current В значення поля можна використовувати маркери описані в розділі "Оброблювач show"

приклад

{ "Handler": "action", "params": { "name": "set_custom_fields", "params": { "type": 2, "value": "Значення поля", "custom_fields_id": 123}}} , { "handler": "action", "params": { "name": "set_custom_fields", "params": { "type": 2, "value": "{{message_text}}", "custom_fields_id": 987}}} Параметр Тип Опис type int Тип сутності, якій будуть задані кастомниє поля (1 - контакт, 2 - угода) value string значення поля, яке буде встановлено custom_fields_id int id поля, в яке буде встановлено значення calculated bool чи потрібно спробувати порахувати значення цього кастомними поля за формулою, наприклад {{lead.cf.123}} * {{lead.cf.456}}

дія subscribe

Дія subscribe підпише групу користувачів на чат

приклад

{ "Handler": "action", "params": { "name": "subscribe", "params": { "type": "group", "value": 111}}} Параметр Тип Опис type string В даний момент повинен приймати значення group value int id групи користувачів entity_type int Необов'язковий параметр, який вказує в чат який суті потрібно прив'язати групу користувачів: 2 - угода, 12 - покупець. Якщо не вказати, то за замовчуванням entity_type = 2

дія add_lead_contact

Дія add_lead_contact додасть угоду і контакт і зв'яже їх між собою. Всі поля угоди і контакту можна налаштувати. У значеннях кастомних полів підтримується розмітка, така ж як в обробнику show. Так само підтримується пресет, що б контакт і угода створювалися тільки в разі, якщо від клієнта надійшло повідомлення або телефон.

приклад

{ "Handler": "action", "params": { "name": "add_lead_contact", "params": { "preset": "contacts.require_email_or_phone", "lead": { "name": "Lead name" , "status_id": 142, "responsible_user_id": 123, "price": 2000, "tags": "", "custom_fields": [{ "id": 77744111, "values": [{ "value": "{ {contact.name}} "}]}, {" id ": 77744222," values ​​": [{" value ":" {{lead.cf.77744222}} "}]}]}," contact ": { "name": "Contactname", "responsible_user_id": 123, "tags": "", "custom_fields": [{ "id": 77744333, "values": [{ "value": "{{rand}}" }]}, { "id": 77744444, "values": [{ "value": "{{message_text.email}}", "enum": "WORK"}]}, { "id": 77744555, " values ​​": [{" value ":" {{message_text.phone}} "," enum ":" WORK "}]}]}}}} Параметр Тип Опис lead object набір полів угоди contact object набір полів контакту preset string Чи не обов'язковий параметр. Підтримується один пресет contacts.require_email_or_phone, який перевіряє переданий чи телефон або email в повідомленні від клієнта

дія set_budget

Дія set_budget встановить бюджет для угоди

приклад

{ "Handler": "action", "params": { "name": "set_budget", "params": { "value": "{{lead.cf.555123}} * {{lead.cf.555321} } "}}} Параметр Тип Опис value string Число, яке буде записано в бюджет угоди.
Так само поле може бути обчислюваним, в вирази можна підставляти будь-які маркери з блоку SHOW.
Доступні операції: +, -, *, /, так само можна використовувати дужки
наприклад: {{lead.cf.555123}} * {{lead.cf.555321}}

дія add_linked_company

Дія add_linked_company Додасть компанія прив'язану до угоди і контакту

приклад

{ "Handler": "action", "params": { "name": "add_linked_company", "params": { "name": "{{message_text}}"}}} Параметр Тип Опис name string Назва компанії, можуть використовуватися маркери з блоку SHOW

дія add_note

Дія add_note додасть примітка

приклад

{ "Handler": "action", "params": { "name": "add_note", "params": { "element_type": 1, "note_type": 4, "text": "Текст примітки"}}} параметр Тип Опис element_type int Сутність, до якої буде прикріплення примітка: 1 - контакт, 2 - угода note_type int Тип примітки:
4 - звичайне примітка
10 - Примітка вхідного дзвінка
11 - Примітка вихідного дзвінка
102 - Примітка входить смс повідомлення
103 - Примітка вихідного смс повідомлення
25 - Сервісне примітка text string Текст примітки, в ньому можуть бути використані маркери з блоку SHOW

дія link

Дія link Пов'язує елементи

приклад

{ "Handler": "action", "params": { "name": "link", "params": { "from": 2, "to": 11, "to_id": "{{founded_id}}" , "to_catalog_id": 123}}} параметр Тип Опис from int Сутність, до якої буде проводиться прикріплення: 1 - контакт, 2 - угода from_id int Чи не обов'язковий параметр. Id суті, до якої буде проводиться прикріплення. Якщо не вказано, то буде використаний id поточної сутності. Можна використовувати маркери з розділу SHOW to int Сутність, яку потрібно прикріпити прікрепеленіе: 1 - контакт, 2 - угода, 11 - елемент каталогу, 3 - компанія to_id string Id елемента який потрібно прикріпити, можна використовувати маркери з розділу SHOW to_catalog_id int Чи не обов'язковий параметр , id каталогу - якщо прив'язується елемент каталогу quantity string Чи не обов'язковий параметр, кількість елементів каталогу, яке буде прив'язане до суті. Можна використовувати маркери з розділу SHOW

дія change_responsible_user

Дія change_responsible_user змінює відповідального у угоди або пов'язаного з нею контакту

приклад

{ "Handler": "action", "params": { "name": "change_responsible_user", "params": { "value": 123, "type": 2}}} Параметр Тип Опис value int id користувача, якого потрібно зробити відповідальним type int Чи не обов'язковий параметр, тип сутності, у якій міняємо відповідального: 1 - контакт, 2 - угода, якщо не переданий - за замовчуванням - 2

дія link_to_unsorted

Дія link_to_unsorted пов'язує чат з нерозібраних із зазначеним контактом в угоді / покупця. Якщо зазначений контакт відсутній в угоді / покупця, то прив'язка не відбудеться. Якщо не вказати contact_id, то в зазначеній угоді / покупця створиться контакт.

приклад

{ "Handler": "action", "params": { "name": "link_to_unsorted", "params": { "entity_type": 2, "entity_id": "12345"}}} Параметр Тип Опис entity_type int Тип сутності : 2 - угода, 12 - покупець entity_id string Id суті до якої повинен прив'язатися контакт. Можна використовувати маркери, наприклад, якщо використовувався обробник filter, {{external_lead.id}}, {{external_customer.id}} contact_id string Чи не обов'язковий параметр. Id контакту до якого повинен прив'язатися чат. Контакт повинен перебувати в зазначеній угоді. Можна використовувати маркери, наприклад, якщо використовувався обробник filter, {{external_contact.id}}

оброблювач meta

Оброблювач meta призначений для обробки додаткових даних, які передаються при запуску чату

Детальніше про передачу meta-даних читайте в документації месенджерів:

приклад

{ "Handler": "meta", "params": { "delimiter": "-", "values": [ "lead.tags", "lead.custom_fields.123", "lead.custom_fields.124", " lead.tags "]}} Параметр Тип Опис delimiter string Символ, за яким буде розділений входить контент на елементи values ​​array Масив значень, в які будуть записані елементи вхідної інформації.
Значення можна записати в теги або поля угоди

оброблювач condition

Оброблювач condition призначений для створення логічних умов

приклад

{ "Handler": "condition", "params": { "term1": "lead.tags", "term2": "telegram", "operation": "=", "result": [{ "handler": "action", "params": { "name": "change_status", "params": { "value": 123}}}]}} Установки Тип Опис term1 string Умова 1 может буті
lead.tags - Який Повертає список тегів,
chat.origin - Який Повертає джерело звідки прийшла заявка (vk, facebook, telegram, viber)
будь-який обробник з блоку описаного в розділі SHOW, наприклад {{contact.name}} term2 string Умова 2, можна використовувати маркери з блоку SHOW operation string Оператори порівняння ( '=', '! ='), 'in'
in - У term1 і term2 можна використовувати такі рядки або маркери з блоку SHOW. Бере рядок з term1 і term2, розбиває на значення по комам і шукає входження значень з term2 в term1. Якщо хоча б один збіг є, то буде виконаний масив оброблювачів result array При успішному порівнянні, масив оброблювачів

оброблювач preset

Оброблювач preset призначений для обробки вхідних повідомлень по встановленим шаблонами

Параметр Тип Опис name string Назва обробника params array Параметри обробника

пресет contacts.validate_base_info

Пресет contacts.validate_base_info дозволяє отримати і перевірити інформацію від користувача, а потім дозапросіть відсутню

приклад

{ "Handler": "preset", "params": { "name": "contacts.validate_base_info", "params": { "empty_email": "Надішліть, будь ласка, ваш e-mail", "empty_phone": "Надішліть , будь ласка, ваш номер телефону "," invalid_phone ":" Нам здається, що в номері телефону помилка "," success ":" Спасибі "," empty_all ":" Надішліть, будь ласка, ваш номер телефону та e-mail "," empty_all ":" Надішліть, будь ласка, ваш номер телефону та email "," check_doubles ": true," phone_doubles ":" Даний номер телефону вже використовується. Введіть інший номер "," email_doubles ":" Даний email вже використовується. Введіть інший email "," all_doubles ":" Даний номер телефону і email вже використовуються. Введіть інші контактні данни е "," use_quick_replies ": true}}} Параметр Тип Опис empty_email string Повідомлення за браком email у контакту empty_phone string Повідомлення за браком телефону у контакту invalid_phone string Повідомлення при отриманні невалидность телефону success string Повідомлення після отримання всіх даних empty_all string Повідомлення за браком всіх даних check_doubles bool Параметр, який відповідає за включення пошуку дублів контактів по email і номером телефону. Якщо включений, то при знаходженні дубля контакту, будуть повторно запитані контактні дані. true - включений, false або відсутній - вимкнений. phone_doubles string Повідомлення, яке відобразиться, якщо знайдений дубль контакту за номером телефону email_doubles string Повідомлення, яке відобразиться, якщо знайдений дубль контакту по email all_doubles string Повідомлення, яке відобразиться, якщо знайдені дублі контакту за номером телефону і email use_quick_replies bool Параметр, що відправляє за відсутності email та / або телефону у контакту кнопки швидких відповідей (Доступно тільки для facebook - відображаються кнопки, що містять інформацію facebook аккаунта користувача (телефон, email)). Для включення - задати значення true

пресет contacts.get_base_info

Пресет contacts.get_base_info дозволяє отримати інформацію, даний пресет не ставить додаткових питань

приклад

{ "Handler": "preset", "params": { "name": "contacts.get_base_info"}}

приклад

Підписка групи користувачів на чат.

приклад

[{ "Question": [{ "handler": "action", "params": { "name": "subscribe", "params": { "type": "group", "value": 111}}} ]}]

Переклад угоди в потрібний статус.

приклад

[{ "Question": [{ "handler": "action", "params": { "name": "change_status", "params": { "value": 142}}}]}]

Відправлення клієнтові будь-якого тексту.

приклад

[{ "Question": [{ "handler": "show", "params": { "type": "text", "value": "Здрастуйте"}}]}]

Відправлення повідомлення з кнопками вибору.

приклад

[{ "Question": [{ "handler": "show", "params": { "type": "buttons", "value": "Виберіть, будь ласка, тип участі:", "buttons": [ "Приватне присутність "," Онлайн "]}}]," answer ": [{" handler ":" buttons "," params ": [{" regex ":" / приватне / iu "," params ": [{" handler ":" action "," params ": {" name ":" set_custom_fields "," params ": {" type ": 1," value ":" Особиста присутність "," custom_fields_id ": 4242}}}]}, { "regex": "/ онлайн / iu", "params": [{ "handler": "action", "params": { "name": "set_custom_fields", "params": { "type": 1, "value": "Онлайн", "custom_fields_id": 4242}}}]}]}]}]

Установка тега для угоди.

приклад

[{ "Question": [{ "handler": "action", "params": { "name": "set_tag", "params": { "type": 2, "value": "salesbot"}}} ]}]

Установка значення додаткового полю.

приклад

[{ "Question": [{ "handler": "action", "params": { "name": "set_custom_fields", "params": { "type": 2, "custom_fields_id": 123, "value": "значення поля"}}}]}]

Збереження метаданих в картку угоди.

приклад

[{ "Question": [{ "handler": "meta", "params": { "delimiter": "-", "values": [ "lead.tags", "lead.custom_fields.123", "lead .custom_fields.124 "," lead.tags "]}}]}]

Зарпос email і телефону, запис в картку тільки з першого відповіді.

приклад

[{ "Question": [{ "handler": "show", "params": { "type": "text", "value": "Будь ласка, повідомте, будь ласка, ваш номер телефону та e-mail"}}], "answer": [{ "handler": "preset", "params": { "name": "contacts.get_base_info"}}]}]

Використання оператора 'in' в порівнянні

приклад

[{ "Question": [{ "handler": "condition", "params": { "term1": "{{customer.groups_subscribers}}", "term2": "0,12345", "operation": " in "," result ": [{" handler ":" show "," params ": {" type ":" text "," value ":" Одна з двох груп підписана на чат в покупці "}}]}} ]}]


Новости
    Без плагина
    На сайте WordPress имеется файл, именуемый как .htaccess. Многие пользователи не предают ему особого внимания и не используют все его возможности. На самом деле файл .htaccess – это дополнительные конфигурации

    Плагин подписки wordpress
    Очень трудно найти один плагин подписки wordpress , который объединил бы в себе все виды подписок, которые так необходимы сайту. Именно поэтому я решил сделать подборку лучших плагинов, которые смогут

    Слайд-шоу с помощью плагина для WordPress UnPointZero Slider
    Плагин для cms WordPress UnPointZero Slider – новостной слайдер. Он отражает в форме слайд-шоу изображения со ссылками на ваши статьи и краткие выдержки оттуда. Его можно установить и на новостной сайт,

    Плагины для Wordpress
    С помощью этого плагина вы легко сможете интегрировать Google диск на ваш WordPress сайт или блог . Gravity Forms — лучший плагин для создания форм на WordPress, от самых простых (например, форма

    Подписки плагином JetPack: размещение и редакция формы подписки
    Вступление Здравствуйте! В этой статье я покажу, как использовать плагин JetPack для создания пользовательской формы подписки и как эту формы подписки плагином JetPack добавлять в статьи сайта, а при

    Чистка сайта WordPress плагином WP-optimize
    От автора Со временем использования система WordPress накапливает не нужные файлы, комментарии и неиспользуемые данные в базе данных. Эти файлы и данные создаются в процессе работы и нужны для этого,

    Возможности Jetpack плагина
    Вступление Возможности Jetpack плагина это более 30 функциональных модуля плагина, делающего его универсальным плагином WordPress, заменяющего аналогичные сторонние плагины. Jetpack один заменяет десятки

    Резервное копирование WordPress сайта без плагинов
    Вступление Резервное копирование WordPress это второе, что нужно научиться делать после установки WordPress. Можно сколько угодно говорить о безопасности сайта и его защите, но лучшего варианта защиты

    Плагины на приват для Майнкрафт ПЕ
    > > Плагины на приват для Майнкрафт ПЕ Порой всем нам хочется попробовать себя в роли администратора сервера и испытать эту ответственность, но, к сожалению, вы не всегда все знаете о создании

    Плагин WordPress Database Backup. Архивация базы данных блога на WordPress
    Привет друзья! Сегодня на очереди еще один простой, НО, необходимый и полезный плагин — плагин WordPress Database Backup , который с легкостью и самостоятельно произведет процесс, который научно называется:

  • Виртуальный хостинг

    Виртуальный хостинг. Возможности сервера распределяются в равной мере между всеми... 
    Читать полностью

  • Редизайн сайта

    Редизайн сайта – это полное либо частичное обновление дизайна существующего сайта.... 
    Читать полностью

  • Консалтинг, услуги контент-менеджера

    Сопровождение любых интернет ресурсов;- Знание HTML и CSS- Поиск и обновление контента;-... 
    Читать полностью

  • Трафик из соцсетей

    Сравнительно дешевый способ по сравнению с поисковым и контекстным видами раскрутки... 
    Читать полностью

  • Поисковая оптимизация

    Поисковая оптимизация (англ. search engine optimization, SEO) — поднятие позиций сайта в результатах... 
    Читать полностью