Как программно получить ВСЕ (прочитанные и непрочитанные) сообщения из gmail, статус чтения и т. Д.?

У меня есть требование к веб-приложению для обслуживания клиентов, которое требует от меня работы и извлечения данных из Gmail, eBay, Amazon и Paypal. Мое решение будет разработано в ASP.Net 4 с C#.

Проблема, с которой я сталкиваюсь, заключается в том, что моему клиенту нужна почти вся информация, которую Gmail имеет о каждом поступающем электронном письме, и, похоже, что немного не хватает фида ATOM, поступающего из Gmail. Я понимаю, что могу также использовать POP3 или IMAP, но их также не хватает по ряду причин.

В частности, клиент нуждается в статусе чтения электронных писем (вне зависимости от того, ОНИ читали электронные письма, отправленные ИМ). Им также нужно, чтобы все фильтры оставались неповрежденными. Поэтому, если письмо помечено x,y, & z, мне нужно знать об этом.

Канал ATOM показывает только непрочитанные электронные письма, так что это не так. POP3 не имеет ни малейшего представления (и это справедливо) независимо от того, прочитали они электронное письмо или нет (если я сам не перенесу его в базу данных и не управляю состоянием чтения), но это не сработает, если они действительно читают почту из внутри самого gmail).

Похоже, что IMAP даст мне все, что мне нужно, но я не уверен на 100% в этом. Что вы все думаете? Кроме того, IMAP SOOO медленно. Кто-нибудь знает о каких-нибудь приличных библиотеках, которые довольно быстрые. В настоящее время мы говорим о почтовом ящике клиента с около 360000 сообщений, и клиент предпочел бы хранить эти сообщения в gmail, а не работать с отключенной базой данных.

Мысли / Мнения?

1 ответ

Решение

IMAP обеспечивает статус чтения / не чтения для каждого сообщения, и вы можете извлечь из определенных "ярлыков" (папок) или просто извлечь из "всех сообщений" корзину. Вам также не нужно извлекать все сообщение, вы можете запросить только заголовки, что дает вам возможность быстро сканировать много писем.

Я работал над программой, чтобы вытащить весь мой набор данных gmail для моей собственной обработки и обработки. Я использую Linux, и хотя существует множество приложений для обработки зеркальных изображений и обработки изображений в imap, я просто хочу поиграть с данными, имея возможность делать с ними все, что угодно, не вставляя их обратно в данные. сервер imap локально. Он работает прилично, и я использую UID электронной почты (слегка измененный) в качестве имени файла для сброса заголовков и данных электронной почты. Конечно, вы могли бы массировать данные и обновлять базу данных или что-то еще в этот момент, я просто спрятал их для последующей обработки позже. Ищу тренды в моей электронной почте, в основном ковыряясь.

Я пытался использовать библиотеки etpan для обработки IMAP, но мне они не понравились, поэтому я извлекал подпрограммы imap из других почтовых программ и серверов, чтобы поиграть с ними. У меня есть RFC, но я действительно стараюсь не изобретать велосипед здесь, если смогу помочь.

Да, не самый лучший ответ, но, надеюсь, некоторая информация поможет. Я предполагаю, что есть хорошие библиотеки для PHP или других веб-систем, я сам работал с C++/C.

Другие вопросы по тегам