トリガ
メールをトリガにする
正確には、定期的に対象になるメールがあるか確認する
// 以下の関数を定期実行する
function trigger(){
var searchword = "TESTMAIL";
// Gmailの検索窓と同じ内容
// 検索結果はスレッドで帰ってくる(メール単位ではない)
// また、検索先をINBOXに設定しておき、
// 一度ヒットしたらINBOXから取り除くようにしておく
var threads = GmailApp.search("subject:" + searchword + " label:inbox");
// 各スレッドの中のメールを特定する
threads.forEach(function(thread){
var messages = thread.getMessages();
messages.forEach(function(message){
var subject = message.getSubject();
if(subject.match(searchword)){
/* ここで本来行いたい処理を起動する */
/* 件名や本文に組み込んだ情報を取り出したい場合は
ここで取り出したりする */
// 移動しておかないと、いつまでもヒットしてしまうので
// ゴミ箱に移しておく
message.moveToTrash();
}
});
});
}
注意点
Gmailの検索機能は、特殊文字を認識しないらしい。なので[TRIGGER]とか、カッコで括って、一般的なメールがヒットしないようにしよう、と頑張ってもあんまり効果がない。
対策はある程度長い単語や自分の造語で引っ掛けることだろうか。
Webhook
- 実行したいプロジェクトで以下に doGet もしくは doPost 関数を作成する
- 公開>ウェブアプリケーションをとして導入 を選ぶ
- 更新する際は、Newを選ぶ
- 今のところ、アクセスできる権利者を「Anyone」にする
- 設定されたURLにアクセス
最終更新:2019年11月03日 19:04