アスタリスクサーバーは(ほとんどが)動作しているダイヤルプランで動作しています。アスタリスク - 複数桁の入力を処理する方法
私はこのシナリオを持っている:1つの時点で
呼び出し側は「任意の番号を入力します」聞きます。 その後、電話で番号を入力します。
彼が0を入力した場合、私はダイヤルプランの「Context0」にジャンプします。 1から10000までの数字を入力すると、「Context1」にジャンプします。 入力された数字が10000より大きい場合、私は 'Context2'にジャンプします。
[Context]
exten => 100,1,Background(/var/lib/asterisk/sounds/sound)
exten => 0,1,Goto(Context0,100,1)
exten => _Z,1,Goto(Context1,100,1)
exten => _ZX,1,Goto(Context1,100,1)
exten => _ZXX,1,Goto(Context1,100,1)
exten => _ZXXX,1,Goto(Context1,100,1)
exten => 10000,1,Goto(Context1,100,1)
exten => i,1,Goto(Context2,100,1)
私は5桁の数字のみを入力した場合、この作品:
このシナリオを処理コンテキストは次のようになります。私がf.eを入力した場合。 123456の後、12345の後に「i拡張子」に入り、Context2に行き、この文脈で最後の数字(この場合は数字6)を適用します。
私の質問は、入力が10000より大きく、Context2へのジャンプが大きい場合、ダイヤルプランのチェックを行うにはどうすればいいですか?私はあなたが私の問題を理解してほしい
は、私の英語はあまりよくない..です:)
多くの感謝とよろしく
私はこれをReadで試してみると、いつもハングアップします。ログで私はいつもこれを見ています: [10月24日11時34分57秒]警告[1356] [C-00000000] pbx.c:拡張子(Context、s、1)のためのアプリケーション 'Read'がありません 次のような単純なものを試しました:[link](https://wiki.asterisk.org/wiki/display/AST/The+Read+Application)それは私に同じエラーを与えます... 何かを設定する必要はありますか私はアプリケーション '読み取り'を使用することができますか? – simplex
@implexは 'app_read.so'が確実に読み込まれるようにします。アスタリスクが自動的にロードされるように設定されていない場合は、 'module load app_read.so'コマンドで手動でアスタリスクをロードし、テストを再実行することができます。 –