Онлайн-чат

Материал из ISPWiki
Перейти к: навигация, поиск

Установка

Чат устанавливается в разделе Интеграция -> Модули


Чат-установка-модуле-релиз.png


После установки чата необходимо добавить SSL-сертификаты для работы чата. Чат работает по https. Также есть возможность сразу настроить отделы, об их настройке более подробнее рассказано ниже.


Чат-сертификаты-2.png

Кроме того, для настройки чата проверьте, что в файерволле на сервере, где установлен BILLmanager, открыт 3002 порт.

Внимание! При сохранении цепочки сертификата на серверах centos, возможны сложности с авторизацией сотрудника в чате. Чтобы решить данную проблему можно либо удалить поставленную цепочку сертификата, либо обновить(установить) nodejs на сервер с официального сайта (версию nodejs при этом можно не увеличивать)

Внимание! В Debian 8 используется старый пакет nodejs. Необходимо обновить его до новой версии (>= 6.13)

wget -O /root/nodesource_setup.sh 'https://deb.nodesource.com/setup_6.x'
sh /root/nodesource_setup.sh
apt-get install nodejs
cd /usr/local/mgr5/etc/scripts
npm install ejs


СУБД на удаленном сервере

Если на сервере, на который вы ставите модуль чата, выключена СУБД. То перед установкой плагина необходимо создать файл etc/billmgr.conf.d/chat.conf с настройками:

ChatDbHost localhost 
ChatDbUser billchat
ChatDbPassword dbpassword
ChatDbName billchat
ChatDbConnectionLimit 100
path ChatSslKey ../sslcert/chat.key
path ChatSslCert ../sslcert/chat.crt
ChatSecret {Произвольная строка}
ChatPort 3000
ChatUrl https://CHATSERVER:3000
ChatEmployeeName chatemployee
ChatEmployeePassword chatemployee_password

Тогда при установке модуль не будет пытаться подключиться к БД и установится без ошибок

Настройка чата

Для работы чата необходимо настроить список отделов, которым доступен чат, и список сотрудников этих отделов.

Настройка домена чата

Внимание! Клиентская часть чата работает только на домене прописанном в настройках провайдера, поле "URL сайтa".

Если домен чата прописан в /etc/hosts, где соответствует IP 127.0.0.1, то служба ihttpd должна слушать на 127.0.0.1.

Настройки отделов

Настройки отделов задаются на форме редактирования провайдера.


Нвстройки отделов.png


1. Доступные отделы - это список всех отделов которым доступен чат, в него же входят и входящие отделы.

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

Настройки сотрудников

Каждому сотруднику из доступных отделов для чата нужно проставить доступ для чата отдельно. При массовом включение удобно пользоваться групповым редактированием.


Чат-настройка-сотрудника.png

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

Чат-список-сотрудников.png

Вставка чата на сайт

Для отображения чата на сайте нужно вставить два js-скрипта, в код страницы (внутри тега BODY):

<script type="text/javascript" src="https://BILLURL:3002/js/index.js"></script>
 
<script type="text/javascript">
   if (window.billChat)  {
       billChat.init({
           project: PROJECT_ID,
           lang: 'ru',
           backgroundColor: '#99c21c',
           borderColor: '#CCC',
           baseUrl: 'https://BILLURL:3002/'
       });
   }
</script>


  • BILLURL - адрес биллинга или сервера, на котором стоит чат
  • PROJECT_ID - id проекта в биллинге (Для Standard и Advanced всегда 1)
  • lang - язык клиентской части, ru или en
  • backgroundColor - цвет фона клиентской части для кастомизации под цветовую схему сайта
  • borderColor - цвет границы клиентской части

Конкретный код для вашего биллинга можно найти в настройках провайдера.

Переход в рабочее место сотрудника поддержки

Для работы с чатами необходимо перейти в Рабочее место сотрудника поддержки

Можно перейти по кнопке на дашборде "Открыть чат" или по пункту "Открыть чат" в главном меню. Для корректной авторизации необходимо осуществлять переход из того же домена, который указан в "Провайдер - URL биллинга". Например, если в настройках указано https://bill.example.com:1500/billmgr, то переход в рабочее место сотрудника, выполненный из биллинга по адресу IP:1500/billmgr может не сработать.

Переход в рабочее место.png

Файл конфигурации чата

Файл конфигурации лежит по адресу /usr/local/mgr5/etc/billmgr.conf.d/chat.conf

ChatDbHost localhost

ChatDbUser chat

ChatDbPassword NfutsDB9Qq

ChatDbName chat

ChatDbConnectionLimit 100

path ChatSslKey ../sslcert/chat.key

path ChatSslCert ../sslcert/chat.crt

ChatSecret aqSL2VNvZM

ChatPort 3002

ChatUrl https://cent7:3002

ChatEmployeeName chatemployee

ChatEmployeePassword k9lxkHeMs2

Расшифровка параметров:

  • ChatDb* - настройки БД чата
  • path ChatSsl* - пути до файлов SSL сертификатов, только относительный путь
  • ChatPort - номер порта, который слушает сервер чата
  • ChatUrl - адрес сервера чата
  • ChatEmployee* - сотрудник, под которым сервер чата синхронизирует историю чата с биллингом и создает входящие сообщения от клиента


Для применения изменений необходимо перезапустить биллинг:

killall core


Перезапуск сервера чата

Для перезапуска сервера чата нужно позвать команду:

systemctl restart billchat.service


Просмотр логов

Для просмотра логов используйте команду:

journalctl -u billchat

Для просмотра лога в режиме реального времени, используйте флаг -f:

journalctl -u billchat -f

Синхронизация истории чатов с биллингом

Синхронизация запускается при старте сервиса чата, и каждые 15 минут.

Общая схема работы чата

Схема работы чата со стороны сотрудника.png