TsgcWSAPIServer_WebPush › Methoden › BroadcastNotification
Sendet dieselbe Benachrichtigung an jedes Abonnement, das derzeit in der internen Subscriptions-Liste gehalten wird.
procedure BroadcastNotification(const aMessage : TsgcWebPushMessage);
| Name | Typ | Beschreibung |
|---|---|---|
aMessage | const TsgcWebPushMessage | Strukturierte Benachrichtigung (Title/Body/Icon/Url), die einmalig über AsJSON serialisiert und für jedes Abonnement wiederverwendet wird. |
Iteriert die threadsichere Subscriptions-Liste unter einer Sperre und ruft für jeden Eintrag SendNotification auf. Wenn ein Senden fehlschlägt, wird OnWebPushSendNotificationException ausgelöst, und wenn Remove als True zurückgegeben wird (Standard), wird das Abonnement automatisch aus der Liste entfernt — ideal zum Aufräumen von 404-/410-Antworten des Push-Dienstes.
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);
| Name | Typ | Beschreibung |
|---|---|---|
aMessage | const string | Rohe Payload (üblicherweise JSON), die nach der Verschlüsselung pro Abonnement wortwörtlich an jeden Abonnenten geliefert wird. |
Praktische Überladung, wenn die Broadcast-Nutzlast bereits serialisiert ist. Sie können Abonnements manuell über Subscriptions.AddSubscription/Subscriptions.RemoveSubscription hinzufügen oder entfernen, wenn Sie die Persistenz selbst verwalten.
sgcWSAPIServer_WebPush1.BroadcastNotification(
'{"title":"Heads up","body":"Server restarting in 5 min"}');