バックグラウンド ユーザーは Gmail (または Google Apps Sync 経由の Outlook) で「削除」ボタンを押す傾向がありますが、私たちはすべてのメッセージをアーカイブしたいと考えています (Google は 30 日ごとにゴミ箱をクリアします)。
これまで の解決策 次のスクリプトは、1 時間ごとにトリガーで実行され、ゴミ箱内のすべてのスレッドをアーカイブに移動します。
function archiveTrash() {
var threads = GmailApp.getTrashThreads(0, 100);
for (var i = 0; i < threads.length; i++) {
threads[i].moveToArchive();
}
}
問題ユーザーは、メッセージが受信トレイから消えていると報告しています。
考えられる原因これが起こっていることだと思います: ユーザーはメッセージのスレッドを処理していて、スレッド内のいくつかのメッセージを削除します (ユーザーは通常 Outlook を使用するため、各メッセージを個別に表示します)。ただし、スレッド内の他のメッセージはユーザーの受信トレイに残ります。次に、getTrashThreads が少なくとも 1 つの削除されたメッセージを含むスレッドを取得し、スクリプトが受信トレイにあったメッセージを含むスレッド全体をアーカイブに移動します。
解決?これは私が立ち往生しているところです。スレッド全体ではなく、ゴミ箱に移動したメッセージのみをアーカイブするにはどうすればよいですか? Gmailがメッセージをスレッドにグループ化するのを止める方法はありますか? 何が起こっているのかについて私は正しいですか?