Laravel 5

Délai spécial pour les notifications

  • Avatar de SquallX
    Membre depuis :
    04/11/2014
    Messages :
    120

    Salut à vous tous,

    Je suis en train de travailler sur un système de notifications multiple pour le site sur lequel je bosse et avant de commencer moultes tests, j'aurais une question toute simple.

    Est-ce qu'il est possible de définir différents délais d'éxécutions pour les notifications ?

    Par exemple, j'aimerais réaliser un seul script de notification pour 2 types de notifications, peut être plus par la suite :

    • email
    • notification push mobile (pour l'appli)

    Et bien entendu il ne faudrait pas que l'email parte tout de suite, mais quand l'article serait en ligne par exemple, hors en revanche, il faut programmer la notification push un peu avant pour qu'elle arrive à la bonne heure (je peux programmer la date de diffusion directement depuis l'api du prestataire).

    Du coup est-ce qu'un simple $this->delay = X placé dans la méthode toMail suffirait ou est-ce qu'il existe une autre solution selon vous ? J'aimerais éviter de faire 2/3 scripts distincts si possible =/

    Merci à vous =)

  • Avatar de bestmomo
    Membre depuis :
    07/04/2013
    Messages :
    1938

    Salut,

    Avec le système de Laravel on peut :

    • différer le déclenchement avec delay
    • imposer un ordre avec un chainage (withChain)

    Il faut donc s'en sortir avec ça.

  • Avatar de SquallX
    Membre depuis :
    04/11/2014
    Messages :
    120

    Je te remercie bestmomo mais j'ai changé mon fusil d'épaule en fait, je suis parti diffemment.

    Je remplis à chaque création / édition une table contenant la notification (ou la modifie selon cas), et toutes les 10 minutes une tâche CRON récupère les infos de cette table et envoit les notifications grâce à l'outil de Laravel. J'ai du coup une liste des utilisateurs en cache pour la diffusion (selon de multiples préférences).

Vous ne pouvez pas répondre à ce sujet.