Категория:FreePBX — различия между версиями

Материал из m6a
Перейти к: навигация, поиск
(Новая страница: «==Использование== rpm -qa | grep mysql-connector-odbc rpm -e --nodeps "mysql-connector-odbc-5.2.5-7.el7.x86_64" yum install mariadb-connector-o…»)
 
(Использование)
Строка 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:18, 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

Эта категория в данный момент пуста.