MacroExclusive
Выполняет заданный макрос, гарантируя, что одновременно этот макрос выполняется только одним каналом. Если другой канал уже выполняет этот макрос, MacroExclusive() приостановит выполнение данного канала до тех пор, пока тот канал не выйдет из макроса.
Смотрите также
Macro()
MacroExit()
MacroExit()
Выполняет явный выход из макроса. Обычно Macro() автоматически завершается, выполнив все приоритеты. MacroExit() обеспечивает возможность завершить макрос раньше.
Смотрите также
Macro()
MacroIf()
MacroIf(
Вычисляет
; определяем макрос для обратного счета ; от заданного значения [macro-countdown]
exten => s,1,Set(COUNT=${ARG1})
exten => s,2,While($[ ${COUNT} > 0])
exten => s,3,SayNumber(${COUNT})
exten => s,4,Set(COUNT=$[ ${COUNT} - 1])
exten => s,5,EndWhile()
; определяем макрос для прямого счета
; от заданного значения
[macro-countup]
exten => s,1,Set(COUNT=1)
exten => s,2,While($[ ${COUNT} < ${ARG1}])
exten => s,3,SayNumber(${COUNT})
exten => s,4,Set(COUNT=$[ ${COUNT} + 1])
exten => s,5,EndWhile()
; вызываем наш макрос с двумя разными значениями [example]
Смотрите также
GotoIf(), GosubIf(), IF, глава 6
MailboxExists()
Проверяет, существует ли в системе голосовой почты Asterisk почтовый ящик, определенный аргументом
Это приложение задает переменную канала VMBOXEXISTSSTATUS. Если почтовый ящик существует, ей будет задано значение SUCCESS (успех). В противном случае она получит значение FAILED (неудача). Если в качестве параметра
exten => 123,1,Answer()
exten => 123,n,Set(MYMAILBOX=123@default)
exten => 123,n,GotoIf($['${VMBOXEXISTSSTATUS}' = 'SUCCESS']?exists)
exten => 123,n,Playback(im-sorry)
exten => 123,n,Hangup()
exten => 123,n(exists),Voicemail(u123)
Смотрите также
HasVoicemail(), HasNewVoicemail()MeetMe()
Добавляет звонящего в сеанс речевой конференц-связи, обозначенный аргументом
Если передается аргумент
Строка
a
Задается режим администрирования.
A
Задается маркированный режим.
b
Выполняется AGI-сценарий, заданный в переменной ${MEETME_AGI_ BACKGROUND}; по умолчанию это conf-background.agi. (Примечание: это не работает для ^-Zap-каналов в той же конференции.)
c
При входе в конференцию нового пользователя анонсируется количество пользователей.
d
Динамически добавляет пользователя в конференцию.
D
Динамически добавляет пользователя в конференцию, предлагая ввести ПИН-код.
e
Выбирается пустая конференция.
E
Выбирается пустая конференция, для входа в которую не требуется вводить ПИН-код.
F
DTMF-коды передаются через конференцию другим участникам. DTMF-коды, используемые для активации функций конференции, передаваться не будут.
Анонсируется вход/выход пользователя с суммарной информацией.
Анонсируется вход/выход пользователя без суммарной информации.
Устанавливается режим «только для прослушивания» (можно только слушать, не говорить).
Участник вводится в конференцию с изначально выключенным микрофоном.
Если в конференции всего один участник, активируется музыка во время ожидания.
Включется оптимизация разговора. При этом Asterisk полагает, что у участников, которые не говорят в данный момент времени, отключен микрофон, то есть при передаче данных не выполняется кодировка и