Home > MQTT
[!IMPORTANT]
Em desenvolvimento (2.0). Ainda não está numa versão lançada e pode mudar.Nível: iniciante
Em uma frase: o pacote MQTT do RAL traz cliente e broker MQTT (3.1.1 e 5.0),
cliente e gateway MQTT-SN e uma ponte para o servidor REST, tudo em Pascal, nos
mesmos componentes de arrastar e soltar do resto do RAL.
Você vai precisar: RAL 2.0 com o pacote RALModuleMQTTPackage instalado (e o
RALModuleMQTTDsgn para a IDE). Para TLS, a OpenSSL 1.1 ou 3 ao lado do executável
(dependências). Nenhuma outra biblioteca.
| você quer | use |
|---|---|
| pedir algo e receber a resposta daquele pedido | REST (rotas, cliente) |
| receber avisos assim que acontecem, sem perguntar de tempo em tempo | MQTT |
| muitos aparelhos pequenos mandando leituras | MQTT (ou MQTT-SN, se for UDP ou rádio) |
| que a mensagem chegue mesmo com a rede caindo | MQTT com QoS 1 ou 2 |
| as duas coisas | o broker do RAL com a ponte REST |
No MQTT ninguém chama ninguém: quem tem uma notícia publica num tópico
(casa/sala/temperatura), e quem quer saber assina o tópico (ou um filtro como
casa/+/temperatura ou casa/#). O broker fica no meio e entrega.
| componente | paleta | para |
|---|---|---|
TRALMQTTClient |
RAL - Client | conectar a qualquer broker MQTT (o do RAL, Mosquitto, EMQX, HiveMQ, nuvens) |
TRALMQTTSNClient |
RAL - Client | MQTT-SN, para UDP e redes de sensores |
TRALMQTTBroker |
RAL - Server | ser o broker |
TRALMQTTSNGateway |
RAL - Server | receber clientes MQTT-SN no broker do RAL |
TRALMQTTRestModule |
RAL - Modules | publicar e consultar o broker por HTTP |
TRALMQTTBasicAuth, TRALMQTTSCRAMAuth, TRALMQTTNetTokenAuth, TRALMQTTSelfTokenAuth, TRALMQTTSASAuth, TRALMQTTCustomAuth |
RAL - Client | como o cliente se identifica (segurança) |
TRALMQTTDataSetLink |
RAL - DAO | mostrar as mensagens num grid (pacote opcional RALModuleMQTTDBPackage) |
ações TRALMQTTConnect, TRALMQTTDisconnect, TRALMQTTPublish |
(ActionList) | botões e menus sem código |
ProtocolVersion) ou sozinho, quando oVersionFallback).mqtt://, porta 1883), TLS (mqtts://, 8883), WebSocket (ws://, wss://),
Wiki: Home
Wiki: _Sidebar
Wiki: broker mqtt
Wiki: cliente mqtt
Wiki: cliente
Wiki: guia_dependencias
Wiki: mqtt confiabilidade
Wiki: mqtt rest
Wiki: mqtt seguranca
Wiki: mqtt sn
Wiki: roadmap
Wiki: rotas