У меня ушло достаточно много времени, но наконец-то я здесь! Мне пришлось загрузить исходный код minicom, чтобы понять, что делать, чтобы избежать хлопот с постоянным нажатием Ctrl+Z, U... Вот Это.
minicom
сохраняет свои параметры в файле конфигурации, который по умолчанию имеет вид $HOME/.minirc.dfl
. Поместите следующую строку на букву :
pu addcarreturn Yes
и теперь minicom
добавляет возврат каретки ко всем входящим строкам. Я понятия не имею, почему он не сохранил эту опцию вместе с файлом конфигурации, но, черт возьми, теперь мне все равно!
Учтите, что каждая опция после pu
должна содержать ровно 16 символов, дополненных пробелами справа.
После долгого исследования я обнаружил обходной путь:
Создайте сценарий в /usr/local/bin/freepbx_fix_queue_members.sh со следующими строками:
#!/bin/bash
cp /etc/asterisk/queues_additional.conf /etc/asterisk/queues_additional.conf-freepbx
sed 's/member=Local\/\([0-9a-zA-Z_]*\).*,\(.*\)/member=SIP\/\1,\2/' </etc/asterisk/queues_additional.conf-freepbx >/etc/asterisk/queues_additional.conf
asterisk -rx "reload"
И дайте ему выполнение разрешение.
chmod +x /usr/local/bin/freepbx_fix_queue_members.sh
Измените параметр POST_RELOAD в /etc/amportal.conf, чтобы загрузить новый скрипт:
# POST_RELOAD Script
# Default Value:
POST_RELOAD=/usr/local/bin/freepbx_fix_queue_members.sh
Перезапустите ASTERISK и запустите скрипт в первый раз:
/usr/local/bin/freepbx_fix_queue_members.sh
Вот и все, теперь команда очереди будет работать!
Теперь вы можете использовать в своем пользовательском коде опцию queue c, чтобы продолжить выполнение скрипта после зависания клерка.
exten => 1235,n,queue(2026,c)
exten => 1235,n,goto(evaluation)