Имапд
IMAP Server (библиотека) для подачи электронных писем для почтового клиента, написанного в Pure PHP.
d в SMTPd означает Daemon. Этот скрипт может работать в фоновом режиме, как любой другой процесс демона. Это не предназначено для работы в качестве веб -приложения.
Почему этот проект?
Хотите верьте, хотите нет, что электронная почта по -прежнему является убийцей в Интернете . Существует множество проектов для доступа и получения электронных писем с сервера IMAP/POP3. Но есть не так много, предоставляющих программно -интерфейс для подачи электронных писем для почтового клиента.
С помощью этого интерфейса вы можете сделать что -то подобное для пользователей приложения:
+--------------+ +-------+ +------------------------+ +------+
| Your PHP App +---> | IMAPd +---> | MUA (like Thunderbird) +---> | User |
+--------------+ +-------+ +------------------------+ +------+
Это полезно, когда у вас есть приложение для обмена сообщениями, записанное в PHP, но для него нет графического интерфейса пользователя. Таким образом, ваш графический пользовательский интерфейс может быть любым почтовым клиентом. Thunderbird, например.
Проект
Проект описывает, как описано в моем блоге о сотрудничестве программного обеспечения с открытым исходным кодом.
- Основная цель этого программного обеспечения-предоставить API IMAP на стороне сервера для сценариев PHP.
- Хотя реализации RFC еще не завершены, они должны быть строгими.
- В будущем может быть возможно больше функций. С точки зрения протоколов функции должны быть реализацией RFC.
- Этот список открыт. Не стесняйтесь запросить функции.
Запланированные функции
- Полная реализация RFC 3501.
- Замените
ZendMail на лучшее решение.
Установка
Предпочтительным методом установки является Packagist и Composer. Запустите следующую команду, чтобы установить пакет и добавить его в качестве требования к Composer.json:
composer require thefox/imapd
Использование
См. example.php -файл для получения дополнительной информации.
Реализация RFC 3501
Полная реализация
- 6.1.2 Команда NOOP
- 6.1.3 Команда выхода
- 6.4.1 Проверьте команду
- 6.4.7 Копировать команду
- 7.1.1 ОК Ответ
- 7.1.2 Нет ответа
- 7.1.3 Плохой ответ
- 7.1.5 BYE Ответ
- 7.4.1. Ответ
Неполное реализацию
- 2.3.1.1 Уникальный атрибут сообщения об уникальном идентификаторе (UID)
- 2.3.1.2.
- 2.3.2 Атрибут сообщения флагов
- 6.1.1 Команда возможностей
- 6.2.2 Команда аутентификации
- 6.2.3 Команда входа в систему
- 6.3.1 Выберите команду
- 6.3.6 Подписаться команду
- 6.3.7 Команда отказаться от подписки
- 6.3.8 Команда списка
- 6.3.9 команда LSUB
- 6.3.11 Приложение команды
- 6.4.2 Close Command
- 6.4.4 Поиск команды
- 6.4.5 Команда Fetch
- 6.4.6 Команда магазина
- 6.4.8 Команда UID
- 7.1.4 Preauth Response
- 7.2.1 Ответ способности
- 7.2.2 Ответ списка
- 7.2.3 Ответ LSUB
- 7.2.5 Ответ поиска
- 7.3.1 существует ответ
- 7.3.2 Недавний ответ
- 7.4.2 Ответ избрать
Тодо
- Некоторые задачи прокомментированы с помощью
NOT_IMPLEMENTED . Реализовать это. -
@TODO должен быть завершенными тестами Sniffer PHP, прежде чем выпустить новую версию.
Альтернативы для ZendMail
- Exorus/Php-Mime-Mail-Parser (требует расширения PHP Ext-MailParse)
Связанные ссылки
- RFC 3501
- Электронная почта будет длиться вечно
- Электронная почта по -прежнему лучшая вещь в Интернете
- Хотите верьте, хотите нет, электронная почта по -прежнему остается приложением убийцы
- Разработчики: Прекратите повторно наносит переосмысление Интернета!
- Настройте собственный почтовый сервер на 5 шагов
Связанные проекты
Ссылки проекта
- Пост в блоге об IMAPD
- ПАККАГИЙСКИЙ ПАКЕТ
- Phpweekly - выпуск 7 августа 2014 г.