1

発信者が入力した内線番号を agi スクリプトに渡すことができるようにしたいのですが、それが操作された後、agi スクリプトが結果を変数としてダイヤル プランに送り返すようにしたいと考えています。ダイヤルプラン言語でこれを達成する方法の例を教えてください

4

1 に答える 1

2

Asterisk のダイヤルプラン (extensions.conf) を使用して AGI に入る場合、${EXTEN} チャネル変数を使用して内線番号を取得できます。ダイヤルプランに情報を返すには、任意のチャネル変数を設定できますが、Asterisk 自体が使用するチャネル変数を避けるように注意してください。

Adhearsionを使用した簡単な例を次に示します。

アスタリスクの extensions.conf で:

exten => s,1,Background(enter-your-extension-now)
exten => _X.,1,AGI(agi://localhost/stuff)
exten => _X.,n,NoOp(Returned new extension: ${NewExten})

Adhearsion の dialplan.rb では:

stuff {
  exten = get_variable('EXTEN')
  # Do stuff to figure out what the new extension should be
  newexten = '12345'
  set_variable('NewExten', newexten)
}

上記のコードは、${NewExten} チャネル変数を「12345」に設定し、Asterisk コンソールに書き込みます。

于 2011-08-20T20:41:22.637 に答える