実現したいこと
スプシでGmailの新規メールを一覧に出して管理するようにしています。
前提
スプシに吐き出すメールと過去のメールが重複しない様、
getIdで取得したメッセージIDをスプシ上で管理し、
IDから重複回避するようになっています。
↓参考にしたサイト↓
https://tonari-it.com/gas-add-contact-mail/
発生している問題・エラーメッセージ
何故か毎度毎度違うメッセージIDが吐き出され、
過去に取得したメールまで取得してしまいます。
メッセージIDは一意のものであると認識しておりますが、
何かの条件で変わってしまうのでしょうか。
もしくは、この事象を防ぐ事はできますでしょうか。
該当のソースコード
JavaScript
1function searchContactMail() { 2 3 const query = '"to:○○@gmail.com"'; 4 const start = 0; 5 const max = 10; 6 7 const threads = GmailApp.search(query, start, max); 8 const messagesForThreads = GmailApp.getMessagesForThreads(threads); 9 10 const values = []; 11 const sheet = SpreadsheetApp.getActiveSheet(); 12 const lastRow = sheet.getLastRow(); 13 const ids = sheet.getRange(2, 6, lastRow).getValues().flat(); 14 15 for(const messages of messagesForThreads){ 16 const message = messages[0]; 17 const id = message.getId(); 18 19 if(!ids.includes(id)){ 20 const record = [ 21 message.getDate(), 22 message.getReplyTo(), 23 message.getSubject(), 24 message.getPlainBody().slice(0,200), 25 message.getThread().getPermalink(), 26 message.getId() 27 ]; 28 values.push(record); 29 } 30 } 31 32 if(values.length > 0){ 33 sheet.getRange(lastRow + 1, 1, values.length, values[0].length).setValues(values); 34 } 35 36} 37 38
試したこと
様々なキーワードから検索しましたが、
解決方法が全く見出せずになってしまっています。
お手数をお掛け致しますが、ご助力・ご助言の程お願い申し上げます。

あなたの回答
tips
プレビュー