12.08.2019

Colored Fax with raspberry and hylafax+.

Для работа цветных факсов нужно использовать hylafax+ , не путать с обычным Hylafax. В целом установка проходит по порядку, основные проблемы это как обычно поставить все нужные пакеты аккуратно.

Для работы используются следующие статьи:

Hylafax+ на sourceforge скачать нужно последнюю версию 7+.

hylafax+ installation from svn.

hylafax+ about colored fax – во время ./configure необходимо обратить внимание на то, что нужные библиотеки присутствуют в системе.

для работы понадобится iaxmodem и две библиотеки spandsp и libiax2, которые идут вместе с iaxmodem.

  1. Скачать hylafax+ и скомпилировать, во время компиляции gs программа была не найдена, но я просто создал symlink на то место где hylfax+ её искала. хотя это не обязательно.
  2. скачать iaxmodem и скомпилировать две библиотеки идущие с ним в папке Lib. (кстати вероятно этот шаг можно облегчить, если использовать готовые пакеты с iaxmodem )
  3. Сконнектить iaxmodem с астериском, статьи которые помогут это сделать: статья про обычный hylafax и связке с астериском, у меня в прицнипе получилось всё сделать через web freepbx, единственное, что если Host для iax пользователя установить как 127.0.0.1 то, регистрация не проходила, либо проходила с ошибкой, поэтому я сделал dynamic, но permit выставил для 127.0.0.1/32 . О запуске модема можно также в этой статье почитать, но и описание внутри пакета тоже простое и подробное.
  4. После того как модем появился в системе, можно запустить faxgetty и позвонить на номер модема в примере он указан как iaxmodem0, но я использовал 2000.

Для тестирования факсов использовал кстати, ventafax – Это программа с очень долгой историей, но удивительно робит и сейчас.

9.08.2019

systemd. opensips 1.7. centos7

Чтобы использовать автозагрузку на centos7 без понимания как работает systemd можно взять файл из новых версий opensips для systemd доработать его и добавить к себе в систему

  1. разместить файл opensips.service в /etc/systemd/multi-user.target.wants
  2. отредактировать файл:

[Unit]
Description=OpenSIPS is a very fast and flexible SIP (RFC3261) server
Documentation=man:opensips
After=network.target mariadb.service postgresql.service rtpproxy.service
Requires=mariadb.service

[Service]
Type=forking
User=root
Group=root
RuntimeDirectory=opensips
RuntimeDirectoryMode=775
Environment=P_MEMORY=32 S_MEMORY=32
EnvironmentFile=-/etc/sysconfig/opensips
PermissionsStartOnly=yes
PIDFile=%t/opensips/opensips.pid
ExecStart=/usr/local/sbin/opensips -P %t/opensips/opensips.pid -f /etc/opensips/opensips.cfg
ExecStop=/usr/bin/pkill –pidfile %t/opensips/opensips.pid
Restart=always
TimeoutStopSec=30s
LimitNOFILE=262144

[Install]
WantedBy=multi-user.target

3. выполнить systemctl enable openspis.service

по идее это всё, можно перезагружать, если ошибки будут, то проверить можно в логах journalctl -xe

полезная статья.

3.08.2019

MySQL ORDER BY / LIMIT performance: late row lookups

Оптимизация запросов, для большой выборки и исключения повторений крайне полезная статья.

вкраце можно использовать вот такую конструкцию:

SELECT  distinctl.id
FROM    (
SELECT  id
FROM    t_limit
WHERE columnA='53'
) o
JOIN    t_limit l
ON      l.id = o.id