Step Functions で Amazon SNS を呼び出す - AWS Step Functions

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

Step Functions で Amazon SNS を呼び出す

Step Functions AWS は特定のサービスを Amazon ステートメント言語 (ASL) から直接制御できます。詳細については、「他の サービスでの使用」および「サービス API にパラメータを渡す」を参照してください。

最適化された Amazon SNS インテグレーションが Amazon SNS SDK インテグレーションとどう違うのか AWS

レスポンスのリクエスト または タスクトークンのコールバックまで待機する 統合パターンの最適化はありません。

サポートされている Amazon SNS API:

注記

Step Functions のタスクには入力データまたは結果データの最大サイズにはクォータがあります。これにより、別のサービスとの間でデータを送受信するときに、UTF-8 でエンコードされた文字列として 256 KB のデータに制限されます。ステートマシンの実行に関連するクォータ を参照してください。

Step Functionsのパラメータは次のように表されます。 PascalCase

ネイティブサービス API が camelCase にある場合でも、たとえば API アクションではstartSyncExecution PascalCase、次のようなパラメータを指定します。StateMachineArn

以下には、Amazon Simple Notification Service (Amazon SNS) トピックに発行する Task 状態が含まれます。

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

動的な値を渡す。上記の例を変更して、この JSON ペイロードから属性を動的に渡すことができます。

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

.$StringValue フィールドに追加:

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

以下には、Amazon SNS トピックに発行され、その後タスクトークンが返されるまで待機する Task 状態が含まれます。タスクトークンのコールバックまで待機する を参照してください。

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

IAMStep Functions AWS 他のサービスと併用する場合の権限の設定方法については、を参照してください。統合サービスの IAM ポリシー