TsgcWSPClient_MQTT › Métodos › UnSubscribe
Elimina una o más suscripciones de temas activas de la sesión MQTT actual.
function UnSubscribe(const aTopic: string; aUnsubscribeProperties: TsgcWSMQTTUnsubscribe_Properties = nil) : Word;
| Nombre | Tipo | Descripción |
|---|---|---|
aTopic | const string | Filtro de tema exacto, coincidente con una llamada Subscribe anterior, que se desea eliminar. |
aUnsubscribeProperties | TsgcWSMQTTUnsubscribe_Properties | Propiedades opcionales de MQTT 5.0 (por ejemplo, propiedades de usuario). Pase nil cuando no sean necesarias. |
Identificador de paquete asignado al paquete UNSUBSCRIBE; correlaciónelo con OnMQTTUnSubscribe para leer los códigos de razón del agente. (Word)
Sobrecarga de un único tema. El filtro debe coincidir con el que se pasó originalmente a Subscribe, incluidos los comodines; de lo contrario, el broker reportará un código de motivo "No subscription existed". Los mensajes pendientes que ya están en tránsito pueden seguir entregándose después de la llamada.
MQTT.UnSubscribe('sensors/+/temperature');
function UnSubscribe(aTopics: TsgcWSTopics): Word;
| Nombre | Tipo | Descripción |
|---|---|---|
aTopics | TsgcWSTopics | Colección de filtros de tópicos a eliminar con un único paquete UNSUBSCRIBE. |
Identificador de paquete del paquete UNSUBSCRIBE agrupado. (Word)
Sobrecarga por lotes útil cuando se desuscribe a un cliente que sigue muchos filtros, o cuando un cambio de modo obliga a recablear varias suscripciones a la vez. Cada entrada de la colección produce su propio código de razón en el UNSUBACK del broker, notificado a través de OnMQTTUnSubscribe.
oTopics := TsgcWSTopics.Create;
try
oTopics.Add('sensors/#');
oTopics.Add('alerts/#');
MQTT.UnSubscribe(oTopics);
finally
oTopics.Free;
end;