職場のアラートメールは多すぎて、しかも不要なものが多いので、
毎回毎回手削除は流石にアナログすぎるので、Google Apps Scriptを使って自動削除スクリプトを作りましたw
ステップ1:
削除したメールをGmailのフィルター機能を使って、ラベルを設定します。
参照ページ:
Gmail のラベルとその使用方法
ラベルとフィルタでGmailをスピード仕分け
ステップ2:
Google Driveを開き、右クリックでGoogle Apps Scriptを新規します。
※Google Apps Scriptがない場合、「アプリを追加」から探してください!
ステップ3:
それではコーディングしましょうw
僕はfunction名をnew_gmail_cleanupに設定しました。
(なぜnewなのか?別バージョンのoldがあるからw)
今回使うGoogle Apps Script関数は下記2つのみです
・GmailApp.search
Gmail検索用の関数です。(検索条件、スタート値、マックス値)を設定すれば、
自動的に該当メールを返してくれます。
スタート値とマックス値を指定しなくても使えます。
moveThreadsToTrashは一度削除できる最大件数は100件なので、今回は100を指定します。
・GmailApp.moveThreadsToTrash
対象メールを削除する関数です。
searchで引っ張ってきたメールをそのまま入れて、終了w
因みに最大件数は100件!
一度に大量のメールを削除しようとすると最大実行時間を超えて、スクリプトが落ちるので、
一回は100件まで削除して、トリガーで時間単位で回すことにしました。
sample↓
function new_gmail_cleanup() { /** * クリーン設定 * - 対象ラベル名:削除除外日数 */ var targets = { '対象ラベル名1' : '削除除外日数', '対象ラベル名2' : '削除除外日数', '対象ラベル名3' : '削除除外日数', }; // 対象ラベルのループ処理 for (var labelName in targets) { var searchCond = 'label:' + labelName + ' older_than:' + targets[labelName]; threads = GmailApp.search(searchCond,0,100); if ( threads.length > 0){ GmailApp.moveThreadsToTrash(threads); return; } } }
ステップ4:
一回の実行は100件までしか削除できないので、トリガーを設定して定期実行していきます。
「リソース」から「現在のプロジェクトのトリガー」を選択します。
15分ごとに起動に設定しましょう
あまり短すぎるとGoogleからこのようなアラートメールを送られてくるので、要注意!
「サービスで 1 日に使用しているコンピュータ時間が長すぎます」
これで、一旦自動メール削除スクリプトの作成は完了ですw