Ich verwende die Ruby IMAP-Bibliothek, um eine GMail-Konversation zu erhalten. Die Art und Weise, in der GMail Konversationen fädelt, erfolgt über die Header "Message-ID" und "In-Reply-To". Zum Beispiel:GMail Threading, IMAP und Ruby
In-Reply-To: <[email protected]>
Message-ID: <[email protected]>
Ich kann nicht herausfinden, wie man die geantwortete Nachricht effizient erhält. Die aktuelle Art und Weise:
target = <[email protected]>
imap.search(["NOT", "DELETED"]).each do |msg_id|
uid = imap.fetch(message_id, "ENVELOPE")[0].attr["ENVELOPE"].message_id
if uid == target
m = imap.fetch(msg_id, "RFC822")[0].attr["RFC822"]
end
end
Es dauert eine wirklich lange Zeit, wie die der Reihe nach zu tun, aber ich kann nicht die richtige Beschwörung herauszufinden durch die Message-ID-Header zu suchen, und ich kann nicht wirklich finden Belege dafür, ob dies möglich ist oder nicht.