Пожалуйста, помогите с проблемой, с которой я столкнулся недавно.Воспроизведение файла в ожидании вызова на Asterisk
При реализации функции информирования вызывающего абонента «Пользователь разговаривает по первой линии, пожалуйста, подождите или перезвоните позже». С помощью функции "Ожидание вызова" в Asterisk Я использую этот макрос:
extensions_custom.conf
[from-internal-custom]
exten => _XXX,1,Macro(check-number,${EXTEN})
include => macro-check-number
[macro-check-number]
exten => s,1,NoOp(Enter in macro-check-number)
exten => s,n,Set(devst=${DEVICE_STATE(SIP/${ARG1})})
exten => s,n,ExecIf($["${devst}" = "INUSE"]?Playback(ml))
exten => s,n,NoOp(Exit from macro-check-number)
мл - имя файла для воспроизведения
и эта функция работает!
Но макрос работает для всего Asterisk, это вызовы очереди, групповые вызовы - и это проблема.
У меня есть идея - группа вызовов и вызовов очереди для присвоения чисел четырехзначными расширениями, например: 2222 - но их не должно быть, это ложное решение проблемы, из-за чего в будущее может быть проблемой!
Возможно, кто-то сталкивался с подобной проблемой?
Это очень зависит от диалплане. Вы можете установить переменную при вводе диалплана, чтобы активировать такие функции, в то время как переменная не установлена при вводе контекста группы или очереди. –
Спасибо, я думал об этом варианте, но, к сожалению, это возможно, так что у меня мало опыта в работе с макросом - я не нашел решения. Я был бы вам очень благодарен! –