Всем привет!
Хочу поделиться с вами опытом взаимодействия Телеграм и ПланФикса на примере бота, который мы разработали в компании Ипол (ipol.ru) — https://t.me/telipolbot.
Практически каждая организация применяет модель общения с клиентами через популярные социальные сети и мессенджеры, позволяющую отвечать на их различные вопросы.
Сделав стандартную интеграцию с мессенджерами в ПланФиксе, специалисты часто сталкиваются с потоком однотипных вопросов, которые, в свою очередь, хотелось бы как-то систематизировать и предать обработке без участия человека, чтобы в ПланФикс попадали уже конкретизированные обращения, в которых бы определялся нужный проект и за ними закреплялись ответственные исполнители.
В отличие от ряда других популярных CRM-систем у ПланФикса нет внешнего API для подключения телеграмма через сторонние сервисы и бот-платформы, поэтому отсутствуют готовые решения для быстрой настройки бота с собственной логикой поведения и подключения его к ПланФиксу.
И на первый взгляд кажется, что все возможности интеграции Телеграм с ПланФиксом ограничены только стандартной пересылкой сообщений, но мы нашли способ, как разработать собственного телеграмм-бота для ПланФикс с нужной нам логикой.
Разработанный нами бот выполняет три следующие задачи:
Чтобы рекламировать наши услуги через бота, достаточно в приветственном сообщении и пунктах меню вывести информацию об этих самых вопросах.
Для решения подсказок, достаточно по каждому конечному пункту прописать типовой текст, который выведет бот.
Например, пользователь хочет обратиться в поддержку по вопросу модуля DPD. Бот покажет подсказку с типовым текстом:
А вот для реализации первой задачи нужно остановиться и подробно описать, как работает бот в целом.
После того, как пользователь выбрал нужный пункт меню и ознакомился информацией в шаблонном сообщении бота, клиент пишет сообщение, которое попадает в планфикс.
Для того, чтобы специалист на стороне ПланФикса понимал откуда именно из меню пришел запрос от клиента - мы каждому пункту меню присвоили соответствующие метки, в нашем случае, такие:
Чтобы организовать подобные метки нужно определить характер обращения.
Реализовать это можно, например, при помощи отдельного меню с кнопками. Посетитель нажимает кнопку, выбирая тему обращения.
Запустить такое меню можно нажав на кнопку «Menu». В меню заранее задаются специальные команды, на которые бот будет реагировать. Например, для этого бота запрограммирована одна команда - /menu, которая позволяет показать основное меню бота.
Синяя кнопка «Menu» является системной для нашего мессенджера и при наличии запрограммированного меню бота всегда отображается в Telegram.
Аналогичное действие (показ главного меню) выполняется также и при запуске бота, которое реализуется когда клиент впервые начинает взаимодействовать с ботом. В этом случае нажимать кнопку «Menu» не требуется — основное меню с кнопками покажется самостоятельно.
После отображения меню пользователь выбирает кнопку интересующего его вопроса. Бот может быть также запрограммирован на отображение нескольких меню различной структуры и вложенности, например, в этом боте имеется меню раздела «Поддержка»:
После окончательного выбора темы обращения бот сделает специальную пометку запроса посетителя и обращение попадёт к нужным специалистам, которые, в свою очередь, сразу займутся его рассмотрением.
Вот так выглядит клиентский запрос в задаче клиента на стороне ПланФикса. Его сообщение маркируется соответствующей меткой, и специалист поддержки видит какие кнопки у бота нажимались пользователем.
То есть, в сценарии мы указываем, что если в тексте сообщения есть маркировка сделанная ботом, в данном случае — будет такая метка:
то мы выполняем следующие действия…
Так мы создали отдельные сценарии для сообщений с различными типами меток, которые нам передает бот из Telegram.
Бот — это сервис, который работает при помощи взаимодействия с API Telegram. Для работы потребуется некий обработчик, способный принимать и отправлять GET, POST запросы.
Первое, что нужно сделать — создать необходимые вебхуки — специальные сообщения, генерируемые сервисом Telegram и оповещающие ваш сервис о том, что произошло некое событие, которое необходимо обработать. Таким событием может быть сообщение от посетителя, взаимодействие с каким-либо элементом управления бота и т. п.
Если уже имеется интеграция с ПланФиксом — отключить бота от Планфикса, перенаправив все сообщения на обработчик, который, в свою очередь, должен будет каким-то образом взаимодействовать с вашей CRM-системой, выполняя нужные действия. Скорей всего для этого потребуется взаимодействовать еще и с API выбранной вами CRM-системы.
Потом необходимо реализовать реакцию бота на различные команды, в том числе и системные (например, команда /start вызывается всегда при первичном запуске бота).
И, наконец, реализовать вывод нужных элементов, в данном случае меню, и обработку команд-действий на нажатие кнопок меню, чтобы во-первых различать какая кнопка была нажата, а во-вторых чтобы сообщать сервису Telegram, что команда обработана успешно и действие по нажатию кнопки завершено.
После этого — мониторить сообщения от конкретного посетителя присваивая ему нужную метку, затем готовое сообщение отправлять в ПланФикс.
Напоследок, не помешает снабдить программный модуль, отвечающий за поведение бота, некоторыми сервисными функциями, например, функцией, позволяющей в сервисном режиме производить диагностику или настройку (перенастройку) существующего бота.
В готовом виде работающий по этой схеме бот позволит разгрузить ваших сотрудников по обработке первичных обращений и автоматизировать процесс распределения задач между специалистами. Бот, которому можно запрограммировать разнообразную логику работы, способен решать довольно широкий спектр профильных задач для организации. Работающий бот также определенно повысит престиж любой компании.