+7 495 255 06 20
Войти Начать бесплатно
Сменить регион сайта
Россия (выбрано)
English Казахстан и СНГ

Рассылка по контактам Битрикс24 через Конструктор ботов

В Конструкторе ботов можно сделать рассылку по клиентской базе Битрикс24. Для этого нужно создать и настроить воронку в Битрикс24, добавить новые поля в «Контакт» и «Сделку» и собрать сценарий в Конструкторе ботов.

ChatApp должен быть подключен к Битрикс24 по инструкции: https://chatapp.online/ru/help/attachment-settings/.

Настройка полей контакта и сделки

Контакт

  1. Откройте карточку контакта.
  2. Нажмите «Создать поле».
  3. Выберите «Список».
  4. Введите название поля — «Тип контакта».
  5. В элементах списка введите типы, по которым вы хотите разделить контакты. Например: «клиент», «партнер», «кадровый резерв». 
  6. Нажмите «Сохранить».

Сделка

  1. Откройте любую сделку.
  2. Нажмите «Создать поле».
  3. Выберите тип поля «Строка».
  4. Назовите поле «Введите url сценария рассылки».
  5. Поставьте галочку «Обязательное на стадии».
  6. Укажите обязательной стадию «Ввести сценарий».
  7. Теперь при перемещении сделки на стадию «Ввести сценарий» появится окно c запросом ввести url сценария рассылки.

Создание сценария в конструкторе ботов

1. Настройте Битрикс24 на приемку webhook по инструкции https://chatapp.online/ru/help/bitrix-webhook-case/#shag-1.-nastroit-bitriks24-na-priemku-webhook.
2. Перейдите в Конструктор ботов.
3. Удалите «Стартовый блок».
4. Добавьте блок «Входящий Webhook». Заполнять параметры и добавлять поля не нужно — блок нужен только чтобы запустить сценарий.
5. Cкопируйте ссылку из блока «Входящий вебхук» и сохраните её. Её нужно будет вставить в робота «Исходящий вебхук» в Битрикс24, см. раздел «Настройка воронки в Битрикс24» пункт 6.

6. Создайте три переменные: i, b, c. Все они должны быть типа «Целое число».
i будет отвечать за порядковый номер элемента в списке;
b — будет хранить количество обработанных контактов;
c — будет содержать информацию о количестве обработанных контактов в рамках одного запроса (50 контактов).

7. Создайте подряд три блока «Изменение переменной» и соедините их между собой.

  • Переменной b укажите значение 0;
  • Переменной укажите значение -1;
  • Переменной укажите значение 0.

8. Добавьте блок «API запрос».

9. В блоке «API запрос» выберите «Тип запроса» — «GET» и вставьте ссылку из Битрикс24 в поле «Ссылка запоса». Для получения ссылки зайдите в Битрикс24 → нажмите «Разработчикам» → «Другое» → «Входящий вебхук» → «Настройка прав» → «CRM» → скопируйте «Вебхук для вызова rest api» → «Сохранить».

Параметры запроса нужно указать в ссылке:

https://имя портала/bitrix24.ru/rest/1/raj4lkiag1pqnqqu/crm.contact.list?start={{b}}&select[]=NAME&select[]=PHONE&select[]=TYPE_ID

  • start={{b}} — порядковый номер контакта, с которого должен начинаться список;
  • select[]=NAME&select[]=PHONE&select[]=TYPE_ID — поля Имя (NAME), Телефон (PHONE), Тип контакта (ID поля Тип контакта).

Как узнать ID поля:

  • В браузере Chrome перейдите в Битрикс24 и кликните правой кнопкой мыши по нужному полю;
  • Нажмите «Посмотреть код»;
  • name=ID нужного поля. Например, «TYPE_ID»;

10. Во вкладке «mapping» блока «API запрос» сопоставьте результат «$.total» с переменной в конструкторе. Назовите переменную, например, «total». Это нужно, чтобы узнать сколько всего элементов в списке.

11. Нажмите «Сохранить» в блоке «API запрос».

12. Добавьте блок «Программатор». Он позволит обрабатывать список, который вернет «API запрос».

13. Впишите в блок «Программатор» код:

let i = {{i}} +1
let b = {{b}} +1
let c = {{c}} +1
save({i, b, c})

К созданным ранее переменным каждый цикл будет добавляться +1, чтобы знать, сколько элементов уже обработано и была возможность обращаться к новым. «save({i, b, c})» — сохраняет результат.

14. Теперь нужно установить проверку поля «Тип контакта», чтобы отправить сообщение только нужным контактам. Например, чтобы в рассылку попали контакты с типом «Клиенты» и «Партнеры», а «Кадровый резерв» — нет. 

Для этого нужно узнать ID значения «Кадровый резерв» поля «Тип контакта»:

  • В браузере Chrome кликните правой кнопкой мыши по полю «Тип контакта»;
  • Нажмите «Посмотреть код»;
  • Посмотрите значение в поле value=. Пример значения: «value=UC_TZW4SU» — этот ID содержит «кадровый резерв».

15. Создайте блок «Изменение переменной».

16. Cоздайте диалоговую переменную «TYPE_ID» и в блоке «Изменение перменной» вложите в нее значение результата блока «API запрос», который содержит тип контакта, он будет такого вида: {{send_request|node-pW88Rp|data.result[i].TYPE_ID}}.

17. В первом блоке «Условие» настройте проверку, что в TYPE_ID лежит «кадровый резерв» — вставьте в поле справа его ID. 

18. Если TYPE_ID = кадровый резерв, то мы пропускаем этот контакт и повторяем шаг до тех пор, пока результат «Условие 1» не будет False. Для этого соединяем «Условие 1» обратно с программатором.

19. Чтобы сценарий не ушел в бесконечный цикл если будет подряд больше 50 контактов «кадровый резерв», добавьте между блоками еще одно «Условие»:

  • Если переменная c меньше или равна 49, то сценарий идет дальше;
  • Если с=50, пора обновить запрос и получить следующую страницу с новыми 50 контактами.
    Для этого результат «=50» возвратите в блок «Изменение переменной» где значение i изменится на -1.

20. После втрого блока «Условие» поставьте блок «Пауза», чтобы не достичь ограничения на выполнение блоков в секунду.
21. Еще один блок «Пауза» добавьте между «Условие 1» и «Программатором».

В итоге должен получиться сценарий:

22. Добавьте еще один блок «Условие»: total<b или total≥b. Это нужно для того, чтобы проверить, не достигла ли проверка конца рассылки.

23. Теперь можно добавить 2 блока «Отправка сообщения*»:

  • «Отправка сообщения*» если total≥b — проверка не достигла конца рассылки. Введите в блок нужное сообщение для рассылки. В ChatID — переменную из блока API запрос с ChatID. Соедините этот блок с блоком «Програматор», чтобы продолжить рассылку;
  • «Отправка сообщения*» если total<b — рассылка закончена. Введите в блок нужное сообщение для рассылки. В ChatID — переменную из блока API запрос с ChatID. После этого блока добавьте блок «Закрыть диалог» и соедините их, чтобы сценарий завершил работу. 

Итоговый сценарий:

Со сценарием можно ознакомиться по ссылке: https://constructorbot.chatapp.online/view/7135?share=7eb8aebc89ba3a510549057766b1c648&lang=ru


Настройка воронки в Битрикс24

  1. Создайте воронку в Битрикс24.
  2. Оставьте 3 этапа, остальные удалите. Для этого на плашке с названием этапа нажмите на карандаш, затем на крестик.
  3. Переименуйте этапы в «Новая», «Ввести сценарий», «Запущена».
  4. Перейдите в «Роботы».
  5. Добавьте робота «Исходящий вебхук» на стадию «Запущена». Для этого нажмите на + и выберите «Исходящий вебхук».
  6. В настройках робота нужно добавить ссылку, которую можно скопировать в Конструкторе ботов из блока «Входящий webhook». См. раздел «Создание сценария в конструкторе ботов» пункт 5. 
  7. Нажмите «Сохранить».

Готово! Осталось только перенести сделку на нужную стадию.

Оставить заявку на услуги интегратора