gmailでラベル付きのメールを自動アーカイブする, の続き
1年前に書いた記事の続き. 基本的なやり方はこの記事に書いてある.
参照元はこちら -> うちのGMailはこうなっている(2014年完全版) - Qiita
最近, ラベル付きメールの自動アーカイブ機能がうまく動かずエラーを吐いていたので修正した.
これは本当に便利なのでオススメ.
// exclude multi-message conversations where I sent the last message? var SINGLE_MESSAGE_ONLY = false; // string for regular expression check var EMAIL_REGEX = /[a-zA-Z0-9\._\-]+@[a-zA-Z0-9\.\-]+\.[a-z\.A-Z]+/g; // look only in sent messages from last 7 days, otherwise script takes a while var DAYS_TO_SEARCH = 7; // set your email address. var YOUR_EMAIL_ADDRESS = "your gmail address"; function getEmailAddress() { // return Session.getEffectiveUser().getEmail(); return YOUR_EMAIL_ADDRESS; } function archiveReadMail() { var query = 'in:inbox is:read has:userlabels'; var threadAll = 0; var offset = 0; var limit = 5; var mailAddress = getEmailAddress(); var AddressList = {}; var hasMore = true; while (hasMore) { var threads = GmailApp.search(query, offset, limit); Logger.log(threads.length); for (var i = 0; i < threads.length; i++) { var thread = threads[i]; thread.moveToArchive() } hasMore = false; } }