TsgcWSPServer_sgc메서드 › Broadcast

Broadcast Method

연결된 모든 클라이언트에 텍스트 또는 스트림 페이로드를 브로드캐스트하며, 선택적으로 채널별로 필터링합니다.

Overloads

오버로드 1

구문

procedure Broadcast(aMessage: string; aChannel: string = ''; Exclude: String = ''; Include: String = '');

Parameters

NameType설명
aMessagestringsgc 봉투로 래핑되어 OnMessage를 통해 수신자에게 전달되는 텍스트 페이로드입니다.
aChannelstring선택적 채널 필터입니다. 제공되면 해당 채널에 구독한 클라이언트만 페이로드를 받습니다. 모든 연결에 도달하려면 비워 두십시오.
ExcludeString브로드캐스트를 수신하지 않아야 하는 연결 Guid의 세미콜론으로 구분된 목록.
IncludeString브로드캐스트가 제한되는 연결 Guid의 세미콜론으로 구분된 목록으로, 채널 필터를 재정의합니다.

설명

텍스트 오버로드입니다. 선택된 수신자에게 method=message 봉투를 보냅니다. QoS가 Level 1 또는 Level 2인 경우 서버는 메시지를 대기 목록에 저장하고 연결별 확인을 기다리며, 필요하면 재전송합니다. QoS Level 0인 경우 메시지는 추적 없이 한 번 전송됩니다.

예제

oProtocol.Broadcast('hello everyone');
oProtocol.Broadcast('channel update', 'news');

Overload 2

구문

procedure Broadcast(aStream: TStream; aChannel: string = ''; Exclude: String = ''; Include: String = ''; aSize: Integer = 0; aStreaming: TwsStreaming = stmNone);

Parameters

NameType설명
aStreamTStreamWebSocket에 그대로 전송되는 바이너리 페이로드. 수신자는 OnBinary를 통해 이를 받습니다.
aChannelstring선택적 채널 필터. 제공되면 해당 채널을 구독한 클라이언트만 프레임을 받습니다.
ExcludeString프레임을 수신해서는 안 되는 연결 Guid의 세미콜론으로 구분된 목록입니다.
IncludeString프레임이 제한되는 연결 Guid의 세미콜론으로 구분된 목록입니다.
aSizeInteger페이로드가 프래그먼트화될 때 바이트 단위의 청크 크기입니다. 스트림을 단일 프레임으로 보내려면 0을 전달하십시오.
aStreamingTwsStreaming스트림을 프레임으로 분할하는 데 사용되는 스트리밍 전략(stmNone, stmFragmented, stmCustom)입니다.

설명

바이너리 오버로드입니다. 스트림을 sgc JSON 봉투로 래핑하지 않고 선택된 수신자에게 직접 디스패치하므로, 클라이언트는 원시 바이너리 프레임을 봅니다. 텍스트 오버로드와 달리 이 경로는 QoS 대기 목록을 사용하지 않습니다. 전달은 기본 WebSocket 전송에서 최선 노력 방식입니다.

예제

oStream := TFileStream.Create('image.png', fmOpenRead);
try
  oProtocol.Broadcast(oStream, 'news');
finally
  oStream.Free;
end;

메서드로 돌아가기