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

Статус SIP-абонента [закрыт]

0

Логика следующая:

same = n,ChanIsAvail(SIP/user1,as)
same = n,GotoIf($["${AVAILSTATUS}"="1"]?user1:altdial)
same = n(user1),Dial(SIP/user1)
same = n(altdial),Dial(SIP/myprovider/79123456789)

по идее я должен получать для зареганых незвонящих ${AVAILSTATUS} = 1, для звонящего = 3, для не зареганного = 5. Но я всегда получаю 1.

Каким образом можно проверить статус SIP/user1?

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

спросил 2013-12-10 05:41:21 +0400

mention Gravatar mention flag of Russian Federation
486 42 2 12
http://localhost/

Comments

availstatus - ответы зависят от call-limit выставленного для user1. При call-limit=1 и call-limit=2 ответы будут разные

awsswa ( 2013-12-10 06:25:33 +0400 )редактировать

2 Ответа

1

надо выставить qualify=yes

можно еще попробывать

${SIPPEER(status)}

но тоже прийдется qualify выставит.

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

ответил 2013-12-10 06:14:05 +0400

meral Gravatar meral flag of Ukraine
21228 23 18 169
http://pro-sip.net/

Comments

ChanIsAvail не опирается на OPTIONS , так что для него qualify бессмыслен.

zzuz ( 2013-12-10 10:52:07 +0400 )редактировать
0

AVAILCAUSECODE попробуй

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

ответил 2013-12-10 07:13:53 +0400

bolshoy_plohish Gravatar bolshoy_plohish
1358 21 16 37

Comments

что то не могу найти внятных примеров использования этой функции - у меня всегда возвращает ноль

awsswa ( 2013-12-10 08:25:29 +0400 )редактировать

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

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

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

Статистика

Задан: 2013-12-10 05:41:21 +0400

Просмотрен: 206 раз

Обновлен: Dec 10 '13

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