TsgcWSPClient_sgc › Métodos › Subscribe
Suscribe al cliente a un canal personalizado.
procedure Subscribe(const aChannel: String; const aGuid: String = '');
| Nombre | Tipo | Descripción |
|---|---|---|
aChannel | const String | Nombre del canal al que suscribirse. |
aGuid | const String | Guid opcional de la instancia del protocolo sgc del lado del servidor de destino. Déjelo vacío para utilizar el valor predeterminado. |
Envía una solicitud de suscripción al canal indicado. Cuando el servidor confirma la suscripción, se activa el evento OnSubscription. Tras la suscripción, los mensajes publicados en el canal se entregan a través de OnEvent.
El servidor compara aChannel como una cadena exacta. Los comodines de estilo MQTT como topic1/# o topic1/+ no se interpretan: se tratan como caracteres literales dentro del nombre del canal, por lo que un cliente suscrito a topic1/# no recibe los mensajes publicados en topic1/sensorA.
Para suscribirse a varios canales en una sola llamada, sepárelos con una coma:
oProtocol.Subscribe('topic1/a,topic1/b,topic1/c');
La coma es el delimitador de la lista, por lo que no puede formar parte de un nombre de canal. La misma sintaxis delimitada por comas se aplica a UnSubscribe y a los argumentos channel, exclude e include de Broadcast y Publish.
De forma opcional, el servidor puede expandir un argumento de canal mediante coincidencia por máscara (* y ?, no sintaxis MQTT) en lugar de una coincidencia exacta. Consulte TsgcWSPServer_sgc.UseMatchesMask. Para filtros de tema MQTT reales con semántica # y +, utilice TsgcWSPClient_MQTT.
oProtocol.Subscribe('news');
// multiple channels in one call
oProtocol.Subscribe('topic1/a,topic1/b,topic1/c');