Различия
Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
abills:docs:manual:websocket_backend [2017/07/19 12:55] anton [Установка сервера WebSocket] |
abills:docs:manual:websocket_backend [2018/09/28 14:47] (текущий) andriy [Возможные проблемы] |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
==== websocket_backend.pl ==== | ==== websocket_backend.pl ==== | ||
Демон, в котором собираются все долгоживущие процессы. | Демон, в котором собираются все долгоживущие процессы. | ||
+ | |||
+ | ^start | запустить в режиме демона | | ||
+ | ^stop | остановить демон | | ||
+ | ^restart | перезапустить | | ||
+ | ^status | проверить, запущен ли демон | | ||
На даный момент обрабатывает: | На даный момент обрабатывает: | ||
Строка 6: | Строка 11: | ||
* [[abills:docs:callcenter:atrey:ru#realizacija_v_brauzere|Asterisk AMI и интеграцию с Callcenter]] | * [[abills:docs:callcenter:atrey:ru#realizacija_v_brauzere|Asterisk AMI и интеграцию с Callcenter]] | ||
* [[abills:docs:manual:sender:telegram|Telegram Bot API ]] | * [[abills:docs:manual:sender:telegram|Telegram Bot API ]] | ||
- | * [[abills:docs:manual:sender:browser#zapusk_vneshnej_komandy_s_uvedomleniem|Обработка длительных асинхронных команд с оповещением]] | + | * [[abills:docs:manual:sender:browser#zapusk_vneshnej_komandy_s_uvedomleniem|Обработка длительных внешних команд с оповещением о выполнении]] |
+ | * [[abills:docs:modules:sysinfo:satellite:ru|Контроль сервисов на внешних серверах]] | ||
==== Установка сервера WebSocket ==== | ==== Установка сервера WebSocket ==== | ||
Установить perl модули: | Установить perl модули: | ||
- | * AnyEvent::Socket | + | * [[abills:docs:manual:soft:anyevent|AnyEvent]] |
- | * AnyEvent::Handle | + | * [[abills:docs:manual:soft:protocolwebsocket|Protocol::WebSocket]] |
- | * Protocol::WebSocket | + | |
Установить и включить модули апача: | Установить и включить модули апача: | ||
Строка 32: | Строка 37: | ||
=== FreeBSD === | === FreeBSD === | ||
- | # fetch -o /etc/rc.d/abills_websocket http://abills.net.ua/misc/abills_websocket_rc.d | + | # fetch -o /usr/local/etc/rc.d/abills_websocket http://abills.net.ua/misc/abills_websocket_rc.d |
- | # chmod +x /etc/rc.d/abills_websocket | + | # chmod +x /usr/local/etc/rc.d/abills_websocket |
=== Debian/Ubuntu/CentOS === | === Debian/Ubuntu/CentOS === | ||
- | Можно просто прописать в **/etc/rc.local** | + | Можно просто прописать в **/etc/rc.local** ( Задержка нужна для того, чтобы загрузилась MySQL) |
- | /usr/abills/libexec/websocket_backend.pl -d | + | (sleep 5 && /usr/abills/libexec/websocket_backend.pl -d) & |
**Или** установить как службу \\ | **Или** установить как службу \\ | ||
Строка 61: | Строка 66: | ||
WantedBy=multi-user.target | WantedBy=multi-user.target | ||
</code> | </code> | ||
+ | |||
+ | **nobody** - пользователь веб сервера | ||
+ | |||
Включить службу | Включить службу | ||
<code> | <code> | ||
systemctl enable abills-backend.service | systemctl enable abills-backend.service | ||
+ | systemctl start abills-backend.service | ||
+ | </code> | ||
+ | |||
+ | ==== Автоматический перезапуск процеса ==== | ||
+ | Благодаря billd-плагину check_programs можно перезапускать процес и получать уведомления о неактивности\\ | ||
+ | **/etc/crontab**\\ | ||
+ | <code> | ||
+ | */5 * * * * /usr/abills/libexec/billd check_programs PROGRAMS=websocket | ||
</code> | </code> | ||
Строка 81: | Строка 97: | ||
**libexec/config.pl** | **libexec/config.pl** | ||
$conf{WEBSOCKET_ENABLED} = 1; | $conf{WEBSOCKET_ENABLED} = 1; | ||
+ | $conf{WEBSOCKET_URL} = 'https://192.168.1.169:9443'; # кастомный URL для WebSocket | ||
\\ | \\ | ||