четверг, 15 декабря 2022 г.

Чистим exim "Retry DB"

Когда exim не может доставить письмо, он помечает его домен недоступным до следующей попытки отправки через заданный интервал времени. 

Все попытки отправить письмо на этот домен до истечения retry таймаута будут отбиваться с отметкой в логе "all hosts for 'mydomain.ru' have been failing for a long time (and retry time not reached)".

Для очистки базы retry таймаутов делаем следующее:

# /usr/sbin/exim_tidydb -t 1d /var/spool/exim retry

# mv -vi /var/spool/exim/db/retry{,.original}

# mv -vi /var/spool/exim/db/retry.lockfile{,.original}

Или просто удаляет содержимое /var/spool/db и перезапускаем exim.

Отсюда.

понедельник, 12 декабря 2022 г.

Нюансы версии DAHDI в зависимости от версии ядра Линукса

Which version of DAHDI to use depends on the Linux kernel version, as given by "uname -r". Roughly, Linux kernel 3.x should use DAHDI 2.9, kernel >=4.0 and < 4.15 should use DAHDI 2.11, and kernel >= 4.15 or greater should use DAHDI 3.x.

Отсюда.

четверг, 8 декабря 2022 г.

Gentoo не грузится с деградировавшего зеркала mdadm.

Невозможно "автоматически" загрузиться с degraded raid1. На этапе initramfs массив остается в статусе inactive. Rootfs не найден, предлагается запустить shell для исправления ситуации.

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

mdadm --stop /dev/mdX

mdadm --assemble /dev/mdX --run

UnixODBC и Asterisk 16 (и 18). Функции func_odbc обрезают ответ базы до первых 14 знаков.

Бага в libodbcpsql.so из самого пакета unixODBC.

Решение: установка psqlodbc. Psqlodbc создаёт библиотеки psqlodbca.so и psqlodbcw.so. Их и используем для подключения в odbcinst.ini.

[PostgreSQL]

Description=ODBC for PostgreSQL

Driver=/usr/lib64/psqlodbcw.so

Setup=/usr/lib64/libodbcpsqlS.so

Threading=5

UsageCount=1

FileUsage=1


In addition, the "w" and "a" at the end of the file names almost certainly refer to the Unicode ("w" for "wide") and ANSI ("a") versions of the driver.

psqlodbca.so - ANSI

psqlodbcw.so - widechar


пятница, 25 ноября 2022 г.

Отображение DTMF-кода командой RECORD в Asterisk

 Команда RECORD имеет опцию "y", завершающую запись при получении любого DTMF-кода. При этом переменная RECORD_STATUS принимает значение "DTMF". Сам набранный абонентом код нигде не фиксируется. Исправляем эту ситуацию.

пятница, 29 апреля 2022 г.

Логирование запросов к базе Postgresql

Для всех баз данных: в файле postgresql.conf указываем параметр log_statement = 'all' и перезапускаем сервис.

Для конкретной базы: ALTER DATABASE %имя_базы% SET log_statement = 'all';


воскресенье, 17 апреля 2022 г.

среда, 6 апреля 2022 г.

Настройка сервиса XML на Cisco SPA504G

 На телефонах Cisco кроме встроенного WEB-сервера есть WEB-браузер, который может обрабатывать определенные элементы XML.

Сервис XML можно повесить на кнопку линии:

Extension: Disabled

Share Call Appearance: private

Extended Function: fnc=xml;url=http://10.10.10.10:883/xml.php?name=$UID1;nme=Меню

Где,

fnc - вызов функции xml;

url - путь к файлу XML/HTTP/PHP и т.п., через параметры можно передавать некоторые переменные, в данном случае UID. Подробнее в документации на ТА;

nme - имя, отображаемое напротив кнопки линии.