Перейти к содержимому

Анонимный чат в Telegram с помощью бота и Integromat

Сценарий с анонимным чатом Telegram через Integromat

Обновлено: 26.04.2021

В нашем виде услуги иногда нужно дать возможность клиенту и исполнителю пообщаться друг с другом напрямую.

Но это обязательно должно быть анонимно, чтобы они не могли видеть друг друга и написать друг другу напрямую. В то же время, должна быть возможность менеджеру помогать им и вмешиваться в переговоры в случае необходимости. Если у вас есть похожая задача, то такой сценарий вам подойдет.

Создаем группы в Telegram

  1. Первым делом создаем 2 группы. В 1 группе будет сидеть менеджер и клиент. Во 2 группе менеджер и исполнитель. В данном случае группы выступают в роли «комнат», куда новые пользователи приходят, получают услугу и потом удаляются. Новые пользователи не видят старой переписки (если это не старые пользователи, добавленные повторно).
  2. Добавляем своего бота в оба чата (лучше отдельного бота создать для такого сценария), делаем его админом. Группа сконвертируется в супергруппу.
  3. Узнаем id каждой группы с помощью @myidbot или другими способами.
  4. Причесываем группы, добавляем описание, логотип и так далее.

Реализуем сценарий в Integromat

Вот как будет выглядеть такой сценарий, если менеджера 3, и у них в сумме 5 пар чатов. Все это обрабатывает 1 бот. Бот копирует сообщение из 1 чата и отправляет его в другой чат.

Сценарий с анонимным чатом Telegram через Integromat
Сценарий с анонимным чатом Telegram через Integromat. Такие одуванчики

Рассмотрим пример с 1 парой чатов.

Создание модуля Telegram — Watch Updates

Идем в Interegromat, создаем сценарий. Первый модуль Telegram -> Watch updates. Подключаем бота туда. Далее при любом действии в чатах, где сидит бот, сюда будет прилетать уведомление.

Далее если менеджеров несколько и чатов несколько, ставим фильтры, чтобы бот постил в чаты нужного менеджера. Если менеджер только 1, то пропускаем этот момент.

Посылаем бота в ту ветку, в которую надо на основе id чата уведомления
Посылаем бота в ту ветку, в которую надо на основе id чата уведомления

Далее, чтобы отсечь все ненужные уведомления, нужно поставить фильтры на тип сообщения. А конкретно меня интересуют только 6:

  1. Текст
  2. Фото
  3. Документы
  4. Голосовые
  5. Видео
  6. Аудио

Создаем сеть роутеров

Делаем роутер и ставим проверку на «не пустые» сообщения с вышеперечисленными типами.

Роутер с проверкой на типы сообщения
Роутер с проверкой на типы сообщения

Далее приведу 2 скрина с примерами фильтров для текста и фото.

Проверка присутствия текста сообщения
Проверка присутствия текста сообщения

 

Проверка присутствия фото в сообщении
Проверка присутствия фото в сообщении

Допустим, поставили фильтры на тип сообщения. Дальше нам нужно поставить фильтры на id чата.

  1. Если уведомление пришло в чат 1, то копируем и шлем сообщение в чат 2
  2. Если уведомление пришло в чат 2, то копируем и шлем сообщение в чат 1

Вот как выглядит фильтр:

Фильтр с проверкой чата
Фильтр с проверкой чата

И вот как может выглядеть финальный модуль отправки текстового сообщения после фильтра:

Копирование и отправка анонимного сообщения
Копирование и отправка анонимного сообщения

Для каждого типа сообщения нужно создавать разные модули Telegram. Например Send a Text Message, Send a Photo, Send a Document и т.д.

Здесь, если пакет дошел до этого модуля, значит сообщение было текстовым, оно в чате клиента, и его нужно переслать в чат исполнителя.

Копирование сообщения в последнем модуле
Копирование сообщения в последнем модуле

Текстом сообщения будет являться текст из сообщения с чатом клиента:

  • Это либо сообщение клиента, тогда перед сообщением добавится Client:
  • Либо сообщение от менеджера, тогда перед ним будет Agent:
  • Тоже самое, только наоборот, делается в ветке, где чат id исполнителя.

Также важно обрезать сообщение функцией substring, чтобы при слишком длинном сообщении модуль Telegram не выдал ошибку и сценарий не остановился.

Для всех остальных типов файлов (аудио, видео, документ) можно просто добавлять Caption клиента или исполнителя, чтобы было понятно «кто» пишет.


В целом все, это схема просто великолепно работает. Менеджер просто наблюдает за процессом, а не передает каждую мелочь вручную из чата в чат. Задержка между передачей сообщения 2-5 секунд, что вообще не влияет на качество общения. Ну и спасибо Telegram за такие возможности!

Если что-то не понятно, спрашивайте в комментах.

Метки:

4 комментария для “Анонимный чат в Telegram с помощью бота и Integromat”

  1. Будете ли вы писать мне об использовании этого метода для бизнеса? Телеграм не знаю, Интегратор знаю, поэтому и спрашиваю, как практически использовать такую ​​последовательность в Интеграторе для заработка на создании групп и взаимодействий. Зачем это делать? как его использовать практически потом? Есть примеры? Может быть, вы можете написать мне на адрес электронной почты?

    1. Прошу прощения за очень долгий ответ:)
      Реализация сама по себе простая, вопрос в ЦА — есть ли она тут. В моем случае это был внутренний инструмент.

      Скажем так, можно использовать везде, где нужна платформа-посредник для текстового общения и там, где знают про Telegram.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *