Как написать боту viber

В статье рассказываем, что такое чат-бот для Viber, какие у него преимущества и кому он будет полезен. Разбираем процесс создания бота для Viber и делимся советами, а также поговорим про чат-боты для других мессенджеров.

Содержание:

  • Что такое чат-бот для Viber и зачем он нужен
  • Кому будет полезен бот для Viber
  • Преимущества чат-ботов в Viber
  • Какие бизнес-задачи решает чат-бот в Viber
  • Где еще можно создавать чат-боты
  • Как создать чат-бота для Viber
  • Как сделать чат-бот для Viber эффективным
  • Заключение

Что такое чат-бот для Viber и зачем он нужен

Чат-бот для Viber — виртуальный помощник в публичных аккаунтах, который отправляет пользователям мессенджера автоответы по заданному сценарию, делает авторассылки, помогает оформлять заказы, оплачивать счета и направляет данные о клиенте в CRM-систему, если настроена интеграция.

Чат-боты в Viber нужны, чтобы снять нагрузку с владельцев бизнеса и менеджеров, сэкономить на оплате труда и при этом тратить минимум времени на ответы.

Кому будет полезен бот для Viber

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

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

Преимущества чат-ботов в Viber

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

Быстрые ответы в режиме 24/7

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

Экономия на оплате труда

Чтобы не нанимать десяток менеджеров на дневную и ночную смену для обработки большого числа запросов, проще подключить чат-бот для Viber. Бот с хорошо продуманной структурой в некоторых случаях способен полностью заменить сотрудника.

Автоматические рассылки

Чтобы прогревать подписную базу и слать напоминания, удобно использовать чат-боты. Можно заранее настроить таргетированные рассылки и отправлять разным сегментам аудитории соответствующую информацию. Viber рассылки обходятся дешевле, чем SMS сообщения.

Какие бизнес-задачи решает чат-бот в Viber

Чат-бот справится со множеством функций — рассмотрим их далее.

Ответы на частые вопросы

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

Внедрение Viber чат-бота для ответов на частые запросы
Внедрение Viber чат-бота для ответов на частые запросы

Частичная автоматизация воронки продаж

Возможно, чат-бот не сумеет превратить холодный лид в горячий, но он способен прогреть уже заинтересованного пользователя: рассказать о преимуществах предложения, ответить на возражения, предложить скидку. Также бот займется отсевом нецелевых лидов, сможет записать на консультацию и принять оплату, а при необходимости в диалог вступит администратор.

Бот мероприятия рассказывает о фестивале и предлагает купить билеты
Бот мероприятия рассказывает о фестивале и предлагает купить билеты

Напоминания

Если вы устраиваете мероприятия, проводите консультации или отправляете сотрудников для осуществления замеров, клиентам нужно делать напоминания. Эту функцию можно переложить на Viber чат-бот.

Получение фидбека

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

Вовлечение подписчиков

Делайте рассылки с полезной информацией через чат-бот для Viber, добавляйте в меню разделы с развлекательным контентом.

Бот развлекает подписчиков необычными гороскопами
Бот развлекает подписчиков необычными гороскопами

Создавайте квизы, за прохождение которых подписчики получают лид-магнит — электронную книгу или промокод на скидку. Это добавит очков вашей репутации и поможет увеличить продажи.

Информационные и маркетинговые рассылки

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

Если нужно рассказать об акциях, чат-бот в Viber это сделает
Если нужно рассказать об акциях, чат-бот в Viber это сделает

Сохранение данных

С помощью бота можно собирать данные, которые вводят подписчики, и отправлять в CRM-систему.

Получение данных из внешних источников

В сложных ботах вы можете отправлять и получать информацию из внешних источников через запрос API.

Где еще можно создавать чат-боты

Чат-боты можно создавать в любом мессенджере, где вы общаетесь с клиентами и подписчиками, чтобы автоматизировать этот процесс.

На базе конструктора SendPulse вы можете делать чат-боты для Telegram, Instagram, Facebook и WhatsApp. В каждом из этих мессенджеров и соцсетей огромная платежеспособная аудитория, которая проводит много времени онлайн — воспользуйтесь этим. Подключите все боты, чтобы каждый клиент и подписчик мог выбрать удобный канал для взаимодействия с вами.

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

В конструкторе чат-ботов SendPulse вы можете создавать автоматизированные цепочки сообщений, которые запускаются по установленным триггерам. Например, пропишите команду на слово «цена», и на сообщение с таким словом бот отправит соответствующий ответ.

Добавление триггера
Добавление триггера

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

В редакторе доступно семь блоков для построения сценария бота: «Сообщение», «Цепочка», «Действие», «Фильтр», «Запрос API», «Пауза» и «Случайный». Чтобы применить блок, нужно перетащить его из меню слева в рабочую область.

В сообщение чат-бота в Instagram можно добавить такие элементы:

  • текст;
  • эмодзи;
  • изображение;
  • кнопка;
  • карточка;
  • переменные;
  • ввод пользовательских данных;
  • быстрые ответы.

В WhatsApp кроме этих элементов можно также прикрепить файл. Возможность добавить карточку товара появляется, если настроен каталог с товарами в Facebook Commerce Manager.

Дополнительные элементы в Facebook: аудио, видео, задержка и файл. В Telegram доступны все указанные элементы, кроме карточки — в этом мессенджере они не предусмотрены.

В сообщении можно разместить кнопку с оплатой. Для этого необходимо подключить в настройках аккаунта одну из платежных систем: Stripe, Fondy, PayPal, Mercado Pago, LiqPay, Wayforpay.

Переменные используются для персонализации сообщений. Быстрые ответы дают возможность выбирать из предложенных вариантов, например, размер или расцветку платья в онлайн-магазине.

Блок «Цепочка» позволяет перевести пользователя из текущей цепочки сообщений в другую.

Можно разветвлять сценарий и запускать разные цепочки, не перегружая структуру бота
Можно разветвлять сценарий и запускать разные цепочки, не перегружая структуру бота

С помощью блока «Действие» можно:

  • установить переменную или тег, чтобы затем фильтровать подписчиков;
  • открыть чат с администратором, если необходимо переключить диалог на живого человека;
  • отписать пользователя от чат-бота;
  • создать сделку и добавить ее в CRM, если настроена интеграция;
  • отправить вебхук, когда требуется послать информацию о событии в систему для дальнейшей работы с клиентом.

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

Пример фильтрации по времени срабатывания
Пример фильтрации по времени срабатывания

Чтобы отправлять и получать данные из внешних систем, используйте запросы API. Это пригодится, если нужно, например, найти информацию по номеру заказа или определить по артикулу, есть ли товар в наличии на складе.

Запрос API
Запрос API

Блок «Пауза» позволяет добавить задержку между элементами цепочки на указанное время или до конкретной даты. Это полезно, если нужно дать клиенту время на раздумья, или когда предполагается прохождение обучающей программы в боте в определенном темпе.

Блок «Случайный выбор» используется для проведения квизов и маркетинговых исследований.

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

Рекомендуем к прочтению:

  • «Чат-боты в Facebook Messenger для бизнеса: как начать их использовать прямо сейчас»;
  • «Как легко создать бота в Telegram для своего бизнеса»;
  • «Как создать чат-бота в Инстаграм для бизнеса»;
  • «Что такое WhatsApp бот, чем он полезен и как его создать — полный пошаговый гайд».

Как создать чат-бота для Viber

Прежде всего определите целевую аудиторию бота и в соответствии с этим продумайте tone of voice. В некоторых случаях уместно дружеское обращение, в других — только деловой стиль. «Нарисуйте» портреты клиентов, чтобы лучше их понимать.

Продумайте структуру чат-бота. Она зависит от потребностей ЦА и от того, каких целей вы хотите добиться. Берите за основу вопросы, которые ваши клиенты чаще всего задают менеджерам. Поставьте себя на место аудитории: какие функции бота будут вам полезны? Можно устроить опрос и узнать напрямую у подписчиков, что им хочется в нем видеть.

Напишите подробный сценарий для чат-бота: как он приветствует подписчика и запрашивает его данные, какую помощь предлагает и так далее.

Для создания бота в Viber нужно подключить паблик-аккаунт. Перейдите в административную панель, введите номер телефона, привязанный к вашему профилю. На номер придет код подтверждения, который нужно указать в соответствующей строке.

Откроется панель управления. Выберите Create Bot Account и заполните поля с информацией об аккаунте. Примите условия использования и нажмите Create. Создается паблик-аккаунт, и автоматически генерируется токен аутентификации.

Подключение чат-бота для Viber
Подключение чат-бота для Viber

Далее есть два варианта: использовать конструктор чат-ботов или создать бот самостоятельно на PHP, Python, Node.JS — потребуется сервер с доменом и SSL-сертификатом. Документацию можно прочитать в разделе для разработчиков на официальном сайте.

Как сделать чат-бот для Viber эффективным

Собрали для вас несколько советов о том, как повысить эффективность чат-бота.

Проанализируйте готовых ботов

Изучите чужих ботов перед тем, как создать своего. Многие хотят сделать что-то уникальное, но то, что действительно нужно вашему чат-боту, скорее всего, уже придумали и воплотили другие. Не изобретайте велосипед.

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

Изучите удачные примеры ботов
Изучите удачные примеры ботов

Определите цели бота

Не стоит создавать чат-бот просто потому, что все так делают — у него должна быть конкретная цель. Не нужно дублировать все те функции, которые пользователь может выполнить на сайте или в приложении. Подумайте, какие действия удобнее совершать с помощью бота, и сосредоточьтесь на этом.

Думайте о пользе

Чтобы определить цели чат-бота, выявите боли и потребности аудитории. Пообщайтесь с ее представителями: возьмите интервью, устройте опрос в соцсетях или на сайте.

Подготовьте качественное оформление и приветствие

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

Привлекающая внимание картинка для чат-бота в Вайбер
Привлекающая внимание картинка, лаконичное описание и ссылка на сайт с подробной информацией

Не перегружайте чат-бот

Продумайте структуру бота и не добавляйте ничего лишнего, чтобы он был максимально простым и удобным в использовании. Например, не стоит запрашивать email, если эти данные не обязательны для корректной работы — это отсеет часть подписчиков.

Оживите бота

Придайте боту человечности: добавьте эмоций в ответы, используйте эмодзи. Можно «научить» его шутить, если это уместно. Помните, что стиль чат-бота должен соответствовать tone of voice компании. Если на сайте и в соцсетях все строго и чинно, будет странно, если бот вдруг станет посылать сердечки или юморить.

Персонализируйте сообщения

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

Тестируйте

Перед запуском обязательно убедитесь, что все работает как надо. Можно провести бета-тестирование на несколько десятков человек. Это позволит понять, как люди взаимодействуют с чат-ботом, все ли понятно, соответствует ли бот ожиданиям аудитории и нет ли в нем ошибок.

Анализируйте действия пользователей

Чтобы повысить эффективность чат-бота, анализируйте поведение пользователей. Если подписчики «отваливаются», важно понять, на каком этапе, почему это происходит и как решать проблему.

Советуем ознакомиться:

  • «Пишем текст для чат-бота: особенности и советы»;
  • «Примеры чат-ботов: удачные решения, которые можно использовать в бизнесе»;
  • «Как SendPulse создавал своего чат-бота. Делимся лайфхаками и советами».

Заключение

Мы разобрали, как создать чат-бота для Viber и какие задачи он способен решать.

Если не хотите заморачиваться с чат-ботами, настройте рассылки в Viber. В сервисе SendPulse можно прикреплять к сообщению картинки и кнопки, указывать время отправки и период жизни сообщения, а также осуществлять доотправку в SMS для недоставленных рассылок.

Рекомендуем также попробовать рассылки по email и SMS и web push уведомления для создания омниканальной системы коммуникации. Используйте нашу CRM и конструктор сайтов и мультиссылок.

Время чтения: 5 минуты Прочту позже

В этой статье мы полностью разберемся в вопросе работы с Viber для бизнеса. Чат-боты, верификация бренда, холодные и теплые рассылки и лайфхаки. Весь опыт нашей работы с мессенджером.

Чат бот для вайбер

Предисловие

Несмотря на то, что вокруг только и разговоры что о Telegram ботах, о web-ботах и холодных рассылках, мы хотим затронуть тему разработки бота именно под Viber. К нам периодически приходят запросы на разработку таких ботов, поэтому мы решили сэкономить всем время и набросать простую инструкцию для всех, кто хочет себе такого бота. Поехали!

Почему Viber

Вопреки расхожему мнению, Viber все еще не умер. Даже на территории РФ. Да, Telegram набирает обороты и очень активно вытесняет другие мессенджеры. Но окончательно одержать победу и забрать себе ВСЮ аудиторию у него пока не получается.

Viber по-прежнему используют люди старше 40. По крайней мере так было в 2021 году. Статистики за 2022 мы не нашли. Viber используют люди, которые:

  • Часто звонят в другие страны или живут на несколько стран. Например граждане Израиля, где Viber очень популярен. Приезжая в РФ, они продолжают сидеть в мессенджере. Хотя-бы для того, чтобы общаться с родными дома.
  • Для которых Telegram слишком сложно, а в WhatsApp нет никого из друзей. Да, Дуров ориентируется в основном на молодежь. А Цукерберг на метавселенные. Но не будем о грустном.
  • Сидят там по инерции.

Кстати поиграться и сделать прикольных ботов для Viber, по аналогии с Telegram, скорее всего не выйдет. Лично мы таких не встречали. Если вы таких находили, то поделитесь ссылками в комментариях!

Каковы бы ни были причины сидеть в Viber — аудитория у мессенджера огромная. Зачем нам эта информация? Чтобы было легче ответить себе на вопрос “а зачем мне бот для VIber?”.

Ну и Viber не уходил Российского рынка. И его не запрещали. Rakuten (компания владелец Viber) даже выполнила требование о приземлении в РФ. Ссылка на новость.

Первый шаг в создании бота для Viber

Прежде чем садиться писать код, нам понадобится вот эта ссылка: https://partners.viber.com/login . Без авторизации в этом самом месте у нас не запустится даже тестовый бот на тестовом контуре.

По этой ссылке нам нужно не просто авторизоваться, а еще и заполнить поля: Имя аккаунта (на самом деле имя бота), URI (юзернейм бота), картинку. Механизм напоминает BotFather в Telegram. Но только чуть сложнее, потому что надо переходить в эту веб-админку. Но зато там есть русский язык.

Из внезапного, надо выбрать категорию, язык бота и локацию. Так-же можно указать адрес сайта и емейл. Они тоже будут отображаться в профиле бота.

Что важно понять на этом этапе:

  • Смски с подтверждением приходят через раз. Не понятно с чем это связано, но эта ситуация не меняется уже несколько лет.
  • Наш бот, в терминологии Viber, носит название “паблик аккаунт”. С этим предлагаю просто смириться.

Кстати, кроме окна авторизации в админке, есть еще вот такая страничка. Вроде как она призвана продать вам идею создания бота именно в Viber.

Ремарка: раньше у Viber была процедура подтверждения компании. Там надо было загружать документы и долго ждать ответа. Часто он не приходил и повлиять на это было нельзя. Теперь же, они переложили процесс подтверждения на плечи партнеров.

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

Есть ощущение, что они пошли на шаг создания таких локальных партнеров, потому что появились конструкторы ботов. За последние несколько лет, рынок чат-ботов так трансформировался, что клиенты перестали приходить напрямую в Rakuten. Теперь клиент приходит или к агентствам (коим мы и являемся уже 4 года), или идет в конструктор.

Техническая сторона создания бота в Viber

Завели аккаунт, дошли до шага с токеном — отлично! Теперь давайте разберемся на чем этого самого бота писать.

В интернете куча библиотек для Python, ссылки на которые даже не будем прикладывать. Там запуск и апробация простейшего бота займет буквально пять минут (умеючи). Инструкции по настройке веб-хуков вы без проблем найдете на том же хабре.

Мы 4 года писали (и пишем до сих пор) ботов на Java. И поэтому у нас родилась собственная библиотека коннектор к Viber. Кому нужно — оставьте заявку, или напишите на наш канал в Telegram и мы пришлем на нее ссылку.

Какие тонкости есть на этом этапе:

  • Когда вы создали тестового бота, вам надо авторизоваться в Viber на телефоне, зайти в: “Еще → Паблик аккаунты” и увидите своего бота. Он будет скрыт. Нажимаем на него и появляется кнопка “Показать”. С этого момента он станет доступен как-бы публично. Но:
  • Чтобы бот был “Верифицирован” и был доступен в поиске, надо связаться с командой Viber. Видимо они его проверяют каким-то образом. Наверно, как проверял Facebook* (ныне Meta*), пока еще там можно было делать ботов. Хотя, на самом деле, Viber просто сделал этот шаг платным. Бот без оплаты работать будет. Но придется делать на него прямую ссылку и вести пользователя напрямик.
  • Боту нужен хостинг. Этот тезис неочевиден тем, кто ранее ботов не касался, поэтому лучше проговорим. Разработчик может временно поднять бота, чтобы протестировать, на своем ПК, да. Но чтобы запустить бота на постоянной основе, вам нужен будет сервер, где бот будет постоянно работать. Часто такой сервер могут предоставить подрядчики. У нас, например, есть такая услуга.

Как создавать чат-бота Viber

Разумеется, вот ссылка на документацию Viber API.

С точки зрения возможностей, в Viber достаточно широкий функционал. Можно делать ботов с кнопками и инлайн кнопками.

Холодная и теплая рассылка сообщений в Viber

Как мы писали в прошлой статье, у Viber есть возможность делать как холодную рассылку, так и теплую. Самостоятельно можно почитать на этой странице.

С теплой все понятно: загружаете базу своих клиентов, смотрите у какого процента из них установлен Viber и понеслась. Настраиваем всякие сегменты на своей стороне, а в мессенджер грузим уже готовые списки.

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

С холодной рассылкой в Viber все чуть интереснее

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

Viber не может проверить откуда у вас взялась база с этими получателями. Поэтому вы вроде как можете слать рассылку по холодной базе. Но:

  • У вас при верификации аккаунта появляется галочка. Мол бренд подтвержден. Если вы “обнаглеете” и будете слать слишком много сообщений тем людям, которые на это не согласны, то легко поймаете страйк и Viber отберет и галочку и возможность рассылки. Ну или партнер отберет.
  • Вы все равно платите за каждую “инициацию диалога”. Условно говоря, каждая новая беседа будет стоить денег. Но если пользователь будет туда отвечать и вы ему тоже что-то отвечать, то уже вот эти ответы будут бесплатными. Почитать полноценно можно тут.
  • Все чаты с брендами лежат в отдельной папке “Бизнес чаты”. Слишком усердно стараться охватить широкую аудиторию скорее всего будет не так эффективно как те же смс или WhatsApp рассылки.

Что еще нужно понимать, при работе с рассылкой:

  • Viber сравнивает свой инструмент в первую очередь с смс рассылками. Мол у нас тут 1000 символов а в смс всего 70. Да и платите вы за доставленные а не за отправленные сообщения.
  • Эту механику можно хорошо подвязать, например, с CRM. Пришел клиент, купил, а вы ему вдогонку еще одно сообщение, что у него скидка на следующую покупку. Хотя этот “плюс” справедлив по отношению не только к Viber, а в целом к чат-ботам. Тот же WhatsApp тоже так “умеет”.
  • Не у всех действительно есть Viber. Если бренд хочет по-настоящему присутствовать в мессенджерах, то кроме привычного Telegram бота, должен работать с аудиторией еще и в WhatsApp и в Viber и в VK. Хороший пример выстраивания такой “омниканальной коммуникации” это один крупный сайт для поиска работы с красным логотипом. Или логистическая компания с зеленым логотипом.

Про медийную рекламу писать не будем, потому что не в курсе ни цен ни эффективности. Хотя делать свои стикеры это прикольно и Viber был первым на этом поприще. Многие уже слишком привыкли к брендовым стикерам в Telegram, но не слышали, что их можно создавать еще и в Viber.

*Meta (ранее Facebook) запрещенная в РФ организация.

282

Создание бота для Viber

ведущий бэкенд разработчик

09 дек 2019

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

Существует два типа ботов:

  • сложные, которые могут самообучаться, вести диалог, как человек;
  • специализированные боты для выполнения конкретных задач. Например, узнать где в данный момент находится ваша посылка, посмотреть актуальные скидки в магазине, узнать историю автомобиля по vin-номеру и многие другие. Кроме того, бот может сам автоматически оповещать о статусе вашей посылке, о появлении новых акций в магазине и о многом другом. И поэтому, многие компании разработали своих ботов, с помощью которых они могут оказывать услуги более удобным и быстрым способом.

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

Работу начнем с изучения официальной документации Viber, она находится тут:

https://developers.viber.com/docs/.

В компании Viber позаботились о разработчиках, которые захотят создать новых viber-ботов, и создали для популярных языков программирования уже готовые библиотеки, в которые инкапсулированы сложные операции по работе с сервисом Viber, что значительно упрощает разработку ботов.

В данный момент имеются библиотеки для Python и Node.JS.

Для разработки будем использовать язык программирования Python3.

Процесс создания бота разделим на несколько шагов:

  1. Создание бота в сервисе Viber.
  2. Создание каркаса бота на Python.
  3. Настройка бота под конкретные сообщения.
  4. Использование ngrok для локальной разработки.
  5. Пример работы.

Для это требуется перейти по ссылке: https://partners.viber.com/account/create-bot-account и заполнить все необходимые поля формы. После успешного заполнения данных, будет создан бот и автоматически сгенерируется токен (обязательно сохраните его — он будет использоваться для аутентификации).

Создание каркаса бота на Python

Установим библиотеку для бота от viber:

pip install viberbot

Версия python для этой библиотеки должна быть выше 2.7.

В качестве фреймворка для python возьмем легковесный Flask:

pip install Flask

Создадим и сконфигурируем нашего бота:

viber = Api(BotConfiguration(
    name='Smyt Career's Bot',
    avatar='',
    auth_token='your auth token'
))

Создадим каркас для обработки сообщений пользователя:

    if not viber.verify_signature(request.get_data(), request.headers.get('X-Viber-Content-Signature')):

        return Response(status=403)

    # this library supplies a simple way to receive a request object

    viber_request = viber.parse_request(request.get_data())

    if isinstance(viber_request, ViberMessageRequest):
        message = viber_request.message 
        viber.send_messages(viber_request.sender.id, [
            message
        ])

    elif isinstance(viber_request, ViberSubscribedRequest):
        viber.send_messages(viber_request.user.id, [
            TextMessage(text="thanks for subscribing!")
        ])

    elif isinstance(viber_request, ViberFailedRequest):
        logger.warn("client failed receiving message. failure: {0}".format(viber_request))

    return Response(status=200)

Для каждого сообщения пользователя выполняется проверка на подлинность с помощью токена. Также определяется тип сообщения пользователя:

  • простое сообщение пользователя;
  • запрос на подписку;
  • ошибка в запросе.

В зависимости от типа сообщения система реагирует.

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

Создание http-сервера

Для работы бота ваш http-сервер обязательно должен быть защищен ssl-шифрованием.

Так выглядит запуск сервиса у меня:

from flask import Flask, request, Response

app = Flask(__name__)

if __name__ == "__main__":
    app.run(host='0.0.0.0', port=8443, debug=True)

Обращаю внимание, что это только ознакомительный пример и бота я запускал на локальном компьютере, поэтому не заполнил данные для ssl. Имеется возможность указать ssl-сертификат через параметр ssl_context.

Установим веб-хуку

После того, как сервер запущен, нужно указать сервису Viber куда ему нужно посылать сообщения пользователей для бота. Можно сделать разными способами.

Первый — через python:

viber.set_webhook('https://mybot.com/')

Второй — отправить запрос на установку веб-хука вручную; например, используя программу Postman.

Установим заголовки:

где X-Viber-Auth-Token – токен, полученный ранее.

Текст сообщения:

В переменной event_types мы можем указать на какие типы событий наш бот будет реагировать.

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

Настройка бота под конкретные сообщения

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

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

{
            "DefaultHeight": True,
            "BgColor": "#FFFFFF",
            "Type": "keyboard",
            "Buttons": [
                {
                    "Columns": 6,
                    "Rows": 1,
                    "BgColor": "#e6f5ff",
                    "BgLoop": True,
                    "ActionType": "reply",
                    "ActionBody": "search_vacancies",
                    "ReplyType": "message",
                    "Text": "Поиск вакансий"
                }
            ]
        }

Если нужно добавить несколько кнопок, то их нужно перечислить в списке Buttons.

Область для кнопок имеет сетку в 6 колонок. В параметрах кнопки указаны следующие характеристики:

  • она будет занимать 6 колонок и 1 строку;
  • иметь определенный цвет фона;
  • какой вид действия используется при нажатии;
  • задано сообщение, которое будет посылаться на сервер при нажатии;
  • задан тип сообщения;
  • указан заголовок кнопки.

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

ActionBody: action_type|value или просто action_type.

Рабочие примеры: 

ActionBody: select_country|Russia
ActionBody: search_vacancies
ActionBody: select_level|’’

Также хочу отметить, что нам необходимо запоминать ответы, которые дает пользователь. Это можно сделать несколькими способами. Я решил эти данные сохранять в параметр сообщения tracking_data.

Это поле может содержать только строковые значения, поэтому сохраним данные в json, а передавать их пользователю будем через параметр tracking_data в виде строки, путем преобразования json.dumps() и обратно через json.loads().

Вот пример работы с сообщениями пользователя:

        keyboard = {
            "DefaultHeight": True,
            "BgColor": "#FFFFFF",
            "Type": "keyboard",
            "Buttons": [
                {
                    "Columns": 6,
                    "Rows": 1,
                    "BgColor": "#e6f5ff",
                    "BgLoop": True,
                    "ActionType": "reply",
                    "ActionBody": "search_vacancies",
                    "ReplyType": "message",
                    "Text": "Поиск вакансий"
                }
            ]
        }
        is_finished = False
        buttons = {}

        if text_type == 'search_vacancies':
            tracking_data = {}
            countries = [country[1] for country in COUNTRIES]
            text_message = 'Доступны вакансии в следующих странах: {countries}. Пожалуйста, выберите одну из них.'
                .format(countries=', '.join(countries))
            buttons = get_buttons('select_country', COUNTRIES)

        elif text_type == 'select_country':
            tracking_data['country'] = text[1]
            items = [item[1] for item in PROFILES]
            text_message = 'Доступны вакансии по следующим профилям: {profiles}. Пожалуйста, выберите один из них.'
                .format(profiles=', '.join(items))
            buttons = get_buttons('select_profile', PROFILES)

        elif text_type == 'select_profile':
            tracking_data['profile'] = text[1]
            items = [item[1] for item in LEVELS]
            text_message = 'Укажите пожалуйста какой у вас опыт в этой области: {items}. Пожалуйста, выберите один из них.'
                .format(
                items=', '.join(items))
            buttons = get_buttons('select_level', LEVELS)

        elif text_type == 'select_level':
            is_finished = True
            tracking_data['level'] = text[1]

        else:
            text_message = "Выберите опцию"

        messages = []

        if is_finished:
            response = requests.get(VACANCIES_URL, params=tracking_data)
            json_response = response.json()
            items = json_response.get('results', [])
            for item in items:
                messages.append(URLMessage(media=item.get('url'),
                                           keyboard=keyboard,
                                           tracking_data={}))

            if not messages:
                messages.append(TextMessage(text='Извините, по выбранным критериям, вакансий не найдено.',
                                            keyboard=keyboard,
                                            tracking_data={}))

        else:
            keyboard_buttons = keyboard.get('Buttons', [])
            keyboard_buttons.extend(buttons)
            keyboard['Buttons'] = keyboard_buttons
            keyboard = keyboard if keyboard.get('Buttons') else None
            tracking_data = json.dumps(tracking_data)
            messages.append(TextMessage(text=text_message,
                                        keyboard=keyboard,
                                        tracking_data=tracking_data))

        viber.send_messages(viber_request.sender.id, messages)

В вышеприведенном фрагменте кода происходит следующее: определяется тип отправленного сообщения пользователем, к примеру ‘search_vacancies‘ — значит запустить процедуру выбора параметров для поиска вакансий; следующим шагом нужно показать выбор страны в виде кнопок и таким же способом далее выбирается профиль и опыт, как только все параметры выбраны, то посылается запрос на сервер и результаты с вакансиями отображаются ботом.

Также, хочется отметить, что Бот может отправлять следующие сообщения:

  1. Обычное текстовое – TextMessage(text=’some text’).
  2. Сообщение-ссылка – URLMessage(media=’http://mysite.com’).
  3. Контактное сообщение – ContactMessage(contact=contact), где contact объект вида Contact c параметрами name, phone_number, avatar.
  4. Сообщение-картинка – PictureMessage(media=’http://picture.url.com’).
  5. Видео сообщение – VideoMessage(media=’http://video.url.com’, size=1234).
  6. Сообщение о местоположении – LocationMessage(location=location), где location – объект вида Location с указанием координат широты и долготы.
  7. Стикер – StickerMessage(sticker_id=123), где sticker_id это ид конкретного стикера.
  8. Файл – FileMessage(media=’http://path/to/file’, size=123, file_name=’file name’).
  9. Сложное медиа-сообщение – RichMediaMessage(rich_media=json_object), более подробно можно посмотреть в документации, можно вывести несколько объектов вида: картинку с текстом и ссылкой, таким образом организовать некую «карусель» объектов.
  10. Hotkeys для пользователя – KeyboardMessage – это такие кнопки которые мы делали для ответа пользователям.

Использование ngrok для локальной разработки

Как я отмечал выше, чтобы ваш сервис работал с Viber, он должен быть запущен через ssl (самоподписанные сертификаты работать не будут, нужен хотя бы let’s encrypt).

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

Установка ее очень простая: достаточно посетить сайт https://ngrok.com/.

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

./ngrok http 8443

После это получаем такую информацию:

Тут видно что по адресу https://4c4b93d5.ngrok.io доступен мой сервис с ботом.

Этот адрес сервера нужно отправлять при установке хука инициализации бота.

Пример работы

После нажатия кнопки (Поиск вакансий):

создать чат-бот смит компания

После выбора страны (Россия):

создать чат-бот smyt компания

После выбора профиля деятельности (Разработка):

создание чат-бота смит компания

После указания опыта работы(Неважно) получаем такие результаты:

создание чат-бота smyt компания

По нашему запросу нашлась одна вакансия.

К сожалению, мы самостоятельно не можем добавить нашего бота в общий список всех доступных ботов и даже не можем дать на него прямую ссылку, а все потому, что у компании Viber строгие требования к чат-ботам и нужно обращаться в компанию Viber с просьбой о подтверждении (судя по статьям в интернете, такое подтверждение удается получить только крупным компаниям).

Полный код бота доступен по адресу:

https://github.com/akapitonov/simple-viber-bot

 

python,

viber

 
Смотреть все посты

На чтение 5 мин Просмотров 1.1к. Опубликовано 28.04.2020

Вайбер бот – это виртуальный робот-собеседник (ВС), который имитирует действия обычного пользователя (ведет диалог, отвечает на вопросы). Разработку можно создать самому, скачать готовый вариант, либо заказать персонального ВС у специалистов. Большинство клиентов выбирает личное проектирование, что делает робота эффективным, удобным, уникальным в общении.

Содержание

  1. Создание публичного аккаунта
  2. Варианты интеграции виртуального собеседника
  3. Через официальных партнеров
  4. Через API
  5. Рекомендации для бота
  6. Продвижение
  7. Примеры
  8. Выводы

Создание публичного аккаунта

Чтобы спроектировать собеседника, необходимо сначала зарегистрировать публичный аккаунт.

Сделать это можно следующим способом:

  1. Открыть вкладку чатов в мобильном приложении.
  2. Нажать кнопку «+» снизу справа страницы.
  3. Выбрать «Создать Сообщество».
  4. Выделить контакты, которые будут добавлены в паблик.
  5. Ввести информацию о будущем аккаунте (название, иконка, описание).
  6. Нажать «Готово».

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

Отправлять сообщения в паблике могут только администраторы.

Детальная информация видна на видео:

Варианты интеграции виртуального собеседника

Существует два основных варианта интеграции чат-программы: через партнерскую сеть и API. Рассмотрим каждый отдельно.

Через официальных партнеров

Для этого способа прежде всего нужно зарегистрировать аккаунт партнера Вайбер.

Сделать операцию можно следующим образом:

  • перейти по ссылке;
  • указать свой мобильный номер, который уже подключен к системе;
  • ввести код подтверждения;
  • указать почту, придумать пароль в системе;
  • для создания страницы нажать «Далее», перейти во вкладку управления аккаунтом, авторизоваться.

После регистрации партнерской учетной записи необходимо создать бота в вайбере.

Для этого стоит следовать списку действий ниже:

  1. После авторизации выбрать команду «Создать бот» во вкладке слева.
  2. Ввести необходимые данные учетной записи, загрузить фото.
  3. Указать описание аккаунта, почту.
  4. Скопировать полученный апи-ключ.
    Что такое Вайбер бот
    Ввод апи-ключа.
  5. Войти в личный кабинет, нажать на «Онлайн чат», после выбрать свой сайт.
  6. В появившемся столбце тапнуть «Мессенджеры», указать вкладку «Вайбер», кликнуть на «добавить новый канал».
  7. Вставить ранее скопированный ключ.
  8. Нажать «Показать» для видимости страницы пользователям.

Ваш аккаунт появится в поиске только после того, как наберет минимум 6 подписчиков.

Через API

Апи позволяет создать данную программу через PHP (распространенный язык программирования).

Существует два способа регистрации робота:

  • самостоятельное программирование;
  • создание системы специалистом на заказ.

Тем, кто «подкован» в этой сфере, стоит написать приложение самому – это сэкономит деньги, но займет немало времени. Пользователям, которые не знакомы с программированием, лучше доверить создание системы профессионалу.

Опубликовать готовую программу можно, заполнив «форму публикации бота». Если разработка будет нести уникальную ценность, а также иметь хотя бы минимальное понимание ввода пользователя, то она будет успешно размещена.

Рекомендации для бота

Чтобы программа была эффективной, нужно определить ее будущее назначение и принцип работы.

Как создать Вайбер бот

Консультационный бот в Вайбере.

За назначением различают такие типы ВС:

  • информационный (предоставляет данные согласно запросу пользователя о товаре, услуге, проекте);
  • развлекательный (общение с клиентами);
  • консультационный (онлайн-консультант, помогающий при выборе товара/услуги, отвечающий на вопросы);
  • вспомогательный (для внутренних нужд или для помощи клиентам при проведении операций);
  • искусственный интеллект (анализирует информацию, может заменить обычного работника или консультанта).

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

За принципом работы можно выделить три типа ВС:

  • работающие с помощью кнопок или команд (просто создаются);
  • текстовые ВС (дают пользователю больше информации, нежели предыдущие);
  • роботы с распознаванием речи человека (сложный алгоритм создания, более удобное использование).

Продвижение

Созданный виртуальный собеседник прежде всего требует рекламы и потока новых пользователей.

Вот список самых популярных методов продвижения робота-собеседника:

  • скопировать ссылку на программу, прикрепить ее на своих страницах в соцсетях, сайтах, пабликах;
  • опубликовать робота в каталоге Viber (на данный момент функция приостановлена);
  • сделать QR-код программы, поместить его на улицах города, на собственных товарах и т.д.;
  • заказать рекламу у блогеров, сайтов, сообществ.

Указанные варианты продвижения помогут увеличить охват аудитории, привлечь новых пользователей, развить аккаунт.

Примеры

Как использовать Вайбер бот

Робот-собеседник Comedy Club.

Использование чат-робота в сообществах значительно упростит процесс ведения дел, общения, ускорит проведение операций.

Но вместе с этим возникает ряд вопросов: «С какой целью его создавать?», «Каким именно он должен быть?».

Рассмотрим самые распространенные примеры:

  • робот-собеседник Comedy Club. Эта программа позволяет за несколько кликов найти нужный выпуск шоу и просмотреть его, уведомляет о выходе новой серии;
  • чат-робот Зоряна. Это бот мобильного оператора Киевстар, который отвечает на вопросы, помогает разобраться в системе, устраняет неполадки сети;
  • ВС футбольного клуба «Барселона». Помогает болельщикам узнавать все новости из жизни ФК, найти нужную информацию, уведомляет о предстоящих играх;
  • GorodRabot. Помогает находить вакансии на рынке труда, предоставляет данные о новых свободных должностях;
  • бот Почты России. Дает информацию о прибытии, отправке, доставке посылки, отслеживает ее, рассчитывает стоимость услуг.

Чтобы определить, каким будет ваш ВС, проанализируйте конкурентов, другие подобные боты, возможные варианты их разработки.

ВАЖНО! С 1 апреля 2019 года Viber начал взимать плату с владельцев виртуальных собеседников: $4500 ежемесячно за отправку до 500 тысяч сообщений, $6500 – за возможность отправки до 1 миллиона сообщений.

Выводы

Viber бот – это практичное, а также технологичное решение для сообществ. Устанавливать программу нетрудно. Приложение поможет сделать аккаунт интересным, функциональным, удобным.

Детальная информация видна на видео:

Понравилась статья? Поделить с друзьями:
  • Как написать ботнет
  • Как написать бота через питон
  • Как написать бота телеграм на джаве
  • Как написать бота телеграм на java
  • Как написать бота самп