TsgcWSPServer_sgcMethods › Publish

Publish Method

Publica uma mensagem para todo cliente assinado em um canal.

Overloads

Overload 1

Sintaxe

procedure Publish(const aMessage, aChannel: String; const aExclude: String = ''; const aInclude: String = ''; const aQueue: TwsQueue = queueLevel0);

Parâmetros

NameTypeDescrição
aMessageconst StringPayload a publicar; entregue aos assinantes por meio de seu handler OnEvent.
aChannelconst StringCanal no qual a mensagem é publicada; curingas como news* se distribuem (fan out) para cada canal correspondente com assinantes ativos.
aExcludeconst StringLista de Guids de conexão separados por ponto e vírgula a serem ignorados durante o fan-out.
aIncludeconst StringLista de Guids de conexão separados por ponto e vírgula aos quais a publicação é restrita.
aQueueconst TwsQueuePolítica de retenção: queueLevel0 (sem retenção), queueLevel1 (mantém a última mensagem por canal) ou queueLevel2 (enfileira cada mensagem) para que assinantes que se conectem depois as recebam.

Observações

Sobrecarga completa. Expande canais com curinga contra as inscrições atuais, grava uma cópia retida na fila do lado do servidor quando aQueue é queueLevel1 ou queueLevel2 e então transmite o payload a todos os assinantes correspondentes, respeitando os filtros Exclude/Include.

Exemplo

oProtocol.Publish('breaking news', 'news');
oProtocol.Publish('sticky banner', 'news', '', '', queueLevel1);

Sobrecarga 2

Sintaxe

procedure Publish(const aMessage, aChannel: String; const aQueue: TwsQueue);

Parâmetros

NameTypeDescrição
aMessageconst StringPayload a publicar; entregue aos assinantes através de OnEvent.
aChannelconst StringCanal no qual publicar; curingas são suportados.
aQueueconst TwsQueuePolítica de retenção (queueLevel0, queueLevel1, queueLevel2) para assinantes tardios.

Observações

Sobrecarga de conveniência que delega à sobrecarga completa com filtros Exclude e Include vazios. Utilize-a quando você só precisa selecionar um nível de retenção e quer que todo assinante correspondente receba a mensagem.

Exemplo

oProtocol.Publish('tick', 'prices', queueLevel1);

Voltar para Métodos