翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
コードスニペットを使用して Amazon SNS メッセージを送信する状態を作成する
AWS Step Functions特定のものと統合するAWS のサービスAmazon Simple Notification Service (Amazon SNS) など このチュートリアルでは、Amazon SNS を使用して SMS 対応デバイスにテキストメッセージを送信するコードスニペットを生成します。ステートマシン定義から Amazon SNS に直接パラメータを渡します。
Step Functions が他のAWS のサービスAmazon ステートメント言語から直接、以下を参照してください。
前提条件
-
SMS メッセージを送信する送信先電話番号を追加して検証します。これを行う方法については、「」を参照してください。SMS サンドボックスでの電話番号の追加と確認のAmazon Simple Notification Service デベロッパーガイド。
ステップ 1: コードスニペットの生成
コードスニペットを生成するには、ステートマシン定義の編集からスタートする必要があります。
-
AWS Management Console にサインインして、[Step Functions]
コンソールを開きます。 -
選択ワークフローをコードで記述する。
-
を使用する場合タイプ、デフォルトのを選択したままにしますStandard。
デフォルトの
HelloWorld
ステートマシンは下に表示されます定義。 -
の [] からコードスニペットの生成ドロップダウンリストで、Amazon SNS: メッセージを発行する。
[Generate SNS Publish task state] (SNS Publish タスク状態を生成する) ウィンドウが表示されます。
-
[]送信先、選択電話番号[] ページで、電話番号を入力します。
-
選択電話番号を入力表示されたドロップダウンリストで、下のボックスに電話番号を入力します。
[+][country code][subscriber number including area code]
の形式を使用します。例:
。+12065550123
-
[Message] (メッセージ) で、[Enter message] (メッセージを入力) を選択し、SMS メッセージとして送信するテキストを入力します。
注記 [Specify message at runtime with state input] (実行時に状態の入力を使用してメッセージを指定する) を選択することもできます。このオプションを使用すると、参照パスを使用して、ステートマシン実行の入力からメッセージを選択できます。詳細については、次を参照してください。
でオプションを設定するとSNS Publish タスク状態を生成しますの [] ページで、プレビューセクションが、Amazonの州の言語コードで更新されますTask
必要なオプションで述べてください。
例えば、これらのオプションを選択します。

これらのオプションが選択された場合、[Preview] (プレビュー) 領域に表示される生成されたコードスニペットは次のようになります。
"Amazon SNS: Publish a message": {
"Type": "Task",
"Resource": "arn:aws:states:::sns:publish",
"Parameters": {
"Message": "Hello from Step Functions!",
"PhoneNumber": "+12065550123
"
},
"Next": "NEXT_STATE"
}
[Task state options] (タスク状態のオプション) セクションで、Retry
、Catch
、および TimeoutSeconds
の各オプションも設定できます。Step Functions のエラー処理 を参照してください。
ステップ 2: ステートマシン定義を更新する
Amazon SNS オプションを設定したので、生成されたコードスニペットをステートマシン定義に貼り付け、既存の Amazon ステートメント言語コードを更新します。
-
[Preview] (プレビュー) セクションのコードを確認したら、[Copy to clipboard] (クリップボードにコピー) を選択します。
-
ステートマシン定義の
HelloWorld
状態の閉じ括弧の後ろにカーソルを置きます。カンマを入力し、Enterをクリックして新しい行を開始します。コードスニペットをステートマシン定義に貼り付けます。
-
Amazon SNS: Publish a message
状態の最期の行を、
から"Next": "NEXT_STATE"
に変更します。"End": true
-
HelloWorld
状態の最期の行を、
から"End": true
に変更します。"Next": "Amazon SNS: Publish a message"
-
[Visual Workflow] (ビジュアルワークフロー) ペインの
を選択します。ビジュアルワークフローをチェックして、新しい状態が含まれていることをチェックします。
-
(オプション) 読みやすくするために JSON をインデントします。ステートマシン定義は次のようになります。
{ "StartAt":"HelloWorld", "States":{ "HelloWorld":{ "Type":"Pass", "Result":"Hello World!", "Next":"Amazon SNS: Publish a message" }, "Amazon SNS: Publish a message":{ "Type":"Task", "Resource":"arn:aws:states:::sns:publish", "Parameters":{ "Message":"Hello from Step Functions!", "PhoneNumber":"
+12065550123
" }, "End":true } } } -
[Next] (次へ) を選択します。
-
ステートマシンの名前を入力します。例えば、
です。using-code-snippets
-
を使用する場合アクセス許可、デフォルトのを選択したままにします新規ロールの作成。
-
Create State Machine(ステートマシンの作成)を選択します。
ステップ 3: 実行の開始
ステートマシンを作成した後、実行をスタートします。
-
Amazon リソースネーム (ARN)、関連する IAM ARN、ステートマシン定義など、ステートマシンの詳細を確認します。
-
リポジトリの []using-code-snippetsページで実行の開始。
-実行の開始ダイアログボックスが表示されます。
-
(省略可能) 実行を識別するために、[] ページで名前を指定できます。[Name] (名前)ボックスに移動するとそのように表示されます。デフォルトでは、Step Functions は自動的に一意の実行名を生成します。
注記 Step Functions では、非 ASCII 文字を含むステートマシン、実行、およびアクティビティ名を作成できます。これらの非 ASCII 名は Amazon では機能しません CloudWatch。確実に追跡できるようにするため CloudWatch メトリクスの場合は、ASCII 文字のみを使用する名前を選択します。
注記 Amazon SNS コードスニペットを作成時に、[Specify message at runtime with state input] (状態入力を使ってランタイム にメッセージの指定) を選択した場合、[Input - optional] (入力 - オプション) にメッセージを含めます。ここでは、デフォルトの状態入力を使用します。
-
[Start Execution] (実行のスタート) を選択します。
ステートマシンの新しい実行がスタートされ、実行中の実行が表示されている新しいページが表示されます。
コードスニペットで検証済みの電話番号を指定した場合、ステートマシンの実行によって直接トリガーされた Amazon SNS からのテキストメッセージを受信します。