Mantendo a Conectividade Entre os Controladores e a Central
Todo controlador deve manter a central informada dos momentos em que ele está conectado e que perde conexão com a internet.
Para isso, ao se conectar deve enviar a mensagem CONTROLADOR_ONLINE e deixar como testamento a mensagem CONTROLADOR_OFFLINE. Um controlador pode testar a conectividade com a central através do comando ECHO. A central pode fazer o mesmo com qualquer controlador.
Controlador Online
Ao se conectar, o controlador deve publicar a mensagem CONTROLADOR_ONLINE no tópico /controladores/conn/online para avisar à central que ele pode receber comandos remotos. A figura abaixo abaixo apresenta o diagrama de comunicação para essa mensagem:
Especificação da Mensagem
Campo | Tipo | Obrigatório | Descrição |
---|---|---|---|
idControlador | Texto UUID | SIM | Identificador do Controlador |
dataHora | Número Longo | SIM | Carimbo de tempo referente ao momento de criacao da mensagem. Deve estar no formato milissegundo desde 1 de janeiro de 1970 UTC |
versao72c | Texto | SIM | Versão do 72c |
{
"dataHora":"1471272798600",
"versao72c": "1.0.0",
"status" : "ver tabela de status"
}
Controlador Offline
Ao se conectar, o controlador deve publicar a mensagem de testamento CONTROLADOR_OFFLINE que será entregue automaticamente quando ele perder conexão com o broker MQTT. Essa mensagem deve ser publicada no tópico /controladores/conn/offline. A figura abaixo apresenta o diagrama de comunicação para essa mensagem:
Especificação da Mensagem
Campo | Tipo | Obrigatório | Descrição |
---|---|---|---|
idControlador | Texto UUID | SIM | Identificador do Controlador |
dataHora | Número Longo | SIM | Carimbo de tempo referente ao momento de criacao da mensagem. Deve estar no formato milissegundo desde 1 de janeiro de 1970 UTC |
{
"dataHora":"1471272798600"
}