Table of Contents |
---|
Warning |
---|
Бот не сможет работать без подтверждённого SSL-сертификата |
Настройка БД
Для корректной работы надо создать таблицу
Code Block |
---|
mysql -D abills < Abills/modules/Viber/Viber.sql |
Создание бота
(если у вас уже есть бот, эту часть можно пропустить)
- Заходим сюда: https://partners.viber.com/account/create-bot-account, входим в акаунт если спросит.
- Заполняем поля и запоминаем Uri URL (это наш VIBER
VIBER_BOT_NAME
) - Получаем токен, вставляем в конфиг config.pl (
VIBER_TOKEN
) Подключаем Веб-Хук
Бот не будет роботать без надежного сертификатаWarning вебхук
Настройка
Создайте директорию для бота, лучше всего с длинным и сложным именем, для этого можно использовать токен (или его часть).
например:
/usr/abills/cgi-bin/ViberABHVUmXdOOSzLbdzSaV23QuEBTmDMjzg/
Скопируйте в эту директорию файл viber_bot.cgi
Code Block | ||
---|---|---|
| ||
ln -s /usr/abills/Abills/modules/Viber/viber_bot.cgi /usr/abills/cgi-bin/ViberABHVUmXdOOSzLbdzSaV23QuEBTmDMjzg/ |
Установка веб хука
Code Block | ||
---|---|---|
| ||
curl --header "X-Viber-Auth-Token: <TOKEN>" --request POST --data '{ "url":"<URL>", "event_types":[ "delivered", "seen", "failed", "subscribed", "unsubscribed", "conversation_started" ], "send_name": false, "send_photo": false }' https://chatapi.viber.com/pa/set_webhook |
Вместо <TOKEN> вставьте свой токен, которий вам выдал бот.
Вместо <URL> вставьте сылку к viber_bot.cgi (https://YOUR.URL:YOURPORT/ViberABHVUmXdOOSzLbdzSaV23QuEBTmDMjzg/viber_bot.cgi)
Вы должны получить в ответ JSON строку, в котором будет будет
Code Block | ||
---|---|---|
| ||
{ "status_message":"ok" |
} |
config.pl
В config.pl нужно добавить:
Параметр | Описание |
---|---|
$conf{VIBER_TOKEN} | Обязательный параметр. Пример: 4cbdb2fbb8e1de02 |
$conf{VIBER_BOT_NAME} | Обязательный параметр. Uri URL, которое вы указывали при создании бота |
| Подпись и номер телефона разделяются знаком ' | ' а каждый следующий номер знаком ' ; ' Пример: |
| Подпись и url разделяются знаком ' | ' а каждый следующий url знаком ' ; ' Пример: |
| Ссылка на произвольный вайбер канал. Пример: |
| Ссылка на сайт провайдера. Пример: |
| Локализация бота. Допустимы По умолчанию, доступны три значения (: |
$conf{VIBER_USER_PORTAL} | Ссылка для перехода на портал абонента: Пример: |
$conf{DOCS_MONEY_NAMES} | Валюта отображения в модуле Viber Пример: |
Интерфейс бота
Бот загружает файлы из папки /usr/abills/Abills/modules/Viber/buttons-enabled/
Каждый файл - это отдельная кнопка, которая добавляется в меню.
Для подключения новых функций, необходимо скопировать нужные вам кнопки (или создать ссылку) из папки /usr/abills/Abills/modules/Viber/buttons-avaiable/
Code Block | ||
---|---|---|
| ||
mkdir /usr/abills/Abills/modules/Viber/buttons-enabled/ ln -s /usr/abills/Abills/modules/Viber/buttons-avaiable/Balance.pm /usr/abills/Abills/modules/Viber/buttons-enabled/ |
На сегодняшний день доступны следующие функции.
Название файла | Кнопка | Описание | ||
---|---|---|---|---|
Balance.pm | Баланс | Выводит состояние счета, информацию о последнем пополнении счета и последнем списании | ||
Internet_info.pm | Интернет | Выводит информацию о подключенных услугах. | ||
Isp_info.pm | О компании | Выводит информацию о компании (Данные заполняются в Настройка>Другое>Параметры организации) | ||
Make_payment.pm | Пополнить счет | Подсказка о том как пополнить счет (текст нужно заполнять самому в файле) | ||
Services_and_account.pm | Услуги и счет | Расширенная версия кнопки Интернет, включает в себя также информацию о счете. Есть возможность взять кредит или отменить приостановление. | ||
Call.pm | Контакты тех. поддержки | Показывает информацию с конфига VIBER_SUPPORT_PHONE, VIBER_CHANEL, VIBER_LINK_URL... | ||
Send_message. pmpm | Отправить сообщение | Позволяет пользователю создать сообщение в службу поддержки. | ||
Equipment_info.pm | Проверка связи | Информация о состоянии подключения оптического терминала (в сети или выключен терминал) и состоянии порта оптического терминала, подключен ли к нему роутер.
|
Начало работы с ботом
Для того чтобы начать работать с ботом абонент должен подписаться на него. Сделать это можно двумя способами.1. Пользователь
- Пользователь может нажать
- кнопку в личном кабинете.
Дополнительно при нажатии на правую подкнопку открывается QR-код:- Пользователю откроеться Вайбер, и текст /start, который он должен отправить для авторизации.
Оповещения с файлами от Msgs
Чтобы отправлялись файлы с ответов на Viber bot нужно подключить следующие параметры:
$conf{MSGS_ATTACH2FILE} = 1; |
---|
$conf{ATTACH2FILE} = 1; |
По умолчанию отправляются только изображения. Чтобы отправить файлы других типов, необходимо сделать следующее.
В файле /etc/apache2/sites-enabled/abills_httpd.conf вставляем в конце:
Code Block | ||
---|---|---|
| ||
Alias "/files" "/usr/abills/Abills/templates"
<Directory "/usr/abills/Abills/templates">
AllowOverride None
Order allow,deny
Deny from all
<FilesMatch "\.(pdf|doc|docx|xls|xlsx)$">
Order allow,deny
Allow from all
Require all granted
Satisfy Any
</FilesMatch>
</Directory> |
Разработчикам - Создание кнопок для бота