View a markdown version of this page

Erstellen Sie mithilfe der API oder CLI eine ausgehende Kampagne - Amazon Connect-Kunde

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Erstellen Sie mithilfe der API oder CLI eine ausgehende Kampagne

Sie können ausgehende Kampagnen programmgesteuert mithilfe der AWS CLI oder der Amazon Connect-API für ausgehende Kampagnen erstellen und verwalten. In diesem Thema wird erklärt, wie Sie mithilfe der CLI eine Connect-Customer-Kampagne erstellen, Kampagnenabläufe definieren und auf Lebenszyklusbefehle verweisen.

Voraussetzungen

Bevor Sie eine Kampagne mithilfe der API oder CLI erstellen, stellen Sie sicher, dass Sie über Folgendes verfügen:

Erstellen Sie einen Kampagnenablauf

Kampagnenabläufe definieren die Reihenfolge der Aktionen, die für jeden Empfänger ausgeführt werden. Sie erstellen Flows mithilfe der CreateContactFlow API, wobei der Flow-Typ auf festgelegt istCAMPAIGN. Detaillierte Informationen zu den einzelnen Aktionstypen finden Sie unterDefinitionen von Journey Flow-Blocks.

Einfacher Ablauf (keine Wiederholungen)

Ein einfacher Ablauf sendet eine einzelne Mitteilung an jeden Empfänger, ohne den Lieferstatus zu überprüfen. Dies ist die einfachste Ablaufstruktur:

{ "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": {} } ] }

Ablauf mit Überprüfung des Lieferstatus und Wiederholungsversuchen

Verwenden Sie für Flows, die den Lieferstatus überprüfen und bei einem Fehler erneut versuchen, die folgende Struktur. Der Flow sendet eine Mitteilung, wartet auf eine Empfangsbestätigung, ruft den Kommunikationsstatus ab und verzweigt sich dann auf der Grundlage des Ergebnisses.

Die wichtigsten Aktionen in einem Wiederholungsablauf sind:

  1. SendSMS SendOutboundEmail, oder PutDialRequest — Sendet die ausgehende Kommunikation.

  2. Warten — Wartet auf den Empfangsbeleg.

  3. GetOutboundCommunicationStatus— Ruft den Übermittlungsstatus der letzten Kommunikation ab.

  4. Vergleichen — Wertet den Empfangsbeleg und die Verzweigungen auf der Grundlage des Ergebnisses aus (z. B. bei Abbruch erneut versuchen, bei Erfolg beenden).

  5. EndFlowExecution— Beendet den Flow. Alle Flow-Pfade müssen mit dieser Aktion enden.

Das folgende Beispiel zeigt einen Ablauf für eine MANAGED Kampagne, die eine SMS versendet, auf eine Empfangsbestätigung wartet, den Status überprüft und es erneut mit einer E-Mail versucht, falls die Nachricht zurückgesendet wurde:

{ "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": {} } ] }
Wichtig
  • Wenn Ihr Flow mehrere Kanaltypen verwendet (z. B. SMS und E-Mail), schließen Sie bei der Erstellung der Kampagne alle Kanäle in den --channel-subtype-config Parameter ein.

  • Für FlowsMANAGED, die in Kampagnen mit Typen verwendet werden, die den Lieferstatus überprüfen, lautet die erforderliche Aktionssequenz: Warten GetOutboundCommunicationStatus → → Vergleichen. Die Wait Aktion unterbricht den Ablauf für eine bestimmte Dauer, damit Zeit bleibt, bis der Lieferschein eintrifft. Die GetOutboundCommunicationStatus Aktion ruft den Lieferstatus ab. Die Compare Aktion verzweigt sich auf der Grundlage des Ergebnisses.

  • Der OutboundCommunicationIds Parameter in GetOutboundCommunicationStatus muss referenziert werden$.OutboundCommunication.Latest.Id. Bei Verweisen auf Compare Empfangsbestätigungen in Aktionen muss derselbe Schlüssel verwendet werden. Beispiel: $.DeliveryReceipts['`$.OutboundCommunication.Latest.Id`'].Bounce.

  • MANAGEDKampagnen, die Sprachkanäle verwenden, benötigen dialCriteriaRules für die PutDialRequest Aktion:

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

Erstellen Sie eine Kampagnen-Flow-Version

Nachdem Sie einen Kampagnen-Flow erstellt haben, müssen Sie eine Version des Flows erstellen. Der versionierte Flow-ARN ist für die Erstellung einer Kampagne erforderlich. Verwenden Sie die CreateContactFlowVersion API, um eine Version zu erstellen.

Der ARN für einen versionierten Flow enthält ein Versionssuffix. Beispiel: arn:aws:connect:us-east-1:123456789012:instance/your-instance-id/contact-flow/your-flow-id:1

Weitere Informationen finden Sie in der CLI-Referenz zur Create-Contact-Flow-Version.

Erstellen einer ausgehenden Kampagne

Verwenden Sie den create-campaign Befehl, um eine Kampagne zu erstellen. Im folgenden Beispiel wird eine SMS-Kampagne im ausgehenden Modus ohne Agenten erstellt:

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

Bei Erfolg gibt der Befehl die Kampagnen-ID und den ARN zurück:

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

Der --type Parameter gibt den Kampagnentyp an. Wird MANAGED für ausgehende Kampagnen verwendet. Geeignet JOURNEY für mehrstufige Kampagnen über mehrere Kanäle — siehe. Visual Journey Builder

Anmerkung

Sie können auch angeben--communication-limits-override, wie oft ein Empfänger kontaktiert werden kann. Die vollständige Liste der Parameter finden Sie in der CLI-Referenz „create-campaign“.

Informationen zur Verwaltung von Vorgängen im Kampagnenlebenszyklus (Starten, Stoppen, Anhalten, Fortsetzen, Löschen) finden Sie in der AWS CLI-Referenz für connectcampaignsv2.