fc2ブログ

google apps script メール送信の動作確認

google apps script メール送信の動作確認

#16 動作確認をしてみよう
http://dotinstall.com/lessons/basic_google_apps_script/24316
を元に
動作確認をする

まず、Google ドキュメントで作成したフォーム
MyForm を開く

そして、
View live form
でテスト

名前
メールアドレス
参加、不参加を入力し送信

すると、
スプレッドシートへ送信内容が自動入力される

また、送信したメールアドレスに
今回の投稿内容がメールで受信できていることが確認できる

スポンサーサイト



テーマ : プログラミング
ジャンル : コンピュータ

google apps script で投稿内容をメール送信

google apps script で投稿内容をメール送信


#15 投稿内容をメールしてみよう
http://dotinstall.com/lessons/basic_google_apps_script/24315
を参考に
フォームから投稿された内容を
メール送信するための処理を実装

今回は、発生したイベントを利用するので

function sendReports(e){

}

として、処理を書いていく

まずは、結果を初期化
var rs ='';

Google apps script で
投稿結果から値を取得するには
フォームの項目の名前を入れる

var name = e.nameValues['お名前'];
var email = e.nameValues['メールアドレス'];
var attend = e.nameValues['参加?'];

とする
もし、確認したいのなら
一度 Google ドキュメントで作成したフォームの
項目を確認すること

rs ="name : "+ name +"\n email :"+email +"\n attend : "+attend;
というように、メールで受け取ったときに
見やすいように
\n をいれて改行しておく

これで 変数 rs へ結果が格納されたので
あとはメールで送信する

メールで送信するには
MailApp.sendEmail() を使う
引数には
送信先メールアドレス
件名
内容
となるので
MailApp.sendEmail(
"メールアドレス",
"回答がありました",
rs);
というようになる

あとは、トリガー設定をするため
Resources > Current Projects triggers

No triggers set up. Click here to add one now.
をクリック

動作を
On open から
On form submit へ変更し
保存

Authorization required

This app needs authorization to run.

Authorize Cancel
というように承認するか聞かれるので
承認する Authorize をクリック

今回要求されている承認は
Send email as you
ユーザ本人に変わってメール送信

View and manage your spreadsheets in Google Drive
Google Drive のスプレッドシート表示と管理
となる

テーマ : プログラミング
ジャンル : コンピュータ

google ドキュメントでフォーム作成

google ドキュメントでフォーム作成

#14 フォームを作ってみよう
http://dotinstall.com/lessons/basic_google_apps_script/24314
を参考に
google ドキュメントでフォームを作成

まず、Google ドライブで
CREATE > Form で新しいフォームを作成

今回はセミナー参加フォームのようなものを作成

Title には MyForm として
テンプレはそのままデフォルトのを使うのでOKをクリック

フォーム画面がでてくるので
MyForm を質問フォームへ変更

質問のタイトルになる
Question Title には
お名前
として

質問形式を設定する Question Type を
Muliple choice から テキスト形式の Textへ変更

必須の質問にしたいので
Required question にチェックをいれる

ここまでできたら、Done をクリック
Done は完了という意味

そして、名前だけでは足りないので
項目を追加するため
Add item をクリックして項目を追加する

Qestion Title に
メールアドレスと入力し

これも必須入力事項なのでRequired question にチェックをいれて
Done をクリック

これで、メールアドレス入力欄が追加される

次に参加するか否かのラジオボタンを作成

Add item をクリックして
ラジオボタンになる
Muliple choice を選択

Question Title には 参加? として

Question Type

Option 1 を参加にして
項目を追加するので
Check to add option と薄く表示されている欄をクリックして
不参加と入力し
ラジオボタン項目を追加する

これも、必須質問事項にしたいので
Required question にチェックをいれてDone をクリック

これで、フォームができるので
次に回答先のフォームを選択する

この場合
Choose response destination
をクリック
意味は
回答先を選択する

回答先は新しいスプレッドシートにするので
New spreadsheet
を選択して Create をおす

これで、一度 Google Drive に戻ると
MyForm(Response)
という新しいものが追加されている

この
MyForm(Response) をクリックして開き
これにスクリプトを仕組み、
回答があったときにメールで詳細を飛ばすようにする

Tools > script editor で
スクリプトエディタを立ち上げ
Brank Project をクリックし
スクリプトを書いていく

このままだとわかりにくいので
Untitled project から
MyProject

Code.js から Myscript.js に名前を変更しておく

テーマ : プログラミング
ジャンル : コンピュータ

google apps script でトリガー設定

google apps script でトリガー設定

#13 トリガーを設定してみよう
http://dotinstall.com/lessons/basic_google_apps_script/24313
を参考に
トリガーを設定して任意のタイミングで関数を実行する

作成した関数を定期的に実行するには
時計のようなアイコンをクリックするか

Resources > current projects triggers
でトリガー設定画面をだす

画面がでたら
add a new trigger をクリックし
新しいトリガーを作成

Run には実行する関数、今回は
sendReport を選択

Events には実行するタイミングの設定
デフォルト設定は
From spreadsheet スプレッドシートなので

時間主導型の
Time-driven にする

すると
指定する時間などの設定がでてくるので
Day timer 日ごと を設定

次に、どの時間枠に実行するか設定
7am to 8am
なら午前7時から午前8時になるので
これを設定

設定ができたら、Save をクリック

これで、トリガー設定により
自動的に行うシステムができる

自作の関数で定期的に処理したり
可能ならAPIなどもつかって処理するとかなり楽になる

テーマ : プログラミング
ジャンル : コンピュータ

google apps script でメール送信

google apps script でメール送信

#12 MailAppを使ってみよう
http://dotinstall.com/lessons/basic_google_apps_script/24312
を参考に
スプレッドシートのデータを元に
MailApp を使いメール送信する

今回は
毎朝合格者を確認し、合格者をカウントしてメール送信するようにする

今回の関数は sendReport()

まず、シートを取得するので
var sheet = SpreadSheetApp.getActiveSheet();

次に合格者の数をカウントし管理する
var n=0;
for(var i=0;i<=sheet.getLastRow(); i++){
でループ

i<=sheet.getLastRow() は
最終行までという意味

次に、点数が70以上ならカウントするので
if(sheet.getRange(i,2).getValue() >= 70)
{n++;}

.getRange(i,2) はB列
.getValue() >= 70 で。B列の数値が70以上であるか判定

これでメールを送るには
MailApp.sendEmail()
を使う

MailApp.sendEmail() の中身は
メールアドレス
件名
本文内容となる

今回なら
MailApp.sendEmail(
"メールアドレス",
"合格者数",
n+ "名合格"
);
となる

なお、メール送信に承認が必要になる

Authorization Required
This app needs authorization to run.
と聞かれるので
OKをクリック

Send email as you

View and manage your spreadsheets in Google Drive

とAndroid のパーミッションのように聞かれるので
Accept をクリック

これで、実行するとメールが送信される

テーマ : プログラミング
ジャンル : コンピュータ

最新記事
検索フォーム
GREEハコニワ攻略サイト
リンク
カテゴリ
月別アーカイブ
フリーエリア
最新記事
FXプライムレート
最新コメント
最新トラックバック