Категория:FreePBX — различия между версиями
Материал из m6a
Vshpagin (обсуждение | вклад) (Новая страница: «==Использование== rpm -qa | grep mysql-connector-odbc rpm -e --nodeps "mysql-connector-odbc-5.2.5-7.el7.x86_64" yum install mariadb-connector-o…») |
Vshpagin (обсуждение | вклад) (→Контроль транков) |
||
(не показаны 2 промежуточные версии этого же участника) | |||
Строка 4: | Строка 4: | ||
yum install mariadb-connector-odbc | yum install mariadb-connector-odbc | ||
fwconsole restart | fwconsole restart | ||
+ | ==Контроль транков== | ||
+ | Создаём скрипт | ||
+ | vi /usr/local/bin/check_and_restart_trunk.sh | ||
+ | Вносим следующее содержание | ||
+ | #!/bin/bash | ||
+ | # Получаем список транков со статусами Unregistered, Rejected | ||
+ | TRUNKS=$(asterisk -rx "pjsip show registrations" | awk '/^\s*([^\s]+).*Unregistered|Rejected/ {print $1}' | awk -F'/' '{print $1}') | ||
+ | # Проверяем, пустой ли список транков | ||
+ | if [ -z "$TRUNKS" ]; then | ||
+ | echo "$(date): Trunk normal." >> /var/log/trunk_restart.log | ||
+ | exit 0 | ||
+ | fi | ||
+ | # Перезапускаем каждый транк из списка | ||
+ | for TRUNK in $TRUNKS; do | ||
+ | echo "$(date): Trunk $TRUNK restarted." >> /var/log/trunk_restart.log | ||
+ | asterisk -rx "pjsip send unregister $TRUNK" | ||
+ | # Задержка в 5 секунд | ||
+ | sleep 5 | ||
+ | asterisk -rx "pjsip send register $TRUNK" | ||
+ | done | ||
+ | Сохраняем и делаем исполняемым | ||
+ | chmod +x /usr/local/bin/check_and_restart_trunk.sh | ||
+ | Вносим в расписание | ||
+ | crontab -e | ||
+ | */5 * * * * /usr/local/bin/check_and_restart_trunk.sh |
Текущая версия на 19:19, 6 сентября 2024
Использование
rpm -qa | grep mysql-connector-odbc rpm -e --nodeps "mysql-connector-odbc-5.2.5-7.el7.x86_64" yum install mariadb-connector-odbc fwconsole restart
Контроль транков
Создаём скрипт
vi /usr/local/bin/check_and_restart_trunk.sh
Вносим следующее содержание
#!/bin/bash # Получаем список транков со статусами Unregistered, Rejected TRUNKS=$(asterisk -rx "pjsip show registrations" | awk '/^\s*([^\s]+).*Unregistered|Rejected/ {print $1}' | awk -F'/' '{print $1}') # Проверяем, пустой ли список транков if [ -z "$TRUNKS" ]; then echo "$(date): Trunk normal." >> /var/log/trunk_restart.log exit 0 fi # Перезапускаем каждый транк из списка for TRUNK in $TRUNKS; do echo "$(date): Trunk $TRUNK restarted." >> /var/log/trunk_restart.log asterisk -rx "pjsip send unregister $TRUNK" # Задержка в 5 секунд sleep 5 asterisk -rx "pjsip send register $TRUNK" done
Сохраняем и делаем исполняемым
chmod +x /usr/local/bin/check_and_restart_trunk.sh
Вносим в расписание
crontab -e */5 * * * * /usr/local/bin/check_and_restart_trunk.sh
Эта категория в данный момент пуста.