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

Не получается использовать GoSubIf

Новичком считается только что прочитавший «Астериск - будущее телефонии»
http://asterisk.ru/knowledgebase/books
и пытающийся сделать большее

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

Ответить
Alex_DAS
Сообщения: 5
Зарегистрирован: 16 янв 2014, 07:04

Не получается использовать GoSubIf

Сообщение Alex_DAS »

Здравствуйте!

Asterisk 1.8.15.0
Возникла такая проблемка.. Хочу вставить функцию проверки CallerID, однако не получается вызвать функцию sub-callidset, код ниже.

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

[sub-callidset]
exten => s,1,GotoIf($[ ${LEN(${CALLERID(num)})} = 6 ]?add74212)
exten => s,n(add74212),Set(CALLERID(num)=74212${CALLERID(num)})
exten => s,n,Goto(end)
exten => s,n(end),Set(CALLERID(name)=${CALLERID(num)})
exten => s,n,Return


[local]
exten => _941356,1,NoOP(1. name= ${CALLERID(name)} num= ${CALLERID(num)} )
exten => _941356,n,GoSubIf(${CALLERID(num)}?sub-callidset,s,1)
exten => _941356,n,NoOP(2. name= ${CALLERID(name)} num= ${CALLERID(num)} )
exten => _941356,n,Dial(SIP/____________@_______, 90)
exten => _941356,n,Hangup()
В логах следующее

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

 -- Executing [941356@default:1] NoOp("SIP/10.1.0.5-00219af0", "1. name=  num= 941355 ") in new stack
  == Spawn extension (default, 941356, 2) exited non-zero on 'SIP/10.1.0.5-00219af0'
    -- Got SIP response 603 "Decline" back from 10.1.0.5:506
Судя по всему он даже не входит в контекст sub-callidset. Не подскажете, что я делаю не так?
Vlad1983
Сообщения: 4251
Зарегистрирован: 09 авг 2011, 11:51

Re: Не получается использовать GoSubIf

Сообщение Vlad1983 »

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

exten => _941356,n,GoSubIf($["foo${CALLERID(num)}" != "foo"]?sub-callidset,s,1)
ЛС: @rostel
Alex_DAS
Сообщения: 5
Зарегистрирован: 16 янв 2014, 07:04

Re: Не получается использовать GoSubIf

Сообщение Alex_DAS »

Поменял, но ничего не изменилось... В принципе я не вижу здесь необходимости использовать GoSubIf, мне кажется можно обойтись и GoSub, просто я делал по примеру и решил не менять функцию.
Последний раз редактировалось Alex_DAS 16 янв 2014, 08:12, всего редактировалось 1 раз.
Vlad1983
Сообщения: 4251
Зарегистрирован: 09 авг 2011, 11:51

Re: Не получается использовать GoSubIf

Сообщение Vlad1983 »

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

*cli> dialplan show local
*cli> dialplan show default
ЛС: @rostel
Alex_DAS
Сообщения: 5
Зарегистрирован: 16 янв 2014, 07:04

Re: Не получается использовать GoSubIf

Сообщение Alex_DAS »

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

 '941356' =>       1. NoOP(1. name= ${CALLERID(name)} num= ${CALLERID(num)} ) [pbx_config]
                    2. GoSubIf($["foo${CALLERID(num)}" != "foo"]?sub-callidset,s,1) [pbx_config]
                    3. NoOP(2. name= ${CALLERID(name)} num= ${CALLERID(num)} ) [pbx_config]
                    4. Dial(SIP/__________@_________, 90)    [pbx_config]
                    5. Hangup()                                   [pbx_config]


dialplan show default
[ Context 'default' created by 'pbx_config' ]
  Include =>        'Incoming-Calls'                              [pbx_config]

Vlad1983
Сообщения: 4251
Зарегистрирован: 09 авг 2011, 11:51

Re: Не получается использовать GoSubIf

Сообщение Vlad1983 »

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

*CLI> core show application GoSubIf
*CLI> dialplan show Incoming-Calls
ЛС: @rostel
Alex_DAS
Сообщения: 5
Зарегистрирован: 16 янв 2014, 07:04

Re: Не получается использовать GoSubIf

Сообщение Alex_DAS »

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

core show application GoSubIf
Your application(s) is (are) not registered
Command 'core show application GoSubIf' failed.
Видимо в этом и проблема.. Как это можно вылечить?
Vlad1983
Сообщения: 4251
Зарегистрирован: 09 авг 2011, 11:51

Re: Не получается использовать GoSubIf

Сообщение Vlad1983 »

соберите модуль app_stack
ЛС: @rostel
Alex_DAS
Сообщения: 5
Зарегистрирован: 16 янв 2014, 07:04

Re: Не получается использовать GoSubIf

Сообщение Alex_DAS »

Ок, спасибо!
Ответить
© 2008 — 2025 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH