2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Azure Logic AppsのHTTPトリガーのパラメータ渡しでメール送信内容を切り替える

Posted at

背景

サクッとメール送信する機能を実装する為、Azure Logic AppsのGmailコネクタを使用して、HTTPトリガーから起動できるようにしたのですが、「このときは、このメッセージ」「このときは、このメッセージ」みたいな切り替えが必要になってきたので、Webhookのパラメータに応じて送信内容を切り替える機能を実装してみました。

概要

大雑把な構成はこちら。
image.png
HTTP TriggerからGmailコネクタを読んでメールを送信します。

もう少し詳しく

image.png

  • HTTP要求の受信でパラメータを受信しておきます
  • メール本文のコメントを切り替える用の[変数]を初期化しておきます
  • スイッチ分岐で、受信したパラメータに応じてコメント用の[変数]を設定します
  • Gmailコネクタの本文内で、コメント用の[変数]を使い、送信するメール内容を切り替えます。

詳細

HTTPリクエストでのParameterの渡し方

以前の記事 でも紹介していますが、HTTPトリガーで発行されるURLで「postalCode=123456」が渡したいParameterの部分になります。

公式ドキュメントの書き方

1 つ目の位置: https://prod-07.westus.logic.azure.com:433/workflows/{logic-app-resource-ID}/triggers/manual/paths/invoke?postalCode=123456&api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig={shared-access-signature}

なので、今回は例として、[param=0]とします。
「param=0」に変更した例が以下になります。

https://prod-07.westus.logic.azure.com:433/workflows/{logic-app-resource-ID}/triggers/manual/paths/invoke?param=0&api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig={shared-access-signature}

参考の公式ドキュメント
https://docs.microsoft.com/ja-jp/azure/logic-apps/logic-apps-http-endpoint#accept-values-through-get-parameters

メールの本文中で使用するコメントの初期化

[変数]を[文字列]として初期化しておきます。
image.png

HTTPトリガーで受信したパラメータによる処理の切り替え

先ほどの公式ドキュメントにも記載がありますが、以下のような式に入れてやると、[param]の値を取得することができます。
image.png

triggerOutputs()['queries']['param']

スイッチ分岐を使って、[param]で渡されてくる文字列を比較として、[変数]のコメントに切り替えるコメントを代入します。[param]の値を見て、[変数]に代入する文字列を切り替えます。
パラメータで渡されるのは文字列になるので、比較する値も"0"など、文字列にすることはお忘れなく。
image.png

メール送信の本文内で使用します

このような感じで [コメント変数] を使用することで、送信するメールの内容を切り替えることができます。
image.png

メールの送信

このようなメールを送信することができます。
[param]の値を変えることで、送信する内容を切り替えることが出来ます。
image.png

まとま

上記のような方法で、HTTPトリガーで渡されるパラメータで送信メールの内容を変更することが可能です。
HTTPトリガーのパラメーターとしていろいろ渡すことも可能ですが、微妙なメールでの言い回しなどはLogicApps側で変更可能にしておくことで、プログラマーでなくても容易にカスタムできる環境が作れると思います。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?