Что такое код imap_open


Содержание

FPublisher

Web-технологии: База знаний

Документация PHP

imap_open

imap_open — Open an IMAP stream to a mailbox

Описание

resource imap_open ( string $mailbox , string $username , string $password [, int $options [, int $n_retries ]] )

Opens an IMAP stream to a mailbox .

This function can also be used to open streams to POP3 and NNTP servers, but some functions and features are only available on IMAP servers.

Список параметров

A mailbox name consists of a server and a mailbox path on this server. The special name INBOX stands for the current users personal mailbox. Mailbox names that contain international characters besides those in the printable ASCII space have to be encoded width imap_utf7_encode().

The server part, which is enclosed in ‘<' and '>‘, consists of the servers name or ip address, an optional port (prefixed by ‘:’), and an optional protocol specification (prefixed by ‘/’).

The server part is mandatory in all mailbox parameters.

All names which start with <are remote names, and are in the form «<" remote_system_name [":" port] [flags] ">» [mailbox_name] where:

  • remote_system_name — Internet domain name or bracketed IP address of server.
  • port — optional TCP port number, default is the default port for that service
  • flags — optional flags, see following table.
  • mailbox_name — remote mailbox name, default is INBOX

Optional flags for names

Flag Description
/service= service mailbox access service, default is «imap»
/user= user remote user name for login on the server
/authuser= user remote authentication user; if specified this is the user name whose password is used (e.g. administrator)
/anonymous remote access as anonymous user
/debug record protocol telemetry in application’s debug log
/secure do not transmit a plaintext password over the network
/imap, /imap2, /imap2bis, /imap4, /imap4rev1 equivalent to /service=imap
/pop3 equivalent to /service=pop3
/nntp equivalent to /service=nntp
/norsh do not use rsh or ssh to establish a preauthenticated IMAP session
/ssl use the Secure Socket Layer to encrypt the session
/validate-cert validate certificates from TLS/SSL server (this is the default behavior)
/novalidate-cert do not validate certificates from TLS/SSL server, needed if server uses self-signed certificates
/tls force use of start-TLS to encrypt the session, and reject connection to servers that do not support it
/notls do not do start-TLS to encrypt the session, even with servers that support it
/readonly request read-only mailbox open (IMAP only; ignored on NNTP, and an error with SMTP and POP3)

The password associated with the username

The options are a bit mask with one or more of the following:

  • OP_READONLY — Open mailbox read-only
  • OP_ANONYMOUS — Don’t use or update a .newsrc for news (NNTP only)
  • OP_HALFOPEN — For IMAP and NNTP names, open a connection but don’t open a mailbox.
  • CL_EXPUNGE — Expunge mailbox automatically upon mailbox close (see also imap_delete() and imap_expunge())
  • OP_DEBUG — Debug protocol negotiations
  • OP_SHORTCACHE — Short (elt-only) caching
  • OP_SILENT — Don’t pass up events (internal use)
  • OP_PROTOTYPE — Return driver prototype
  • OP_SECURE — Don’t do non-secure authentication

Number of maximum connect attempts

Возвращаемые значения

Returns an IMAP stream on success or FALSE on error.

Linux.yaroslavl.ru

Учебник РНР
Назад Вперёд

imap_open — открывает IMAP-поток в mailbox.

Описание

int imap_open (string mailbox, string username, string password [, int flags])

Возвращает IMAP-поток при успехе и FALSE при ошибке. Эта функция может использоваться также для открытия потоков к POP3 и NNTP серверам, но некоторые функции и их возможности доступны только на IMAP-серверах.

Имя mailbox’а состоит из серверной части и пути mailbox’а на этом сервере. Специальное имя INBOX предназначено для персонального mailbox’а текущего пользователя. Серверная часть, заключённая в ‘<' и '>‘, состоит из имени сервера или ip-адреса, необязательного номера порта (с префиксом ‘:’) и необязательной спецификации протокола (с префиксом ‘/’). Серверная часть является обязательной во всех параметрах mailbox’а. Имена почтовых ящиков, содержащие интернациональные символы за пределами печатаемых ASCII, должны быть кодированы с помощью imap_utf7_encode() .

Опции это битовая маска с одним или более значений:


OP_READONLY — открывть mailbox только для чтения

OP_ANONYMOUS — не использовать или не обновлять .newsrc на новый (только в NNTP)

OP_HALFOPEN — для имён IMAP и NNTP, открывает соединение, но не открывает mailbox

CL_EXPUNGE — очищает mailbox автоматически после его закрытия

Для соединения с IMAP-сервером, запущенным на порту 143 на локальной машине, сделайте так:

Для соединения с POP3-сервером на порту 110 а локальном сервере используйте:

Для соединения с SSL IMAP или POP3-сервером добавьте /ssl после спецификации протокола:

Для соединения с SSL IMAP или POP3-сервером с self-signed сертификатом добавьте
/ssl/novalidate-cert после спецификации протокола:

Для соединения с NNTP-сервером на порту 119 на локальном сервере используйте:

Для соединения с удалённым сервером замените «localhost» на имя или IP-адрес сервера, с которым вы хотите соединиться.

Что такое IMAP и POP?

Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).

IMAP и POP — это два метода доступа к электронной почте. Рекомендуется использовать IMAP, если вам требуется проверять почту с нескольких разных устройств (например, телефона, ноутбука и планшета).

IMAP позволяет получать доступ к электронной почте везде, где вы находитесь, с любого устройства. При чтении сообщения электронной почты с помощью IMAP вы не скачиваете его и не сохраняете на компьютере; Вместо этого вы читаете его из службы электронной почты. В результате вы можете проверять электронную почту с различных устройств в любом месте мира: на телефоне, компьютере, компьютере друга.

IMAP скачивает сообщение, только когда вы его щелкаете, и вложения не скачиваются автоматически. Так вы сможете проверять сообщения гораздо быстрее, чем с помощью POP.

POP связывается с вашей службой электронной почты и скачивает из нее все новые сообщения. После скачивания на компьютер с Windows или Mac OS сообщения удаляются из почтовой службы. Это значит, что после скачивания почтового сообщения к нему можно обращаться только с того же компьютера. Если вы попытаетесь обратиться к сообщению с другого устройства, ранее скачанные сообщения будут недоступны.

Отправленная почта хранится локально на компьютере с Windows или Mac OS, а не на почтовом сервере.

Многие поставщики услуг Интернета предоставляют учетные записи электронной почты, которые используют POP.

Учетные записи веб-почты или почтовые приложения

Gmail, Outlook.com, Hotmail.com и iCloud — это веб-почта. Вход в учетную запись веб-почты выполняется в Интернете.

Если у вас есть компьютер с Windows или Mac OS, вы, вероятно, использовали программу, например Outlook, Apple Mail или Thunderbird, для управления электронной почтой. Outlook, Apple Mail и Thunderbird — это приложениядля работы с электронной почтой: программы, устанавливаемые на компьютере для управления электронной почтой. Они взаимодействуют с помощью службы электронной почты, например Gmail или Outlook.com, для получения и отправки электронной почты.

В почтовое приложение вы можете добавить любую учетную запись электронной почты, чтобы управлять ею оттуда. Например, вы можете добавить в приложение Outlook или Apple Mail учетные записи веб-почты (Gmail, Outlook.com, Hotmail.com, AOL и Yahoo) и почтовые учетные записи, предоставленные вашей организацией.

Добавление учетных записей веб-почты в почтовые приложения, такие как Outlook, Apple Mail, Thunderbird

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

Если приложению электронной почты не удается добавить свою учетную запись электронной почты, обычно это связано с тем, что учетная запись электронной почты настроена для доступа по протоколу POP. В этом случае необходимо обратиться к поставщику услуг электронной почты и узнать имя сервера POP и SMTP, чтобы можно было ввести информацию в почтовое приложение. Как правило, эти сведения выглядят примерно так:

Сервер входящей почты (IMAP): IMAP. _лт_ имя службы>. com

Сервер входящей почты (POP): pop. имя службы>.com

Сервер исходящей почты (SMTP): smtp. имя службы>.com

imap_open

Описание

Список параметров

A mailbox name consists of a server and a mailbox path on this server. The special name INBOX stands for the current users personal mailbox. Mailbox names that contain international characters bes >imap_utf7_encode() .

The server part, which is enclosed in ‘<' and '>‘, consists of the servers name or ip address, an optional port (prefixed by ‘:’), and an optional protocol specification (prefixed by ‘/’).

The server part is mandatory in all mailbox parameters.

All names which start with <are remote names, and are in the form «<" remote_system_name [":" port] [flags] ">» [mailbox_name] where:

  • remote_system_name — Internet domain name or bracketed IP address of server.
  • port — optional TCP port number, default is the default port for that service
  • flags — optional flags, see following table.
  • mailbox_name — remote mailbox name, default is INBOX

Optional flags for names

Flag Description
/service= service mailbox access service, default is «imap»
/user= user remote user name for login on the server
/authuser= user remote authentication user; if specified this is the user name whose password is used (e.g. administrator)
/anonymous remote access as anonymous user
/debug record protocol telemetry in application’s debug log
/secure do not transmit a plaintext password over the network
/imap, /imap2, /imap2bis, /imap4, /imap4rev1 equivalent to /service=imap
/pop3 equivalent to /service=pop3
/nntp equivalent to /service=nntp
/norsh do not use rsh or ssh to establish a preauthenticated IMAP session
/ssl use the Secure Socket Layer to encrypt the session
/validate-cert validate certificates from TLS/SSL server (this is the default behavior)
/novalidate-cert do not validate certificates from TLS/SSL server, needed if server uses self-signed certificates
/tls force use of start-TLS to encrypt the session, and reject connection to servers that do not support it
/notls do not do start-TLS to encrypt the session, even with servers that support it
/readonly request read-only mailbox open (IMAP only; ignored on NNTP, and an error with SMTP and POP3)

The password associated with the username

The options are a bit mask with one or more of the following:

  • OP_READONLY — Open mailbox read-only
  • OP_ANONYMOUS — Don’t use or update a .newsrc for news (NNTP only)
  • OP_HALFOPEN — For IMAP and NNTP names, open a connection but don’t open a mailbox.
  • CL_EXPUNGE — Expunge mailbox automatically upon mailbox close (see also imap_delete() and imap_expunge() )
  • OP_DEBUG — Debug protocol negotiations
  • OP_SHORTCACHE — Short (elt-only) caching
  • OP_SILENT — Don’t pass up events (internal use)
  • OP_PROTOTYPE — Return driver prototype
  • OP_SECURE — Don’t do non-secure authentication

Number of maximum connect attempts

Connection parameters, the following (string) keys maybe used to set one or more connection parameters:

  • DISABLE_AUTHENTICATOR — Disable authentication properties

Возвращаемые значения

Returns an IMAP stream on success or FALSE on error.

ИТ База знаний

ShareIT — поделись знаниями!

Полезно

Узнать IP — адрес компьютера в интернете

Онлайн генератор устойчивых паролей

Онлайн калькулятор подсетей

Калькулятор инсталляции IP — АТС Asterisk

Руководство администратора FreePBX на русском языке

Руководство администратора Cisco UCM/CME на русском языке

Серверные решения

Телефония

FreePBX и Asterisk

Настройка программных телефонов

Корпоративные сети

Похожие статьи

Лучшие практики по защите SSH подключения

Решаем ошибку 18456 в SQL

ELK (ElasticSearch, LogStash, Kibana): базовая настройка

Ещё несколько полезных команд для CentOS

Самое интересное про SMTP, POP3 и IMAP

3 минуты чтения

Сегодня мы подробно расскажем про наиболее используемые в сети интернет протоколы – POP3, IMAP и SMTP. Каждый из указанных протоколов имеет определенное назначение и функциональные возможности. Давайте попробуем разобраться.

Протокол POP3 и его порты

Post Office Protocol 3 (POP3) это стандартный протокол почты созданные для получения электронных писем с удаленного сервера на e-mail клиент.POP3 позволяет вам сохранить почтовое сообщение на ваш компьютер и даже прочесть его, в случае, если вы находитесь не в сети. Важно отметить, что если вы решили использовать POP3 для подключения к учетной записи почты, письма, которые уже скачаны на компьютер, будут удалены с почтового сервера. Как пример, если вы используете несколько компьютеров для подключения к одному почтовому аккаунту, то протокол POP3 может быть не лучшим выбором в данной ситуации. С другой стороны, так как почта хранится локально, на ПК конкретного пользователя, это позволяет оптимизировать дисковое пространство на стороне почтового сервера.

По умолчанию, протокол POP3 использует следующие порты:

  • Порт 110 – это порт протокола POP3 по умолчанию. Не является безопасным.
  • Порт 995 – этот порт следует использовать в том случае, если вы хотите установить безопасное соединение.

Протокол IMAP и порты

Internet Message Access Protocol (IMAP) – это почтовый протокол, созданный для доступа к почте с локального почтового клиента. IMAP и POP3 – наиболее популярные в сети интернет протоколы, используемые для получения e-mail. Оба этих протокола поддерживается всеми современными почтовыми клиентами (MUA — Mail User Agent) и WEB – серверами.

В то время как POP3 позволяет доступ к почте только с одного приложения, IMAP позволяет доступ из множества клиентов. По этой причине, IMAP наиболее адаптивен в тех случаях, когда доступ к одному почтовому аккаунту необходим для нескольких пользователей.

По умолчанию, протокол IMAP использует следующие порты:

  • Порт 143 – порт по умолчанию. Не безопасен.
  • Порт 993 – порт для безопасного соединения.
Протокол SMTP и его порты

Simple Mail Transfer Protocol (SMTP) – это стандартный протокол для отправки почтовых сообщений по сети интернет.

Данный протокол описан в RFC 821 и RFC 822, впервые опубликованных в августе 1982 года. В рамках данных RFC, формат адреса должен быть в формате имя_пользователя@доменное_имя. Доставка почты, аналогична работе обычной почтовой службы: например, письмо на адрес ivan_ivanov@merionet.ru, будет интерпретирован так: ivan_ivanov – адрес, а merionet.ru – почтовый индекс. Если доменное имя получателя отличается от доменного имени отправителя, то MSA (Mail Submission Agent) отправит письмо через Mail Transfer Agent (MTA). Главная идея MTA в том, чтобы перенаправлять письма в другую доменную зону, по аналогии, как традиционная почты отправляет письма в другой город или область. MTA так же получает почту от других MTA.

Протокол SMTP использует следующие порты:

  • Порт 25 – порт SMTP по умолчанию. Не безопасен.
  • Порт 2525 – данный порт используется в том случае, если интернет провайдер фильтрует порт 25.
  • Порт 465 – порт для безопасного соединения.
  • SMTP
  • POP3
  • 4664
  • 28

Полезна ли Вам эта статья?

Пожалуйста, расскажите почему?

Нам жаль, что статья не была полезна для вас :( Пожалуйста, если не затруднит, укажите по какой причине? Мы будем очень благодарны за подробный ответ. Спасибо, что помогаете нам стать лучше!

Подпишитесь на нашу еженедельную рассылку, и мы будем присылать самые интересные публикации :) Просто оставьте свои данные в форме ниже.


IMAP: трудности перехода

Какие грабли зарыты в IMAP

Уже некоторое время IMAP работает в Почте Mail.Ru в полную силу, и я готов рассказать о том, с какими проблемами мы столкнулись при его запуске. Часть из них была связана с особенностями самого протокола и с его историей, другие были обусловлены спецификой взаимодействия IMAP с нашим хранилищем. Отдельная категория трудностей вызвана многообразием почтовых клиентов.

За подробностями — добро пожаловать под кат.

Нынешний запуск IMAP — наш второй подход к снаряду. В прошлый раз мы взяли сервер Dovecot и попробовали заточить его под себя. Результат нас не устроил: с нашими нагрузками и нашей инфраструктурой он сочетался плохо. В этот раз мы решили выбрать другой путь, и написали собственное решение.

IMAP мы запустили в мае, но анонсировали только в июне. Фактически, майская аудитория — это наши сотрудники и те пользователи, у которых клиенты автоматически определили наличие IMAP в нашей Почте и подключили к нему новые добавленные аккаунты.

Трудности, специфичные для протокола IMAP

1. Громоздкость самого протокола

Первая версия протокола IMAP появилась в 1986 году. В данный момент актуален стандарт IMAP версии 4rev1, который был обновлен в 2003 году. За такой долгий срок стандарт существенно разросся: его текущая версия насчитывает порядка 200 страниц.

Сейчас многие моменты, описанные в стандарте, устарели — в сегодняшних условиях они уже не являются необходимостью. Например, в протоколе предусмотрен возврат количества строк и MD5-суммы частей письма — функционал, который фактически не используется в современных клиентах.

Кроме того, существует множество опциональных расширений протокола. Некоторые из них, по сути, являются необходимыми для удобной работы с почтовым ящиком.

Чтобы побороть историческое наследие, нам пришлось реализовать несколько расширений. Одно из них — UID+: когда мы копируем или добавляем письмо, мы возвращаем ID нового письма, которое появилось на сервере в результате копирования или добавления. Это позволяет нам сэкономить на ресурсоемкой операции поиска, которую приходилось проводить клиенту, чтобы распознать, какое именно письмо было добавлено.

2. Отсутствие стандартного паттерна работы с сервером

IMAP предоставляет множество способов решить одну и ту же задачу и, как следствие, практически у всех клиентов паттерн работы различен. Также важно, что паттерны работы существенно отличаются от того, как работает веб-почта или POP3.

Более половины приходится на долю клиентов под устройства Apple: причина в том, что у них хорошо работает автоопределение IMAP. Outloook же, напротив, по умолчанию работает по POP3, и настраивать IMAP нужно руками.

Здесь можно выделить 2 основные категории: десктопные клиенты, которые сразу запрашивают информацию обо всех письмах в ящике или папке, и мобильные клиенты, которые изначально запрашивают информацию только о самых новых письмах. Далее нам оставалось изучить запросы, которые они делают, чтобы обновить состояние, как именно они вытягивают информацию о письмах.

Почему для нас это было необходимым шагом? При скромных нагрузках (например, если сервер обслуживает корпоративную почту небольшой компании) вопрос оптимальности стоит не так остро. Однако при наших объемах оптимальность становится критичной: следовательно, нам нужно было изучить паттерны работы всего зоопарка почтовых клиентов, обращающихся к хранилищу.

3. Количество одновременных сессий

По стандарту, минимальный таймаут сервера — 30 минут. Кроме того, один клиент может держать сразу несколько соединений к серверу (в протоколе не указано максимальное количество разрешенных соединений). Фактически, в нашем масштабе, это означает, что один сервер должен оптимально работать с десятками тысяч одновременных соединений. При работе в синхронном режиме такое количество соединений просто поглотило бы все ресурсы.

Для решения этой проблемы я написал библиотеку для асинхронной работы, построенную на базе edge-triggered epoll. Изначально я ставил перед собой задачу сделать библиотеку, при помощи которой можно было бы в будущем за пару дней написать свой асинхронный сервер для решения других задач, помимо IMAP; в результате практически весь код можно использовать для написания других сервисов.

4. Невозможность однозначно идентифицировать клиент

Наш сервер поддерживает расширение ID, которое позволяет нам идентифицировать примерно половину клиентов. К сожалению, другая половина об этом расширении не знает (из популярных можно назвать, например, Outlook).
Понимание того, с каким клиентом мы работаем, позволяет обойти его характерные баги, а также предсказать, каким будет паттерн работы в рамках данной сессии и, соответственно, оптимизировать работу. Для нас это критично, поэтому, если клиент не называет ID, мы стараемся идентифицировать его другими путями (в случае Outlook — по тегам).

5. Отсутствие команды перемещения сообщений

В клиентах перемещение реализовано через копирование+удаление. Нам, разумеется, хочется, чтобы при этом копия письма помещалась в нужную папку, а оригинал удалялся и не захламлял корзину. С другой стороны, иногда сам пользователь копирует письмо в новую папку, а затем удаляет оригинал: в этом случае удаленное письмо должно помещаться в корзину.
Чтобы различать эти два кейса, после копирования мы в этой же сессии помечаем письмо специальным внутренним флажком. Когда сам пользователь копирует письмо и удаляет оригинал, клиент, как правило, обновляет список писем. При обновлении флажок автоматически сбрасывается, а удаленное письмо оказывается в корзине. Если же письмо (в рамках перемещения) удаляет клиент, обновления не происходит, и письмо, помеченное флажком, удаляется окончательно.

Трудности, связанные с адаптацией текущего хранилища писем и индексов

1. Идентификация сообщений

Для работы по IMAP необходимо было поддержать два вида идентификаторов сообщений: порядковый номер, который может отличаться от сессии к сессии, а также уникальный номер, который сохраняется на все время жизни сообщения. Оба идентификатора должны удовлетворять довольно строгим критериям, которые не соответствовали схеме, используемой веб-почтой и POP3-сервером.

Наиболее рациональным оказывается держать в оперативной памяти весь набор порядковых номеров, их соответствие внутренним идентификаторам, а также IMAP ID. При открытии папки мы вытягиваем из хранилища список всех писем, наши внутренние идентификаторы, IMAP ID, флажки и размер сообщения — все то, что хочется отдавать без лишних запросов.

Обо всех изменениях порядкового номера в рамках одной сессии мы должны оповещать клиент. Согласно стандарту, последовательность IMAP ID должна соответствовать последовательности порядковых номеров. Порядковые номера мы получим, отсортировав список писем по уникальным номерам. Когда клиент выдает новую команду, мы заново открываем соединение с хранилищем, запрашиваем время последних изменений, которые были сделаны в ящике. Если изменений со времени последнего такого запроса не было, то мы просто возвращаем ответ на команду. В ином случае мы заново запрашиваем список сообщений в папке и сравниваем с аналогичным списком клиента. Далее мы либо возвращаем информацию об изменениях, либо, если протокол не позволяет этого сделать сразу, делаем у себя пометку о том, что письмо удалено, и ждем подходящего момента, чтобы сообщить об этом клиенту.

Из-за такой специфики — письма уже нет в ящике, но клиент об этом еще не узнал — клиент может запросить данные об уже удаленном письме. Более того, некоторые из них испытывали серьезные проблемы, если ответа на их запрос не поступало. Чтобы клиент не ломался, мы в ответ на подобные запросы возвращаем заглушки. Клиент получает нужную ему для нормальной работы информацию, а уже при следующем обновлении списка писем (оно, как правило, происходит сразу же) удаляет из него сообщение.

2. Необходимость оптимально возвращать информацию о MIME-структуре письма

Практически все клиенты запрашивают информацию о структуре письма. Часто в рамках первой сессии они запрашивают такую информацию сразу обо всех письмах в папке. Парсить письмо на каждый такой запрос было бы крайне неоптимально.
Вместо этого мы сделали кэш MIME-структур. Наличие кэша помогло нам побороть сразу несколько трудностей, связанных с особенностями IMAP — в частности, отсутствие стандартного паттерна работы с сервером: поскольку часть информации хранится в кэше, это помогает нивелировать нагрузку, связанную с разными паттернами работы клиентов.

Сейчас мы кэшируем до 50 сообщений. Почему не 2-3? Дело в том, что некоторые клиенты сначала запрашивают структуру письма, а потом тело, причем сразу для нескольких сообщений; максимальное число писем в такой «пачке» обычно составляет 50 штук.

3. Оптимальная отдача частей письма

Часто клиенты просят лишь текстовые части письма, которые могут находиться в конце самого сообщения. Для отображения сниппетов клиенты могут просить текстовые части сразу у 50-200 писем. Читать весь файл сообщения целиком (и обрабатывать 10 МБ письма для того, чтобы отдать 10 КБ текста) при этом не хочется; использовать индекс для определения позиции части внутри файла при каждом запросе также было бы накладно. В этой ситуации также спасает кэш структуры письма.
Преимущества такого подхода особенно наглядны тогда, когда клиент подгружает сниппеты для нескольких десятков писем: если бы мы не использовали кэш структуры, то для этого приходилось бы просмотреть много мегабайт и пожертвовать скоростью.

Для экономии места в наших хранилищах base64-части хранятся в декодированном виде внутри письма: при работе с веб-почтой это позволяет отдавать аттачи без лишнего перекодирования. Нужно было сделать схему отдачи частей с учетом этого перекодирования. Мы написали потоковое перекодирование на IMAP-сервере. Здесь также помог кэш — благодаря ему мы без перечитывания структуры можем понять, в каком виде (бинарном или нет) хранится тот или иной фрагмент.

4. Особенности работы некоторых клиентов

Некоторые клиенты не полностью соответствуют стандарту RFC: например, стандартные клиенты Android версий 2.2 — 2.3 не могут корректно отображать письма без возврата некоторых необязательных полей. Основная трудность заключалась в том, чтобы определить, какие именно поля каждый из таких клиентов считает для себя обязательными: приходилось решать это методом перебора.

Выше уже упоминалось о том, что у клиентов могут быть различные подходы к удалению писем: одни перемещают их в корзину, другие — удаляют сразу и безвозвратно. При этом некоторые клиенты не понимают стандартное расширение XLIST, которое мы поддерживаем, позволяющее определить, какая именно папка является корзиной. Вместо этого они используют в качестве корзины свою папку (так себя ведет, например, Sparrow).

Интересно ведет себя Outlook: по команде удаления письма не перемещаются в корзину, а помечаются как перечеркнутые, и затем удаляются позже. Выяснилось, что для пользователей это выглядит, как баг — многие просто не понимают, что делать дальше и как добиться того, чтобы клиент вел себя привычным образом и письма оказались в корзине.

В условиях такого разнообразия нам также было необходимо эмпирически понять, как ведет себя каждый из клиентов, и подстроиться под эти варианты — причем таким образом, чтобы пользователь мог быть уверен: независимо от того, в каком клиенте он работает, почта отреагирует на его действия привычно и предсказуемо (в данном случае — удаленное письмо окажется к корзине). Решали мы это, пробуя различные ответы через тестовый прокси-сервер и отслеживая реакцию клиента на каждый из вариантов.

То, что мы вынесли для себя: IMAP — достаточно «развесистая» штука, с множеством исторических особенностей, нажитых за 26 лет, которые умножаются на разнообразие почтовых клиентов. При наших нагрузках это выливается в то, что брать готовое решение и пытаться заточить его под себя нерационально: в лучшем случае объем работы будет таким же, как при самостоятельной разработке решения. Этим путем мы и пошли :)

Что такое код imap_open

imap_open — открывает IMAP-поток в mailbox.

Описание

int imap_open (string mailbox, string username, string password [, int flags])

Возвращает IMAP-поток при успехе и FALSE при ошибке. Эта функция может использоваться также для открытия потоков к POP3 и NNTP серверам, но некоторые функции и их возможности доступны только на IMAP-серверах.

Имя mailbox’а состоит из серверной части и пути mailbox’а на этом сервере. Специальное имя INBOX предназначено для персонального mailbox’а текущего пользователя. Серверная часть, заключённая в ‘<' и '>‘, состоит из имени сервера или ip-адреса, необязательного номера порта (с префиксом ‘:’) и необязательной спецификации протокола (с префиксом ‘/’). Серверная часть является обязательной во всех параметрах mailbox’а. Имена почтовых ящиков, содержащие интернациональные символы за пределами печатаемых ASCII, должны быть кодированы с помощью imap_utf7_encode() .

Опции это битовая маска с одним или более значений:


OP_READONLY — открывть mailbox только для чтения

OP_ANONYMOUS — не использовать или не обновлять .newsrc на новый (только в NNTP)

OP_HALFOPEN — для имён IMAP и NNTP, открывает соединение, но не открывает mailbox

CL_EXPUNGE — очищает mailbox автоматически после его закрытия

Для соединения с IMAP-сервером, запущенным на порту 143 на локальной машине, сделайте так:

Для соединения с POP3-сервером на порту 110 а локальном сервере используйте:

Для соединения с SSL IMAP или POP3-сервером добавьте /ssl после спецификации протокола:

Для соединения с SSL IMAP или POP3-сервером с self-signed сертификатом добавьте
/ssl/novalidate-cert после спецификации протокола:

Для соединения с NNTP-сервером на порту 119 на локальном сервере используйте:

Для соединения с удалённым сервером замените «localhost» на имя или IP-адрес сервера, с которым вы хотите соединиться.

Что такое код imap_open

(PHP 3, PHP 4, PHP 5)

imap_open — Open an IMAP stream to a mailbox

Description resource imap_open ( string mailbox, string username, string password [, int options] )

Returns an IMAP stream on success and FALSE on error. This function can also be used to open streams to POP3 and NNTP servers, but some functions and features are only available on IMAP servers.

A mailbox name consists of a server part and a mailbox path on this server. The special name INBOX stands for the current users personal mailbox. The server part, which is enclosed in ‘<' and '>‘, consists of the servers name or ip address, an optional port (prefixed by ‘:’), and an optional protocol specification (prefixed by ‘/’). The server part is mandatory in all mailbox parameters. Mailbox names that contain international characters bes >imap_utf7_encode() .

remote_system_name — Internet domain name or bracketed IP address of server.

port — optional TCP port number, default is the default port for that service

flags — optional flags, see following table.

mailbox_name — remote mailbox name, default is INBOX

Table 1. Optional flags for names

Flag Description
/service= service mailbox access service, default is «imap»
/user= user remote user name for login on the server
/authuser= user remote authentication user; if specified this is the user name whose password is used (e.g. administrator)
/anonymous remote access as anonymous user
/debug record protocol telemetry in application’s debug log
/secure do not transmit a plaintext password over the network
/imap , /imap2 , /imap2bis , /imap4 , /imap4rev1 equivalent to /service=imap
/pop3 equivalent to /service=pop3
/nntp equivalent to /service=nntp
/norsh do not use rsh or ssh to establish a preauthenticated IMAP session
/ssl use the Secure Socket Layer to encrypt the session
/validate-cert validate certificates from TLS/SSL server (this is the default behavior)
/novalidate-cert do not validate certificates from TLS/SSL server, needed if server uses self-signed certificates
/tls force use of start-TLS to encrypt the session, and reject connection to servers that do not support it
/notls do not do start-TLS to encrypt the session, even with servers that support it
/readonly request read-only mailbox open (IMAP only; ignored on NNTP, and an error with SMTP and POP3)

The options are a bit mask with one or more of the following:

OP_READONLY — Open mailbox read-only

OP_ANONYMOUS — Don’t use or update a .newsrc for news (NNTP only)

OP_HALFOPEN — For IMAP and NNTP names, open a connection but don’t open a mailbox.

CL_EXPUNGE — Expunge mailbox automatically upon mailbox close (see also imap_delete() and imap_expunge() )

OP_DEBUG — Debug protocol negotiations

OP_SHORTCACHE — Short (elt-only) caching

OP_SILENT — Don’t pass up events (internal use)

OP_PROTOTYPE — Return driver prototype

OP_EXPUNGE — Silently expunge recycle stream

OP_SECURE — Don’t do non-secure authentication

Протоколы электронной почты: POP3, IMAP4, SMTP

В этой статье рассмотрены наиболее часто используемые протоколы электронной почты в Интернете — POP3, IMAP и SMTP. Каждый из них имеет определенную функцию и способ работы. В содержании статьи разъясняется, какая конфигурация лучше всего подходит для конкретных потребностей пользователя при использовании e-mail-клиента. А также раскрывается ответ на вопрос о том, какой протокол поддерживает электронную почту e-mail.

Что такое POP3?

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

По умолчанию протокол POP3 работает на двух портах:

порт 110 — это незашифрованный порт POP3;

порт 995 — его нужно использовать, если вы хотите безопасно подключиться к POP3.

Что такое IMAP?

Протокол доступа к интернет-сообщениям (IMAP) — это протокол получения сообщений электронной почты, используемый для доступа к ней на удаленном веб-сервере от локального клиента. IMAP и POP3 являются двумя наиболее часто используемыми протоколами для получения писем и поддерживаются всеми современными почтовыми клиентами и веб-серверами.

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

Протокол IMAP работает на двух портах:

порт 143 — это незашифрованный порт IMAP по умолчанию;

порт 993 — его необходимо использовать, если вы хотите безопасно подключиться с помощью IMAP.

Что такое SMTP?

Протокол Simple Mail Transfer Protocol (SMTP) — это стандартный протокол для отправки электронной почты через Интернет.

SMTP работает в трех портах:

порт 25 — это незашифрованный порт SMTP по умолчанию;

порт 2525 — он открывается на всех серверах SiteGround, если порт 25 фильтруется (например, вашим интернет-провайдером), и вы хотите отправлять незашифрованные электронные письма с помощью SMTP;

порт 465 — он используется, если вы хотите безопасно отправлять сообщения с помощью SMTP.

По каким протоколам происходит обмен электронной почтой? Понятия и термины

Термин «сервер электронной почты» относится к двум серверам, необходимым для отправки и получения писем, то есть к SMTP и POP.

Сервер входящей почты — это сервер, связанный с вашей учетной записью адреса электронной почты. Для нее не может быть более одного входящего почтового сервера. Для доступа к входящим сообщениям необходим почтовый клиент — программа, которая может получать электронную почту из учетной записи, позволяя пользователю читать, пересылать, удалять и отвечать на сообщения. В зависимости от вашего сервера, вы можете использовать выделенный почтовый клиент (например, Outlook Express) или веб-браузер. Так, Internet Explorer применяют для доступа к учетным записям на основе электронной почты. Письма хранятся на сервере входящей почты до его загрузки. После того, как вы загрузили свою почту с почтового сервера, сделать повторно это будет нельзя. Чтобы успешно загрузить данные, необходимо ввести правильные настройки в электронной почтовой программе. Большинство входящих почтовых серверов используют один из следующих протоколов: IMAP, POP3, HTTP.

Исходящий почтовый сервер (SMTP)

Это сервер, используемый только для отправки писем (для переноса их из вашей почтовой клиентской программы в приемник). Большинство исходящих почтовых серверов используют SMTP-протокол (Simple Mail Transfer Protocol) для отправки корреспонденции. В зависимости от ваших сетевых параметров сервер исходящей почты может принадлежать вашему интернет-провайдеру или серверу, на котором вы настраиваете свою учетную запись. В качестве альтернативы вы можете использовать SMTP-сервер на основе подписки, который позволит вам отправлять электронные письма с любой учетной записи. Из-за проблем со спамом большинство исходящих почтовых серверов не позволяют отправлять электронные письма, если вы не вошли в свою сеть. Сервер с открытым ретранслятором позволит вам использовать его для отправки электронных писем, независимо от того, принадлежите ли вы к его сетевой группе или нет.

Порты электронной почты

Для сетей порт означает конечную точку логического соединения. Номер порта определяет его тип. Ниже перечислены порты электронной почты по умолчанию:

безопасный SMTP (SSMTP) — порт 465;

безопасный IMAP (IMAP4-SSL) — порт 585;

IMAP4 через SSL (IMAPS) — порт 993;

Secure POP3 (SSL-POP) — порт 995.

Протоколы электронной почты: IMAP, POP3, SMTP и HTTP

В основном протокол относится к стандартному методу, используемому на каждом конце канала связи. Чтобы иметь дело с электронной почтой, вы должны использовать специальный клиент для доступа к почтовому серверу. В свою очередь, они могут обмениваться информацией друг с другом, используя при этом совершенно различные протоколы.

Протокол IMAP

IMAP (протокол доступа к интернет-сообщениям) — стандартный протокол для доступа к электронной почте с вашего локального сервера. IMAP — это протокол типа «клиент/сервер», в котором электронная почта получена, и данные сохраняются вашим интернет-сервером. Поскольку для этого требуется только небольшая передача данных, он хорошо работает даже при медленном соединении, например, при подключении с помощью модема. При попытке прочитать конкретное сообщение электронной почты клиент загружает данные с сервера. Вы также можете создавать и управлять папками или почтовыми ящиками на сервере, удалять сообщения.

Протокол POP3

Протокол передачи электронной почты POP (Post Office Protocol 3) обеспечивает простой, стандартизированный способ доступа пользователей к почтовым ящикам и загрузки сообщений на их компьютеры.

При использовании протокола POP все ваши сообщения электронной почты будут загружены с почтового сервера на локальный компьютер. Вы также можете оставить копии своих электронных писем на сервере. Преимущество заключается в том, что после загрузки ваших сообщений вы можете отключить интернет-соединение и прочитать свой e-mail на досуге, не прибегая к дополнительным расходам на связь. С другой стороны, с помощью этого протокола вы получаете и загружаете много нежелательных сообщений (включая спам или вирусы).

Протокол SMTP

Протокол SMTP (Simple Mail Transfer Protocol) используется агентом передачи почты (MTA) для доставки электронных сообщений на определенный сервер получателя. SMTP можно использовать только для отправки электронных писем, а не для их получения. В зависимости от настроек вашей сети или интернет-провайдера вы можете использовать SMTP-протокол только в определенных условиях.

Протоколы HTTP

HTTP не является протоколом, предназначенным для связи по электронной почте, но его можно использовать для доступа к вашему почтовому ящику. Его также нередко называют веб-электронной почтой. Он может использоваться для составления или получения электронных писем из вашей учетной записи. Hotmail — хороший пример использования HTTP в качестве протокола электронной почты.

Управляемые передачи файлов и сетевые решения

Ваша способность отправлять и получать электронную почту в основном обусловлена ​тремя протоколами TCP. Ими являются SMTP, IMAP и POP3.

Начнем с SMTP, потому что его основная функция отличается от двух других. Протокол SMTP, или Simple Mail Transfer Protocol, в основном используется для отправки электронной почты от почтового клиента (например, Microsoft Outlook, Thunderbird или Apple Mail) на сервер электронной почты. Он также используется для ретрансляции или пересылки почтовых сообщений с одного почтового сервера на другой. Это необходимо в случае, если у отправителя и получателя есть разные поставщики услуг электронной почты.


SMTP, который указан в RFC 5321, использует порт 25 по умолчанию. Он также может использовать порт 587 и порт 465. Последний, который был представлен как порт выбора для безопасного SMTP (a.k.a. SMTPS), считается устаревшим. Но на самом деле он по-прежнему используется несколькими поставщиками почтовых услуг.

Протокол почтового отделения, или POP, используется для извлечения сообщений электронной почты с почтового сервера на e-mail-клиент. Последняя версия, которая широко используется, — это версия 3, отсюда и термин «POP3».

POP, версия 3, указанная в RFC 1939, поддерживает расширения и несколько механизмов аутентификации. Функции проверки подлинности необходимы, чтобы злоумышленники не получали доступ к сообщениям пользователей.

Клиент POP3 получает электронную почту следующим образом:

подключается к почтовому серверу на порту 110 (или 995 для соединений SSL/TLS);

извлекает сообщения электронной почты;

удаляет копии сообщений, хранящихся на сервере;

отключается от сервера.

Хотя клиенты POP могут быть настроены так, чтобы сервер мог продолжать хранить копии загруженных сообщений, описанные выше шаги являются обычной практикой.

IMAP, особенно текущая версия (IMAP4), является более сложным протоколом. Это позволяет пользователям группировать связанные сообщения и размещать их в папках, которые, в свою очередь, могут быть организованы иерархически. Он также оснащен флагами сообщений, которые указывают, было ли сообщение прочитано, удалено или получено. Он даже позволяет пользователям выполнять поиск по почтовым ящикам сервера.

Логика работы (настройки imap4):

подключается к почтовому серверу через порт 143 (или 993 для соединений SSL / TLS);

извлекает сообщения электронной почты;

служит для подключения до закрытия приложения почтового клиента и загрузки сообщений по требованию.

Обратите внимание, что сообщения не удаляются на сервере. Это может иметь серьезные последствия. Спецификации IMAP можно найти в RFC 3501.

Выбор между IMAP и POP3

Поскольку основная функция SMTP принципиально отлична, дилемма выбора лучшего протокола обычно включает только IMAP и POP3.

Если для вас важно место для хранения на сервере, то выбирайте POP3. Сервер с ограниченным объемом памяти является одним из основных факторов, которые могут заставить вас поддержать POP3. Поскольку IMAP оставляет сообщения на сервере, он может потреблять пространство памяти быстрее, чем POP3.

Если вы хотите получить доступ к почте в любое время, то лучше остановиться на IMAP. Есть одна веская причина, по которой IMAP был предназначен для хранения сообщений на сервере. Он используется для поиска сообщений с нескольких устройств — иногда даже одновременно. Поэтому если у вас есть iPhone, планшет Android, ноутбук и рабочий стол и вы хотите читать электронную почту с любого или всех этих устройств, то IMAP будет лучшим выбором.

Синхронизация — еще одно преимущество IMAP. Если вы получаете доступ к сообщениям электронной почты с нескольких устройств, скорее всего, захотите, чтобы все они отображали любые действия, которые вы выполняли.

Например, если вы читаете сообщения A, B и C, то хотите, чтобы они также были помечены как «прочитанные» на других устройствах. Если вы удалили письма B и C, то захотите, чтобы те же сообщения удалялись из вашего почтового ящика на всех гаджетах. Все эти синхронизации могут быть достигнуты только в том случае, если вы используете IMAP.

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

Разумеется, все функциональные возможности IMAP имеют свою цену. Эти решения сложнее реализовать, и в конечном итоге протокол потребляет намного больше ЦП и ОЗУ, особенно когда он выполняет процесс синхронизации. Фактически высокая загрузка процессора и памяти может произойти как на стороне клиента, так и на стороне сервера, если есть тонна сообщений для синхронизации. С этой точки зрения протокол POP3 менее затратен, хотя и менее функционален.

Конфиденциальность также является одной из проблем, которая будет сильно зависеть от конечных пользователей. Они, как правило, предпочли бы загружать все сообщения электронной почты и не оставлять их копии на неизвестном сервере.

Скорость — преимущество, которое варьируется и зависит от ситуации. POP3 имеет возможность загружать все почтовые сообщения при подключении. А IMAP может при необходимости (например, при недостаточном количестве трафика) загружать только заголовки сообщений или определенные части и оставлять вложения на сервере. Только когда пользователь решит, что оставшиеся части стоят загрузки, они станут доступны для него. Поэтому IMAP можно считать более быстрым.

Однако если все сообщения на сервере должны загружаться каждый раз, то POP3 будет работать гораздо быстрее.

Как вы можете увидеть, каждый из описываемых протоколов имеет свои преимущества и недостатки. Вам решать, какие функции или возможности важнее.

Также желаемый способ доступа к e-mail-клиенту определяет предпочтительность протокола. Пользователи, работающие только с одной машины и использующие веб-почту для доступа к своим новым электронным письмам, оценят POP3.

Однако пользователи, которые обмениваются почтовыми ящиками или получают доступ к своим электронным письмам с разных компьютеров, предпочтут IMAP.

Спам-брандмауэры с SMTP, IMAP и POP3

Большинство брандмауэров для спама имеют дело только с протоколом SMTP и защищают его. Серверы отправляют и получают электронную почту SMTP, и они будут проверяться спамом-брандмауэром на шлюзе. Однако некоторые брандмауэры для спама дают возможность защищать POP3 и IMAP4, когда внешним пользователям нужны эти службы для доступа к их электронной почте.

Брандмауэры SMTP прозрачны для конечных пользователей; для клиентов нет изменений конфигурации. Пользователи по-прежнему получают и отправляют почтовые сообщения на сервер электронной почты. Так, Exchange или Dominos должны настраивать маршрутизацию сообщений на брандмауэр на основе прокси-сервера при отправке электронной почты, а также обеспечивать возможность отправки писем с брандмауэра.

Что такое код imap_open

У меня есть: Google Cloud Engine (Google не позволяет отправлять почту) Домен (GoDaddy) Внешний VServer с Plesk. Я хочу использовать…

Я использую ImapX и C# для подключения к моей учетной записи Gmail. Существует два фрагмента кода: var folder = client.Folders[«INBOX»]…

Может быть, у меня просто сегодня плохой мозг, но я вдруг не могу понять, как читать электронную почту с библиотекой…

В настоящее время я работаю над веб-приложением, которое по сути является CRM. Клиент хочет иметь возможность выполнять все свои повседневные…

Я ищу способ загрузить все необработанные данные электронной почты (включая вложения), подобные тому, что вы получаете, нажав «показать оригинал» в…

Недавно возникла проблема с отправкой почты с сервера. При исследовании в нем была ошибка ошибки сегментации(11). Я был направлен на…

У меня есть требование для клиента переместить большой набор почтовых ящиков IMAP с одного сервера на другой. Вы могли бы…

Я только что перенес свое приложение на облачный хостинг. I was using imap_open to access mail in my gmail account….

Я пишу клиентское приложение, которое получает сообщения электронной почты с сервера IMAP, а затем сохраняет их в базе данных. Проблема…

Я использую функции IMAP PHP «fetchstructure» или «imap_body» в зависимости от типа сообщения, чтобы получить тело сообщения от учетной записи…

Хорошо, так что у меня есть рабочая программа, это только очень основное доказательство типа концепции вещи — нет времени налил…

У меня есть две кнопки в моем макете говорят b1 и b2. Нажав B1, я хочу заполнить список с помощью…

Я использую приложения google для своей электронной почты. Настроил его так: Incoming Mail (IMAP) Server — requires SSL: imap.gmail.com Use…

Как получить вложенный файл из этого письма? Это письмо отправляется с компьютера apple, и электронная почта struture не похож на…

Предварительная информация: CakePHP 2.икс Ubuntu используя XAMPP на localhost Как часть веб-приложения, я сделал сценарий, который проверяет почтовый ящик для…

Мне интересно, могу ли я каким-то образом сделать «stat» переменной в следующей функции: def stats(stat) self.items.sum(:stat) + self.stat end Мне…

Я хочу получать электронные письма в android с помощью javamail. но я столкнулся с некоторыми проблемами. в POP3, если я…

Я работаю над приложением iOS, через которое пользователь может читать и отправлять сообщения из своей учетной записи электронной почты. Мой…

Если я проверяю свою электронную почту от моего дома утром, и в течение дня я путешествую, и к концу дня…

Когда я пытаюсь получить тему и содержание электронной почты, я alwasy получил это содержание было кодировать, пример: тема: Th _unk_…

Снова этот разрыв, оставляя меня в боли, и их поддержка отказывается включать эти вопросы, которые они обещают предоставить, прежде чем…

Есть ли решение, в котором я могу хранить свои письма IMAP, чтобы я мог передать сообщения imap в учетную запись…

Я установил roundcube mail на своем веб-сервере на облачных сайтах rackaspace. Он работал оштрафован до сегодняшнего утра он просто начал…

В настоящее время я рассматриваю копирование общих папок и содержащих сообщения электронной почты из MS exchange server 2003 в локальный…

Для моего проекта мне нужно читать письма, используя POP Я использую расширение IMAP для PHP. Мне не нужно получать все…

Я используюimap_search, чтобы получить список писем от INBOXи.SENT ITEMS У меня есть сетка ,которая показывает заголовки Почты сначала,когда пользователь нажимает…

Я использую Django для разработки, извлекая из базы данных текст, содержащий символ новой строки. Однако при визуализации шаблона с помощью…

О PHP IMAP, Кто-нибудь может мне помочь? Я хочу переместить электронную почту из папки «Входящие» в другой удаленный почтовый ящик….

Пожалуйста, извините меня, если этот вопрос был задан напрямую. Я ищу самый простой и надежный способ получения почты с нашего…

Я использую довольно простой класс php emailtodb для импорта писем в базу данных mysql. Все работает отлично, как я надеялся,…

Я использую javamailдля чтения почтового ящика. Теперь мне нужно опросить почтовый ящик и проверить все новые письма, полученные, отправленные, черновики…

У меня есть очень простой код, который пытается открыть сокет с помощью JavaMail на Android, как это: public boolean connect()…

Я использую Koolwired.Imap для получения вложений. Ниже приведен код, который я написал. используя K = Koolwired.протокол IMAP; public void GetAttachmentsTest(string…

На сервере exchange установлен почтовый ящик с несколькими псевдонимами. Затем PHP-скрипт выполняет петлю, смотрит, на какой псевдоним было отправлено письмо,и…

Я пытаюсь подключиться к серверу exchange с IMAP на порту 443 (он был настроен таким образом на другом конце), используя…

Я получаю электронные письма с сервера, используя протокол IMAP, как описано здесь . Это работает очень хорошо, и я могу…

Я использую следующий код, который вы можете узнать из php.net чтобы удалить все письма в папке «Входящие»: function deleteEmails($emailAddress) <…

Я играл с этим и не могу заставить его вытащить правильную часть сообщения, которое будет введено в базу данных. I…

Я использую почту Mikel https://github.com/mikel/mail ruby gem для чтения с сервера IMAP. Это все работает отлично, однако мне было интересно,…

У меня есть резюме email parser в моем приложении. Пользователь просто отправит резюме по электронной почте, и моя система проанализирует…

Я хочу отправить команды IMAP через терминал Mac OS X на сервер и получить ответ. Я могу подключиться к серверу…

Я хотел бы знать, есть ли служба, которая может дать мне настройки imap для данного адреса электронной почты. Почтовые клиенты…

Я могу получать электронные письма из одного почтового ящика с PHP и хранить их в базе данных. Хотя я хочу…

Im пытается использовать JavaMail для подключения к gmail с помощью IMAP Вот фрагмент кода того, что Im делает public class…

Интересно, как эти приложения для управления электронной почтой (например, почтовый ящик ) постоянно проверяют почтовые ящики большого количества учетных записей…

У меня есть проблемы с созданием TLS-trust-store для подключения к учетной записи gmail через IMAP в Mule ESB Если я…

Теперь я хотел бы проверить, дублируется ли входящая электронная почта через IMAP с помощью javamail, что может означать, что одно…

Я пытаюсь получить OTP-письмо из учетной записи imap (тестирование с помощью gmail), а учетная запись gmail-это новая «тестовая» учетная запись…

Я пытаюсь подключиться к серверу Exchange своей компании с помощью приложения, которое я написал. Я искал 2 дня подряд, и…

Я пытаюсь подключиться к почтовому серверу ISP с помощью протокола IMAP на java. Мое требование-клиент предоставляет почтовые адреса, имя пользователя…

Может кто-то пожалуйста снабдить разрешение проблема внутри Как подключиться к почтовому серверу с помощью JavaMail Я застрял в одной точке.

Я хочу, чтобы получить просто по электронной почте текстовое тело от Gmail(IMAP серверов в целом) без необходимости загружать все сообщение….

Мы используем Thunderbird в качестве нашего почтового клиента в офисе и используем IMAP (через Google Apps). Но это занимает некоторое…

Я стараюсь принимать непрочитанные письма от gmail. Есть много примеров кода, и я использовал их. Проблема в том, что код…

Я собираю письма от моего mailserver с imap_mail (php), взрываю результат и сохраняю его в базу данных после использования mysql_real_escape_string….

Я получаю доступ к Gmail Imap на Appengine с помощью XOAUTH2. Подключение к imap и поиск сообщения работает просто отлично,…

Существует ли публичная база общих настроек электронной почты для разных доменов для электронной почты? Получение Yahoo!, Gmail и другие довольно…

Я хочу, чтобы почтовые сообщения сортировались по дате и подкачке.Я использую javamail imap.У него есть api, чтобы сделать такой вид…

Я хочу получить почтовое изображение встраивания в javamail imap .Как это сделать? Только образ сохранить как локальный (D:), а затем…

Есть ли способ, чтобы swift mail размещал сообщение в папке Черновика, а не просто отправлял. Похоже, проблема заключается в использовании…

Я разрабатываю клиент IMAP с JavaMail 1.4 (сервер MS Exchange 2010). Я заметил, что подтверждающие сообщения (чтение/не чтение) отправляются клиентам…

Мне нужно сохранить историю всего взаимодействия с электронной почтой, которая получает письма и отправленные письма. Я прочитал INBOX с помощью…

Джавамаил новичок здесь. Я пытаюсь понять, что не так с клиентом Javamail, который встроен в очень большую систему. Извините, у…

В настоящее время я пытаюсь получить невидимые/непрочитанные сообщения с моего сервера. В настоящее время у меня есть это: $openmail =…

Попытка использовать функцию PHP imap_open для подключения к моей учетной записи gmail, вот код: $mailboxpath = «INBOX»; $username = «email@gmail.com»;…

Я вижу проблему, когда при подключении к почтовому ящику с помощью IMAP бесконечное время ожидания по умолчанию вызывает проблему. У…

Я использую EventMachine для обработки входящих писем, которые иногда могут быть очень большими. Код, который я до сих пор определенно…

Я разрабатываю почтовый клиент (IMAP / SMTP)JavaMail. Этот клиент общается с сервером Exchange 2010, который автоматически отправляет уведомления о прочтении,…

Я работаю над системой, которая загружает электронные письма в базу данных, однако я хочу захватить только новые электронные письма из…

Я использую javax mail api для чтения сообщений на сервере imap. Я проверяю кодирование содержимого сообщений, потому что я декодирую…

Я пытаюсь подключиться к моей учетной записи gmail с помощью php, но скрипт висит на imap_open, оставляя мой браузер в…

Я использую этот код для загрузки вложений из gmail $savedir = __DIR__ . ‘/imap-dump/’; $inbox = new IMAPMailbox($hostname, $username, $password);…

Мой парсер электронной почты показывает смешные символы, хотя я использовал ‘quoted_printable_decode’. I also used ‘qprint’still showing funny characters. Конечная цель…

Я пытаюсь Javamail на android, чтобы читать письма через imap. вот мой код, но он не работает. это дает ошибку…

У меня есть код для поиска, хотя электронные письма и если определенная строка будет найдена, все будет сделано. Ниже мой…

Я успешно подключился к своей учетной записи hotmail, но когда я пытаюсь сделать какой-либо imap_search с опцией ‘FROM’, веб-страница работает…

У меня есть инструмент загрузки почтового клиента, используя php imap. Он работает для почты, которая имеет меньший адрес (To, cc..)….

Я получаю индекс вне диапазона исключения при компиляции моего представления сетки для отображения набора ордеров. Он возвращает не все строки…

То, что я пытаюсь сделать, это я аутентифицирую пользователя с моим google oauth и с помощью типа доступа в автономном…

У меня есть несколько строк php, которые читают электронную почту из почтового ящика gmail с помощью функций расширения imap. Мой…

Я развернул сервер Java на Jelactic PaaSплатформе. Проект хорошо работает на localhost, но там он дает com.sun.mail.util.MailConnectException…. Любые Решения Пожалуйста…….

Я делаю небольшой скрипт, который читает письма из моего почтового ящика и сохраняет их в базе данных mysql. У меня…

Я пытаюсь читать письма двух разных типов. Один вид электронной почты имеет тело html под номером детали 2, который я…

Уже прошел RFC 4469. Просто хотел узнать, как именно я могу использовать команду CATENATE. Я также сослался на пример, приведенный…

Я работаю над резервным копированием почты Google . Я застрял при получении другой языковой папки. Google возвращает некоторую закодированную строку…

Я заметил, что критерии «текст» или «тело» не работают на каждом почтовом сервере. Ex: UNDELETED TEXT «hello» Есть ли решение…

Я сталкиваюсь со странной проблемой, когда я пытаюсь загрузить электронные письма из GMAIL с помощью IMAPS. Я использую JAVAMAIL API….

Я пытаюсь получить письма gmail с IMAP (в objective-c), и я хочу отделить, для каждого потока, каждое сообщение, которое было…

Я пытаюсь получить информацию о почте, на которую ответила конкретная почта… Я использую функцию getInReplyTo () imap, но я не…

store.connect() не работает для gmail imap на прокси для моего ниже кода: Properties props = new Properties(); props.setProperty(«mail.store.protocol», «imaps»); Session…

Я написал скрипт python, чтобы проверять почту каждые 10 секунд. Его работа хорошо в моей системе. но есть ошибки в…

Я пытаюсь искать сообщения относительно email-id по всем доступным папкам IMAP без повторения каждой папки и поиска в ней. Существует…

Я не уверен, как отладить это, функция imap_msgno()возвращает 0 вместо номера сообщения без какой-либо ошибки. Это часть кода, дающая проблемы…

Я пишу сценарий, чтобы захватить ссылку из письма, которое мое веб-приложение отправляет, чтобы затем начать набор автоматических тестов. В тот…

Я пытаюсь настроить сервер IMAP, который извлекает данные из базы данных SQL. У меня нет проблем с сообщениями, но я…

Мне нужно прочитать содержимое почты в проекте ZF2. Я могу читать заголовок и contentType, но не «тело». ContentType = multipart…

Я хотел бы получить доступ к электронной почте Outlook пользователя с моим приложением javascript. Google делает это очень легко с…

Я хочу предоставить доступ к одной учетной записи gmail примерно 10 пользователям, но я хотел бы предоставить доступ только для…

Илон Маск рекомендует:  Double - Тип Delphi
Понравилась статья? Поделиться с друзьями:
Кодинг, CSS и SQL