Я надеюсь, что на основе событий можно узнать, когда я получу электронное письмо. Сейчас я использую gmail, но хост электронной почты не критичен. Я действительно должен опрашивать это?
Вы можете переслать почту на хост * nix, который использует файлы .forward, а затем направить почту к сценарию, который обрабатывает событие в вашей программе (путем пингования URL-адреса и т. Д.)
Вот пример в среде CPanel / PHP: http://kb.siteground.com/article/How_to_pipe_an_email_to_a_PHP_script.html
Если вы подключаетесь к Gmail с использованием IMAP, вы можете использовать команду IDLE . IMAP-сервер Gmail поддерживает IDLE.
RFC 5465 предлагает расширение NOTIFY для IMAP. Впрочем, вряд ли многие серверы его реализуют.
Мне не повезло с IDLE как на GMAIL, так и на Dreamhost (который использует курьера). Exchange отлично работает с IDLE: я вижу обновления почтовых ящиков менее чем за секунду.
Без хорошей поддержки IDLE, да, вам нужно опросить.