Пропущенные звонки — настоящая беда любого бизнеса. Вы тратите бюджет на привлечение клиентов, но они теряются и уходят к вашим конкурентам. Из-за этого компании ежемесячно выбрасывают на ветер часть денег, которые могли бы потратить на свое развитие. К счастью, для пользователей Ringostat это не проблема. Теперь они могут получать уведомления в Telegram о каждом пропущенном звонке. Как это настроить, рассказывает Виталий Сафонов, CCO Assistant Ringostat.
Виталий Сафонов,
CCO Assistant Ringostat
Мы в Ringostat как никто понимаем, насколько критична проблема пропущенных звонков. Наше последнее исследование показало, что бизнес упускает в среднем 11-12% вызовов. Поэтому мы стараемся дать клиентам максимум инструментов для борьбы с этой проблемой. Для этого у нас есть:
- отчет о пропущенных звонках и о пропущенных необработанных звонках;
- уведомления по sms и электронной почте об упущенных вызовах;
- гибкие схемы переадресации, которые снижают вероятность пропустить звонок и многое другое.
В июне мы разработали еще одно решение этой проблемы. Люди почти все время проводят в мессенджерах, в том числе и корпоративных, когда они на работе. Поэтому мы реализовали отправку уведомлений о пропущенных звонках в Telegram — одно из самых популярных приложений для коммуникации на территории СНГ.
Что это дает
- Возможность мгновенно отреагировать на пропущенный вызов — пока клиент еще не ушел к конкуренту. Вы сразу узнаете о том, что вам не дозвонились, и увидите с какого номера. Так вы сможете перезвонить клиенту прямо в Telegram, если захотите.
- Можно легко понять, какой из отделов долго держит клиентов на линии и теряет лидов. В уведомлении показывается информация о том, сколько клиент ждал на линии, на какой номер звонил, какой добавочный номер ввел.
- Вы получите быстрый доступ к полезной информации о клиенте. Из уведомления можно сразу перейти в карточку звонка. В ней содержится детальная информация о вызове, предыдущих посещениях клиента, рекламном источнике звонка и т. д.
Пример того, как выглядит уведомление:
Что нужно для работы решения
Уведомление отправляет специальный Telegram-бот. Для его корректной работы нужно следующее:
- документ, куда будут поступать все звонки и где будет формироваться запрос на отправку сообщений ботом;
- настроить сценарий отправки Webhook в проекте, по которому нужно получать уведомления;
- сам бот, через которого будем получать уведомления в Telegram-группе — например, это может быть чат для сэйлзов вашей компании.
Ниже мы пошагово рассмотрим, как все настроить. Скажу сразу, что в этом нет ничего сложного, если следовать инструкции.
1. Создание документа и настройка бота
Скопируйте документ, где уже установлен код, который выступает приемником Webhook. Через этот код (скрипт) будет создаваться и отправляться запрос на отправку сообщения ботом.
Webhook — механизм оповещений системы и/или сторонних систем о событиях телефонии или Виртуальной АТС Ringostat в определенный момент.
В листе «Исходные данные» есть два поля, которые нужно заполнить для корректной работы кода:
Telegram-bot API token — это ключ, который генерируется при создании телеграм-бота. Инструкция по созданию бота есть в первом разделе статьи. Нужно просто написать BotFather в Telegram, воспользоваться командой /newbot и ввести имя бота. После этого BotFather сгенерирует API-ключ, который нужен:
Этот API-ключ мы вносим в соответствующую ячейку документа:
Строка Chat ID — сюда нужно указать ID чата/группы, в который хотите получать уведомления о пропущенных звонках. Чтобы получить этот параметр, нужно:
- добавить созданного бота в группу;
- прописать в адресной строке браузера URL — https://api.telegram.org/bot<YourBOTToken>/getUpdates, где YourBOTToken это Telegram-bot API token, который вы уже знаете.
После этого нужно нажать ENTER, и вы получите ответ, в котором нужно найти объект chat, а в нем параметр id. Теперь нужно понять, что это именно тот ID, который вам нужен. Для этого убедитесь, что в найденном объекте chat есть также параметр title и он соответствует названию вашей группы:
Полученное значение вставьте в соответствующую ячейку:
2. Настройка отправки Webhook
Сначала опубликуйте проект скрипта в документе как веб-приложение. Для этого переходим в раздел Инструменты — Редактор скриптов.
Далее, в “webhook_calls” переходим в меню Опубликовать — Как веб-приложение.
В появившемся окне копируем URL нашего скрипта и нажимаем «Сохранить». После этого даем Google разрешение на запуск приложения — это нужно только при первом сохранении.
Теперь заходим в личный кабинет вашего проекта в Ringostat, раздел Интеграции — Webhooks. Внизу страницы есть кнопка «Cоздать новую интеграцию» — нажимаем и заполняем поля по образцу:
В поле URL вставляем ссылку, которую получили при публикации скрипта как веб-приложения. В настройках Webhook теперь нужно задать параметры, которые мы хотим получить после звонка. Для этого нажимаем на значок шестеренки.
В открывшемся окне прописываем параметры, как показано на скрине:
Это базовый набор параметров, который мы в Ringostat используем сами для собственного бота
Скрипт будет искать значения полей по именам, указанным в шапке таблицы, поэтому проще всего использовать имена и параметры такие же, как указано в примере ниже. Иначе данные не будут найдены и переданы в шаблон сообщения для отправки.
Список параметров для передачи через Webhook:
При желании можно передавать любые другие параметры, но для корректного формирования сообщения в таком случае их нужно будет указать в строке 20 кода.
ВАЖНО: сообщение формируется и передается в верстке HTML, поэтому используйте теги HTML при редактировании шаблона сообщения. Я выделил фрагмент с ними на скрине ниже.
3. Тестирование
На этом настройка закончена, и теперь остается ждать когда будут переданы первые Webhook. В скрипте зашиты определенные условия, при которых будет отправляться сообщение:
- тип звонка = in
- статус звонка = «NO ANSWER» или «FAILED» или «BUSY» или «NO-FORWARD» или «VOICEMAIL» или «NO EXTENSION» или «WRONG EXTENSION»;
- время ожидания > 20 секунд;
- значение в колонке “Sent” не равно “ok”
При желании условия можно изменить, отредактировав их в строке 18 кода скрипта:
Чтобы не ждать, пока поступит первый звонок, отвечающий условиям, можно инициировать его через Tatent API tester или другой аналогичный сервис. После установки расширения в браузер нажмите на иконку Talent API tester и в открывшемся окне выберите следующие настройки:
METHOD: POST
SCHEME: введите URL вашего скрипта, который мы получили выше, опубликовав проект скрипта как веб-приложение.
BODY: сюда вставьте параметры и значения тестового Webhook из примера ниже:{
"caller": "test_caller",
"dst": "380443830700",
"status": "NO ANSWER",
"calldate": "2020-05-29 11:59:54",
"duration": "196",
"type": "in",
"waittime": 31,
"call_card": "https://app.ringostat.com/project/callcards/card/1590742794.862123/?project_id=106",
"additional_number": ""
}
После этого нажмите на кнопку SEND. Если все настроено верно, то в таблице появится строка с информацией о звонке:
А в чат придет сообщение такого характера:
На этом все. Если у вас возникнут вопросы при настройке — пишите в комментарии. Буду рад помочь.
Добрый день. Слегка изменил функционал данного скрипта, чтобы бот писал сообщение с инфой о звонке тому сотруднику в чат, который ответил на звонок. Функции из sending.gs работают нормально, но вот doPost перестал работать — новые звонки автоматически не вызывают срабатывание функции и отправку сообщения, только если стартовать функцию отправки вручную. С чем может быть связано такое?