Категория:FreePBX — различия между версиями
Материал из m6a
								
												
				Vshpagin (обсуждение | вклад)  (→Использование)  | 
				Vshpagin (обсуждение | вклад)   (→Контроль транков)  | 
				||
| (не показана одна промежуточная версия этого же участника) | |||
| Строка 9: | Строка 9: | ||
Вносим следующее содержание  | Вносим следующее содержание  | ||
   #!/bin/bash  |    #!/bin/bash  | ||
| − | |||
   # Получаем список транков со статусами Unregistered, Rejected  |    # Получаем список транков со статусами Unregistered, Rejected  | ||
   TRUNKS=$(asterisk -rx "pjsip show registrations" | awk '/^\s*([^\s]+).*Unregistered|Rejected/ {print $1}' | awk -F'/' '{print $1}')  |    TRUNKS=$(asterisk -rx "pjsip show registrations" | awk '/^\s*([^\s]+).*Unregistered|Rejected/ {print $1}' | awk -F'/' '{print $1}')  | ||
| − | |||
   # Проверяем, пустой ли список транков  |    # Проверяем, пустой ли список транков  | ||
   if [ -z "$TRUNKS" ]; then  |    if [ -z "$TRUNKS" ]; then  | ||
| − | + |       echo "$(date): Trunk normal." >> /var/log/trunk_restart.log  | |
     exit 0  |      exit 0  | ||
   fi  |    fi  | ||
| − | |||
   # Перезапускаем каждый транк из списка  |    # Перезапускаем каждый транк из списка  | ||
   for TRUNK in $TRUNKS; do  |    for TRUNK in $TRUNKS; do  | ||
| − | + |       echo "$(date): Trunk $TRUNK restarted." >> /var/log/trunk_restart.log  | |
     asterisk -rx "pjsip send unregister $TRUNK"  |      asterisk -rx "pjsip send unregister $TRUNK"  | ||
| − | |||
     # Задержка в 5 секунд  |      # Задержка в 5 секунд  | ||
     sleep 5  |      sleep 5  | ||
| − | |||
     asterisk -rx "pjsip send register $TRUNK"  |      asterisk -rx "pjsip send register $TRUNK"  | ||
   done  |    done  | ||
Текущая версия на 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
Эта категория в данный момент пуста.