Какой лучший способ предоставлять пользователю еженедельные обновления из вашей программы? - PullRequest
2 голосов
/ 31 октября 2008

У меня есть программа, которая по большей части работает в фоновом режиме. Допустим, это делает DoWork (). Раз в неделю я хочу, чтобы он уведомлял пользователя о некоторых работах, выполненных за последние несколько дней. Это будет базовый отчет о состоянии, в котором перечислены некоторые загруженные файлы.

Изначально я хотел отправить это обновление статуса по электронной почте, поэтому я посмотрел на это, но есть много проблем. Мне нужен SMTP-сервер, поэтому я посмотрел на GMail. Это нормально, но ежедневный лимит составляет 500 писем, так что это не подходит для выпуска. Кроме того, могут возникнуть проблемы с тем, что один и тот же пароль учетной записи электронной почты выдается в каждой копии программы, что, как я понимаю, представляет собой риск, даже если пароль хранится с использованием шифрования.

Тогда я подумал, что, возможно, я мог бы использовать собственную учетную запись электронной почты пользователя для отправки электронной почты самому себе. Это также имеет несколько сложностей: пользователю нужно будет указать всю информацию SMTP для своей учетной записи электронной почты, что слишком сложно для целевого пользователя. Кроме того, я не хочу, чтобы люди вводили пароль своей учетной записи электронной почты в мою программу только для отправки писем. Я не думаю, что это хорошая привычка для продвижения.

Есть ли способ сделать это по электронной почте? Почта была моим первым выбором, потому что это система уведомлений, которую пользователи уже будут проверять. Это довольно ненавязчиво.

Нужно ли настраивать свой собственный SMTP-сервер? Если так, как я могу это сделать?

Если электронная почта не используется, я также думал о том, чтобы просто сгенерировать локальный HTML-файл с соответствующей информацией, а затем раз в неделю получать всплывающее уведомление из программы, информирующее пользователя о готовности нового отчета об обновлении , Я думаю, что это вполне выполнимо, просто чрезмерно навязчиво и не мой первый выбор. Я хочу использовать систему, которая уже используется пользователем.

Спасибо! * 1013 Грег *

Ответы [ 6 ]

2 голосов
/ 31 октября 2008

Альтернативой является создание программой RSS-канала и указание пользователю, как подписаться на него. Кроме того, после создания нового обновления покажите всплывающее окно с обновлениями около минуты, затем автоматически спрячьте его и измените значок систрейма на что-то другое. Примерно через день измените его обратно на исходный значок. Кроме того, дайте пользователю возможность отключить тост навсегда.

Полагаться на электронную почту не очень хорошая идея, так как вам придется собирать электронные письма пользователей и решать проблемы конфиденциальности для этого, вы будете эффективно ДОЗДАТЬ любой сторонний SMTP-сервер или должны будете инвестировать в инфраструктуру для вашего владеть.

1 голос
/ 31 октября 2008

Если вы заставите их указать свой собственный SMTP-сервер, убедитесь, что вы поместили туда кнопку «Отправить тестовое электронное письмо», чтобы они могли проверить это. По своему опыту я знаю, что пользователи всегда вводят неверные данные при указании сервера smtp, имени пользователя и пароля, что еще хуже, поскольку некоторые серверы smtp требуют имя пользователя / пароль, а другие - нет.

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

Электронная почта хороша, но вам может понадобиться и альтернативный метод.

1 голос
/ 31 октября 2008

Если я правильно понял, пользователь запускает эту программу на своем компьютере в фоновом режиме.

Идеальный способ уведомить что-то, IMHO, дать программе свернуть ее в трейбар, маленькое всплывающее окно, которое щелкнет, откроет окно с еженедельным отчетом.

Надеюсь, это поможет.

0 голосов
/ 31 октября 2008

Должен ли это быть еженедельный дайджест? Вместо этого, как насчет использования Growl (или эквивалентного) для уведомления пользователя о задачах, выполняемых в режиме реального времени, в фоновом режиме?

0 голосов
/ 31 октября 2008

Для простого SMTP-сервера я использую hmail . Я настраиваю его на прием всех SMTP-запросов от локального компьютера, независимо от источника и назначения, и на отклонение любых SMTP-запросов, не поступающих с localhost. Это будет хорошо, если у вас есть приложение, расположенное в центре.

Если вы хотите распространять приложение, у вас совершенно другая ситуация; если многие интернет-провайдеры устанавливают ограничения на трафик SMTP, лучшим вариантом будет позволить пользователям вводить данные своей учетной записи, а затем использовать их для отправки почты. Это гарантирует, что каждый может установить рабочие параметры. Затем используйте любую библиотеку или заранее подготовленный код, чтобы ваш язык мог отправить электронное письмо с этими настройками.

0 голосов
/ 31 октября 2008

Google для простых окон сервера SMTP дает вам это

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

В качестве альтернативы вы можете опубликовать его на IRC-канале или написать бот MSN, чтобы отправить сообщение пользователю. Сообщение будет отправлено как автономное сообщение, если пользователь не в сети.

Я бы по-прежнему ходил по электронной почте, она проверена и проверена.

...