Проверка С# Hotmail Inbox через HTTP

Я ищу быстрый способ или библиотеку для проверки входящих сообщений hotmail с помощью HTTP. Обратите внимание, что это должно быть через Http, а не pop3 или Imap (это не поддерживается в любом случае). Мне нужно это, потому что мне нужно подключиться к нескольким учетным записям, используя Http Proxies, которые не поддерживаются в сеансах pop3. Любая помощь приветствуется.

Спасибо buddies =]

Ответ 1

Я считаю, что в настоящее время это невозможно без моделирования того, что пользователь будет делать в браузере. Самый простой способ - использовать возможности "VS2010 Test Professional" или "VS2010 Ultimate" для записи сеанса просмотра и генерации кода С#, который делает то же самое! См. здесь, он работал у меня довольно хорошо из коробки и генерирует читаемый код, который вы можете повторно использовать в своих приложениях

BWT, похоже, это существующие API:
- pop3.live.com, порт 995 (требуется SSL) для входящих сообщений;
- smtp.live.com, порт 25 (без SSL) или 587 (SSL) для отправки электронной почты;
- API контактов Windows Live Messenger (устаревший) позволяет получить доступ к контактам; - Windows Live Messenger Connect позволяет делать что-либо, что может сделать посланник;
- Свойства почтового ящика Windows Live Messenger позволяют видеть количество писем и непрочитанных писем;

Ответ 2

Нет официального способа чтения Hotmail с использованием HTTP (S). Раньше был DAV, но это было прекращено, вот официальное утверждение:

Продолжение выхода из протокола DAV

Windows Mail и Outlook Connector используют протокол с именем DeltaSync, который не документирован.

Некоторые люди пытаются перепроектировать его как этот парень: выпущен декомпрессионный код DeltaSync HU01, но нет никакой гарантии, что это не будет развиваться - на самом деле вы можете быть уверены, что это изменится: -)

Итак, вам лучше с POP3: Hotmail и MSN Accounts POP3/SMTP Access

Ответ 3

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

Я думаю, что это самый простой способ сделать это.

Ответ 4

Вам необходимо изменить значение протокола DeltaSync. Используйте 32-разрядную версию MS-Mail и oSpy для захвата пакетов SSL + Wireshark для захвата http-пакетов.

Ответ 5

Это, вероятно, не то, что вы ищете, но вы можете туннелировать соединение pop3 через http. Нижняя сторона - это то, что вам нужен сервер где-то за пределами вашего lan, к которому вы можете подключиться. Вот пример: Pop3 over Http

Ответ 7

Попробуйте посмотреть на WaTiN. Это структура, которую мы используем для проведения тестов на нашем веб-приложении, что мешает взаимодействию пользователей. Мы также используем для связи с Mailinator для проверки фиктивных писем.

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

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

Раньше вы использовали пространство имен System.Net.mail и mailclients для непосредственного подключения к серверам hotmail, но я не уверен, что hotmail все еще разрешает это.