Настройка БД
Для корректной работы надо создать таблицу
mysql -D abills < Abills/modules/Viber/Viber.sql
Создание бота
(если у вас уже есть бот, эту часть можно пропустить)
- Заходим сюда: https://partners.viber.com/account/create-bot-account, входим в акаунт если спросит.
- Заполняем поля и запоминаем Uri (это наш VIBER_BOT_NAME)
- Получаем токен, вставляем в конфиг (VIBER_TOKEN)
Подключаем Веб-Хук
Бот не будет роботать без надежного сертификата
Настройка
Создайте директорию для бота, лучше всего с длинным и сложным именем, для этого можно использовать токен (или его часть).
например:
/usr/abills/cgi-bin/ViberABHVUmXdOOSzLbdzSaV23QuEBTmDMjzg/
Скопируйте в эту директорию файл viber_bot.cgi
ln -s /usr/abills/Abills/modules/Viber/viber_bot.cgi /usr/abills/cgi-bin/ViberABHVUmXdOOSzLbdzSaV23QuEBTmDMjzg/
Установка веб хука
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 строку, в котором будет "status_message":"ok".
config.pl
В config.pl нужно добавить:
Параметр | Описание |
---|---|
$conf{VIBER_TOKEN} | Обязательный параметр. Пример: 4cbdb2fbb8e1de02-6a6ef282503c9ec9-596a8222f48a7880 |
$conf{VIBER_BOT_NAME} | Обязательный параметр. Uri, которое указывали при создании |
$conf{VIBER_SUPPORT_PHONE} | Подпись и номер телефона разделяются знаком ' | ' а каждый следующий номер знаком ' ; ' Пример: 'MTC|09600000;Lifecell|123456789' |
$conf{VIBER_LINK_URL} | Подпись и url разделяются знаком ' | ' а каждый следующий url знаком ' ; ' Пример: 'Акция|https://test.ua;Магазин|https://shop.ua;' |
$conf{VIBER_CHANEL} | Ссылка на произвольный вайбер канал. Пример: 'https://t.me/test_abills' |
$conf{VIBER_SITE} | Ссылка на сайт провайдера. Пример: 'http://abills.net.ua' |
$conf{VIBER_LANG} | Локализация бота. Допустимы три значения (english, russian, ukrainian). |
Интерфейс бота
Бот загружает файлы из папки /usr/abills/Abills/modules/Viber/buttons-enabled/
Каждый файл - это отдельная кнопка, которая добавляется в меню.
Для подключения новых функций, необходимо скопировать нужные вам кнопки (или создать ссылку) из папки /usr/abills/Abills/modules/Viber/buttons-avaiable/
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.pm | Отправить сообщение | Позволяет пользователю создать сообщение в службу поддержки. |
Начало работы с ботом
Для того чтобы начать работать с ботом абонент должен подписаться на него. Сделать это можно двумя способами.
1. Пользователь может нажать кнопку в личном кабинете.
2. Пользователю откроеться Вайбер, и текст /start, который он должен отправить для авторизации.
Разработчикам - Создание кнопок для бота