TsgcWSPServer_sgc › Metody › Publish
Publikuje wiadomość do wszystkich klientów subskrybujących dany kanał.
procedure Publish(const aMessage, aChannel: String; const aExclude: String = ''; const aInclude: String = ''; const aQueue: TwsQueue = queueLevel0);
| Nazwa | Typ | Opis |
|---|---|---|
aMessage | const String | Ładunek do opublikowania; dostarczany subskrybentom za pośrednictwem ich procedury obsługi OnEvent. |
aChannel | const String | Kanał, na którym publikowana jest wiadomość; symbole wieloznaczne, takie jak news*, rozgałęziają się do wszystkich pasujących kanałów z aktywnymi subskrybentami. |
aExclude | const String | Rozdzielona średnikami lista identyfikatorów GUID połączeń do pominięcia podczas rozsyłania. |
aInclude | const String | Rozdzielona średnikami lista identyfikatorów GUID połączeń, do których ograniczona jest publikacja. |
aQueue | const TwsQueue | Polityka przechowywania: queueLevel0 (brak przechowywania), queueLevel1 (zachowaj ostatnią wiadomość na kanał) lub queueLevel2 (kolejkuj każdą wiadomość), dzięki czemu subskrybenci łączący się później je otrzymają. |
Pełne przeciążenie. Rozszerza kanały z symbolami wieloznacznymi względem bieżących subskrypcji, zapisuje zachowaną kopię w kolejce po stronie serwera, gdy parametr aQueue ma wartość queueLevel1 lub queueLevel2, a następnie rozsyła ładunek do wszystkich pasujących subskrybentów z zachowaniem filtrów Exclude/Include.
oProtocol.Publish('breaking news', 'news');
oProtocol.Publish('sticky banner', 'news', '', '', queueLevel1);
procedure Publish(const aMessage, aChannel: String; const aQueue: TwsQueue);
| Nazwa | Typ | Opis |
|---|---|---|
aMessage | const String | Ładunek do opublikowania; dostarczany subskrybentom przez zdarzenie OnEvent. |
aChannel | const String | Kanał do publikowania; obsługiwane są symbole wieloznaczne. |
aQueue | const TwsQueue | Polityka retencji (queueLevel0, queueLevel1, queueLevel2) dla późnych subskrybentów. |
Wygodne przeciążenie, które deleguje do pełnego przeciążenia z pustymi filtrami Exclude i Include. Należy go używać, gdy wystarczy wybrać poziom retencji i chce się, aby każdy pasujący subskrybent otrzymał wiadomość.
oProtocol.Publish('tick', 'prices', queueLevel1);