@wellgo

Как программно читать почту?

Собственно вопрос в заголовке. На данный момент забираю через IMAP, но это полнейшая жесть. Постоянно отваливается коннект, залипает авторизация, иногда просто непонятные ошибки. Язык реализации не сильно важен, важен алгоритм и инструменты.

Благодарю!
  • Вопрос задан
  • 639 просмотров
Решения вопроса 1
@wellgo Автор вопроса
Остановились кстати на вот этом https://github.com/mscdex/node-imap . В итоге нет полностью поддерживающих все ньюансы библиотек, в паблике (да и быть не может). Указанная либа справляется с задачами целиком.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
Программно будет тоже через IMAP... Если только забирать, то можно и через POP3. Других вариантов нет.

Если нужна отдельная система для сбора почты - демон fetchmail создан для регулярного сбора почты.
Ответ написан
CityCat4
@CityCat4
Внимание! Изменился адрес почты!
IMAP - это не программа, а протокол общения с сервером. Поэтому программно или как - все равно будет IMAP. Потому что все сведется к тому, что нужно отдать серверу набор команд и получить в ответ набор данных, а потом их обработать. Зато может быть разберетесь, почему возникают ошибки :)
Ответ написан
Комментировать
dmitriylanets
@dmitriylanets
веб-разработчик
актуальна, аналогичная проблема для меня, использовал php_imap для работы с почтой, но со временем понял что довольна глючная и не всегда например получает вложения писем. Также совершенно по разному работает imap_search например на сервере mail не работает поиск по теме (subject) на yandex поиск работает через кеш который не так часто обновляется, письмо на сервере есть но через search его не находит.
Решил вообще отказаться от imap_search и собственно php_imap и принял такую схему:
1. получаем N (по умолчанию 1000) последних писем из ящика конкретного каталога с основной инфой
2. критерии поиска писем уже используем локально
3. для получения детали письма делаем запрос с выкачкой вложений в во ременную директорию

Для работы помогла либа Eden-PHP которая получает данные через сокеты (но она скажу немного недоработанная пришлось допилить.)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы