TsgcWSAPIServer_WebPush › Methods › BroadcastNotification
Invia la stessa notifica a ogni abbonamento attualmente presente nell'elenco interno Subscriptions.
procedure BroadcastNotification(const aMessage : TsgcWebPushMessage);
| Nome | Tipo | Descrizione |
|---|---|---|
aMessage | const TsgcWebPushMessage | Notifica strutturata (Titolo/Corpo/Icona/Url) serializzata una volta tramite AsJSON e riutilizzata per ogni sottoscrizione. |
Itera l'elenco Subscriptions thread-safe sotto un lock e chiama SendNotification per ogni voce. Se un invio fallisce, viene generato OnWebPushSendNotificationException e, quando Remove restituisce True (il valore predefinito), la sottoscrizione viene automaticamente rimossa dall'elenco — ideale per la pulizia delle risposte 404/410 dal servizio push.
var
oMessage: TsgcWebPushMessage;
begin
oMessage := TsgcWebPushMessage.Create;
try
oMessage.Title := 'eSeGeCe Notification';
oMessage.Body := 'New version released!!!';
oMessage.Icon := 'https://www.esegece.com/images/esegece_logo_small.png';
oMessage.Url := 'https://www.esegece.com';
sgcWSAPIServer_WebPush1.BroadcastNotification(oMessage);
finally
oMessage.Free;
end;
end;
procedure BroadcastNotification(const aMessage: string);
| Nome | Tipo | Descrizione |
|---|---|---|
aMessage | const string | Payload grezzo (di solito JSON) consegnato verbatim a ogni sottoscrittore dopo la crittografia per sottoscrizione. |
Overload di comodità quando il payload del broadcast è già serializzato. È possibile aggiungere o rimuovere sottoscrizioni manualmente tramite Subscriptions.AddSubscription/Subscriptions.RemoveSubscription se gestisce Lei stesso la persistenza.
sgcWSAPIServer_WebPush1.BroadcastNotification(
'{"title":"Heads up","body":"Server restarting in 5 min"}');