サービスからメール送信をする際に、AWS の SES (Simple Email Service) を利用することはよくあると思うのですが、手動でメールを送信しようとするとコマンドで行う必要があるので、備忘録として残しておきます。
前提として、AWS の CLI が使える状態になっているものとします。
環境未作成の場合は 公式サイト などを見て使える状態にしておいてください。
まず、メールのテンプレートを作成します。
{ "Template": { "TemplateName": "TestTemplete", "SubjectPart": "サービスについてのお知らせ", "HtmlPart": "<p>これはHTMLの本文です。</p>", "TextPart": "これはテキストの本文です。" } }
次に送信設定を作成します。
{ "Source":"no-reply@*****.co.jp", "Template":"TestTemplete", "Destinations":[ { "Destination":{ "ToAddresses":[ "sato@*****.co.jp" ] }, "ReplacementTemplateData":"{}" }, { "Destination":{ "ToAddresses":[ "suzuki@*****.co.jp" ] }, "ReplacementTemplateData":"{}" } ], "DefaultTemplateData":"{}" }
ToAddresses の部分に送信先を書いてください。
ちなみにテンプレートの特定の識別子を置換することもできますが、今回は割愛します。
あとはコマンドでこれらのファイルを SES 側に送信するだけです。
テンプレートの登録。
(us-west-2 の部分は適宜使用しているリージョンに変更してください)
% aws ses create-template --cli-input-json file://TestTemplete.json --region us-west-2
AWS の管理コンソールで登録できているか確認。
ちなみにテンプレートは同名のものは登録できないので、既存のものを修正する場合は create-template ではなく update-template コマンドを使用します。
送信設定。
% aws ses send-bulk-templated-email --cli-input-json file://MailData.json --region us-west-2
これでメールが送信されます。
私が試したときは、即座にメールが送信されていました。
投稿者プロフィール
最新の投稿
- iOS2022年6月27日【iOS】ARケチャマヨバトルをアップデートしたときにやったこと
- iOS2021年6月22日UIKit(Storyboard)で時間が止まってる人向けのiOS開発リハビリメニュー
- Server2020年10月8日AWSのSESを利用して手動でメールを送信する
- 技術開発2020年9月8日SwiftUIのすすめ – 2. リスト表示 –