前提・実現したいこと
Google Apps Scriptを利用してGmailに届いた特定(subject=火災)のメールを複数のLINEグループに送信したいと思っています。
https://yuis-programming.com/?p=486
のサイトにイメージに近いコードがあった為そのまま利用しています。
発生している問題・エラーメッセージ
上記サイトを参照してGmailが届いたら1つのLINEグループに転送をかける事は出来たのですが 複数のLINEグループに同時送信する事が出来ません。 どなたか複数のLINEグループに同時送信できるようにアドバイスをいただけませんでしょうか?
該当のソースコード
// 検索結果に応じたGmailをLINEに通知する // 検索 var FindSubject = 'subject:(火災) '; function getMail(){ //指定した件名のスレッドを検索して取得 var myThreads = GmailApp.search(FindSubject, 0, 10); //スレッドからメールを取得し二次元配列に格納 var myMessages = GmailApp.getMessagesForThreads(myThreads); for(var i in myMessages){ for(var j in myMessages[i]){ //スターがないメッセージのみ処理 if(!myMessages[i][j].isStarred()){ var strDate = myMessages[i][j].getDate(); var strSubject = myMessages[i][j].getSubject(); var strMessage = myMessages[i][j].getPlainBody().slice(0,200); //LINEにメッセージを送信 sendLine(strDate,strSubject,strMessage); //処理済みのメッセージをスターをつける myMessages[i][j].star(); } } } } function sendLine(strDate,strSubject,strMessage){ //Lineに送信するためのトークン var strToken = ""; var options = { "method" : "post", "payload" : "message=" + strDate + strSubject + strMessage, "headers" : {"Authorization" : "Bearer "+ strToken} }; UrlFetchApp.fetch("https://notify-api.line.me/api/notify",options); }
※追記
LINENotifyを複数作成(総務LINEグループ、経理LINEグループ)して
掲示のコードを下記のように変更しています。
//Lineに送信するためのトークン
var strToken = "総務LINEグループのトークン";
var strToken = "経理LINEグループのトークン";
上記の場合は経理LINEグループにしかLINEが届きません。
本当は上記2つのグループに同じ内容が届くようにしたいです。
※追記2
コードの一部を下記のように変更致しました。
function sendLine(strDate,strSubject,strMessage){
//Lineに送信するためのトークン
var strToken = "ZqK1G○○○",
strToken2 = "h62M○○○";
var options =
{
"method" : "post",
"payload" : "message=" + strDate + strSubject + strMessage,
"headers" : {"Authorization" : "Bearer "+ strToken}
},
options2 =
{
"method" : "post",
"payload" : "message=" + strDate + strSubject + strMessage,
"headers" : {"Authorization" : "Bearer "+ strToken2}
};
UrlFetchApp.fetch("https://notify-api.line.me/api/notify",options);
UrlFetchApp.fetch("https://notify-api.line.me/api/notify",options2);
}
実行すると8行目の「 var myThreads = GmailApp.search(FindSubject, 0, 10);」のコードが
getMail 上限を超えています: : User-rate limit exceeded.
というエラーで止まってしましました。。
ご指摘いただけるとありがたいです。
トリガーは1分毎に動作するようにしています。
回答1件
あなたの回答
tips
プレビュー