ユーザーにプログラムから毎週更新を提供する最良の方法は何ですか?

StackOverflow https://stackoverflow.com/questions/252119

  •  05-07-2019
  •  | 
  •  

質問

ほとんどの場合、バックグラウンドで動作するプログラムがあります。 DoesWork()としましょう。週に一度、過去数日間で完了した作業の一部をユーザーに通知する必要があります。これは、ダウンロードされたいくつかのファイルをリストする基本的なステータスレポートになります。

最初は、このステータスの更新をメールで送信したかったので、調査しましたが、多くの問題があります。 SMTPサーバーが必要なので、GMailを見ました。大丈夫ですが、1日500通の電子メールの制限があるため、これはリリースには適していません。また、プログラムの各コピーで同じ電子メールアカウントのパスワードが発行されるという問題が発生します。これは、パスワードが暗号化を使用して保存されている場合でも危険です。

次に、ユーザー自身のメールアカウントを使用して、自分にメールを送信できると考えました。これにはいくつかの問題もあります。ユーザーは自分のメールアカウントのsmtp情報をすべて指定する必要がありますが、これはターゲットユーザーにとっては複雑すぎます。また、メールを送信するためだけに、自分のプログラムにメールアカウントのパスワードを入力してもらう必要はありません。宣伝するのは良い習慣ではないと思います。

メールでこれを行う方法はありますか?電子メールは、ユーザーが既に確認している通知システムであるため、私の最初の選択肢でした。かなり邪魔になりません。

独自のSMTPサーバーをセットアップする必要はありますか?もしそうなら、どうすればそれができますか?

メールが不要な場合は、関連情報を含むローカルHTMLファイルを生成し、週に1回プログラムから通知ポップアップを表示して、新しい更新レポートの準備ができたことをユーザーに通知することも考えていました。これは完全に実行可能だと思います。それは過度に邪魔になりすぎて、最初の選択ではありません。ユーザーが既に使用しているシステムに便乗したい。

ありがとう! -greg

役に立ちましたか?

解決

別の方法は、プログラムにRSSフィードを生成させ、ユーザーに購読方法を指示することです。また、新しい更新が生成されたら、更新トーストを約1分間表示し、それを自動的に非表示にして、システムトレイアイコンを別のアイコンに変更します。約1日で元のアイコンに戻します。また、トーストを完全にオフにする設定をユーザーに提供します。

電子メールに依存することは良い考えではありません。ユーザーの電子メールを収集し、そのためのプライバシーの問題に対処する必要があるため、サードパーティのSMTPサーバーを効果的にDOSするか、インフラストラクチャに投資する必要があります所有。

他のヒント

正しく理解できた場合、ユーザーはこのプログラムを自分のPCでバックグラウンドで実行しています。

何かを通知するのに最適な方法は、プログラムがトレイバーに最小化され、クリックする小さなポップアップが週次レポートでウィンドウを開くことです。

これがお役に立てば幸いです。

独自のSMTPサーバーを指定するようにユーザーに依頼する場合は、必ず「テストメールを送信」を入れてください。ボタンを押して、テストできるようにします。経験から、ユーザーはsmtpサーバー、ユーザー名、パスワードを指定するときに常に間違った詳細情報を入力することを知っています。

誤った詳細を入力した場合(または変更した場合)、古いレポートを送信する方法、またはメールを送信できないことを通知する他の方法が必要になる場合があります。

メールは素晴らしいですが、別の方法も必要になる場合があります。

シンプルなsmtpサーバーウィンドウ用のGoogleは、 this

を提供します。

正直に言うと、週に1回だけメールを送信するのが最善の策です。ユーザーが他の種類の要求を受け入れるために自分のマシンにいることを保証するのに十分ではないためです。専用ソフトウェア。

代わりに、IRCチャンネルに投稿するか、MSNボットを作成してユーザーにメッセージを送ることができます。ユーザーがオフラインの場合、メッセージはオフラインメッセージとして送信されます。

私はまだメールを探していますが、試してみました。

単純なSMTPサーバーには、 hmail を使用します。ソースと宛先に関係なく、ローカルマシンからのすべてのSMTP要求を受け入れ、ローカルホストから送信されていないSMTP要求を拒否するように構成します。中央に配置されたアプリケーションがある場合、これは問題ありません。

アプリを配布する場合は、まったく異なる状況になります。多くのISPがSMTPトラフィックに制限を設定している場合、ユーザーがメールアカウントの詳細を入力し、それを使用してメールを送信できるようにすることが最善の選択肢です。これにより、すべてのユーザーが作業設定を行えるようになります。次に、選択したyoru言語用に存在するライブラリまたは事前作成されたコードを使用して、これらの設定を使用してメールを送信します。

毎週のダイジェストにする必要がありますか?代わりに、 Growl (または同等のもの)を使用して、リアルタイムで完了しているタスクをユーザーに通知してください。背景?

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top