VIDEOCHAT  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Метка абонента при звонке из очереди

Проблемы Asterisk без вэб-оболочек и их решения

Модераторы: april22, Zavr2008

Ответить
aniqi
Сообщения: 6
Зарегистрирован: 18 июл 2025, 11:29

Метка абонента при звонке из очереди

Сообщение aniqi »

При звонке оператору из очереди на экране звонящий отображается как M3:SUP:Телефон
Что означает: ожидает 3 минуты поддержка и номер абонента

Как туда можно добавить еще одно значение, мне нужно добавить сколько всего в очереди ожидающих абонентов
Что то типа такого M3:10:SUP:Телефон, что еще 10 абонентов висят в очереди
нашел что это происходит в контексте [macro-dial-one]
а именно вот оно:
.....
exten => qwait,1,ExecIf($["${SAVEDCIDNAME}" = ""]?Set(__SAVEDCIDNAME=${CALLERID(name)}))
exten => qwait,n,Set(ELAPSED=${MATH($[${EPOCH}+30-${QUEUEWAIT}]/60,int)})
exten => qwait,n,Set(CALLERID(name)=M${ELAPSED}:${SAVEDCIDNAME})
exten => qwait,n,Return()
.....

но контекст довольно большой, возможно он как то настраивается? это все стандартный конфиг freepbx 14

0. Возможно это можно как то настроить через интерфейс?
1. могу ли я перезаписать только эту подпрограмму qwait ? или все же весь контекст надо в extensions_override_freepbx
2. Как определить кол-во абонентов в очереди? какая это переменная
ded
Сообщения: 15755
Зарегистрирован: 26 авг 2010, 19:00

Re: Метка абонента при звонке из очереди

Сообщение ded »

0: Нет.
1: Да
2: Как определить кол-во абонентов в очереди в реальном времени - смотрите командную строку
CLI> queue show _имя_очереди_

Лучше визуальный мониторинг, типа FOP2. Наталкивать разные значения в визуальные метки можно, но эта избыточная информация мгновенно перегружает мозг оператора при входящем звонке (IMHO). На всё это хорошо бы иметь супервизора, который видит всю ситуацию в целом, и сам готов выхватывать из очереди вызовы.

Какая переменная - изучайте документацию, или вставляйте в диалплан DumpChan - выгрузит состояние всех переменных на текущий момент, и можно в них найти нужную.
Да, придётся изучать язык диалплана и модифицировать. Изменённый контекст macro-dial-one поместить в файл extensions_override_freepbx.conf
Конечный результат можно поместить там толлько как вставку в этот контекст, типа

Код: Выделить всё

[macro-dial-one](+)
exten => qwait,1,DumpChan
exten => qwait,n,ExecIf($["${SAVEDCIDNAME}" = ""]?Set(__SAVEDCIDNAME=${CALLERID(name)}))
exten => qwait,n,Set(ELAPSED=${MATH($[${EPOCH}+30-${QUEUEWAIT}]/60,int)})
exten => qwait,n,Set(CALLERID(name)=M${ELAPSED}:${SAVEDCIDNAME})
exten => qwait,n,Return()
Ответить
© 2008 — 2026 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH