この記事のポイント
- Azure Communication ServicesとEmail Communication Servicesの設定手順を詳細に解説
- Pythonを使用した実際のメール送信コードと実装方法を提示
- 料金は従量課金制で、メール1通あたり約0.04円、1MBあたり約0.02円(2024年8月時点)
- 顧客通知、アカウント管理、トランザクション通知など、様々なビジネスシーンでの活用例を紹介
- Azureの仮想マシンから直接SMTPを使用したメール送信の注意点も説明
監修者プロフィール
坂本 将磨
Microsoft AIパートナー、LinkX Japan代表。東京工業大学大学院で技術経営修士取得、研究領域:自然言語処理、金融工学。NHK放送技術研究所でAI、ブロックチェーン研究に従事。学会発表、国際ジャーナル投稿、経営情報学会全国研究発表大会にて優秀賞受賞。シンガポールでのIT、Web3事業の創業と経営を経て、LinkX Japan株式会社を創業。
企業のメールコミュニケーションをクラウドで効率化できることをご存知ですか? Azureを活用すれば、顧客通知やアカウント管理、トランザクション情報の送信が簡単に行えます。
本記事では、Microsoft AzureのCommunication ServicesとEmail Communication Servicesを使ったメール送信システムの構築方法を詳しく解説します。
セットアップから実際のメール送信テスト、料金情報まで、具体的な手順を丁寧に説明していきます。
目次
Azure Communication Servicesを用いてメールを送信する方法
Azure Communication Servicesのセットアップ
Email Communication Servicesのセットアップ
Azure Communication Servicesの料金について
Azure Communication Servicesを用いてメールを送信する方法
実際にAzureからメールを送信する方法を解説していきたいと思います。使用するAzureのリソースは以下の通りです。
- Azure Communication Services(通信サービス)
「Azure Communication Services」は、Microsoft Azureが提供するコミュニケーションプラットフォームです。音声、ビデオ、チャット、SMS、およびメール機能を統合するためのAPIを提供しています。
- Email Communication Services(メール通信サービス)
「Azure Email Communication Servicesは」、Azure Communication Servicesの一部として提供される電子メール送受信用のサービスです。
実際の作成方法
Azure Communication Servicesのセットアップ
まずは、Azure Communication Servicesの準備をしていきます。
下記のようなアイコンのCommunication Servicesのリソースを探し、「作成」をクリックして下さい。
Azure Communication Servicesのアイコン
使用するサブスクリプションとリソースグループ、データの場所を選択し、任意のリソース名を入力します。
なお、今回はデータの場所として日本を選択しました。その後、赤枠の「レビューと作成」→「作成」の順にクリックします。
Communication Servicesの作成画面
すると、以下のようにデプロイが完了しました。
Communication Servicesのデプロイ完了画面
Email Communication Servicesのセットアップ
同様な流れでEmail Communication Servicesの準備をしていきます。
下記のようなアイコンのCommunication Servicesのリソースを探し、「作成」をクリックして下さい。
Email Communication Servicesのアイコン
作成画面は以下のようになっています。
先ほどのAzure Communication Servicesと同様に選択・入力したら「確認と作成」→「作成」の順でクリックして下さい。
Email Communication Servicesの作成画面
すると、以下のようにデプロイが完了しました。
Email Communication Servicesのデプロイ完了画面
ドメインの設定
最後に、ドメインを設定していきます。まずは、Email Communication Servicesを開きます。既に用意したドメインがある場合は、カスタムドメインとして使用することができます。
今回は説明のため、左の無料のAzureサブドメインを追加するので「1クリックで追加」をクリックします。
ドメイン設定の方法選択
すると、以下のようにドメインを用意することが出来ました。
ドメインの追加完了画面
次に、先ほど作成したAzure Communication Servicesを開き、メール→ドメイン→「ドメインを接続する」をクリックします。
ドメインの接続方法
すると、以下のような表示が出てくるので項目を選択し、「接続」をクリックします。
ドメイン接続の設定画面
正しくドメインが接続されると、以下のように完了の通知が出てきます。
ドメイン接続の完了画面
送信テストを行う
それでは、実際にメールを送信できるかテストしてみましょう。
今回は、Pythonでメールを送信します。まずは、ターミナルに直接下記のコードを入力し、Azureのモジュールをインストールして下さい。
pip install azure-communication-email
次に、下記のコードでメールを送信することが出来ます。
from azure.communication.email import EmailClient
def main():
try:
connection_string = "YOUR_CONNECTION_STRING"
client = EmailClient.from_connection_string(connection_string)
message = {
"senderAddress": "DoNotReply@<from_domain>",
"recipients": {
"to": [{"address": "<to_email>" }],
},
"content": {
"subject": "テスト メール",
"plainText": "メールで Hello World。",
}
}
poller = client.begin_send(message)
result = poller.result()
print("メールが正常に送信されました。")
except Exception as ex:
print(f"エラーが発生しました: {ex}")
if __name__ == "__main__":
main()
- YOUR_CONNECTION_STRING:Azure Communication Servicesのキー内にある接続文字列
- <from_domain>:先ほど準備したドメイン名
- <to_email>:送信先のメールアドレス
上記の箇所を変更し、コードを実行してみました。すると、下記のように正しくメールを送信することが出来ました。
![実際のメール](https://aisouken.blob.core.windows.net/article/791/実際のメール.webp 600x)実際に届いたメール
Azure Communication Servicesの料金について
Azure Communication Servicesは、使用した量に基づく従量課金制になっています。
2024年8月現在では、メール1通あたり0.04016円、1MBあたり0.01928円という価格になっています。
例えば、1 MBのメールを100人に毎日送信するとしたら、30日間の価格は次のようになります。
100通のメール × 30 × 0.04016 = 3000 通のメール × 0.04016 = 120.48円
1 MB × 100 × 30 × 0.01928 = 3000 MB × 0.01928 = 57.84円
合計で120.48+57.84=178.32円かかることになります。
Azure Communication Servicesの利用シーン
Azure Communication Servicesは、様々なビジネスシーンで活用できる柔軟性の高いサービスです。
主な利用シーンには以下のようなものがあります。
1. 顧客通知
新商品の発売情報やセール告知など、マーケティング関連の情報を顧客に一斉送信する際に活用できます。
- Eコマースサイトの新商品入荷通知
- イベント情報の配信
- 会員向け特別オファーの案内
2. アカウント管理
ユーザーアカウントに関連する重要な通知を自動送信することができます。
- 新規ユーザー登録時のウェルカムメール
- パスワードリセットの通知
- アカウント情報更新の確認メール
3. トランザクション通知
取引や処理の状況を即時にユーザーに通知することが可能です。
- 注文確認メール
- 商品発送通知
- 支払い完了通知
4. カスタマーサポート
顧客とのコミュニケーションを効率化し、サポート品質を向上させることができます。
- サポートチケットの自動返信
- 問い合わせ内容の確認メール
- フォローアップ通知
これらの利用シーンを通じて、Azure Communication Servicesは企業と顧客とのコミュニケーションを円滑にし、ユーザー体験の向上に貢献します。
さらに、スケーラビリティの高さを活かして、小規模なスタートアップから大企業まで、幅広いニーズに対応することが可能です。
まとめ
本記事では、Azure Communication Servicesを使用してAzureからメールを送信する方法を解説しました。
具体的には、Azure Communication ServicesとEmail Communication Servicesの設定手順、ドメイン構成、およびPythonによるメール送信方法を解説しました。
これにより、顧客通知、アカウント管理、トランザクション通知など、様々なビジネスシナリオで安全で効率的なメール送信が可能となります。
本記事が、あなたのAzure活用の際の助けになれば幸いです。