LINEなどのチャットツールとメールの違いは、未読既読がわからないということ。
メールの受信ボックスはあくまで相手先のものなので、送り主からは全くわからない。ただ、相手先がメール全体を読み終わっているのかどうかくらいはわかると便利かもしんない。
ということで、「受信トレイに滞在しているメールの件数と未読件数だけは全公開するスクリプト」を作ってみた。
ちなみに、私の受信トレイの現状はこう
https://script.google.com/macros/s/AKfycbxyed24cnf6igf00mx90Oc4iqHnQOjT4PKjHaB9jjy1gDFcfIBa/exec
https://script.google.com/macros/s/AKfycbxyed24cnf6igf00mx90Oc4iqHnQOjT4PKjHaB9jjy1gDFcfIBa/exec
ソースコード
function doGet(e) {
var buff = "";
buff += Session.getActiveUser().getEmail() + "\n";
buff += "未処理件数:" + GmailApp.getInboxThreads().length + "\n";
buff += "うち未読件数:" + GmailApp.getInboxUnreadCount() + "\n";
var output = ContentService.createTextOutput(buff);
return output;
}
解説
- GmailAppクラスのgetInboxThreadsやgetInboxUnreadCount で件数を取得
- GoogleAppsScriptのHTMLサービスは画面側でHTMLをJavaScriptで生成するのがレスポンスの遅さにつながっているっぽいので、プレーンなテキストで表示(createTextOutput)
- 今のGmailは受信トレイの中がタブで別れているがこのソースではすべてひとまとまりとして扱ってる
以上です。