Créer un système de messagerie interne avec des rails
-
21-12-2019 - |
Question
J'ai des utilisateurs capables de créer dinnerevent qui contiennent des aliments.L'utilisateur spécifie les aliments préférés à l'aide d'une table de jointure.Voudrais créer un système de messagerie interne qui envoie automatiquement un avis à d'autres utilisateurs qui "préfèrent" la nourriture dans le dinnerevent créé.Quelqu'un peut-il fournir des conseils sur la manière dont je peux m'approcher de cela ou s'il y a de bonnes ressources de référence là-bas (je n'ai pas eu beaucoup de chance de rechercher)?Pensé à Activemailer mais décida que je ne voudrais pas que les gens soient spammés tout le temps dans leur boîte de réception.Préférerait seulement utiliser des rails pour y parvenir.
La solution
Il y a beaucoup d'options ici et de nombreux cas d'utilisation pour réfléchir.Peut-être que vous pouvez commencer avec quelque chose de très simple que:
- suit la dernière date / heure de connexion pour chaque utilisateur
- sur une page (spécifique à l'utilisateur connecté), affichez tous les dinneurs créés depuis la dernière connexion qui correspondent à leurs préférences alimentaires.Devrait être un simple enregistrement actif pour tirer cela.
- Continuez à afficher cette liste jusqu'à ce qu'ils le renvoient (enregistrez cette date / heure) ou de vous connecter à nouveau
Un système de messagerie soufflé complet nécessitera probablement plus de choses complexes telles que les files d'attente pour chaque utilisateur souscrit à une file d'attente principale.Et éventuellement un magasin de données backend supplémentaire comme Redis.Je quitte délibérément les détails de quelque chose comme ça pour l'instant;C'est un sujet beaucoup plus gros.