View a markdown version of this page

API または CLI を使用してアウトバウンドキャンペーンを作成する - Amazon Connect Customer

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

API または CLI を使用してアウトバウンドキャンペーンを作成する

CLI または Amazon Connect アウトバウンドキャンペーン API AWS を使用して、アウトバウンドキャンペーンをプログラムで作成および管理できます。 Amazon Connect このトピックでは、 CLI を使用して Connect Customer アウトバウンドキャンペーンを作成し、キャンペーンフローを定義し、ライフサイクルコマンドを参照する方法について説明します。

前提条件

API または CLI を使用してキャンペーンを作成する前に、以下があることを確認してください。

キャンペーンフローを作成する

キャンペーンフローは、各受信者に対して実行されるアクションのシーケンスを定義します。CreateContactFlow API を使用してフローを作成し、フロータイプを に設定しますCAMPAIGN。各アクションタイプの詳細については、「」を参照してくださいジャーニーフローブロックの定義

シンプルなフロー (再試行なし)

シンプルなフローは、配信ステータスをチェックせずに、各受信者に 1 つの通信を送信します。これは最もシンプルなフロー構造です。

{ "Version": "2019-10-30", "StartAction": "SendSMS", "Actions": [ { "Identifier": "SendSMS", "Type": "SendSMS", "Parameters": { "Message": { "MessageSourceType": "TEMPLATE", "TemplatedMessage": { "WisdomKnowledgeBaseArn": "arn:aws:wisdom:us-east-1:123456789012:knowledge-base/your-kb-id", "WisdomMessageTemplateArn": "arn:aws:wisdom:us-east-1:123456789012:message-template/your-kb-id/your-template-id" } }, "SourceEndpoint": { "Address": "arn:aws:connect:us-east-1:123456789012:phone-number/your-phone-number-id", "Type": "CONNECT_PHONENUMBER_ARN" } }, "Transitions": { "NextAction": "EndFlow", "Conditions": [], "Errors": [ { "NextAction": "EndFlow", "ErrorType": "NoMatchingError" } ] } }, { "Identifier": "EndFlow", "Type": "EndFlowExecution", "Parameters": {} } ] }

配信ステータスチェックと再試行を含むフロー

配信ステータスをチェックし、失敗時に再試行するフローの場合は、次の構造を使用します。フローは通信を送信し、配信受信を待機し、通信ステータスを取得し、結果に基づいて分岐します。

再試行フローの主なアクションは次のとおりです。

  1. SendSMSSendOutboundEmail、または PutDialRequest - アウトバウンド通信を送信します。

  2. Wait — 配信受信を待機します。

  3. GetOutboundCommunicationStatus — 最新の通信の配信ステータスを取得します。

  4. 比較 — 結果に基づいて配信受信とブランチを評価します (バウンス時に再試行、成功時に終了など)。

  5. EndFlowExecution — フローを終了します。すべてのフローパスは、このアクションで終わる必要があります。

次の例は、SMS を送信し、配信受信を待機し、ステータスをチェックし、メッセージがバウンスした場合に E メールで再試行するMANAGEDキャンペーンのフローを示しています。

{ "Version": "2019-10-30", "StartAction": "SendSMS", "Actions": [ { "Identifier": "SendSMS", "Type": "SendSMS", "Parameters": { "Message": { "MessageSourceType": "TEMPLATE", "TemplatedMessage": { "WisdomKnowledgeBaseArn": "arn:aws:wisdom:us-east-1:123456789012:knowledge-base/your-kb-id", "WisdomMessageTemplateArn": "arn:aws:wisdom:us-east-1:123456789012:message-template/your-kb-id/your-sms-template-id" } }, "SourceEndpoint": { "Address": "arn:aws:connect:us-east-1:123456789012:phone-number/your-phone-number-id", "Type": "CONNECT_PHONENUMBER_ARN" } }, "Transitions": { "NextAction": "Wait", "Conditions": [], "Errors": [ { "NextAction": "EndFlow", "ErrorType": "NoMatchingError" } ] } }, { "Identifier": "Wait", "Type": "Wait", "Parameters": { "TimeLimitSeconds": "900" }, "Transitions": { "NextAction": "GetOutboundCommunicationStatus", "Conditions": [ { "NextAction": "GetOutboundCommunicationStatus", "Condition": { "Operator": "Equals", "Operands": ["WaitCompleted"] } } ], "Errors": [ { "NextAction": "EndFlow", "ErrorType": "NoMatchingError" } ] } }, { "Identifier": "GetOutboundCommunicationStatus", "Type": "GetOutboundCommunicationStatus", "Parameters": { "OutboundCommunicationIds": ["$.OutboundCommunication.Latest.Id"] }, "Transitions": { "NextAction": "Compare", "Conditions": [], "Errors": [ { "NextAction": "EndFlow", "ErrorType": "NoMatchingError" } ] } }, { "Identifier": "Compare", "Type": "Compare", "Parameters": { "ComparisonValue": "$.DeliveryReceipts['`$.OutboundCommunication.Latest.Id`'].Bounce" }, "Transitions": { "NextAction": "EndFlow", "Conditions": [ { "NextAction": "SendEmail", "Condition": { "Operator": "Exists", "Operands": [] } } ], "Errors": [ { "NextAction": "EndFlow", "ErrorType": "NoMatchingCondition" } ] } }, { "Identifier": "SendEmail", "Type": "SendOutboundEmail", "Parameters": { "EmailMessage": { "MessageSourceType": "TEMPLATE", "TemplatedMessage": { "WisdomKnowledgeBaseArn": "arn:aws:wisdom:us-east-1:123456789012:knowledge-base/your-kb-id", "WisdomMessageTemplateArn": "arn:aws:wisdom:us-east-1:123456789012:message-template/your-kb-id/your-email-template-id" } }, "FromEmailAddress": { "EmailAddress": "noreply@example.com" } }, "Transitions": { "NextAction": "EndFlow", "Conditions": [], "Errors": [ { "NextAction": "EndFlow", "ErrorType": "NoMatchingError" } ] } }, { "Identifier": "EndFlow", "Type": "EndFlowExecution", "Parameters": {} } ] }
重要
  • フローが複数のチャネルタイプ (SMS や E メールなど) を使用している場合は、キャンペーンの作成時に --channel-subtype-configパラメータにすべてのチャネルを含めます。

  • 配信ステータスをチェックMANAGEDするタイプのキャンペーンで使用されるフローの場合、必要なアクションシーケンスは WaitGetOutboundCommunicationStatusCompare です。Wait アクションは、指定された期間フローを一時停止して、配信受信が到着する時間を確保します。GetOutboundCommunicationStatus アクションは配信ステータスを取得します。Compare アクションは結果に基づいて分岐します。

  • OutboundCommunicationIdsパラメータは を参照GetOutboundCommunicationStatusする必要があります$.OutboundCommunication.Latest.IdCompare アクションの配信受信リファレンスは、同じキーを使用する必要があります。例: $.DeliveryReceipts['`$.OutboundCommunication.Latest.Id`'].Bounce

  • MANAGED 音声チャネルを使用する キャンペーンでは、 PutDialRequestアクションdialCriteriaRulesで が必要です。

    { "Identifier": "PutDialRequest", "Type": "PutDialRequest", "Parameters": { "dialCriteriaRules": [ { "type": "CheckSegmentMembershipForCustomerProfile", "segmentArn": "arn:aws:profile:us-east-1:123456789012:domains/your-domain/segments/your-segment" } ] }, ... }

キャンペーンフローバージョンを作成する

キャンペーンフローを作成したら、フローのバージョンを作成する必要があります。キャンペーンを作成するときは、バージョニングされたフロー ARN が必要です。CreateContactFlowVersion API を使用してバージョンを作成します。

バージョニングされたフロー ARN にはバージョンサフィックスが含まれます。例: arn:aws:connect:us-east-1:123456789012:instance/your-instance-id/contact-flow/your-flow-id:1

詳細については、create-contact-flow-version CLI リファレンスを参照してください。

アウトバウンドキャンペーンを作成する

create-campaign コマンドを使用してキャンペーンを作成します。次の例では、エージェントレスアウトバウンドモードで SMS キャンペーンを作成します。

aws connectcampaignsv2 create-campaign \ --name "My SMS Campaign" \ --connect-instance-id "your-instance-id" \ --type MANAGED \ --connect-campaign-flow-arn "arn:aws:connect:us-east-1:123456789012:instance/your-instance-id/contact-flow/your-flow-id:1" \ --source '{"customerProfilesSegmentArn": "arn:aws:profile:us-east-1:123456789012:domains/your-domain/segments/your-segment"}' \ --channel-subtype-config '{ "sms": { "outboundMode": {"agentless": {}}, "defaultOutboundConfig": { "connectSourcePhoneNumberArn": "arn:aws:connect:us-east-1:123456789012:phone-number/your-phone-number-id", "wisdomTemplateArn": "arn:aws:wisdom:us-east-1:123456789012:message-template/your-kb-id/your-template-id" } } }' \ --schedule '{"startTime": "2026-07-01T09:00:00", "endTime": "2026-07-01T17:00:00", "refreshFrequency": "PT30M"}' \ --communication-time-config '{ "localTimeZoneConfig": {"defaultTimeZone": "America/New_York"}, "sms": { "openHours": { "dailyHours": { "MONDAY": [{"startTime": "T09:00", "endTime": "T17:00"}], "TUESDAY": [{"startTime": "T09:00", "endTime": "T17:00"}], "WEDNESDAY": [{"startTime": "T09:00", "endTime": "T17:00"}], "THURSDAY": [{"startTime": "T09:00", "endTime": "T17:00"}], "FRIDAY": [{"startTime": "T09:00", "endTime": "T17:00"}] } } } }' \ --region us-east-1

成功すると、コマンドはキャンペーン ID と ARN を返します。

{ "id": "campaign-id", "arn": "arn:aws:connect-campaigns:us-east-1:123456789012:campaign/campaign-id" }
注記

--type パラメータはキャンペーンタイプを指定します。アウトバウンドキャンペーンMANAGEDに使用します。マルチステップ、マルチチャネルジャーニーJOURNEYに を使用します。「」を参照してくださいビジュアルジャーニービルダー

注記

を指定--communication-limits-overrideして、受信者に連絡できる回数を制御することもできます。パラメータの完全なリストについては、「キャンペーン作成 CLI リファレンス」を参照してください。

キャンペーンライフサイクルオペレーション (開始、停止、一時停止、再開、削除) を管理するには、AWS connectcampaignsv2 の CLI リファレンスを参照してください。