2009-07-01 2 views
1

Мы создали веб-сервис, который необходимо постоянно проверять на наличие сообщений электронной почты. По сути, пользователь отправляет нам электронное письмо, и сервер должен делать действия на основе этого письма. Мы могли бы использовать скрипт PHP crontab, который каждую минуту проверяет новые сообщения с помощью POP. Но это оскорбительно для popserver и не очень эффективно (1мин слишком длинный).Нажмите адрес электронной почты на сервер apache/php

Но, я читал о PUSH электронной почте, используя IMAP вокруг мобильных устройств. В моем случае это не мобильное устройство, а веб-сервер.

Могу ли я направить электронное письмо на свой веб-сервер и выполнить его скрипт PHP? Мы используем GMail как сервер POP/SMTP/IMAP.

EDIT 1 из ответов, мы выяснили:

  1. должен быть 24/7 работает процесс (демон) на проверку мой веб-сервер для электронной почты

  2. этот демон может обмениваться данными с помощью Gmail, используя: i) POP с NOF coomand или ii) IMAP с командой IDLE

Что лучше? POP или IMAP? Google, похоже, предлагает больше использовать IMAP.

Я не хочу злоупотреблять Gmail (то, что их «добросовестное использование» для проверки электронной почты? Каждое 10secs?

+0

Оба ответы Джейсон Punyon и Ричард Левассер велики.+2. – gahooa

ответ

2

Если вы хотите использовать постфикс как ваш MTA вы можете псевдоним адреса электронной почты в любой исполняемый файл, как this На самом деле это не так сложно настроить на поле * nix ...

+0

На этот раз мы не будем устанавливать почтовое программное обеспечение. Благодарю. –

2

У меня нет опыта работы с IMAP, но я должен был сделать то же самое. Если бы я был вами, я бы установил Postfix и использовал команда pipe (в основном позволяет запустить произвольный скрипт) для вызова небольшого http-клиента, который анализирует электронное письмо и отправляет его на ваш сервер.

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

2

email_scheduler.c

int main() 
{ 
     while(1){ 
         sleep(5); // every 5 secs the email_parser.php would get executed. 
         system("/usr/bin/php -q /var/www/html/email_parser.php"); 
     } 
} 

email_parser.php:

/* Использование любого сообщения электронной почты парсер анализировать сообщения электронной почты, как MIME сообщение парсер на основе вашей цели : Refer: http://www.phpclasses.org/browse/package/3169.html */

Также проверьте соответствующие ответы здесь more info

0

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

http://www.evolt.org/article/Incoming_Mail_and_PHP/18/27914/index.html

 Смежные вопросы

  • Нет связанных вопросов^_^