Titanium — Integração MQTT
Este documento descreve a configuração da comunicação MQTT da controladora de acesso TITANIUM com o servidor de controle de acesso. O conteúdo é de uso interno/restrito e não deve ser publicado no portal público.
A controladora TITANIUM comunica-se com o servidor de controle de acesso através de um broker MQTT, que pode ser o Accelero Cloud ou um broker customizado. Este documento descreve os campos da tela de configuração MQTT e da tela de configuração do canal UDP disponíveis no modo de configuração da controladora.
Fonte: TITANIUM — Manual de Hardware v1.2 (firmware 1.0.19, mai/2023), seção Comunicação.
Acesso à configuração
As telas de comunicação são acessadas pelo navegador, no modo de configuração da controladora, pelo menu Comunic da tela inicial. Esse menu dá acesso às telas de Conexão, WiFi, Ethernet, MQTT e UDP:
| Item do menu | Função |
|---|---|
| Conexão | Tipo de mídia usado para conexão à rede (WiFi ou Ethernet) no modo operação |
| WiFi | Parâmetros da rede WiFi a ser usada no modo operação |
| Ethernet | Parâmetros da rede cabeada (conector RJ45) usada no modo operação |
| MQTT | Parâmetros para acessar o servidor de comunicação MQTT (Broker) |
| UDP | Parâmetros do canal de comunicação UDP |
Tela de configuração MQTT
Nesta tela são informados os parâmetros de comunicação para estabelecer a conexão com o servidor de comunicação MQTT. Também são fornecidas informações sobre a instalação física do controlador.

| Campo | Descrição |
|---|---|
| Conexão | Define se a placa deve conectar-se ao broker MQTT Accelero Cloud, a um broker MQTT customizado ou a nenhum broker MQTT. Quando selecionada a opção "Automático", apenas o campo Facility Id deve ser preenchido. |
| Facility Id | Identificação única da instalação. Todos os controladores de uma instalação devem ter o mesmo Facility Id. Ex.: empresax, edificioz. |
| TLS | Marque esta opção caso o controlador deva estabelecer a comunicação com o broker MQTT no modo seguro (Transport Layer Security). É necessário que o servidor permita este modo de comunicação. |
| Broker | Endereço URL do servidor de comunicação utilizado na instalação. |
| Port | Número da porta de comunicação para comunicação com o broker MQTT. |
| User name | Nome do usuário para acesso ao broker MQTT. |
| Password | Senha de acesso ao broker MQTT. |
| Device ID | Identificação única e exclusiva de cada controlador na instalação. Ex.: catraca1, porta2. |
Faça as alterações necessárias e clique em Salvar para confirmar.
Quando a conexão é feita através do Accelero Cloud, apenas o parâmetro Facility Id deve ser configurado, exatamente como definido no sistema de controle que administrará os controladores.
Tela de configuração UDP
Nesta tela são informados os parâmetros de comunicação para estabelecer conexão no protocolo UDP. Através desta conexão, outros equipamentos podem enviar informações para o controlador, tais como cartões/tags lidos em outros dispositivos.
| Campo | Descrição |
|---|---|
| Porta | Porta de comunicação a ser utilizada. Se configurada com o número de porta 0 (zero), o serviço fica desligado. |
Quando se utiliza a conexão UDP, é recomendável que o endereço IP do controlador seja fixo, pois o endereço IP deverá ser configurado no equipamento que enviará dados por esta conexão.
Protocolo MQTT (tópicos e mensagens)
No ACCELERO, a Titanium é implementada como subclasse da Aurum: class Titanium extends Aurum em plugins/accelero/private/src/Accelero/Controladores/Titanium.php (tipo de controladora CONTROLADOR_TITANIUM = 6). Os comandos enviados à placa e o tratamento das mensagens que ela publica são herdados da Aurum, então, do lado do servidor, o protocolo da Titanium é o mesmo da Aurum: use o protocolo MQTT da Aurum como referência de mensagens (acc_req, log, keepalive, info, ins, del, load_cards, rex_server, getconfig/setconfig etc.).
| Tópico | Direção | Uso |
|---|---|---|
facility/alias/to | Servidor → Titanium | Comandos para a controladora |
facility/broadcast/to | Servidor → todas | Mensagens de controle, como keepalive |
facility/alias/from/# | Titanium → servidor | Acessos, logs, keepalive, info e respostas |
facility/alias/status/# | Titanium → broker | Liberado na ACL só para a Titanium; o ACCELERO não tem processador próprio para esse tópico |
Permissões no broker (ACL): a Titanium sobrescreve a lista de tópicos da Aurum. Ao salvar uma Titanium com alias novo, o ACCELERO libera para o usuário MQTT da placa (o próprio alias): +/alias/from/#, +/alias/status/#, +/alias/to, +/server/to/#, +/io/alias/# e +/broadcast/to. Diferente da Aurum, entra status/# e não entra +/location/alias/#. Ao excluir a controladora, o usuário é removido da tabela mqtt_users. Com o módulo offline ativo, essa gestão de ACL não é feita (Controlador_Titanium_Listeners.php).
Outras diferenças da Titanium em relação à Aurum, no código do servidor:
| Item | Titanium |
|---|---|
Upgrade remoto (upgrade) | Usa o endpoint de firmware titanium (a Aurum usa aurum<versão major>) |
| Informações avançadas | Lê do metadata da placa timestamp, boardid, version, iplocal, ipdns, ipgateway, capcards, freecards e lastlist (datas no formato aammddhhmmss) |
| Abas de configuração | Views próprias: titaniumConfigNTP, titaniumConfigReaders, titaniumConfigRelaysTimers e titaniumConfigMode |
Isto descreve o que o ACCELERO envia e espera. O que o firmware publica em status/# e eventuais comandos próprios da Titanium só aparecem no firmware, que não está no repositório.