Rufen Sie Amazon SNS mit Step Functions auf - AWS Step Functions

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.

Rufen Sie Amazon SNS mit Step Functions auf

Step Functions kann bestimmte AWS Dienste direkt von Amazon States Language (ASL) aus steuern. Weitere Informationen hierzu finden Sie unter Arbeiten mit anderen -Services und Parameter an eine Service-API übergeben.

Wie sich die optimierte Amazon SNS-Integration von der Amazon SNS AWS SDK-Integration unterscheidet

Es gibt keine Optimierungen für die IntegrationsmusterRequest Response (Antwort anfordern). Warten auf einen Callback mit dem Aufgabentoken

Unterstützte Amazon SNS SNS-APIs:

Anmerkung

In Step Functions gibt es ein Kontingent für die maximale Eingabe- oder Ergebnisdatengröße für eine Aufgabe. Dadurch sind Sie auf 256 KB an Daten als UTF-8-kodierte Zeichenfolge beschränkt, wenn Sie Daten an einen anderen Dienst senden oder von einem anderen Dienst empfangen. Siehe Kontingente im Zusammenhang mit der Ausführung von Zustandsmaschinen.

Parameter in werden ausgedrückt in Step Functions PascalCase

Auch wenn sich die native Service-API in CamelCase befindet, z. B. die API-AktionstartSyncExecution, geben Sie Parameter in an PascalCase, z. B.:. StateMachineArn

Im Folgenden finden Sie einen Task Status, der zu einem Amazon Simple Notification Service (Amazon SNS) -Thema veröffentlicht.

{ "StartAt": "Publish to SNS", "States": { "Publish to SNS": { "Type": "Task", "Resource": "arn:aws:states:::sns:publish", "Parameters": { "TopicArn": "arn:aws:sns:us-east-1:123456789012:myTopic", "Message.$": "$.input.message", "MessageAttributes": { "my_attribute_no_1": { "DataType": "String", "StringValue": "value of my_attribute_no_1" }, "my_attribute_no_2": { "DataType": "String", "StringValue": "value of my_attribute_no_2" } } }, "End": true } } }

Übergeben dynamischer Werte. Sie können das obige Beispiel ändern, um ein Attribut aus dieser JSON-Payload dynamisch zu übergeben:

{ "input": { "message": "Hello world" }, "SNSDetails": { "attribute1": "some value", "attribute2": "some other value", } }

Hängen Sie das .$ an das Feld anStringValue:

"MessageAttributes": { "my_attribute_no_1": { "DataType": "String", "StringValue.$": "$.SNSDetails.attribute1" }, "my_attribute_no_2": { "DataType": "String", "StringValue.$": "$.SNSDetails.attribute2" }

Im Folgenden wird ein Task Status beschrieben, der in einem Amazon SNS SNS-Thema veröffentlicht und dann darauf wartet, dass das Task-Token zurückgegeben wird. Siehe Warten auf einen Callback mit dem Aufgabentoken.

{ "StartAt":"Send message to SNS", "States":{ "Send message to SNS":{ "Type":"Task", "Resource":"arn:aws:states:::sns:publish.waitForTaskToken", "Parameters":{ "TopicArn":"arn:aws:sns:us-east-1:123456789012:myTopic", "Message":{ "Input.$":"$", "TaskToken.$":"$$.Task.Token" } }, "End":true } } }

Informationen zur Konfiguration von IAM Berechtigungen bei der Verwendung Step Functions mit anderen AWS Diensten finden Sie unter. IAM-Richtlinien für integrierte Dienste