Amazon Connect アウトバウンドキャンペーン PutOutboundRequestBatch APIを利用する場合、インスタンスレベルの通信制限は適用不可
はじめに
2025年6月に Amazon Connect で通信制限機能がアウトバウンドキャンペーンに対応したことで、以下のような制限設定が可能になりました。
インスタンス全体での合計通信制限
- Amazon Connect インスタンス内で実行される全キャンペーンを通じて、特定期間内に各受信者が受け取るメッセージ数を制御できます
- 例えば、週あたり10件の制限を設定した場合、受信者がこの上限に達すると、時間枠がリセットされるまで全てのキャンペーンからの連絡が一時停止されます
通信制限のオプトアウト機能
- キャンペーン作成時、緊急性の高いキャンペーン(セキュリティ警告、災害通知など)では、「制限の合計を無視」設定を有効にできます
- これにより、インスタンス全体の通信制限を回避し、他のキャンペーンによる制限の影響を受けることなく、重要なメッセージを確実に配信できます
しかし、以下の記事を参考にPutOutboundRequestBatch
API を使用したアウトバウンドキャンペーンでこれらの制限を設定したにも関わらず、同一の宛先に対して連続して架電が実行されてしまう問題が発生します。
本記事では、この問題の原因と対処方法について解説していきます。
制限の適用可否について
結論から申し上げますと、PutOutboundRequestBatch
API を使用したアウトバウンドキャンペーンではインスタンスレベルの通信制限は適用されません。
これは、AWSドキュメントにも記載がなく、検証を行った結果です。
具体的には以下のとおりです。
制限が適用されない場合
PutOutboundRequestBatch
API を使用したアウトバウンドキャンペーン- Amazon Connect Customer Profiles を使用したアウトバウンドキャンペーン(カスタマーセグメント使用)で、「制限の合計を無視」設定を有効化した場合
制限が適用される場合
- Customer Profiles を使用したアウトバウンドキャンペーンで、「制限の合計を無視」設定を無効化した場合
この動作は仕様であり、PutOutboundRequestBatch
API を使用したアウトバウンドキャンペーンでインスタンスレベルの通信制限を適用する方法は現在のところ提供されていません。
通信制限を適用する方法
インスタンスレベルの通信制限を適用するには、PutOutboundRequestBatch
API を使用したアウトバウンドキャンペーンではなく、Customer Profiles を使用したアウトバウンドキャンペーンを作成する必要があります。
注意点として、コンソール上でキャンペーン作成時、Ignore total limits(制限の合計を無視)
のチェックを外します。チェックが入っていると、インスタンスレベルの通信制限が無効化されてしまいます。
CreateCampaignV2 APIでキャンペーンを作成する際も同様です。
{
"communicationLimitsOverride": {
"instanceLimitsHandling": "OPT_IN", // または "OPT_OUT"
"allChannelSubtypes": { ... }
}
}
インスタンスレベルの制限を適用したい場合はOPT_IN
を、無視したい場合はOPT_OUT
を指定する必要があります。
PutOutboundRequestBatch
API を継続使用する場合の代替案
PutOutboundRequestBatch
API を使用したアウトバウンドキャンペーンでは制限を適用することはできませんが、独自のアプリケーション側で制限機能を実装する方法があります。
具体的な実装方法は以下のとおりです。
- Amazon DynamoDBを使用して通信履歴を管理
- API実行前に制限チェックを実施
- 制限内であればAPIを実行して履歴を記録
- 制限を超えている場合は処理を停止
ただし、アプリケーション側での開発工数とDynamoDBの利用料金が発生することを考慮する必要があります。
まとめ
Amazon Connect のアウトバウンドキャンペーンにおいて、インスタンスレベルの通信制限を適用するには、キャンペーンの種類によって以下の制約があることを理解する必要があります。
制限が適用されない場合
PutOutboundRequestBatch
API を使用したアウトバウンドキャンペーン- Customer Profiles を使用したアウトバウンドキャンペーンで、「制限の合計を無視」設定を有効化した場合
制限が適用される場合
- Customer Profiles を使用したアウトバウンドキャンペーンで、「制限の合計を無視」設定を無効化した場合
技術的な要件上、PutOutboundRequestBatch
API を使用したアウトバウンドキャンペーンの使用が必要な場合は、アプリケーションレベルでの制限制御を実装する必要があります。
今後のアップデートでPutOutboundRequestBatch
API を使用したアウトバウンドキャンペーンにも通信制限が適用される可能性もありますので、定期的に AWSドキュメントのリリースノートなど確認することをお勧めします。