TsgcWSPClient_MQTT | Publish e Wait Response

O cliente MQTT permite o uso de alguns tipos de níveis de QoS; qualquer um desses níveis funciona em um nível diferente para garantir que as mensagens foram processadas conforme o esperado.

 

Existem os seguintes níveis de QoS:

 

 

Você pode tratar os eventos OnPubAck ou OnPubComp para saber se a mensagem foi processada pelo servidor, ou pode usar o método PublishAndWait para saber se a mensagem foi processada pelo servidor.

O uso de PublishAndWait é o mesmo que o método Publish normal, mas agora você tem um novo parâmetro chamado Timeout, onde o método retornará false se, após um certo período de tempo, não houver resposta do servidor. Por padrão, este valor é de 10 segundos.

 


if mqtt.PublishAndWait('topic', 'text') then
  ShowMessage('Message processed')
else
  ShowMessage('Message error');