Бизнес-процессы: как отправить сообщение в чат

Задача:
При закрытии сделки отправить руководителю в чат сообщение о полученной сумме.

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

Мой пример будет очень простым: отправляем сообщение в конкретный заранее известный чат. Для более сложной задачи, например, отправить сообщение в чат сделки, этот пример не подойдет.

Как настроить вебхук:
Переходим в раздел Приложения -> Разработчикам -> Другое -> Входящий вебхук.

Итоговая настройка вебхука будет выглядеть так:


По обозначениям на скриншоте:

1. Код вебхука сформировался автоматически.

2. По описанию rest api нам подходит метод im.message.add - метод добавляет сообщение в чат.

3. Настраиваем параметры:

DIALOG_ID - идентификатор диалога. В нашей задаче мы будем отправлять сообщение в чат руководителю, поэтому передавать в DIALOG_ID будем идентификатор руководителя (на моем портале ID=1).

Для отправки сообщения в общий чат или групповой чат в DIALOG_ID нужно передавать значение в формате chatXXX, где XXX - идентификатор чата.
Как получить идентификатор чата: заходим в чат и отправляем команду /getChatId. Во всплывающем сообщении копируем идентификатор:


MESSAGE - для проверки передадим значение test. А Из робота уже будем отправлять сообщение с данными сделки.

4. Проверяем сформированный URL и нажимаем Выполнить. В мой чат тестовое сообщение пришло.

Осталось добавить робот для вызова настроенного вебхука:


В параметре MESSAGE формируем значение "Закрыта сделка "{{Название}}" на сумму {{Сумма}} {{Валюта}}".

Переключаем сделку в стадию Сделка заключена - в чат руководителя поступает сообщение:

Комментарии

  1. Здравствуйте.
    А можно это же самое сделать через роботов или БП по сделке?
    При смене статуса передаем значение поля Сумма в личные сообщения пользователю или в уведомления ему.

    ОтветитьУдалить
    Ответы
    1. Добрый день!
      А в моем примере так и сделано: при смене стадии сделки робот выполняет вебхук, который отправляет сообщение в чат.
      С отправкой уведомления всё проще - вебхук не нужен.

      Удалить
  2. Добрый день!!!
    Большое спасибо за Ваш блог, супер информативный!!! Несколько ваших примеров уже было успешно реализовано.
    ПОдскажите пожалуйста, есть ли какая то опция что бы запустить БП Живой Ленты из Сделки? Очень животрепещущий вопрос)))

    ОтветитьУдалить
    Ответы
    1. Здравствуйте)
      Можно запустить из бизнес-процесса для сделки, Посмотрите пример

      Удалить
  3. Большое спасибо за урок. Все работает.
    Если не затруднит, подскажите, можно таким же способом отправлять фото в чат?
    (не shortlink, а что бы можно было смотреть фото не скачивая)

    ОтветитьУдалить
    Ответы
    1. Дмитрий, добрый день!)
      Пока не сталкивалась с такой задачей. Напишу, если будет какое-то хорошее решение.

      Удалить
  4. Привет!
    Сейчас есть задача отправить клиенту в WhatsApp сообщение за 3 дня до оплаты счета (создано несколько счетов). Создал БП со статусами, выдернул данные с помощью приложухи Rest, записал переменные, но вот затык. Не хочет отправлять.
    Need help вобщем!

    ОтветитьУдалить
    Ответы
    1. Добрый день!
      Если проблема в самой отправке в чат, то я бы проверила, какой URL вебхука получается в итоге и вызывала этот URL в браузере. В браузере будет выведено сообщение об ошибке, если что-то не так.

      Удалить
  5. Здравствуйте, а можно таким образом отправлять ссылку на Сделку ?

    ОтветитьУдалить
    Ответы
    1. Добрый день!
      Я не тестировала такой вариант, но думаю, что не должно быть проблем.

      Удалить
    2. ну пока не получается так сделать, сделка переходит в этап где стоит этот вебхук, и хочется отправлять сообщение с сылкой на эту сделку. Подскажите как это можно сделать? Буду очень Благодарна !

      Удалить
    3. Вставляете ссылку на на сделку как шаблон в в конце через слеш ID сделки

      Удалить
  6. А если мы сделали все по инструкции, но письмо в чаи не доходит, с чем может быть связана проблема?

    ОтветитьУдалить
    Ответы
    1. Добрый день!)

      Попробуйте сделать отладку:
      1. Добавьте уведомление себе, в которое нужно скопировать ту же самую итоговую строку запроса, которую указали в роботе Webhook.
      2. Запустите процесс и скопируйте то, что получили в уведомлении в п.1
      3. Полученную в п.2 строку поместите в адресную строку и выполните вебхук.
      4. Посмотрите, какую ошибку пишет браузер

      Удалить
  7. Люба, добрый день! Картинки что то не прогружаются.

    ОтветитьУдалить
    Ответы
    1. Добрый день!
      Сейчас без VPN должны отображаться. Написала тут про картинки.

      Удалить
  8. Здравствуйте. А как в параметре MESSAGE сделать переход на новую строку, чтобы сообщение было не одним текстом?

    ОтветитьУдалить
    Ответы
    1. Владимир Давыдов23 июля 2022 г. в 03:52

      "[BR]" этот код вместо пробела ставите и получите перенос строки.

      Удалить
  9. Владимир Давыдов23 июля 2022 г. в 03:55

    Не могу понять как указать вебхуку от кого написать сообщение. Сейчас сообщение в общий чат отправляет от автора БП.

    ОтветитьУдалить
    Ответы
    1. Добрый день!
      Не подскажу - пока не тестировала такой вариант.

      Удалить
    2. Сообщение через вебхук всегда отправляется через пользователя под которым сделан вебхук.

      Удалить
  10. Здравствуйте. Отправка работает если отправлять в групповой чат, а вот отправить сообщение от директора сотруднику не получается. IDкакого чата указывать если сообщение должно отправиться из личного чата с директором (один на один)?

    ОтветитьУдалить
    Ответы
    1. Добрый день!
      Для отправки сообщения в личный чат с сотрудником в параметре DIALOG_ID нужно передать идентификатор сотрудника, которому отправляете сообщение.

      Удалить
  11. Добрый день! а возможно ли настроить автоматическую отправку сообщения при открытии чата с определенным сотрудником/ботом? К примеру, при открытии чата с ботом от сотрудника отправляется приветственное сообщение.

    ОтветитьУдалить
    Ответы
    1. Добрый день!
      По этому вопросу не подскажу. Могу только скинуть ссылку на бот платформу Б24.

      Удалить
  12. привет. пытаюсь при помощи веб-хука отправлять сообщения в групповой чат. застрял на получении кода чата. ввожу в строку чата /getChatId, отправляю и ничего не происходит. сообщение размещается в чат, но нигде не вижу ничего всплывающего, чтобы скопировать. и в буфере тоже ничего нет. у меня недостаточно прав? или версия Битрикса может какая-то "Обрезанная". такое может быть? куда копать?

    ОтветитьУдалить
    Ответы
    1. ID группового чата можно увидеть в списке групп. Он указан в поле ID.

      Удалить

Отправить комментарий

Популярные сообщения

Расширение возможностей бизнес-процессов с помощью вебхуков: работа с задачами