

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

# Amazon Chime SDK PTSN オーディオサービスの VoiceFocus について
<a name="voice-focus"></a>

Amazon Voice Focus のノイズ抑制を、公衆交換電話網 (PSTN) 通話の受信および発信通話レッグに適用できます。Amazon Voice Focus を適用すると、人間の音声に影響を与えることなくバックグラウンドノイズが低減します。これにより、現在の話者が聞き取りやすくなります。

受信通話レッグを作成するには、`NewInboundCall` イベントで AWS Lambda 関数を呼び出す [SIP ルール](https://docs.aws.amazon.com/chime/latest/ag/manage-sip-applications.html)を使用します。発信通話レッグは、[CallAndBridge](call-and-bridge.md) アクションを使用するか、[https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_CreateSipMediaApplicationCall.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_voice-chime_CreateSipMediaApplicationCall.html) API オペレーションを使用して作成できます。Amazon Voice Focus の詳細については、「[How the Amazon Chime SDK's noise cancellation works](https://www.amazon.science/blog/how-amazon-chimes-challenge-winning-noise-cancellation-works)」を参照してください。

 Amazon Voice Focus は、次のような音声以外の不要なノイズを低減させます。
+ **環境ノイズ** — 風、換気扇、流水
+ **バックグラウンドノイズ** - 芝刈り機、犬の鳴き声
+ **フォアグラウンドノイズ** - タイピング、書類をめくる音

**注記**  
Amazon Voice Focus を使用すると、 は各通話レッグのアクティブな通話分と SIP メディアアプリケーションの使用状況の 1 分ごとに AWS 請求します。

以下の例は、一般的な `VoiceFocus` アクションを示しています。

```
{
    "SchemaVersion": "1.0",
    "Actions":[
        {
            "Type": "VoiceFocus",
            "Parameters": {
                "Enable": True|False,            // required
                "CallId": "call-id-1",           // required    
            }
        }
    ]
}
```

**Enable**  
説明 - Amazon Voice Focus を有効または無効にします。  
使用できる値 – `True` \$1 `False`  
*必須* – はい  
*デフォルト値* - なし

**CallId**  
*説明* – AWS Lambda 関数呼び出しの `CallDetails` の参加者の CallId   
*使用できる値* – 有効な通話 ID  
*必須* – はい  
*デフォルト値* – なし

以下の例は、`VoiceFocus` アクションの成功した `ACTION_SUCCESSFUL` イベントを示しています。

```
{
   "SchemaVersion": "1.0",
   "Sequence": 3,
   "InvocationEventType": "ACTION_SUCCESSFUL",
   "ActionData": {
      "Type": "VoiceFocus",
      "Parameters": {
         "Enable": True,
         "CallId": "call-id-1"
      }
   },
   "CallDetails":{
      .....
      .....
      "Participants":[
         {
            "CallId": "call-id-of-caller",
            .....   
            "Status": "Connected"
         },
         {
            "CallId": "call-id-of-callee",
            .....
            "Status": "Connected"
         }
      ]
   }
}
```

以下の例は、`VoiceFocus` アクションの一般的な `ACTION_FAILED` イベントを示しています。

```
{
   "SchemaVersion": "1.0",
   "Sequence":2,
   "InvocationEventType": "ACTION_FAILED",
      "ActionData":{
      "Type": "VoiceFocus",
      "Parameters": {
         "Enable": True,
         "CallId": "call-id-1"
      }
      },
      "ErrorType": "SystemException",
      "ErrorMessage": "System error while running action"
   },
   "CallDetails":{
      .....
      .....
      "Participants":[
         {
            "CallId": "call-id-of-caller",
            .....   
         }
      ]
   }
}
```

**エラー処理**  
セキュリティ上の理由から、PSTN オーディオアクションでは、顧客アカウントごとに 1 秒あたり 5 件の通話リクエスト (CPS) に制限されています。通話リクエストが 5 CPS の制限を超えると、アクションはエラーメッセージを返します。`VoiceFocus` アクションから返されるエラーメッセージを以下の表に示します。


| エラー | メッセージ | Reason | 
| --- | --- | --- | 
| `ActionExecutionThrottled` | アクションを実行できませんでした。1 秒あたりのアクションの最大数に達しました。 | 1 秒あたりの Voice Focus アクションリクエスト数がシステム制限を超えました。 | 
| `MissingRequiredActionParameter` | アクションの必須パラメータがありません。 | アクションの実行中に必須パラメータが 1 つ以上不足しています。 | 
| `SystemException` | アクションの実行中にシステムエラーが発生しました。 | アクションの実行中にシステムエラーが発生しました。 | 

**通話フロー**  
以下の図は、2 つの PSTN 通話間の `CallAndBridge` アクションに対して Amazon Voice Focus を有効または無効にする通話フローを示しています。

![\[ブリッジされた 2 つの PSTN 通話に対して Amazon Voice Focus を有効または無効にするときの通話フロー。\]](http://docs.aws.amazon.com/ja_jp/chime-sdk/latest/dg/images/voice_focus-pstn1.png)


発信通話レッグの場合、 AWS Lambda 関数は発信者の Amazon Voice フォーカスを有効にし、 を含む一連のアクションを返します`CallAndBridge`。通話がブリッジされると、`VoiceFocus` アクションは `ACTION_SUCCESSFUL` イベントを返します。そして、Lambda 関数は、通話されている人に対して Amazon Voice Focus を有効にする別のイベントセットを返します。この一連のアクションには、`VoiceFocus`、`Enable`、`True`、および発信者の ID が含まれます。発信者がハングアップするまで、それ以上のアクションは実行されません。次に、Lambda 関数が SIP メディアアプリケーションに `Hangup` アクションを送信します。アプリケーションは、通話されている人をハングアップし、Hangup 関数を Lambda 関数に返します。Lambda 関数は、それ以上アクションを実行しません。