Quelle est la meilleure façon de donner à l'utilisateur des mises à jour hebdomadaires à partir de votre programme?

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

  •  05-07-2019
  •  | 
  •  

Question

J'ai un programme qui, pour la plupart, fonctionne en arrière-plan. Disons le faitWork (). Une fois par semaine, je souhaite informer l'utilisateur de certains travaux effectués au cours des derniers jours. Il s’agira d’un rapport d’état de base répertoriant certains fichiers téléchargés.

Au départ, je voulais envoyer cette mise à jour de statut par courrier électronique. Je me suis donc penché sur la question, mais il y avait beaucoup de problèmes. J'ai besoin d'un serveur SMTP alors j'ai regardé GMail. Ce n'est pas grave, mais il y a une limite quotidienne de 500 courriels, ce qui ne conviendrait pas pour la publication. En outre, le même mot de passe de compte de messagerie serait attribué à chaque copie du programme, ce qui, si je comprends bien, présente un risque, même si le mot de passe est stocké à l'aide d'un cryptage.

Ensuite, j'ai pensé que je pourrais peut-être utiliser le compte de messagerie de l'utilisateur pour envoyer un courrier électronique à lui-même. Cela comporte également quelques complications: l'utilisateur doit spécifier toutes les informations smtp pour son compte de messagerie, ce qui est trop compliqué pour l'utilisateur cible. De plus, je ne veux pas que les gens entrent le mot de passe de leur compte de messagerie dans mon programme uniquement pour envoyer des courriels. Je ne pense pas que ce soit une bonne habitude à promouvoir.

Est-il possible de le faire par courrier électronique? Le courrier électronique était mon premier choix car il s'agit d'un système de notification que les utilisateurs vont déjà vérifier. C'est assez peu intrusif.

Est-il nécessaire de configurer mon propre serveur smtp? Si oui, comment puis-je le faire?

Si le courrier électronique est un no-go, je pensais aussi simplement générer un fichier HTML local avec les informations pertinentes, puis envoyer une notification du programme une fois par semaine pour informer l'utilisateur qu'un nouveau rapport de mise à jour est prêt. . Je pense que c'est totalement faisable, que c'est trop instructif et que ce n'est pas mon premier choix. Je souhaite utiliser un système déjà utilisé par l'utilisateur.

Merci! -groupe

Était-ce utile?

La solution

Une autre solution consiste à faire en sorte que le programme génère un flux RSS et indique à l'utilisateur comment s'y abonner. En outre, une fois qu'une nouvelle mise à jour est générée, affichez le toast de mise à jour pendant environ une minute, puis masquez-le automatiquement et changez l'icône de votre systray en une icône différente. Dans environ un jour, changez-le pour revenir à l'icône d'origine. De plus, donnez à l’utilisateur un paramètre pour éteindre le pain grillé de façon permanente.

Compter sur le courrier électronique n’est pas une bonne idée, car vous auriez à collecter les courriers électroniques des utilisateurs et à régler les problèmes de confidentialité, vous seriez effectivement en train de doser un serveur SMTP tiers ou investir dans l’infrastructure pour votre compte. propre.

Autres conseils

Si j'ai bien compris, l'utilisateur exécute ce programme sur son ordinateur, en arrière-plan.

Le moyen idéal pour notifier quelque chose serait, à mon humble avis, que le programme soit réduit au minimum dans la barre des tâches, une petite fenêtre contextuelle qui cliquait sur cette page ouvrirait une fenêtre avec un rapport hebdomadaire.

J'espère que cela vous aidera.

Si vous leur demandez de spécifier leur propre serveur smtp, assurez-vous de placer un " Envoyer un e-mail de test " bouton là-bas pour qu'ils puissent le tester. Je sais par expérience que les utilisateurs entrent toujours des informations erronées lors de la spécification d'un serveur SMTP, d'un nom d'utilisateur, d'un mot de passe, ce qui est encore pire, car certains serveurs SMTP nécessitent un nom d'utilisateur / mot de passe et d'autres non.

S'ils saisissent des informations incorrectes (ou s'ils changent), vous devrez peut-être avoir un moyen de leur envoyer des rapports plus anciens, ou un autre moyen de les avertir que vous ne pouvez pas envoyer d'e-mails.

Les courriers électroniques sont excellents, mais vous pourriez également avoir besoin d'une méthode alternative.

Google pour les fenêtres de serveur smtp simples vous donne cette

Pour être honnête, si vous envoyez simplement des choses une fois par semaine, la meilleure solution est de recevoir un courrier électronique, car il n’est pas assez fréquent de garantir que l’utilisateur sera à sa machine pour accepter une autre sorte de demande, ce qui nécessiterait que vous écriviez logiciel propriétaire.

Vous pouvez également l'afficher sur un canal IRC ou écrire un bot MSN pour envoyer un message à l'utilisateur. Le message serait alors envoyé comme message hors ligne si l'utilisateur était hors ligne.

Je choisirais toujours le courrier électronique, il a fait ses preuves.

Pour un serveur SMTP simple, j’utilise hmail . Je le configure pour accepter toutes les demandes SMTP de la machine locale, indépendamment de la source et de la destination, et pour refuser toute demande SMTP ne provenant pas de l'hôte local. Cela ira si vous avez une application située au centre.

Si vous souhaitez distribuer l'application, la situation est totalement différente. Si de nombreux FAI imposent des restrictions sur le trafic SMTP, votre meilleure option serait de permettre aux utilisateurs de saisir les détails de leur compte de messagerie, puis de les utiliser pour envoyer du courrier. Cela garantira que tout le monde peut définir des paramètres de travail. Ensuite, utilisez la bibliothèque ou le code préconçu existant dans la langue de votre choix pour envoyer un courrier électronique en utilisant ces paramètres.

Faut-il que ce soit un résumé hebdomadaire? Au lieu de cela, pourquoi ne pas utiliser Growl (ou son équivalent) pour informer l'utilisateur des tâches en cours d'achèvement, en temps réel? le fond?

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top