問題タブ [asteriskami]

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.

0 投票する
1 に答える
893 参照

asterisk - agiチャネルを介してテキストデータを送信する方法

アスタリスクで 2 つの Java アプリケーション間の通信を試みています。次に、通話中の 2 つの通信チャネル間でテキスト データを共有する必要があります。以下の Manager API コマンドを試してみました。通話中の 2 つのチャネル間で文字列/メッセージを共有するのを手伝ってください。

私は以下を試しました

また、

行を追加するか、新しいクラスを使用できるかどうかを提案してください

0 投票する
2 に答える
4334 参照

c# - C# と Aster.NET を使用したアスタリスク呼び出しの確実な識別と追跡

私は、C# を使用して、Aster.NET (以前は/Asterisk.NET からフォークされたもの) を使用してアスタリスクとやり取りする WinForms デスクトップ アプリケーションを構築しています。個々の内線番号/ユーザーに関連する通話を確実に識別して追跡するのに、本当に問題があります。

私たちが抱えている問題は、アスタリスクによって発生/トリガーされるイベントの予測不可能/あいまいな性質によるものであり、内線に到達する前に通話がどのようにルーティングされるかによって、イベントは大きく変化します。

たとえば、イベント シーケンス/形式は次の場合に異なります。コールがブラインド転送される前に IVR にヒットした場合。在席転送される前にコールが IVR にヒットした場合。通話がユーザーの内線に直接つながる場合。

これは、アスタリスクが異なる一意の ID を使用して通話の各側を追跡する方法によってさらに妨げられます (たとえば、通話の着信側は、通話の受信側とは異なる UID を持っています)。(その後醜い!) コードでそれを説明することができましたが、呼び出しが取ることができるさまざまなルーティング パスを説明することで、まだ問題が発生しています。

そのため、次のことをどのように行うことができるかについてのアドバイスを探しています。

  1. ユーザーの内線番号への着信を確実に識別
    • コールされている内線番号と発信者 ID を識別できる必要があります (ブラインド転送または在席転送と外部からの直接コールの後)。
    • 通話録音へのリンクに使用されるため、その着信通話の一意の ID を確実に追跡します。
  2. ユーザーの内線からの発信を確実に識別
    • 上記と同じ注意事項を念頭に置いて

現時点では、アプリの「現在の状態」に応じて異なる動作をする非常に複雑なイベント ハンドラーのチェーンがあります。

一例を挙げると、ChannelState が 6 (「Up」) の NewStateEvent を検出した場合、進行中の通話があるかどうか、および UID が一致するかどうかを確認、一致する場合は、現在の通話が応答されていることを確認します。UID が一致しないが、他の要因 (チャネル、connectedlinenum など) が一致する場合、これを呼び出しの「反対側」(受信側または着信側) として取り上げます。

問題が API にあるのか AMI にあるのかはわかりませんが、どちらにせよ、私たちには本当に頭痛の種です。

アドバイスをいただければ幸いです。

0 投票する
2 に答える
3534 参照

java - Asterisk AMI と Java を使用して、AsteriskNow でアウトバウンド コールを行う方法

内線番号から LAN ネットワーク内の別の番号に通話を開始したいと考えています。FreePBX GUI を使用してこのタスクを実行しました。現在、Java コードで Asterisk AMI を使用して、このタスクを実行しようとしています。以下の Java コードは、デバッグ中にいくつかの例外を示しています。

例外:

注: ここでは、FreePBX の資格情報を使用しています。これはアクセスする権利がありますConnectionManagerか?

0 投票する
1 に答える
845 参照

java - アスタリスクJavaでインバウンドコールを行う方法

XLite ソフトウェアでアスタリスク Java を使用して、アウトバウンド コールを正常に実行しました。今回はXLIteを使わずにインバウンドコールをしたいと思います。

上記のコードの「originateResponse.getResponse()」関数は、アウトバウンド コールを開始するのに役立ちます。AMI によって発信されたインバウンド コールを実装する方法について何か考えがありますか?インバウンド コールを行うためにアスタリスク AGI が必要ですか?

0 投票する
1 に答える
68 参照

node.js - node.jsのCharエンコード ChildProcess.fork()

コードを app.js ファイルから別のファイルに移動する必要があり、childProcess.fork() を使用しました。ここで、子プロセス内の ami-asterisk からのメッセージをキャッチする必要がありますが、「à、è、ò、..」などの特殊文字が「h、l、..」などの別の文字に変換されることに気付きました。アスタリスクは正しい文字をアプリに送信しますが、フォークで何かが変わります。誰でも私を助けることができますか?

0 投票する
1 に答える
783 参照

java - Asterisk Java 経由で Asterisk への接続状態を検出する

アスタリスクには、マネージャーのアスタリスクへの接続の適切なステータスを検出する方法はありますか? (私のポイントは、アスタリスクへの接続の失敗に関する通知です) Java アプリケーションに (アスタリスク Java ライブラリを使用して) 視覚的な表示を実装していますが、私の観点からは、期待どおりに機能していません。

に方法がありますが、getStatus()ネットワークManagerConnectionケーブルを抜いても結果は常にCONNECTEDです。そして、私が使用できる同様のものは何も観察していません。

0 投票する
2 に答える
2145 参照

c# - 発信したばかりの通話から UniqueId と Channel Name を取得するにはどうすればよいですか?

Asterisk.Net の古いコピーから AsterNet の最新バージョンにアップグレードしようとしています。以前は Call オブジェクトを返す AsteriskManager.OriginateCall() で呼び出しを開始していました。その呼び出しオブジェクトには、UniqueId と ChannelName がありました。

今、SendAction() で呼び出しを開始し、それを OriginateAction に送信しています。だから私の最初の質問は、それは正しい方法ですか? 私が得た結果では、UniqueId が null であり、ChannelName がないためです。チャネル名が属性にあるのではないかと思ったのですが、Attributes も null です。

では、発信したばかりの通話のチャネル名と一意の ID を取得するにはどうすればよいでしょうか?

0 投票する
1 に答える
239 参照

javascript - Asterisk PBX Web サーバーでの CORS サポート

Aterisk PBX には Web サーバーが組み込まれています。ローカル コンピューターから AMI over HTTP 経由で My Asterisk PBX にログインしようとしています。私の問題は、HTTP 経由でログイン アクションを呼び出すと、マネージャーは接続されますが、応答の MIME タイプは「text/plain」ですが、MIME タイプを「text/javascript」にする必要があることです。以下のエラーが Chrome 開発者ツールで発生します。