4
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Gmailの指定objectメールをLINEでうけとろう!

Last updated at Posted at 2020-05-03

##目的

Gmailで受信されたメールに対し
・指定の題目
・指定の期日
で合致したメールについて
・設定したメッセージ
・日時
・メールの題目
をLINEで通知してもらおう!

やり方

LINE Nortify (https://notify-bot.line.me/ja/) と Google Apps Scriptに関してはググって!(かんたん!)

コード(これを書き残したかっただけ)


const lineToken = "xxxxxxxxxxx"; //LINE token"
const getInterval = 5; //現在時間より何分前か指定する
const query = "[Error] xxxxxxx"; //subjectを指定する

const sendMailBody = "subject指定されたメールが受信されました!!"; //通知一行目

function sendLine(Me){
  const payload = {'message' :   Me};
  const options ={
    "method"  : "post",
    "payload" : payload,
    "headers" : {"Authorization" : "Bearer "+ lineToken}  
  };
  UrlFetchApp.fetch("https://notify-api.line.me/api/notify", options);
}

function fetchContantMail() {
  const nowTime= Math.floor(new Date().getTime() / 1000) ;
  const timeTerm = nowTime - ((60 * getIterval) + 3); 
  
  //条件指定
  const strTerms = 'after:'+ timeTerm +' '+ query;
  
  //結果取得
  const myThreads = GmailApp.search(strTerms);
  const myMsgs = GmailApp.getMessagesForThreads(myThreads);
  var getMessages = [];
  for(var i = 0; i < myMsgs.length;i++){
    getMessages[i] = ": " + sendMailBody
    + "\n[date]: " + myMsgs[i].slice(-1)[0].getDate()
    // + "\n[from]" + myMsgs[i].slice(-1)[0].getFrom() //src及びdist
    + "\n[sbject]: " + myMsgs[i].slice(-1)[0].getSubject();
    // + "\n\n[Message]\n"+ myMsgs[i].slice(-1)[0].getPlainBody(); //本文用
  }
  return getMessages;
}

function main() {
  var newMails = fetchContantMail()
  if(newMails.length > 0){
    for(var i = newMails.length -1; i >= 0; i--){
      sendLine(newMails[i]);
    }
  }
  else {
    console.log('Not matching mails');
  }
}

トリガー(イベント)はGAS編集画面にて、編集タブ -> 現在のプロジェクトのトリガ でよしなに設定して!

今困ってること

LineのグループってURLでは招待はできないことに設定後気がついた。
一度友達にならないと招待できないみたい。恥ずかしがり屋のひきこもりなのでわからなかった、悲しい。

4
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?