TsgcWSPClient_sgc › Methoden › Subscribe

Subscribe Methode

Abonneert de client op een aangepast kanaal.

Syntaxis

procedure Subscribe(const aChannel: String; const aGuid: String = '');

Parameters

NaamTypeBeschrijving
aChannelconst StringNaam van het te abonneren kanaal.
aGuidconst StringOptionele GUID van de doelserver-side sgc-protocolinstantie. Laat leeg om de standaard te gebruiken.

Opmerkingen

Verzendt een abonnementsverzoek voor het opgegeven kanaal. Wanneer de server het abonnement bevestigt, wordt de OnSubscription-gebeurtenis geactiveerd. Na het abonneren worden berichten gepubliceerd naar het kanaal afgeleverd via OnEvent.

aChannel wordt door de server vergeleken als een exacte tekenreeks. MQTT-achtige jokertekens zoals topic1/# of topic1/+ worden niet geïnterpreteerd: ze worden behandeld als letterlijke tekens in de kanaalnaam, zodat een client die is geabonneerd op topic1/# geen berichten ontvangt die worden gepubliceerd naar topic1/sensorA.

Om u in één aanroep op meerdere kanalen te abonneren, scheidt u ze met een komma:

oProtocol.Subscribe('topic1/a,topic1/b,topic1/c');

De komma is het scheidingsteken van de lijst en kan dus geen deel uitmaken van een kanaalnaam. Dezelfde door komma's gescheiden syntaxis geldt voor UnSubscribe en voor de channel-, exclude- en include-argumenten van Broadcast en Publish.

De server kan een kanaalargument optioneel uitbreiden met maskervergelijking (* en ?, geen MQTT-syntaxis) in plaats van een exacte overeenkomst. Zie TsgcWSPServer_sgc.UseMatchesMask. Gebruik voor echte MQTT-topicfilters met #- en +-semantiek in plaats daarvan TsgcWSPClient_MQTT.

Voorbeeld

oProtocol.Subscribe('news');

// multiple channels in one call
oProtocol.Subscribe('topic1/a,topic1/b,topic1/c');

Terug naar methoden