メール送信の機能をささっと作りたかったので、AzureLogicAppsを使って作ってみました。
AzureLogicAppsの大きな流れ
とてもシンプル!!!
- HTTPトリガー
- メール送信(今回は、Gmail)
HTTPリクエストでのパラメーター渡し
「宛先・件名・本文」を変更しながら使いたいので、パラメーターで渡せるようにします。
詳しくは以下の公式ドキュメントを参考にして欲しいのですが、要するに、URLに埋め込んで渡します。
この記事の参考URLを例にすると、「postalCode=123456」が渡したいパラメーターになるので、今回の場合は、「to=xxx@xx.xx.xx&title=aaaaa&message=bbbbb]のように置き換えて考えます。
・to:宛先
・title:件名
・message:本文
実際のHTTPトリガーのURLは、LogicAppsデザイナーから取得しておいてください。
また、メソッドはGETを使用します。
詳しくは、以下の公式ドキュメントを参考にして下さい。
AzureLogicApps側でのパラメーターの受信
上記のURLから渡されるパラメーターを抜き出し、「メール送信」の部分で使います。
パラメーター値を取得するには、triggerOutputs() 式を使います。
「宛先・件名・本文」は以下のように取得できます。to/title/messageは適宜読み替えてもらっても大丈夫です。
triggerOutputs()['queries']['to']
triggerOutputs()['queries']['title']
triggerOutputs()['queries']['message']
LogicAppsデザイナー上では、こんな感じで入力します。
詳しくは、以下の公式ドキュメントを参考にして下さい。
最後
これで、HTTPリクエストを使って手軽にメールが送信できるようになりました。
「宛先・件名・本文」もある程度はカスタマイズできるので使い勝手も良いと思います。
あとは、これだけ用意しておけば、AzureFunctionsを起点にメール送信したり、M5Stackなどにも手軽にメール送信機能を追加したり、いろいろ使える気がします。