TsgcWSAPIServer_WebPush › Yöntemler › BroadcastNotification
Dahili Subscriptions listesinde şu anda tutulan her aboneliğe aynı bildirimi gönderir.
procedure BroadcastNotification(const aMessage : TsgcWebPushMessage);
| Name | Type | Açıklama |
|---|---|---|
aMessage | const TsgcWebPushMessage | AsJSON aracılığıyla bir kez serileştirilen ve her abonelik için yeniden kullanılan yapılandırılmış bildirim (Title/Body/Icon/Url). |
İş parçacığı güvenli Subscriptions listesini bir kilit altında yineler ve her giriş için SendNotification'ı çağırır. Bir gönderme başarısız olursa, OnWebPushSendNotificationException tetiklenir ve Remove True döndürüldüğünde (varsayılan), abonelik listeden otomatik olarak kaldırılır — push hizmetinden gelen 404/410 yanıtlarını temizlemek için idealdir.
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 | Type | Açıklama |
|---|---|---|
aMessage | const string | Abonelik başına şifrelemeden sonra her aboneye birebir teslim edilen ham yük (genellikle JSON). |
Yayın yükü zaten serileştirilmiş olduğunda kullanışlı aşırı yükleme. Kalıcılığı kendiniz yönetiyorsanız, abonelikleri Subscriptions.AddSubscription/Subscriptions.RemoveSubscription aracılığıyla manuel olarak ekleyebilir veya kaldırabilirsiniz.
sgcWSAPIServer_WebPush1.BroadcastNotification(
'{"title":"Heads up","body":"Server restarting in 5 min"}');