Настраиваемые уведомления в ТГ
Если стандартные оповещения от Савви Вам не подходят, то Вы можете настроить оповещения в свой ТГ бот используя механизм Веб-хуков.
Чтобы настроить кастомные оповещения в свой ТГ бот, надо выполнить несколько простых действий:
Создайте бота в BotFather.
Подробную инструкцию, как создать бота в BotFather Вы можете найти в разделе руководства Telegram
Получите id чата (chat_id) , в который будут направлены сообщения с оповещениями.
а. Если хотите получать уведомления в бот, то Вы должны получить свой персональный user_id - он же и будет использован, как chat_id в дальнейшем. Как получить свой персональный user_id, Вы можете прочитать по ссылке.
б. Если хотите получать уведомления в группу, Вам надо получить chat_id группы, куда будут приходить уведомления.
Инструкция, как получить chat_id группы.
Шаг 1: Добавь своего бота в группу
Открой Telegram.
Перейди в нужную группу.
Добавь туда своего бота, как обычного участника.
Назначь его админом (если хочешь, чтобы он мог писать сообщения в группу).
Шаг 2: Напиши любое сообщение в группу
Любое — хоть "тест" от себя, хоть что-то другое. Это нужно, чтобы в группе появилась активность.
Шаг 3: Получи обновления через Telegram Bot API
В браузере введи в строку URL-адреса:
https://api.telegram.org/bot<ТВОЙ_ТОКЕН>/getUpdates
Где <ТВОЙ_ТОКЕН> - токен Вашего ТГ бота.
Пример :
https://api.telegram.org/bot123456789:ABCDEF1234567890abcdef12345678/getUpdatesВ ответ придёт JSON, в котором будет что-то типа:
{
"update_id": 123456789,
"message": {
"chat": {
"id": -1001234567890,
"title": "Название группы",
"type": "supergroup"
},
...
}
}Шаг 4: Используй chat_id из ответа
chat_id из ответаВот этот id:
-1001234567890— и есть chat_id группы. Он всегда отрицательный.
В Савви переходим в Действия, нажимаем Добавить:

Выбираем из списка Вебхук:

Заполняем поля функции

Добавляем аргументы и константы, которые будут передаваться на вебхук:


Аргументы — это переменные, которые будут формироваться ботом во время диалога. И зависят они от ответов пользователя
Константы — это параметры, которые будут передаваться на вебхук неизменно. В нашем случае название бота будет всегда передаваться на вебхук, как Бот - Эльза
Настраиваем шаг Вебхук:

Вставляем в поле URL: https://api.telegram.org/bot<ТВОЙ_ТОКЕН>/sendMessage , где <ТВОЙ_ТОКЕН> - это токен твоего ТГ-бота полученный при создании бота через BotFather.
Метод запроса — POST
Тип тела - JSON
Прописываем Тело запроса в формате JSON:
Пример:

Обратите внимание, что аргументы в Тело запроса добавляются через знак ➕ в правой части поля ввода:

❗️ Аргументы в фигурных скобках надо заменить на аргументы, добавленные через ➕.
Нажимаем Сохранить:

Теперь, после того, как мы настроили Действие на отправку уведомления в наш ТГ, необходимо в центральный промпт добавить инструкцию для бота, как он должен формировать аргументы и в какой момент необходимо передавать их в функцию отправки вебхука.
Где взять параметры {contact_id}, {lead_id}, {manager_id}, {origin} и {source} из примера выше, если во время диалога мы их не формировали?
Кроме аргументов, сформированных в ходе диалога из ответов клиента, бот может передать в функцию параметры, находящиеся в placeholders.
Параметры placeholders можно увидеть в экспорте диалога в самом верху страницы. Выглядит это таким образом:

В зависимости от подключённого канала, параметры, попадающие в placeholders могут отличаться.
Самый простой способ узнать, какие параметры мы можем с placeholders передать в нашу функцию — сделать экспорт диалога и проверить, какие именно параметры передаются Боту.
Структурирование сообщений
Если текст Вашего уведомления достаточно объемный, то лучше настроить таким образом, чтобы каждая строчка была с новой строки для облегчения восприятия информации. Для этого можно настроить перенос текста.
Настройка
В действии необходимо добавить Константу, содержащую оператор переноса строки "\n".

Далее в теле запроса перед первым словом фразы, которая должна быть на новой строке необходимо добавить константу с оператором переноса.

После этих действий фразы, перед которыми был поставлен оператор переноса, будут начинаться с новой строки.
Last updated
Was this helpful?