TsgcWSPServer_sgc › Métodos › Broadcast
Difunde una carga útil de texto o flujo a todos los clientes conectados, opcionalmente filtrada por canal.
procedure Broadcast(aMessage: string; aChannel: string = ''; Exclude: String = ''; Include: String = '');
| Nombre | Tipo | Descripción |
|---|---|---|
aMessage | string | Carga útil de texto envuelta en el sobre sgc y entregada a los destinatarios a través de OnMessage. |
aChannel | string | Filtro de canal opcional. Cuando se suministra, solo los clientes suscritos a ese canal reciben la carga útil; déjelo vacío para llegar a cada conexión. |
Exclude | String | Lista de Guids de conexión separados por punto y coma que no deben recibir la difusión. |
Include | String | Lista separada por punto y coma de GUIDs de conexión a los que se restringe la difusión, anulando el filtro de canal. |
Sobrecarga de texto. Envía un envelope method=message a los destinatarios seleccionados. Cuando QoS es Level 1 o Level 2, el servidor almacena el mensaje en la lista pendiente y espera las confirmaciones por conexión, reenviando si es necesario; con QoS Level 0, el mensaje se transmite una vez sin seguimiento.
oProtocol.Broadcast('hello everyone');
oProtocol.Broadcast('channel update', 'news');
procedure Broadcast(aStream: TStream; aChannel: string = ''; Exclude: String = ''; Include: String = ''; aSize: Integer = 0; aStreaming: TwsStreaming = stmNone);
| Nombre | Tipo | Descripción |
|---|---|---|
aStream | TStream | Carga binaria enviada tal cual por el WebSocket; los destinatarios la reciben a través de OnBinary. |
aChannel | string | Filtro de canal opcional. Cuando se especifica, solo los clientes suscritos a ese canal reciben el frame. |
Exclude | String | Lista de Guids de conexión separados por punto y coma que no deben recibir el frame. |
Include | String | Lista separada por punto y coma de los Guid de conexión a los que se restringe el frame. |
aSize | Integer | Tamaño de fragmento en bytes cuando la carga útil se fragmenta; pase 0 para enviar el flujo como un único frame. |
aStreaming | TwsStreaming | Estrategia de streaming (stmNone, stmFragmented, stmCustom) utilizada para dividir el flujo en frames. |
Sobrecarga binaria. Envía el stream directamente a los destinatarios seleccionados sin envolverlo en el sobre JSON sgc, de modo que los clientes reciben un frame binario sin procesar. A diferencia de la sobrecarga de texto, esta ruta no utiliza la lista pendiente de QoS; la entrega es de mejor esfuerzo sobre el transporte WebSocket subyacente.
oStream := TFileStream.Create('image.png', fmOpenRead);
try
oProtocol.Broadcast(oStream, 'news');
finally
oStream.Free;
end;