Определение DIALSTATUS после выполнения набора из AGI

Я новичок звездочки. В настоящее время я хочу набрать некоторый номер с моего AGI-сервера с помощью команды exec("Dial",..) и хотел бы узнать, когда никто не отвечает на вызов, проверив DIALSTATUS == noanswer. Я попытался передать команду набора номера на план набора и получить DIALSTATUS оттуда, но он всегда пуст. Я попытался получить ДИАЛСТАТУС в AGI, но это не сработало.

пример:

первая попытка:

public void service(AgiRequest request, AgiChannel channel)
{
exec("Dial","SIP/" + "7004" + ",60,G(from-internal-custom,1301,1)");

String dialStatus = request.getParameter("DIALSTATUS");
exec("NoOp","dial status is = " + dialStatus); //it is always empty (i think its
because the moment the first dialplan goes to the AGI,DIALSTATUS is not
initialized yet since I havent even issued dial command)
}

вторая попытка:

в диалплане:

exten => 1301,1,NoOp(dial status is = ${DIALSTATUS})
exten => 1301,2,NoOp(dial status is = ${DIALSTATUS})
exten => 1301,3,NoOp(dial status is = ${DIALSTATUS})
exten => 1301,4,NoOp(dial status is = ${DIALSTATUS})

//all of them is empty

так как я могу получить значение DIALSTATUS, если я выполню команду набора из AGI? большое спасибо за добрый ответ

1 ответ

Решение

Вы используете командный вызов GetVariable.

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

Другие вопросы по тегам