TsgcWSAPIServer_WebPushMétodos › BroadcastNotification

BroadcastNotification Method

Envia a mesma notificação a cada subscription atualmente mantida na lista interna Subscriptions.

Overloads

Overload 1

Sintaxe

procedure BroadcastNotification(const aMessage : TsgcWebPushMessage);

Parâmetros

NameTypeDescrição
aMessageconst TsgcWebPushMessageNotificação estruturada (Title/Body/Icon/Url) serializada uma vez via AsJSON e reutilizada para cada assinatura.

Observações

Itera pela lista thread-safe Subscriptions sob um lock e chama SendNotification para cada entrada. Se um envio falhar, OnWebPushSendNotificationException dispara e, quando Remove retorna True (o padrão), a assinatura é automaticamente descartada da lista — ideal para limpar respostas 404/410 do serviço de push.

Exemplo

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;

Sobrecarga 2

Sintaxe

procedure BroadcastNotification(const aMessage: string);

Parâmetros

NameTypeDescrição
aMessageconst stringPayload bruto (geralmente JSON) entregue na íntegra a cada assinante após a criptografia por inscrição.

Observações

Sobrecarga prática quando a carga útil de broadcast já está serializada. Você pode adicionar ou remover assinaturas manualmente por meio de Subscriptions.AddSubscription/Subscriptions.RemoveSubscription se você mesmo gerenciar a persistência.

Exemplo

sgcWSAPIServer_WebPush1.BroadcastNotification(
  '{"title":"Heads up","body":"Server restarting in 5 min"}');

Voltar para Métodos