CallAndBridge - Amazon Chime SDK

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

CallAndBridge

PSTN 電話番号へ、または Amazon Chime SDK Voice Connector または Amazon Chime SDK Voice Connector グループとして設定された SIP トランクへの発信通話を作成し、それを既存の通話レッグとブリッジします。電話番号に電話をかけるときは PSTN を使用し、SIP トランクに電話をかけるときは AWS を使用します。

既存の通話レッグは、 CreateSIPMediaApplicationCall API を使用して作成されたアウトバウンド通話レッグ、またはNewInboundCallイベントで関数を呼び出す AWS Lambda SIP ルールによって作成されたインバウンドレッグです。Voice Connector または Voice Connector グループのエンドポイントに CallAndBridge アクションを実装する場合、Voice Connector または Voice Connector グループの Amazon リソース番号 (ARN) を指定する必要があります。

カスタム SIP ヘッダーを発信通話レッグと AWS Lambda 関数に追加することもできます。カスタムヘッダーを使用すると、フロア番号や郵便番号などの値を渡すことができます。カスタムヘッダーの詳細については、「SIP ヘッダーの使用」を参照してください。

次のコード例は、PSTN エンドポイントにブリッジする一般的なアクションを示しています。

{ "SchemaVersion": "1.0", "Actions": [{ "Type": "CallAndBridge", "Parameters": { "CallTimeoutSeconds": 30, "CallerIdNumber": "e164PhoneNumber", // required "Endpoints": [{ "BridgeEndpointType": "PSTN", // required "Uri": "e164PhoneNumber", // required }], } } ] }

次の例は、Voice Connector または Voice Connector グループとカスタム SIP ヘッダーを使用する一般的なアクションを示しています。

{ "SchemaVersion":"1.0", "Actions":[ { "Type":"CallAndBridge", "Parameters":{ "CallTimeoutSeconds":30, "CallerIdNumber": "e164PhoneNumber", // required "RingbackTone": { // optional "Type": "S3", "BucketName": "s3_bucket_name", "Key": "audio_file_name" }, "Endpoints":[ { "BridgeEndpointType":"AWS", // enum type, required "Arn":"arn:aws:chime:us-east-1:0123456789101:vc/abcdefg1hijklm2nopq3rs" //VC or VCG ARN, required for AWS endpoints "Uri":"ValidString", // required, see description below } ], "SipHeaders": { "x-String":"String" } } } ] }
CallTimeoutSeconds

説明 - 通話がタイムアウトするまでの間隔。タイマーは通話のセットアップから始まります。

使用できる値 – 1~120 (両端を含む)

必須 – いいえ

デフォルト値 – 30

CallerIdNumber

説明 - 顧客の番号、または A レッグの From 番号

使用できる値 – E.164 形式の有効な電話番号

必須 – はい

デフォルト値 – なし

Endpoints

説明 - 通話のエンドポイント

許可される値:

  • BridgeEndpointType – Voice Connector および Voice Connector グループの場合は AWS、それ以外の場合は PSTN

  • Arn – Voice Connector または Voice Connector グループの ARN。AWSBridgeEndpointType として使用する場合にのみ必須です。

  • Uri – URI 値はエンドポイントのタイプによって異なります。

    PSTN エンドポイントの場合、URI は有効な E.164 電話番号でなければなりません。

    AWS エンドポイントでは、URI 値によって Request-URIuser 部分が設定されます。拡張バッカスナウア記法を使用する必要があります。必要な長さ: 1~30 (両端を含む)。値は a-z, A-Z, 0-9, &, =, +, $, /, %, -, _, !, ~, *, (,)、(.) を使用します。

    Request-URI のホスト値は、ターゲットの Voice Connector の着信ルートから算出されます。次の例は、AWS エンドポイントを使用する CallAndBridge アクションを示しています。

    { "SchemaVersion":"1.0", "Actions":[ { "Type":"CallAndBridge", "Parameters":{ "CallTimeoutSeconds":30, "CallerIdNumber": "+18005550122", "Endpoints":[ { "BridgeEndpointType":"AWS", "Arn":"arn:aws:chime:us-east-1:0123456789101:vc/abcdefg1hijklm2nopq3rs", "Uri":"5550" } ], "SipHeaders": { "x-String":"String" } } } ] }

    着信ルートと Voice Connector の詳細については、「Editing Amazon Chime SDK Voice Connector settings」を参照してください。

必須 – はい

デフォルト値 – なし

SipHeaders

説明 - 追加の値を渡すことができます。AWS エンドポイントタイプでのみ使用してください。

使用できる値 – 有効な SIP ヘッダー

必須 – いいえ

デフォルト値 – なし

次の例は、PSTN エンドポイントを使用する成功した CallAndBridge アクションを示しています。

{ "SchemaVersion": "1.0", "Sequence": 3, "InvocationEventType": "ACTION_SUCCESSFUL", "ActionData": { "Type": "CallAndBridge", "Parameters": { "CallTimeoutSeconds": 30, "CallerIdNumber": "e164PhoneNumber", "Endpoints":[ { "BridgeEndpointType": "PSTN", "Uri": "e164PhoneNumber" } ], "CallId": "call-id-1" } }, "CallDetails":{ ..... ..... "Participants":[ { "CallId": "call-id-1", "ParticipantTag": "LEG-A", ..... "Status": "Connected" }, { "CallId": "call-id-2", "ParticipantTag": "LEG-B", ..... "Status": "Connected" } ] } }

次の例は、失敗した CallAndBridge アクションを示しています。

{ "SchemaVersion": "1.0", "Sequence":2, "InvocationEventType": "ACTION_FAILED", "ActionData":{ "Type": "CallAndBridge", "Parameters":{ "CallTimeoutSeconds": 30, "CallerIdNumber": "e164PhoneNumber", "Endpoints": [ { "BridgeEndpointType": "PSTN", "Uri": "e164PhoneNumber" } ], "CallId": "call-id-1" }, "ErrorType": "CallNotAnswered", "ErrorMessage": "Call not answered" }, "CallDetails":{ ..... ..... "Participants":[ { "CallId": "call-id-1", "ParticipantTag": "LEG-A", ..... } ] } }

通話フロー

CallAndBridge アクションは、パラメータやレッグの接続有無に応じて、既存の通話レッグとは異なる通話発信とオーディオエクスペリエンスを提供します。

次の図は、着信通話レッグ A が既に接続されている場合のさまざまなパラメータを使用した通話フローを示しています。

CallAndBridge アクションを通じた応答通話のフロー。

次の図は、未応答通話の通話フローを示しています。

CallAndBridge アクションを介した未応答の呼び出しのフロー。
その他の詳細

CallAndBridge アクションについて、以下の点に注意してください。

  • CallTimeoutSeconds – このタイマーは、SIP 招待が B レッグで送信されたときに開始されます。希望するターゲット値を設定できますが、上流キャリアはこの値を無視できます。

  • CallerIdNumber – この電話番号は顧客に属するか、A レッグの送信元番号である必要があります。

  • 切断動作とエッジケース – 一方の通話レッグが切断しても、もう一方の通話レッグは自動的に通話を切断しません。Hangup イベントが AWS Lambda 関数に送信されると、残りのレッグは個別に切断する必要があります。通話レッグが保留状態のままの場合、通話は切断されるまで請求されます。例えば、次のシナリオでは予期しない料金が発生する可能性があります。

    • 宛先電話番号にブリッジしようとします。宛先が通話中であり、通話をボイスメールに直接送信します。Audio サービス側から見ると、ボイスメールへの送信は応答された通話です。A レッグは切断しますが、B レッグは引き続きボイスメールメッセージを待機します。B レッグが待機している間、請求されます。

    • ベストプラクティスとして、 AWS Lambda 関数、または通話のもう一方の側を使用して、各通話レッグを個別に切断します。

  • 請求CallAndBridge を使用すると、次の料金が請求されます。

    • PSTN に作成された各通話レッグ (A レッグ、B レッグなど) のアクティブな通話時間 (分)。

    • Audio サービスの使用時間 (分)。

の作業例を参照してください GitHub。