Hana道場【師範】のブログ

IchigoJamの徹底解説ブログ

【IchigoJamとGASでIoT入門(1)】Gmail自動送信ウェブアプリの作成

IchigoJam(+ MixJuice)とGASを組み合わせたIoT入門シリーズになります。

GAS(Google Apps Script)とは、Googleが提供しているJavaScriptをベースにしたプログラミング言語です。
Googleアカウントを持っている人なら無料で使え、ウェブアプリとしても公開することができます。
今回はGASで自動でGmailを送信する簡単なウェブアプリを作成します。

GAS入門の参考:
Google Apps Script(GAS)とは?できることから始め方までの基本|アナグラム株式会社


<必要なもの>

<つくるもの>

目次

GASでGmailを送るウェブアプリをつくる

まずは「URLにアクセスするとそれがトリガーとなり、自動でGmailが送られるウェブアプリ」を作ります。


Googleドライブから「Google Apps Script」を開きましょう。


エディタが開きます。

ウェブアプリにアクセスするとGmailを送るプログラムは下記の通りです。

【GASプログラム】

// GETリクエストに対する処理
function doGet(e){
  sendMessage();
  return ContentService.createTextOutput("'sended.\n");//ウェブアプリの実行(Gmail送信)が完了した際の表記
}

// Gmailの設定
function sendMessage() {
  let address = "********@gmail.com"; //送信先のGmailのアドレスを入力してください
  let subject = "***"; //送信するメールの件名を入力してください
  let body = "***********"; //送信するメールの本文を入力してください

  GmailApp.sendEmail(address, subject, body); //Gmailを送るメソッド
}  


ウェブアプリのプログラムができました!
「プロジェクトを保存する」をクリックして保存しましょう。
プロジェクト名も自由に決めてください。

ウェブアプリの公開


「デプロイ」→「新しいデプロイ」を選択


「歯車マーク」→「ウェブアプリ」を選択


「アクセスできるユーザー」を「全員」に設定 →「デプロイ」を選択


プロジェクト内で初めてウェブアプリを公開する際は、アクセスを承認する必要があります。

<アクセス承認の手順>

 (1)Googleアカウントを選択

 (2)「詳細」を選択

 (3)「Gmail送信に移動」を選択

 (4)「許可」を選択



ウェブアプリが公開されました!
ウェブアプリのURLをコピーし、アドレスバーに貼り付けてアクセス(検索)してみましょう。


"completed"とブラウザに表示され、Gmailが届いていたらウェブアプリ完成です。

IchigoJam からウェブアプリを実行する

IchigoJam webで実行する

IchigoJam webを開きましょう。
IchigoJam web by jig.jp


「I/O」を選択し、「MixJuice」にチェックを入れましょう。


10 ?"MJ GETS script.google.com/(中略)/exec
ウェブアプリのURL「script.google.com/macros/(中略)/exec 」をペーストしてください。
※「https://」は不要です。
「IMPORT」をクリックすると、IchigoJam webにインポートできるので、RUNで実行してみましょう。
Gmailが送信されれば成功です。
?"MJ GETS URL"
指定したURLにGETリクエストを送る

※GETリクエストに関しては次回のブログにて解説しています。

IchigoJam実機にセンサーを接続して、IoT防犯センサーを作ろう

接続方法


(1) MixJuiceIchigoJamに接続
(2)距離センサーをMixJuiceに接続
(白:IN2、橙:GND、黒:5V)

プログラム

(1)ネットワークに接続

?"MJ APC アクセスポイント名 パスワード"
MixJuice基板の緑色のランプが点滅→点灯していればネットワークに接続完了です。
MixJuiceリファレンス

(2)センサーの閾値を設定

10 A=ANA(2)
20 ?A
30 GOTO10
プログラムを実行し、センサーの前にモノを置いて閾値(人が通った基準となる数値)を決めましょう。
ここでは閾値を500と設定してみます。

(3)センサーの閾値(500)を超えたらウェブアプリにGETリクエストを送る

10 A=ANA(2)
20 ?A
30 IF A<500 GOTO10
40 ?"MJ GETS script.google.com/(中略)/exec

これでセンサーの数値が500を超えたらウェブアプリにGETリクエストが送られ、Gmailが送信されるGASプログラムが作動します!

(4)防犯IoTプログラムを完成させ、SAVEする

10 A=ANA(2)
20 IF A<500 GOTO10
30 ?"MJ GETS script.google.com/(中略)/exec
40 BEEP20,300:WAIT300
50 GOTO10
SAVE0
行番号40で音を5秒間鳴らし、行番号50でセンサー検知プログラムを作動するようにしました。
プログラムを0番にSAVEし、電源を切りましょう。
プログラムを自動実行(IchigoJamのボタンを押しながら電源スイッチを入れる)し、玄関や窓の近くに設置して置けば、簡単な防犯IoTセンサーの完成です。

まとめ

GASを使ってGmailを送るウェブアプリを作成、公開まで行いました。
ブラウザのアドレスバーにウェブアプリのURLを貼り付け、アクセスするだけでGmailが送られます。
ウェブアプリのURLにIchigoJam webのMixJuice機能を使ってGETリクエストを送るだけで、IchigoJamからGmailを送ることができました。

次回は、数種類のメール本文を送るためのGASとIchigoJamプログラムを作成していきます。
hanadojo-sihan.hatenablog.com

IchigoJam IoTシリーズ>※GAS以外の方法


CC BY shoichi1031da / @shoichi1031da

twitter.com