GMail Threading, IMAP и Ruby
Я использую библиотеку Ruby IMAP для разговора по GMail. Способ, которым потоки сообщений GMail проходят через заголовки сообщений «Идентификатор сообщения» и «In-Reply-To». Например:
In-Reply-To: <[email protected]>
Message-ID: <[email protected]>
Я не могу понять, как эффективно получить ответное сообщение. Текущий способ:
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
Это занимает очень много времени, чтобы сделать это последовательно, но я не могу найти правильное заклинание для поиска по заголовку Message-ID, и я не могу найти никаких доказательств того, возможно ли это или нет.