問題タブ [agi]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
asterisk - アスタリスク agi 呼び出しが失敗し、次へ
最初のコマンドがビジーであるか失敗した場合に、php-agi スクリプトに次のコマンドをダイヤルさせようとしています。私が今設定した方法はうまくいかず、ビジー状態に戻って停止するか、うまくいくと 2 つのダイヤル コマンドを送信します。これが私が得たものです:
これに関するどんな種類の助けも大歓迎です、事前に感謝します!
php - Asterisk サーバーを mysql などの外部リレーショナル データベースと統合するにはどうすればよいですか?
私の目的:クライアント(SIP電話、私は3CX電話を使用)がアスタリスクサーバーにダイヤルし、アスタリスクが外部リレーショナルデータベース(アスタリスクサーバーと同じ場所にない)に接続し、データベースが何かを応答した場合、アスタリスクサーバーは音声ファイルを再生します(事前定義された .gsm ファイル) を応答クライアントに送信します。
私がすでに持っているもの:VirtualBoxにAsteriskNowをアスタリスクサーバーとしてインストールしました。クライアントはソフトフォンを使用して、SIPチャネルでアスタリスクサーバーに接続しています。クライアントがアスタリスク サーバーにダイヤルすると、サーバーはダイヤルプランを実行できます。
私の質問: アスタリスク サーバーが外部データベース (MySQL など) への接続を確立したい場合。要求データにアクセスするには、dialplan に AGI スクリプトを呼び出させる必要がありますか? もしそうなら、PHP で AGI スクリプトを作成する方がはるかに簡単ですか? そうでない場合、mysql に接続するにはどうすればよいですか? ODBC を使用していますか?
他のプログラミング言語を使用せずに、dialplan を使用してアスタリスク サーバーのデータを操作することは可能ですか? しかし、dialplan は他のプログラミング言語のように完全な構文をサポートしていないようです。
php - Asterisk ダイヤルプランで単語を数字に変換する
これを機能させるために、過去3週間を費やしました。github で入手できる googletts.agi スクリプトを使用して、アスタリスクから音声ダイヤルしたいと考えています。それは機能しますが、問題は、18004633339のような「発話」変数の数字の代わりに単語を返すことがあるという問題です。
https://github.com/zaf/asterisk-googletts https://github.com/zaf/asterisk-speech-recog
以下のリンクには、単語を数字に変換するスクリプトがあります
http://www.karlrixon.co.uk/writing/convert-numbers-to-words-with-php
これが私のダイヤルプランです
${utterance} または NUM2CALL 変数を取り、アスタリスクでダイヤルできる適切な番号に単語が含まれている場合は修正するコードが必要です
ディクショナリ配列に追加できれば、最終的には非常に正確な音声ダイヤラができると考えています。私はトロポ ASR のテストに 4 日間を費やしました。1 桁の場合は非常に正確ですが、複数桁の場合は精度が急速に低下します。ご協力いただきありがとうございます。完成したスクリプトは、プロジェクトとして github に投稿します。私は TIDIGITS の文法とモデルでも pocketphinx を試しましたが、同様の問題を起こしていた pocketphinx のデフォルトの辞書よりもさらに悪いものでした。
perl - Asterisk AGI スクリプトから Festival を使用する
これは本当にばかげた問題のように感じますが、私には理解できません。私は Perl で AGI スクリプトを作成してAsterisk::AGI
います。これを使用して Festival を呼び出して、呼び出し元にテキストを読み取る必要があります。私はダイヤルプランで私が言うことができることを知っています
「Hello caller」と表示され、任意のキーによる割り込みが許可されます。トリックは、AGI スクリプトからそれを行うことです。私がこれを行う場合:
「こんにちは、発信者」と表示されます。問題ない。しかし、キーの中断の可能性に対処することはできません。2 番目のパラメーターのように見えますが、そうではありません。私は試した
そして、それを完全に無視しているようです (キーの中断は発生しません)。私も試しました
そして、それは「any」ビットを示しているため、引用について真剣に混乱しています(渡す文字列内の二重引用符は、最初の単語を言う以上のことをさせる唯一の方法でした)。
「any」ビットを完全に無視します。
AGI スクリプトから Festival を使用することについて言及しているオンラインの唯一のリソースはすべて、それを外部から呼び出し、一時ファイルに保存してから再生することについて述べています。私は本当にその道を行かなければなりませんか?AGI から任意の引数を使用して、任意のダイヤルプラン アプリケーションを実行できるべきではありませんか?
asterisk - アスタリスク システムは、PABX 電話で呼び出したときに一部の DTMF 数字を無視します。
CentOS 6.2 でアスタリスク E1 カードを使用しています。
シンプルなpstnまたは携帯電話を使用してアスタリスクシステムに電話をかけると、通話は完全に実行されます. しかし、同じ番号が PABX 電話で呼び出された場合、アスタリスク システムは一部の数字を無視しました。
アスタリスク 1.4 と dahdi 2.4 を使用しています。
dtmfmode = rfc2833
sip.conf ファイルでも試しました。この問題を解決してください。
例: 私たちのシステムが実際に行っていることは、誰かが私たちのシステムを呼び出すと、14 桁の登録 ID を要求し、それに対して何らかの操作を実行すると正常に動作します。しかし、誰かが自分の PBX 電話 (または PABX またはソフト フォン) から電話をかけ、登録 ID を入力すると、システムは一部の数字を無視します。
php - ユーザーがアスタリスクで電話を切ると記録されたファイルが失われる
録音したサウンド ファイルを保存したい音声アプリケーションが 1 つあります。私のコードは次のとおりです。
録音中に電話を切るたびに、録音アプリケーションが実行できず、電話を切ってしまいます。
電話を切っている間にこのレコード機能を管理する方法を知っている人はいますか?
asterisk - アスタリスクAGI-phpagiを使用して通話を発信します
PHP AGIスクリプトを使用して外部番号呼び出しを開始する方法を知っている人はいますか?
php - アスタリスク phpagi はビジー状態を返します
現在、電話に出ないようにスクリプトを作成していますが、最後に 3 回再試行するため、アスタリスク サーバーが 3 回ヒットします。通話に応答しないのではなく、ビジー シグナルを返すにはどうすればよいですか? または、クライアント エンドが呼び出しごとにサーバーに 3 回アクセスするのを防ぐ他の方法 呼び出しに応答する agi スクリプトがありませんか?
ここに私のスクリプトの一部があります
asterisk - アスタリスク agi ダイヤル DTMF も LIMIT
通話時間を制限する DTMF も実行しようとしていますが、両方を機能させることができません。ダイヤル コマンドのいずれかです。私を助けてください。
asterisk - アスタリスク PHPAGI 応答コード
呼び出し元のサーバーに応答できるすべてのコードを一覧表示する Web サイトを探しています。現在、次のいずれかを実行できます。
いいね、支払いが必要などの送信を楽しみにしています。ご存知でしたら、正しい道を教えてください。ありがとうございます。