First time here? Check out the FAQ!

Пожалуйста, войдите здесь. Часто задаваемые вопросы О нас
Задайте Ваш вопрос

DIALSTATUS не звоня абоненту

0

Есть голосовое меню, проигрывается приветствие, после него либо перевести звонок на голосовую почту если никого из абонентов нет в сети, либо продолжить проигрывать варианты набора. Если я правильно понимаю то статус возвращается только после попытки набора. То как узнать DIALSTATUS, не выполняя команду DIAL?

Что бы после приветствия редиректить на голосовую почту, мне надо узнать если ли все клиенты в сети. Типа:

exten => bla,1,Dial(...)
exten
=> bla,n,GotoIf($${DIALSTATUS}=CHANUNAVAIL?voice)
...
exten
=> bla,n(voice),Voicemail(100@default)

Dial не приемлем, каждый раз что бы узнать в сети ли клиент нужно до него дозваниваться.

спросил Mar 24 '12

freekode Gravatar freekode
11 2 5

обновил Mar 24 '12

2 Ответа

4

Используйте команду ChanIsAvail

Или используйте фукнцию SIPPEER

ссылка удалить спам редактировать

ответил Mar 24 '12

zzuz Gravatar zzuz flag of Russian Federation
7174 2 6 75
http://line24.ru/

обновил Mar 24 '12

Comments

однако стоит заметитьчто статусы будут немножко другими. в частности статус noanswer ну никак нельзя получить не позвонив))

meral (Mar 24 '12)edit

Что за день , никто не читает вопросов. "Что бы после приветствия редиректить на голосовую почту, мне надо узнать если ли все клиенты в сети. "

zzuz (Mar 24 '12)edit

а я что против? я просто уточняю.я даже плюски поставил

meral (Mar 24 '12)edit

))

zzuz (Mar 24 '12)edit
0

Не совсем понял, что именно нужно. Если статус завершения звонка без Dial, то можно использовать переменную HANGUPCAUSE. При этом будет выдан код разъединения согласно рекомендациям Q.931.

ссылка удалить спам редактировать

ответил Mar 24 '12

Master135 Gravatar Master135
431 1 3 10

Comments

Если не было Dial , то откуда тогда переменная?

zzuz (Mar 24 '12)edit

Да, наверное немного не то. Поспешил с ответом). Если стоит Hangup в конце, то выдаст = 16 (NORMAL_CLEARING). Можно и вручную в hangup код разъединения поставить.Вообще так до конца и не понял, статус чего именно нужен?

Master135 (Mar 24 '12)edit

Подправили вопрос, и стало понятно что было нужно:). Вообщем согласен, не то.

Master135 (Mar 24 '12)edit

Ваш ответ

Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
[скрыть предварительный просмотр]

Закладки и информация

Добавить закладку
1 закладка

подписаться на rss ленту новостей

Статистика

Задан: Mar 24 '12

Просмотрен: 1,045 раз

Обновлен: Mar 24 '12

Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией GNU GPL.