Skip to end of metadata
Go to start of metadata

Настройка БД

 Для корректной работы надо создать таблицу

mysql -D abills < Abills/modules/Viber/Viber.sql

Создание бота

(если у вас уже есть бот, эту часть можно пропустить)

  1. Заходим сюда: https://partners.viber.com/account/create-bot-account, входим в акаунт если спросит.
  2. Заполняем поля и запоминаем Uri (это наш VIBER_BOT_NAME)
  3. Получаем токен, вставляем в конфиг (VIBER_TOKEN)
  4. Подключаем Веб-Хук

    Бот не будет роботать без надежного сертификата

Настройка

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

например:
/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).

$conf{VIBER_USER_PORTAL}

Ссылка для перехода на портал абонента:

Пример: https://demo.abills.net.ua:9443/

$conf{DOCS_MONEY_NAMES}

Валюта отображения в модуле Viber 

Пример: 'грн.'

Интерфейс бота

Бот загружает файлы из папки /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, который он должен отправить для авторизации.

Разработчикам - Создание кнопок для бота 

  • No labels