Cosa sono le notifiche
Il sistema di notifiche di Laravel invia notifiche con un’API unificata su canali multipli: email, SMS, Slack, database, ecc. Differenza tra Mail e Notification
Per notifiche uguali su più canali (es. conferma di pagamento), le Notification sono più adatte.
Creazione di una Notification
app/Notifications/. Ogni classe ha un metodo via() e i metodi per generare il messaggio per ciascun canale.
Invio
Con il trait Notifiable
App\Models\User include già Notifiable. Usa notify().
Il trait
Notifiable può essere aggiunto a qualsiasi modello, non solo a User.Con la facade Notification
Per più utenti:sendNow().
Selezione dei canali
Il metodovia() restituisce l’array dei canali.
Canale email
Restituisci unMailMessage in toMail().
Per un messaggio d’errore (pulsante rosso) usa
error().
Email Markdown
markdown al posto di view in toMail().
Canale database
Salva le notifiche in DB per mostrarle in app.Preparazione della tabella
Metodo toArray
data di notifications.
Recupero
Segnare come lette
Notifiche in coda
AggiungiShouldQueue e Queueable per elaborarle in background.
ShouldQueue, notify() mette automaticamente in coda.
Invio simultaneo su più canali
Restituisci più chiavi davia() e definisci i relativi metodi.
Notifiche on-demand
Per notificare utenti senza account, usaNotification::route().