Что такое код imap_mail_copy

Содержание

Что такое 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, Mail ru: настройка почтовой программы

Большинство пользователей почтовых служб электронной почты вполне довольны стандартным веб-клиентом, который им предлагает поставщик услуг. Собственно, именно в таком виде данная почтовая служба используется чаще всего, но происходит это не из-за того, что он такой удобный, а из-за того, что люди просто не знают, где найти альтернативу и как настроить прием почты в сторонних программах. Если электронная почта является для вас рабочим инструментом, то вам наверняка не удастся обойтись без продвинутого почтового клиента, который заменил бы веб-интерфейс. В этом материале разберем, как создать ящик на домене Mail.ru и осуществить настройку почты Mail.ru (IMAP) для разных клиентских программ, включая Outlook и Apple Mail. Тут же разберем основные ошибки, которые возникают при работе с почтовым сервисом в целом и со сторонними почтовыми клиентами в частности.

Регистрация ящика

Зарегистрировать адрес электронной почты Mail.ru можно на официальном сайте сервиса.

При регистрации необходимо заполнить ряд обязательных полей с персональными данными:

  • Имя – можно указать любое, несмотря на требование ввести настоящее имя.
  • Фамилия – можно указать любую.
  • Почтовый ящик – необходимо указать никнейм, но почта предложит его сама.
  • Пароль – необходимо указать сложный пароль, используя специальные символы.

Существуют и другие поля, но их заполнять необязательно.

Протокол IMAP

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

Правильная настройка Mail.ru через протокол IMAP требует знания определенных данных для обеспечения доступа к ящику:

  • Адрес электронного ящика (имя ящика/email adress) – это полное название вашего ящика, сопровождающийся значком собачки @ и названием домена.
  • Далее следует обозначить сервер для входящей почты IMAP – в нашем случае imap.mail.ru.
  • Исходящая почта отправляется с сервера SMTP – в нашем случае устанавливается сервер smtp.mail.ru
  • Пароль – используемый в данный момент пароль (для доступа к ящику).
  • Затем следует ввести порт для IMAP-сервера (выбираем порт 993, а в качестве протокола шифрования SSL/TSL).

Outlook

Настройка Mail.ru (IMAP) для клиента от Microsoft варьируется в зависимости от того, какую именно версию вы используете. В версии 2020 года нужно:

  • Перейти к меню «Файл» в верхнем левом углу.
  • Далее пройти в подменю «Сведения».
  • Затем нажать пункт «Добавить учетную запись».
  • Будет предложено выбрать один из режимов настройки (ручной или автоматический), необходимо выбрать ручной и указать все данные, изложенные выше.
  • Имя пользователя, адрес почтового ящика, текущий пароль.
  • Далее нужно выбрать тип учетной записи IMAP и указать соответствующие серверы.
  • После следует открыть «Дополнительные настройки».
  • Выбрать подменю «Дополнительно» и внести порт 993 в поле IMAP-сервер.

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

The Bat!

Настройка Mail.ru (IMAP) в данном клиенте осуществляется с помощью встроенного интерфейса утилиты, предлагающее пошаговое введение данных.

Необходимо добавить новый ящик, чтобы это сделать, нужно:

  • В верхней панели интерфейса нажать на кнопку «Ящик» и выбрать подменю «Новый почтовый ящик».
  • Указать любое название, на ваш вкус, например «Рабочая почта».
  • На следующем экране настроек необходимо ввести полное имя, адрес электронного ящика и организацию.
  • На следующем экране настроек нужно указать данные сервера IMAP – imap.mail.ru.
  • На заключительном экране настроек необходимо ввести адрес своего электронного ящика и пароль для входа в него.

Для дальнейшей настройки необходимо перейти в «Свойства почтового ящика» и указать порт IMAP 993, а порт SMTP 465.

Apple Mail

Настройка Mail.ru (IMAP) в системе macOS осуществляется на уровне системных настроек, либо через встроенную программу «Почта».

Для настройки через приложение «Почта» необходимо проделать следующее:

  • Открыть само приложение «Почта».
  • В верхнем меню выбрать пункт «Файл».
  • Выбрать подменю «Добавить учетную запись».

Так же как и в случае с The Bat, в клиенте от Apple предлагается пошаговая настройка.

В первом окне будет предложено ввести основные данные для ящика:

  • Ваше имя (любое на выбор, оно не должно быть связано с почтовым ящиком).
  • Адрес e-mail (полный адрес с @ и доменом).
  • Пароль (использованный при регистрации на сайте mail.ru).

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

  • Тип сервера – следует выбрать IMAP.
  • Описание – название ящика (любое, на выбор пользователя).
  • Сервер, куда будет поступать входящая почта – imap.mail.ru.
  • Пароль – пароль, использованный при регистрации на сайте mail.ru.

Далее последует вторая страница ручной настройки.

  • Сервер, откуда будут отправляться ваши письма – нужно указать сервер smtp.mail.ru (внимание, необходимо также поставить пометку напротив опции «Использовать только этот сервер», а также напротив опции «Использовать аутентификацию»).
  • Имя пользователя – здесь нужно ввести полный адрес электронного ящика, вместе с @ и доменом.
  • Пароль – тот самый пароль, что был введен в предыдущем окне.

После проделанных операций программа предложит еще раз проверить все данные и создать новый ящик.

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

  • Открыть настройки программы «Почта».
  • Выбрать подменю «Учетные записи».
  • В данном подменю необходимо найти пункт «Сервер исходящей почты» и в выпадающем меню выбрать подпункт «Изменить список SMTP-серверов».
  • Далее нужно поставить отметку напротив опции «Использовать произвольный порт» и ввести туда порт 465.
  • Далее необходимо поставить отметку напротив опции «Использовать SSL».

Mail для iOS

Настройка Mail.ru (IMAP) в iOS выполняется тем же методом, что и в macOS, через системные настройки. Для добавления нового ящика необходимо:

  • Пройти в «Настройки – Почта».
  • Открыть список учетных записей и нажать на кнопку «Добавить учетную запись».
  • В списке предложенных доменов выберите «Другое».
  • Далее необходимо указать основные пользовательские данные (имя, адрес электронного ящика, пароль).
  • Затем следует нажать на кнопку «Далее», и программа сама завершит настройку.

Указать сервер и порты придется вручную, для этого следует:

  • Нажать на название вновь созданного ящика.
  • Открыть настройки почтового ящика.
  • В пункте SMTP необходимо указать smtp.mail.ru.
  • В пункте IMAP необходимо указать imap.mail.ru.
  • В настройках SMTP необходимо поставить отметку напротив опции «Использовать SSL» и ввести порт 465.

Mail для Android

Для начала стоит определиться с тем, какой почтовый клиент установлен в системе. В данном руководстве изложена инструкция по настройке стандартного клиента для Android. Настройка Mail.ru (IMAP) осуществляется вручную. Для добавления нового ящика необходимо:

  • Открыть приложение «Электронная почта».
  • Ввести данные почтового ящика (полный адрес с @ с доменом и пароль, использовавшийся при регистрации).
  • Затем коснитесь клавиши «Вручную».

Выберите тип сервера IMAP.

Появится дополнительное меню, в нем понадобится ввести данные для сервера с входящей корреспонденцией:

  • Сервер IMAP – imap.mail.ru.
  • Протокол защиты – SSL/TSL.
  • Необходимо также изменить порт на значение 993 и нажать кнопку «Далее».

Появится дополнительное меню, где понадобится ввести данные сервера с исходящей почтой:

php — PHP imap_mail_move: что такое правильный идентификатор от imap_header?

Итак, вот дамп imap_header .

stdClass Object ([date] => Tue, 11 Jun 2013 19:12:28 -0700 [Date] => Tue, 11 Jun 2013 19:12:28 -0700 [subject] => Аккаунт на darnhippies.org Форум заблокирован [Тема] => Аккаунт на darnhippies.org Форум заблокирован [message_id] => [toaddress] => [email protected] [to] => Массив ([0] => stdClass Object ([почтовый ящик] => веб-мастер [host] => example.com)

Я пытался перемещаться с помощью $header->Msgno в качестве идентификатора сообщения, я полагаю, поскольку сообщения не переместились, что это $header->Msgno идентификатор.

Так я использую (в этом примере) $header->message_id как идентификатор сообщения для перемещения?

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

Я получаю следующие ошибки около 90% времени.

Ошибка: массив ([0] => ошибка протокола IMAP: ошибка в команде IMAP COPY: недопустимый набор сообщений [1] => ошибка в команде IMAP COPY: недопустимый набор сообщений)

Итак, как мне найти правильный идентификатор сообщения?

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

    3 2
  • 24 мар 2020 2020-03-24 02:12:26
  • John

2 ответа

В IMAP каждое сообщение имеет два идентификатора: номер последовательности сообщений (который я предполагаю msgNo в PHP) и уникальный идентификатор (UID). Номер последовательности сообщений может изменяться по мере добавления и удаления сообщений из почтового ящика, но UID является постоянным для жизни сообщения *.

Строка, которую вы используете, представляет собой «Message-Id» из заголовка Message-Id из письма, который не может использоваться для перемещения сообщений (например, он не обязательно уникален). Если у вас есть UID, вы должны иметь возможность использовать imap_mail_move с флагом модификатора UID для перемещения сообщения.

(Я не знаком с PHP API, но, возможно, вы можете передать флаг модификатора UID в message_header, чтобы получить UID там тоже, в вашем результирующем наборе.)

*: Пока UIDVALIDITY в папке не изменяется, что не должно быть на хорошо управляемых серверах, если папка не удалена и не воссоздана с тем же именем.

  • 24 мар 2020 2020-03-24 02:12:27
  • Max

Джон, вы должны использовать UID сообщения, чтобы убедиться, что вы ссылаетесь на правильный адрес электронной почты. Msgno — это порядковый номер, который изменяется, когда электронные письма добавляются и удаляются из почтового ящика. Вы получаете UID сообщения в php (используя библиотеку php imap):

результирующий $ uid уникален в почтовом ящике навсегда.

Когда вы используете UID для перемещения/чтения/любого сообщения, вам нужно добавить параметр к параметрам, переданным соответствующей функции, чтобы указать, что вы используете UID, а не msgno, например:

$body = imap_fetchbody(*stream handle*, $uid, *mime-type*, FT_UID);

FT_UID — это константа, которая сообщает библиотеке imap, что вторым параметром является UID не msgno .

Документация php.net неплоха, когда дело доходит до библиотеки imap и стоит прочитать.

Илон Маск рекомендует:  Программы с потенциально опасными последствиями. Компьютерные вирусы.

Кстати, message_id должен быть уникальным для всех электронных писем глобально, если отправитель отвечает соответствующим RFC

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 лет, которые умножаются на разнообразие почтовых клиентов. При наших нагрузках это выливается в то, что брать готовое решение и пытаться заточить его под себя нерационально: в лучшем случае объем работы будет таким же, как при самостоятельной разработке решения. Этим путем мы и пошли :)

How to migrate emails using IMAP Copy?

In this tutorial we can learn how to migrate emails using IMAP Copy.

What is IMAP Copy

IMAP Copy is a method used in website migration. To understand what IMAP Copy is, we need to know the steps that take place during a website migration. Let’s see an overview of the website migration.

Steps in Website migration

Many websites use control panels for management. A control panel will allow the owner to manage the website and associated settings easily. cPanel, Plesk, and DirectAdmin are common control panels in the web hosting industry. It is common to use control panels because it helps a website owner to manage the website even if they are technically savvy and lack the knowledge to navigate the command line interface.

The steps involved to migrate a website is based upon if it had used a control panel previously. Most control panels have their own utilities or tools to migrate a website easily. This includes very few steps as listed below.

1) Take full website backup

2) Transfer it to the new servers

3) Restore the backup on the new server

For a website without a control panel, the migration process is quite different. The website will need to be migrated manually. This may include a few more steps and those are listed below:

1) Take a backup of website files, Databases, Emails individually.

2) Transfer the backups (Usually over FTP)

3) Create the databases on a new server and restore the backups.

You may have noticed that emails need to be migrated manually. The IMAP Copy is used to transfer the emails from the old server to a new server. Let’s see how can we migrate the emails using IMAP Copy.

IMAP Copy

IMAP Copy is a utility used to copy recursively all email messages and folders from an IMAP server to anther IMAP server. Utilizing this functionality, mail boxes and messages can be transferred from one server to another. Please be aware that this requires an email account to use IMAP over POP3. Below we have compared and contrasted IMAP and POP3.

IMAP

IMAP stands for Internet Message Access Protocol. It is used to access emails on a webserver from a local mail client. If you wish to check your emails from multiple devices like from your mobile phone, personal computer, and from your office, this protocol is recommended. In this protocol emails will be stored on the server, so that you could access it from anywhere. A drawback is depending upon how many emails you save, it can consume a considerably amount of a server’s disk space memory.

POP3

POP3 in another protocol that is used to access emails. It stands for Post Office Protocol. The main difference is that in POP3 it does not download and store emails from the server into your local device.

How does IMAP Copy work

As we have seen earlier, IMAP Copy is a tool that is used to copy a user’s email messages from one web server to another. It is a Perl program designed to work with IMAP servers. This program will log into the old server (where you need the emails to be copied from). It does require your username and password for the account. Then it will build a list of both your mail boxes and email messages in them. The program will then log into the new server (where you are going to copy the emails to) with the username and password of the new server. Then it will copy the mail boxes and the messages to the new server. The structure of mailboxes (email folders) on the old server will be recreated on the new server and the emails will be copied preserving the structure of your old email account

Илон Маск рекомендует:  В чем отличие между create(self) и create(application)

IMAP copy will also preserve flag categories like “Seen”, “Deleted” etc and the dates of the emails.

Steps in IMAP Copy

1) Install IMAP Copy.

For a Centos system, please download imapcopy.tar.gz.

Now untar the file as below.

Now enter into the directory “imapcopy”.

2) Provide the source and destination server details.

To perform this, we need to edit the configuration file of the imapcopy. Locate the file “ImapCopy.cfg” and then edit the file with the required details. A sample for this is given below.

skipfolder “INBOX.Sent Objects”

# SourceUser SourcePassword DestinationUser DestinationPassword

Copy “usr1” “usr1srcpw” “usr1” “usr1destnpw”

Copy “usr2” “usr2srcpw” “usr2” “usr2destnpw”

Note: This sample will copy the users “usr1” and “usr2” from the server “server.source.com”, port 143 to the server “server.destination.com”, port 145. The password for “usr1” on the source server is “usr1srcpw” and on the destination server is “usr1destnpw” and the password for “usr2” on the source server is “usr2srcpw” and on the destination server is “usr2destnpw”.

Before performing the imapcopy, we can test the configuration file to verify all data inputted is valid. To test, please run the below command.

3) Test the configuration file.

To show the information about the servlets used, please run the below command.

4) Initiate the process.

To perform the operation, please execute the following command.

If you need any further assistance please contact our support department.

IMAP Модуль

В IMAP модуле CommuniGate Pro реализован IMAP сервер. IMAP сервера позволяют клиентским приложениям (почтовым программам) получать сообщения из папок пользователя, используя Интернет протокол IMAP4rev1 (RFC2060) через TCP/IP сети.

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

IMAP модуль CommuniGate Pro поддерживает как незашифрованные, так и безопасные (SSL/TLS) соединения.

Интернет Протокол Доступа к Сообщениям (IMAP)

Интернет Протокол Доступа к Сообщениям позволяет работать с сообщениями, хранящимися в папках на удалённых почтовых серверах, непосредственно с компьютеров клиентов. Компьютер, на котором запущено приложение — почтовая программа (почтовый клиент), устанавливает соединение с компьютером почтового сервера и сообщает ему имя пользователя и пароль. Если указанному пользователю предоставляется доступ, то почтовое приложение сможет отправлять на почтовый сервер команды. Команды протокола указывают серверу выдать список всех сообщений в папке, загрузить определённые сообщения или удалить их, найти сообщения с определёнными атрибутами, передвинуть сообщения между папками и т.д.

Конфигурирование IMAP Модуля

Для того, что бы настроить параметры IMAP модуля, используйте Веб Интерфейс Администратора. Откройте страницу Доступ в разделе Установки:

Используйте эту настройку для того, что бы указать, какую информацию IMAP модуль должен сохранять в Журнале работы Сервера. Обычно используется уровень Основные (отчёты о передаче сообщений) или уровень Проблемы (передача сообщений и не фатальные ошибки). В случае, если в работе IMAP модуля возникают проблемы, возможно, целесообразным будет увеличить детализацию до уровня Подробности или Всё: в этом случае в Журнал работы Сервера будет также записываться более подробная информация о работе модуля на уровне протокола или на уровне ссылок. Когда проблема решена, верните настройку Уровень Журнала в её обычное значение, иначе Системный Журнал будет очень быстро увеличивать свой размер.

Записи, помещённые IMAP модулем в Журнал работы Сервера, имеют пометку IMAP.

Когда вы указываете ненулевое значение в настройке Максимальное число Каналов, IMAP модуль создаёт так называемый «Приёмник». Модуль начинает принимать все IMAP соединения, которые устанавливают клиенты для того, что бы получать почту с вашего Сервера. Эта настройка используется для того, что бы ограничить число одновременных соединений, которое может принимать IMAP модуль. Если открыто предельное число соединений, то модуль будет отказывать в приёме новых соединений. В этом случае почтовые клиенты должны попытаться соединиться позднее.

По умолчанию, Приёмник IMAP модуля принимает незашифрованные соединения на TCP порт 143 и безопасные соединения на TCP порт 993. Нажмите на ссылку Приёмник для того, что бы настроить порт Приёмника IMAP.

IMAP модуль поддерживает команду STARTTLS, которая позволяет почтовому клиенту устанавливать соединение в незащищённом режиме и затем переводить его в режим безопасного соединения.

Send 'Running' every Если эта опция не установлена в значение Никогда, то IMAP модуль будет следить за длительностью выполнения операций APPEND, COPY и SEARCH. Если выполнение любой из этих операций превышает указанный здесь период времени, то модуль отправляет клиентскому приложению «непомеченный» ответ. Эта возможность может использоваться для того, что бы предотвратить возникновение ситуации тайам-аута у клиентского приложения; также она помогает при работе в конфигурациях с различными NAT-устройствами, которые склонны закрывать соединение, если оно некоторое время неактивно.

Одновременный Доступ

В отличие от множества других IMAP серверов, «блокирующих» открытые папки, IMAP модуль Сервера CommuniGate Pro спроектирован таким образом, что бы обеспечивать одновременный доступ к папке неограниченного числа клиентов.

IMAP модуль использует Менеджер Папок CommuniGate Pro, что позволяет обеспечить одновременный доступ к Папкам для всех типов поддерживаемых протоколов и клиентов. Дополнительную информацию смотрите в разделе Папки.

Список Прав Доступа

IMAP модуль поддерживает RFC2086 (ACL расширение IMAP4). Это расширение протокола позволяет IMAP пользователям предоставлять доступ к своим папкам другим пользователям.

Дополнительную информацию о Списках Прав Доступа Папки (ACL) смотрите в разделе Папки.

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

Чужие (Общие) и Публичные Папки

CommuniGate Pro позволяет пользователям получать доступ к папкам других пользователей. Дополнительную информацию смотрите в разделе Папки.

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

Используя различных IMAP клиентов или Веб Интерфейс Пользователя, пользователь может добавить имя чужой папки (как, например

public/news/company) в свой список подписки. Это приведёт к тому, что IMAP клиенты будут показывать чужую папку наряду с обычными папками пользователя и пользователь сможет работать с этой чужой папкой.

Некоторые IMAP клиенты (такие как Microsoft Outlook и Outlook Express) вообще не поддерживают работу с чужими папками. Для того, что бы эти клиенты получили доступ к совместно используемым папками других пользователей, может использоваться механизм Псевдонима Папки.

Аутентификация Пользователя

IMAP модуль позволяет пользователям использовать все Методы Аутентификации, поддерживаемые Сервером CommuniGate Pro.

Если опция Объявлять об небезопасных методах выключена, и соединение не зашифровано с помощью SSL/TLS, то Сервер добавляет ключевое слово LOGINDISABLED в список поддерживаемых возможностей аутентификации.

Непочтовые Папки

IMAP Модуль CommuniGate Pro обеспечивает доступ к папкам всех Классов (Календарь, Контакты и т.д.). Некоторые клиенты и/или пользователи могут быть поставлены в затруднительное положение, если они сталкиваются с Непочтовыми Папками.

Эти модули включают Непочтовые Папки в ответ IMAP команды LIST, если:

  • Пользователь включил настройку Не-Почтовые Папки видны в IMAP, или
  • команда IMAP LIST имеет расширение CLASS , или
  • была выполнена команда IMAP ENABLE EXTENSIONS

Предупреждения

IMAP Модуль CommuniGate Pro проверяет наличие сообщений с предупреждениями, отправленных аутентифицированному Пользователю. Предупреждающие сообщения передаются клиентской почтовой программе через стандартный код ответа IMAP [ALERT].

IMAP Модуль CommuniGate Pro проверяет наличие предупреждений сразу после аутентификации пользователя и может обнаруживать новые предупреждения и отсылать их пользователю в любое время в течении IMAP сессии.

Направления на Аутентификацию

IMAP Модуль поддерживает RFC2221 (Направления на Аутентификацию).
Как было объяснено в разделе Доступ, все адреса пользователей, заданные в клиентских почтовых программах, обрабатываются через Маршрутизатор.
Если имя пользователя перенаправляется на внешний Интернет адрес (обслуживаемый SMTP модулем), то IMAP модуль возвращает отрицательный ответ и передаёт направление на аутентификацию. Если IMAP клиент поддерживает направления на аутентификацию, то он автоматически переключится на новый адрес.

Пример: Пользователь j.smith перешёл с вашего сервера на сервер othercompany.com как пользователь John. Для того, что бы перенаправлять всю почту пользователя, вы создаёте запись псевдонима в таблице Маршрутизатора:
= John@othercompany.com
Теперь, если пользователь попытается зайти на ваш сервер как j.smith, то сервер будет отвергать это имя пользователя, но при этому будет выдавать направление на аутентификацию:
1234 NO [REFERRAL IMAP://John;AUTH=*@othercompany.com/] account has been moved to a remote system
Если клиентская почтовая программа поддерживает направления на аутентификацию, то она автоматически попытается соединится с сервером othercompany.com как пользователь John.

Мониторинг активности IMAP

Вы можете наблюдать за активностью IMAP модуля через Веб Интерфейс Администратора. Для того, что бы открыть страницы наблюдения за IMAP, нажмите на ссылку Доступ в области Наблюдения:

ID Это поле содержит числовой идентификационный номер IMAP сессии. В Журнале CommuniGate Pro эта сессия отмечается как IMAP-nnnnn, где nnnnn — это идентификационный номер сессии. Адрес Это поле содержит IP адрес присоединившегося клиента. Пользователь Это поле содержит имя Пользователя (после успешной аутентификации). Подсоединён Это поле содержит время соединения (время, в течении которого открыта эта TCP/IP сессия. Состояние Это поле содержит или имя текущей операции, или, если никакой операции не производится, текущее состояние сессии (Authenticating, Selected и т.д.). Обрабатывает Если есть какая-нибудь активная IMAP операция, то это поле содержит время, прошедшее с момента начала операции.

Если IMAP соединение используется для MAPI сессии, то это строка отображается на зеленом фоне.

Статистика активности IMAP доступна через SNMP агент CommuniGate Pro.

Подробности реализации IMAP

В IMAP Модуле CommuniGate Pro реализовано множество расширений протокола IMAP. Реализация некоторых из этих расширений в CommuniGate Pro имеет свои особенности.

QUOTA Каждый пользователь имеет свою Корневую Квоту право доступа. NAMESPACE Стандартный префикс «имени пользователя» в CommuniGate Pro соответствующий Домен. UNSELECT Эта команда IMAP эквивалентна команде CLOSE, но она не удаляет никакие сообщения, отмеченные как \Deleted

Дополнительные Расширения IMAP

В IMAP модуле CommuniGate Pro реализованы также несколько расширений, не являющихся частью IMAP стандарта и не включённые в существующие стандарты Расширения IMAP.

UNSELECT Эта команда IMAP эквивалентна команде CLOSE, но она не удаляет никакие сообщения, отмеченные как \Deleted COPY После имени требуемой папки может может быть указан параметр ENCRYPTED certificateData, где certificateData либо PKI Сертификат в кодировке base64, либо символ звёздочка (*), ссылающийся на личный S/MIME Сертификат аутентифицированного пользователя.
Копируемые сообщения являются S/MIME-зашифрованными при помощи указанного сертификата. MOVE, UID MOVE Эти команды IMAP эквивалентны командам COPY, но если сообщения были скопированы успешно, то они будут удалены. Если сообщения передвигались между папками одного и того же Пользователя, то Квота хранения не проверяется. STATUS Команда STATUS может использовать следующие дополнительные имена элементов данных: INTERNALSIZE Элемент данных, включаемый в ответ — число. Это число указывает размер папки (в том виде, как она хранится на сервере). Этот размер близок, но не обязательно совпадает с суммой значений атрибута RFC822.SIZE для всех сообщений, хранящихся в папке. OLDEST Элемент данных, включенных в ответ — строка типа date_time. Она указывает INTERNALDATE самого старого сообщения в папке. Если в папке нет сообщений, этот элемент данных в ответ не включается. UNSEENMEDIA Элемент данных, включаемый в ответ — число сообщений, которые имеют установленный флаг Media, но не имеют флага Seen.

Пример: A001 STATUS mailbox (UNSEEN OLDEST INTERNALSIZE UNSEENMEDIA)
* STATUS mailbox (UNSEEN 14 OLDEST "23-Feb-2002 07:59:42 +0000" INTERNALSIZE 2345678 UNSEENMEDIA 1)
A001 OK completed
LIST Наряду с опциями, описанными в расширении LISTEXT, команда LIST может использовать следующие дополнительные опции: UIDVALIDITY, CLASS, MESSAGES, UIDNEXT, UNSEEN, INTERNALSIZE, OLDEST, UNSEENMEDIA

Адреса почтовых серверов (POP, IMAP, SMTP)

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

Адрес электронной почты — это полное название вашего почтового ящика. Например:

ivanov@dol.ru для пользователей услуги Предоставление почтовых ящиков в домене Демос
petrov@office.dol.ru для пользователей услуги Почта на Виртуальной машине, где office имя Виртуальной машины
sidorov@mydomain.ru для пользователей услуги Почтовые ящики в домене клиента, где mydomain.ru Ваше доменное имя

Сервер входящей почты mail.dol.ru или imap.dol.ru.

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

Сервер исходящей почты (SMTP-сервер) mail.dol.ru

Имя пользователя это учетное имя пользователя на почтовом сервере. Оно совпадает с адресом электронной почты.

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

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

Обычно для отправки почты по протоколу SMTP автоматически устанавливается порт 25, который предназначен для передачи почты между серверами. Настоятельно рекомендуем Вам изменить его на порт 587, который специально выделяется для доставки почты от клиента на сервер.

Что такое код imap_mail_copy

А своей головой подумать никак?
1) Открываете outlook — сервис — настойка учетных записей — выбираете учетку — изменить — другие настройки — Папки. Далее нажимаете новая папка и пишете «Отправленные»
2) Заходите в веб-интерфейс почты — настройки — вид интерфейса. Выбираете «xchange». Выходите и заходите заново.
3) В новом веб-интерфейса заходите в «настройки» — создание — Копировать отправленное в » » выбираете вашу папку «отправленные»

Протокол Без шифрования С шифрованием
POP3 110 995
IMAP4 143 993
SMTP 25, 587 465
Меню пользователя nel-finger
Посмотреть профиль
Отправить личное сообщение для nel-finger
Посетить домашнюю страницу nel-finger
Найти ещё сообщения от nel-finger

Надеюсь, что вы не работаете в Ру-Центре, чтобы давать такие советы (то что вы вначале сказали).
Так как вполне логично ожидать от платного провайдера техподдержки и в прямом смысле указания на то «где тыкать кнопочки» при решении определенной проблемы, связанной с использованием услуги. Я как клиент не обязан знать все настройки (то есть не обязан быть и сисадмином), зато очень странно видеть то, как поддержка не знает собственного сервиса и деталей настроек, хотя она обязана это знать. Впрочем некомпетентность сотрудников поддержки, к сожалению, не редкость в различных компаниях.

Что же касается пунктов. По первому не могу найти «Папки». У меня, напомню, Outlook 2013, там в «Других» настройках учетки (это я нашел), есть только три вкладки — «Общие», «Сервер исходящей почты» и «Дополнительно». Слово «папки» есть только в во вкладке «Дополнительно», но там это описание настройки «Путь к корневой папке», а вот где там можно создавать и переименовывать папки, не вижу, там нет такой команды ?

06.06.2013, 00:03 #4
Меню пользователя MASTER-M
Посмотреть профиль
Отправить личное сообщение для MASTER-M
Найти ещё сообщения от MASTER-M

Это зависит от корректности настроек Вашего почтового клиента. Вам необходимо в настройках учётной записи установить опцию, чтобы отправленные письма сохранялись в папке с именем Sent. Именно так папка «Отправленные» называется на сервере. Что касается того, как это сделать, данный вопрос следует адресовать либо специалистам технической поддержки разработчика Вашего почтового клиента — компании Microsoft, либо посмотреть в документации к данному почтовому клиенту.

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

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

06.06.2013, 09:39 #5
Меню пользователя Станислав Муравьев
Посмотреть профиль
Найти ещё сообщения от Станислав Муравьев

Это зависит от корректности настроек Вашего почтового клиента. Вам необходимо в настройках учётной записи установить опцию, чтобы отправленные письма сохранялись в папке с именем Sent. Именно так папка «Отправленные» называется на сервере. Что касается того, как это сделать, данный вопрос следует адресовать либо специалистам технической поддержки разработчика Вашего почтового клиента — компании Microsoft, либо посмотреть в документации к данному почтовому клиенту.

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

Знаете, ну как-то ожидалось, что поддержка все же знает, где находятся и как настраивается в таком случае клиент Microsoft Outlok 2013 (я пытался найти эти настройки — не нашел) — это не какой-то редкий клиент и опция не какая-то экзотическая, а вполне закономерная при IMAP доступе к почтовому ящику. Поэтому весьма странно слышать от поддержки платной услуги перевод стрелок в сторону производителя. Кроме того, с почтой Gmail, повторяю, все работает нормально. Причем, у меня на двух разных компьютерах разной конфигурации такая же ситуация (а Gmail также на них обоих работает нормально). Это к вопросу о «сбоях клиентов».

PHP imap_mail_move: что это правильный ID из imap_header использовать?

Так вот это imap_header свалка .

StdClass Object ([дата] => Вт, 11 июнь 2013 19:12:28 -0700 [Дата] => Вт, 11 июня 2013 19:12:28 -0700 [тема] => Счет на darnhippies.org форуме заблокирована [Тема] => Счет на darnhippies.org форуме заблокирован [message_id] => [toaddress] => webmaster@example.com [к] => Array ([0] => StdClass объекта ([сообщения] => веб-мастер [хост] => example.com)

Я пытался двигаться, используя в $header->Msgno качестве идентификатора сообщения, я полагаю , так как ни одно сообщение не переместились , что это не правильный идентификатор.

Так что я использую (в данном примере) $header->message_id как идентификатор сообщения , чтобы двигаться?

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

Я получаю следующие ошибки около 90% времени .

Ошибка: Array ([0] => ошибка протокола IMAP: Ошибка в командном IMAP-COPY: Недопустимый messageset [1] => Ошибка в командном IMAP-COPY: Недопустимый messageset)

Так как же мне найти правильный идентификатор сообщения?

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

Джон, вы должны использовать посылая сообщения , UID чтобы убедиться , что вы ссылки на правильную электронную почту. Msgno представляет собой порядковый номер , который изменяется по мере добавили сообщения электронной почты и удаляются из почтового ящика. Вы получаете сообщение это UID в PHP ( с использованием библиотеки PHP IMap) с:

результирующий $ UID является уникальным в почтовом ящике навсегда.

При использовании UID для перемещения / чтения / все сообщение, вам нужно добавить параметр к параметрам, передаваемым в соответствующей функции, чтобы указать, что вы используете UID, а не msgno например:

$body = imap_fetchbody(*stream handle*, $uid, *mime-type*, FT_UID);

FT_UID это константа , которая сообщает библиотеку IMap , что второй параметр является UID не msgno .

Документация php.net довольно хорошо, когда речь идет о библиотеке IMap и стоит прочитать.

Incidently, то message_id должен быть уникальным для всех электронных писем по всему миру, если отправитель является удовлетворение соответствующих RFC,

В IMAP, каждое сообщение имеет два идентификатора: порядковый номер сообщения (который я принимаю msgNo в РНР), а также уникальный идентификатор (UID). Порядковый номер сообщения может меняться по мере добавлены сообщения и удаляются из почтового ящика, но UID является постоянным для жизни сообщения *.

Строка используется является «Message-Id» из заголовка Message-Id из электронной почты, который не может быть использован для перемещения сообщений (для одной стороны, это не обязательно уникальное). Если у вас есть UID, Вы должны быть в состоянии использовать imap_mail_move с флагом модификатора UID, чтобы переместить сообщение.

(Я не знаком с PHP API, но, возможно, вы можете передать UID флаг модификатор для message_header, чтобы получить UIDs там, в вашем наборе результатов.)

*: Пока UIDVALIDITY папки не меняется, что он должен не на хорошо себя серверы, пока папка не удаляется и создается заново с тем же именем.

Пароль imap и smtp для mail.ru.

Инструкция по настройке IMAP или POP3 электронной почты в Windows 10

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

Где взять адреса POP3, IMAP и SMTP-серверов?

Адреса POP3, IMAP и SMTP-серверов обычно можно найти в настройках вашего почтового ящика, или проще набрав в поисковике к примеру «POP3 mail.ru» (mail.ru в данном примере ресурс на котором находится моя почта). Я набрал в поисковике «POP3 mail.ru» и первая страница в результатах показала какие сервера для настройки входящей почты (POP3, IMAP) и какой для исходящей (SMTP).

Если мы хотим узнать адреса POP3, IMAP или SMTP для почтового ящика находящегося на mail.ru, они будут выглядеть: pop.mail.ru; imap.mail.ru; smtp.mail.ru. Если на yandex.ru: pop.yandex.ru, imap.yandex.ru, smtp.yandex.ru. В общем структура данных адресов скорее всего вам уже понятна, но всё равно поищите лучше настройки через поисковик.

В чем разница между серверами входящей почты POP3 и IMAP?

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

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

Настройка учетной записи в приложении Почта Winodws 10

После того, как вы найдете правильные сервера для настройки входящей и исходящей почты — открываем приложение «Почта».

Заходим в «Пуск» => Все приложения => Почта

Открываем «Параметры» (шестеренка внизу экрана) => Учетные записи

Перед вами откроется список всех подвязанных почтовых ящиков, а также вы сможете добавить новый, нажимаем «Добавить учетную запись»

Опускаемся в самый низ окна, и выбираем «Расширенная настройка»

Чтобы настроить почту через POP или IMAP — выбираем «Интернет-почта»

Для начала заполняем «имя учетной записи» и «ваше имя», данные имена должны отличаться от названий аккаунтов уже добавленных в приложении «почта», чтобы не путать их в будущем

теперь указываем адрес входящей почты, в поле «Сервер входящей почты» вписываем POP3 или IMAP адрес в зависимости от того, что вы выбрали выше. Также в поле «Тип учетной записи» можно выбрать POP или IMAP. В поле «Электронный адрес» указываете адрес вашего почтового ящика.

В поле «Имя пользователя» также указывайте адрес вашего почтового ящика. В поле «Пароль» указываем пароль к вашему почтовому ящику. В «Сервер исходящей почты» вписываем адрес SMPT, найденный выше и нажимаем «Войти»

С правой стороны вы увидите подключенные почтовые учетные записи, и сможете выбрать вновь добавленную. Если вы указали правильные настройки, то выбрав вновь добавленную учетную запись и нажав «Синхронизировать» — вы увидите все письма с данной учетной записи.

Приложение «Почта» в Windows 10 удобный инструмент, чтобы собрать все ваши почтовые ящики в одном месте и управлять ими. Причем вам не нужно устанавливать дополнительные, а тем более платные приложения для работы со своей почтой, всё удобно и просто в стандартном приложении! На сегодня всё, если есть дополнения — пишите комментарии! Удачи Вам ��

Как использовать телефон в качестве мыши, клавиатуры и пульта управления для ПК;

Как записать экран Android устройства;

Используйте мобильный сайт вместо приложения Facebook

Что такое IMAP и POP? — Служба поддержки Office

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

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

См. также

Параметры POP, IMAP и SMTP для Outlook.com

Параметры POP и IMAP для Outlook в Office 365 для бизнеса

Илон Маск рекомендует:  Статьи, обзоры
Понравилась статья? Поделиться с друзьями:
Кодинг, CSS и SQL
07.06.2013, 01:48 #6