1

アプリケーションがアウトバウンド コールを設定しようとしている間、長時間の呼び出し音を必要とする音声アプリケーションを構築しています。この間、通話は応答されないままにする必要があります。

メディア ゲートウェイに接続された SIP ベースの Genesys GVP 8.1 IVR を使用しています。

私が抱えている問題は、通話に応答がないため、30 秒後にタイムアウトになることです。コールがまだ進行中であることを伝えるために、ある種のキープアライブ メッセージをメディア ゲートウェイに送信する必要があります。

私はこれを使ってみました:

<send target="inConnectionID" targettype="'x-connection'" data="'connection.progressing'"/>

これは 180 Ringing を生成します... しかし、私はすでに 180 Ringing メッセージを送信しており、SIP サーバーは既に 180 メッセージを処理しているため、これをネットワークに渡さないと思います。

理想的には、182 Queued メッセージを送信してみたいと思っていますが、CCXML または拡張 GVP CCXML のドキュメントに、これを行う方法を説明するものが見つかりません。

私の Wireshark SIP トレースは次のようになります。

ワイヤーシャーク

24 秒での 2 番目の 180 Ringing がメディア ゲートウェイに渡されていないことがわかります。

GVP/CCXML で 182 Queued SIP メッセージを送信するにはどうすればよいですか?

4

2 に答える 2

1

サーバーはあなたの 180 を転送する必要がありますが、そうする必要はありません、最初の 180 はサーバーとメディア サーバーの間で失われる可能性があるため (サーバーはおそらく INVITE を再送信します)、転送する必要があります。

ただし、sipwiz が示すように、可能性が高い問題は、メディア サーバーが呼び出しを受け入れるように構成された最大タイムアウトです。182 が役立つ可能性は低いです (ただし、メディア サーバーを理解していなければ、決定的なものにするのは困難です)。

また、仕様で許可されている 3 分間のタイムアウトを回避するために、約 1 分ごとに 180 を再送信する必要があります (および sip サーバーはそれを通過する必要があります)。eXosip などの一部の SIP スタックでは、1xx 応答がないまま 3 分経過すると、デフォルトで INVITE がタイムアウトになります。

于 2011-04-07T20:43:09.687 に答える
1

メディア ゲートウェイが 34.7 でキャンセルされるべきではないことに同意します。また、SIP サーバーは、leg2 のアウトバウンド招待を送信する前に、leg1 で 100 の試行を送信する必要があると思います。これにより、leg1 UAC からの再送信が停止し、メディア ゲートウェイが SRV ロールオーバー アルゴリズムを使用している場合のフェイルオーバーが防止されます。

于 2011-07-29T20:55:52.310 に答える