У меня есть очень простой бот, который собирает и анализирует веб-страницы. Он находится на машине в сети, за NAT (так что я не могу настроить веб-сервер, например). У меня не настроен MTA. Бот должен уведомлять меня об изменениях в анализируемых страницах (раз в час или два, одному получателю). Как это можно сделать?
Существуют ли RESTful-шлюзы электронной почты, например, SMS-шлюзы?
Я могу создать ему аккаунт в Twitter и использовать его curl
для публикации статусов/личных сообщений, но это очень временный бот.
ОБНОВЛЕНИЕ: Сейчас проблема решена путем настройки пользовательского PHP HTTP-to-email шлюза на удаленном сервере с MTA. Премия все еще будет присуждена лучшему ответу (мне интересны другие решения этой проблемы, на всякий случай).
решение1
Здесь сложно ответить.
Какой у вас доступ в Интернет? Есть ли у вас вообще доступ к SMTP? А как насчет HTTP(S)? Напрямую или через прокси? VPN? Что-нибудь еще?
А также, на каком языке написан ваш бот? На какой операционной системе вы его запускаете?
Естьмногоспособов, которыми программа может отправить вам уведомление; но какой из них лучше подходит для вашего сценария, зависит от многих факторов.
Обновлять:
Если вы можете открыть исходящее TCP-соединение, то вы можете просто подключиться к любому SMTP-серверу (даже к своему собственному) и отправить сообщение по электронной почте. Это действительно просто, если у вас есть библиотеки SMTP, но это было бы очень просто, даже если бы вам пришлось общаться с удаленным сервером по собственному SMTP.
решение2
вы можете использоватьXMPP/Jabberдоставить сообщение
вы можете использоватьwgetдля проверки/загрузки http-контента и некоторое время для POST-данных
и пусть Google поможет вам :)
решение3
На каком языке/в какой среде вы разрабатываете? Нет ли API для подключения к SMTP-серверу?
Если вы хотите использовать RESTful API, вариант Twitter действительно кажется мне лучшим, если уведомление может быть меньше 140 символов. Он довольно прост в использовании, и, вероятно, для него даже есть отличные библиотеки на любом языке, на котором написан ваш бот.
Если вам нужно отправить больше информации и вы все еще хотите использовать RESTful интерфейс, то вы можете дать боту блог на (скажем) Blogspot. У них естьAPIэто не выглядит слишком плохо для ваших целей.