Last active
December 20, 2015 10:20
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var subjectToSend = "LikeADailyToKindle"; | |
// kindleに飛ばしたモノは、Fileラベルに入れてINBOXから移動 | |
// 気になる件名 | |
var targetSubject = new Array(); | |
targetSubject[1] = "[ 家庭菜園毎日ニュース"; | |
targetSubject[2] = '国際小豆メールマガジン第'; | |
targetSubject[3] = '■ いますぐ運動! Linux'; | |
// もっと気になる場合 | |
// targetSubject[i++] = 'ひたひたFXニュース'; | |
// 宛先のkindle | |
var kindleMailAddr = "自分のkindle email address"; | |
// 受信トレイをチェックする | |
function checkInbox() { | |
// 気になる件数分気にする | |
for (var i =1;i<targetSubject.length; i++) { | |
var sanitizedTargetSub = targetSubject[i].replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"); | |
// 受信トレイのFRESHなメッセージを取得する,50件以上もいけるかも、でかいと返りがタイムアウトしたり | |
for (var j = 1;j<51; j++) { | |
var threads = GmailApp.getInboxThreads(); | |
try { | |
var subject = threads[j].getFirstMessageSubject(); | |
} | |
catch(e) { | |
break; | |
} | |
// 気になる件名部分マッチ正規表現 | |
if (subject.match(new RegExp(sanitizedTargetSub))) { | |
// スレッド内のメッセージと情報を取得する | |
var message = threads[j].getMessages()[0]; | |
var bodyStr = message.getBody(); | |
var topLess = bodyStr.replace(/<br\ \/>| \;| \;/gm, ''); | |
var title = targetSubject[i] + message.getDate() + ".html" | |
var bodyDocHtml = DocsList.createFile(title, topLess, "text/html"); | |
var news = message.getDate() + ".zip" | |
// packing! | |
var zip = Utilities.zip([bodyDocHtml], news); | |
//メッセージを送る | |
MailApp.sendEmail(kindleMailAddr, subjectToSend, 'see attachment', {attachments:zip}); | |
// メッセージにlabel、2回きちゃってても一回分づつ、朝刊夕刊版ということで | |
var labelFile = GmailApp.getUserLabelByName("File"); | |
labelFile.addToThread(threads[j]); | |
threads[j].moveToArchive(); | |
break; | |
} | |
} | |
} | |
}; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment