TsgcWSPServer_sgc › Methods › Publish
Publica uma mensagem para todo cliente assinado em um canal.
procedure Publish(const aMessage, aChannel: String; const aExclude: String = ''; const aInclude: String = ''; const aQueue: TwsQueue = queueLevel0);
| Name | Type | Descrição |
|---|---|---|
aMessage | const String | Payload a publicar; entregue aos assinantes por meio de seu handler OnEvent. |
aChannel | const String | Canal no qual a mensagem é publicada; curingas como news* se distribuem (fan out) para cada canal correspondente com assinantes ativos. |
aExclude | const String | Lista de Guids de conexão separados por ponto e vírgula a serem ignorados durante o fan-out. |
aInclude | const String | Lista de Guids de conexão separados por ponto e vírgula aos quais a publicação é restrita. |
aQueue | const TwsQueue | Polí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. |
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.
oProtocol.Publish('breaking news', 'news');
oProtocol.Publish('sticky banner', 'news', '', '', queueLevel1);
procedure Publish(const aMessage, aChannel: String; const aQueue: TwsQueue);
| Name | Type | Descrição |
|---|---|---|
aMessage | const String | Payload a publicar; entregue aos assinantes através de OnEvent. |
aChannel | const String | Canal no qual publicar; curingas são suportados. |
aQueue | const TwsQueue | Política de retenção (queueLevel0, queueLevel1, queueLevel2) para assinantes tardios. |
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.
oProtocol.Publish('tick', 'prices', queueLevel1);