Задать вопрос

Как получить переменную из макроса asterisk?

Как получить переменную из макроса который запускается во время DIAL?
SOMEVAR в главном контексте пустая. Такая же ситуация и с GoSub.

[incoming]
exten => trunk_78888888888,1,Dial(SIP/trunk_78888888888/79999999999,,gM(example))
exten => trunk_78888888888,2,NoOp(${SOMEVAR})

[macro-example]
exten => s,1,SET(SOMEVAR=456)
  • Вопрос задан
  • 1032 просмотра
Подписаться 1 Оценить Комментировать
Решения вопроса 1
@silverjoe
Если канал тот же - то переменная будет со знеачением, если канал другой - то соотв. будет пуста.

Действовать как вам уже предложили или еще можно использовать SHARED, но для этого надо четко понимать в каком канале вы сейчас находитесь при обработке диалплана.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@fluffybear
Используйте наследование переменных: voip.rus.net/tiki-index.php?page=Asterisk%20Variables
exten => s,1,SET(__SOMEVAR=456)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы