はじめに
ESPerDeveloperというwifiモジュールを使用して、タクトスイッチが押されたら特定のメールアドレスにメールを送信するという動作を、IFTTTというwebサービスと連携して行う。
使用機材
- Arduino
- ESPerDeveloper(wifiモジュール)
- タクトスイッチ
- 抵抗(1kΩ)
IFTTTとは
IFTTT(イフト)は、「レシピ」と呼ばれる個人作成もしくは公に共有しているプロフィールを使って数あるWebサービス(Facebook、Evernote、Weather、Dropboxなど)同士で連携することができるWebサービスである。
引用元:wikipedia
IFTTTは「どういう条件の時(トリガー)、どういう処理をさせる(アクション)」というような 2 つの条件(サービス)を組み合わせることができる。この組み合わせたものをアプレットと呼ぶ。
まずは下記のリンクからアカウントを作成してください。
アプレットの作成方法
今回はトリガー側を「Webhook」、アクション側を「Email」 に設定し、「Webhook の URL にアクセスがあった時、登録されているメールアドレスにメールを送信する」というアプレットを作成し、使用する。「Webhook」とは、IFTTT上で用いるURLをIFTTTのユーザーごとに提供するサービスである。
上記のリンク先の「This」をクリック
↓
検索欄に「Webhooks」と入力し、「Webhooks」を選択
↓
「Receive a web request」を選択
↓
「Event Name」に行う動作名を入力し「Create trigger」をクリック
(今回は「push_mail」という名前にしました)
↓
「That」をクリック
↓
検索欄に「Email」と入力し、「Email」を選択
↓
「Send me an email」を選択
↓
「Subject」にメールの件名、「Body」にメールの内容を書いてください
(タグを使えばさまざまなデータをBodyに載せれます。ちなみに「OccurredAt」は、Webhooksが作動した時の時刻がメールに載せれます)
↓
「Edit title」にはどういった動作をするアプレットなのかを書いておけばわかりやすいです
作成したアプレットを使用するには
作成したアプレットを使用するには、そのアプレットのキーを確認します。
「Home」から、検索欄に「Webhooks」と入力し、下記のような画面から「Webhooks」を選択
↓
「Documantation」をクリック
↓
「Your key is:」の後の文字列が、キーになります。
arduinoのプログラムを書く際に使用するのでメモしておいてください。
このキーは他人に公開しないようにしてください。
回路図
こちらが今回の回路図です。
わかりずらくて本当に申し訳ない。
ソースコード
こちらが今回のソースコードです。
今回は「ArduinoESPAT」というライブラリを使用する為、インストールしていない方はインストールをお願いします。
#include "ArduinoESPAT.h"
ESPAT espat("SSID","password");
void setup(){
pinMode(13,INPUT);
espat.begin(); //ESPerDeveloperとやり取りするための準備
espat.tryConnectAP(); //wifiへの接続
}
void loop() {
if(digitalRead(13)){
espat.get("maker.ifttt.com","/trigger/push_mail/with/key/KEY",80);
delay(1000);
}
}
ESPAT espat("SSID","password");
こちらの行の「SSID」と「password」の部分は、ご自身のwifiルーターのSSIDとパスワードを書いてください。
espat.get("maker.ifttt.com","/trigger/push_mail/with/key/KEY",80);
こちらの行は、記述されたURLにアクセスし、アプレットが作動します。
「push_mail」の部分は、ご自身で設定されたアプレットのEvent Nameに書き換えてください。
また「KEY」の部分は、先程メモしたキーの文字列を書いてください。
実際に動かしてみた
回路を組んでコードを書いて実行。タクトスイッチを押してみました。
はい、メールが来ました。ぴえん。
おわりに
今回はarduinoとメールを連携させましたが、メール以外にもツイッターやfacebookなどとの連携も可能です。
電子パーツもタクトスイッチだけでなく、さまざまな電子パーツに変えて試してみてください。
私はツイッターとの連携もやりましたが、割と楽しかったです。
-
reten05
さんが
2020/04/28
に
編集
をしました。
(メッセージ: 初版)
-
reten05
さんが
2020/04/28
に
編集
をしました。
Opening
fseigojp
2021/08/11
ログインしてコメントを投稿する私も、ほぼ同じやり方でTwitterと連携してみましたがwebhooksがhttpsなのではじかれました arduinoespat.hがふるかったのかな? ともあれ、昨年の4月あたりでは成功しているのをみてGmailでトライしてみます 励まされました