# Ative seu dispositivo MQTT na Navixy

MQTT é um protocolo de mensagens leve projetado para comunicação eficiente entre dispositivos remotos com largura de banda de rede mínima. É uma excelente escolha para comunicação Máquina-a-Máquina (M2M), tornando-se ideal para projetos de telemática veicular. Este documento descreve como conectar um dispositivo GPS ao Navixy usando MQTT.

## Como o MQTT Funciona

O MQTT opera no princípio 'cliente e broker' e utiliza uma arquitetura Publish/Subscribe:

* **Cliente**: Qualquer dispositivo de Internet das Coisas (IoT) que execute uma biblioteca MQTT, como um servidor dedicado, microcontrolador, aplicativo ou sensor.
* **Broker**: Um servidor passivo que mediará a comunicação entre os clientes. Ele lida com autenticação, gerencia conexões, sessões e assinaturas.

Nesta configuração, os clientes conectam-se ao broker, que então facilita a comunicação entre os clientes publicadores (dispositivos que enviam dados) e os clientes assinantes (dispositivos ou servidores que recebem dados).

## Ativando Seu Dispositivo MQTT no Navixy

Dispositivos MQTT estão se tornando cada vez mais prevalentes em rastreamento GPS e telemática devido à sua alta flexibilidade e capacidade de atender a diversas necessidades de negócio. No entanto, eles exigem um processo de configuração distinto em comparação com dispositivos tradicionais.

**Pontos principais:**

* Dispositivos MQTT não podem ser registrados automaticamente e devem ser configurados manualmente.
* Esses dispositivos operam usando o modelo Publisher/Subscriber, que é diferente do modelo tradicional cliente-servidor.

**Modelo Publisher/Subscriber vs. Modelo Cliente-Servidor**

No modelo tradicional cliente-servidor, o dispositivo (cliente) envia pacotes de dados diretamente ao servidor, que então processa os dados e envia respostas de volta ao dispositivo. Esse modelo é simples, mas limitado à comunicação um-para-um.

![](https://786860322-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIgDb43gtyXcm1Av4h1np%2Fuploads%2Fgit-blob-e380430cb6f8b3fd11095dc56d710a310ef014c5%2Fimage-20240717-170644.png?alt=media)

Em contraste, o modelo Publisher/Subscriber usado por dispositivos MQTT permite uma comunicação mais flexível e escalável. Veja como funciona:

* **Publicador**: O dispositivo envia pacotes de dados para um broker MQTT.
* **Broker**: O broker armazena esses pacotes de dados.
* **Assinante**: O servidor Navixy assina os pacotes de dados de dispositivos específicos usando seus números IMEI e o endereço do broker.

![](https://786860322-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIgDb43gtyXcm1Av4h1np%2Fuploads%2Fgit-blob-1752cdba20614e231763035834e9051d79fa8d79%2Fimage-20240717-170707.png?alt=media)

## Etapas de Configuração do Dispositivo MQTT

Demonstramos como configurar seu dispositivo MQTT na plataforma Navixy por meio de alguns exemplos.

### Exemplo 1. Dispositivos Xirgo Global (ex BCE)

#### Configurar o Dispositivo no FMSET

* Faça login na sua conta FMSET.
* Vá para Connectivity → Telemetry Server → MQTT Broker Address Settings.
* Insira os seguintes parâmetros:\
  Plataforma dos EUA: `mqtt.us.navixy.com` porta `1883`\
  Plataforma da UE: `mqtt.eu.navixy.com` porta `1883`

![](https://786860322-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIgDb43gtyXcm1Av4h1np%2Fuploads%2Fgit-blob-8ee95de1987bc8e74cc0aa1830b701a75b74b461%2Fimage-20240717-165930.png?alt=media)

Em MQTT Security → Authorization, adicione um usuário com as seguintes configurações:

* **Client ID**: `%IMEI%`
* **Username**: `bce_device`
* **Password**: `secretword`

![](https://786860322-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIgDb43gtyXcm1Av4h1np%2Fuploads%2Fgit-blob-47b7bf65136dc3e5446ad460f811e958e84a72f3%2Fimage-20240717-170022.png?alt=media)

Certifique-se de que sua configuração de tópico esteja correta:

* Todos os tópicos, exceto Output Control Topic Name, estão definidos com valores padrão.
* Output Control Topic Name: `%IMEI%/OUTC`

![](https://786860322-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIgDb43gtyXcm1Av4h1np%2Fuploads%2Fgit-blob-25ef4469acb315efde6d3bad1f55f0b8e9f90222%2Fimage-20240717-170207.png?alt=media)

Salve sua configuração.

Cada tópico que começa com “BCE” indica que o dispositivo opera como publicador nesses casos. Para telemetria, eventos, arquivos e dados em tempo real, o dispositivo atua como publicador, enviando esses pacotes ao broker. O servidor Navixy então pode extrair esses pacotes de dados do broker. A comunicação entre assinantes e publicadores é gerenciada através de tópicos, sendo que cada tópico corresponde a um tipo específico de mensagem.

Para comandos que alternam a saída do dispositivo, o dispositivo funciona como assinante. Ele espera receber comandos do servidor Navixy, enviados através do broker usando o IMEI do dispositivo. Nesse caso, o dispositivo entende que deve alternar a saída.

Ao configurar um dispositivo compatível com MQTT, o usuário deve especificar o nome de usuário e a senha esperados pelo servidor. Essas configurações são mostradas nas capturas de tela fornecidas acima.

#### Adicione o Dispositivo à plataforma Navixy

1. **Acesse Sua Conta de Usuário**: Faça login na sua conta de usuário Navixy.
2. **Selecione o Dispositivo**: Escolha o dispositivo Xirgo Global (BCE) compatível com MQTT (marcado como IOTM).
3. **Prossiga para a Próxima Etapa**: Clique no botão “Next Step”.
4. **Especifique o IMEI**: Insira o IMEI do dispositivo.
5. **Ative o Dispositivo**: Clique no botão “Activate”.

![](https://786860322-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIgDb43gtyXcm1Av4h1np%2Fuploads%2Fgit-blob-b0a0c92f244c5f17953e78a98db864cb2c5c8691%2Fimage-20240717-170552.png?alt=media)

### Exemplo 2. Dispositivos Globalmatix xTCU

#### Configure o Dispositivo

* Insira as seguintes configurações:\
  Plataforma dos EUA: `mqtt.us.navixy.com:1883`\
  Plataforma da UE: `mqtt.eu.navixy.com:1883`
* **Tópico**: `globalmatix/in`
* **Login/Senha**: `globalmatix_device/secretword`
* Salve a configuração.

![](https://786860322-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIgDb43gtyXcm1Av4h1np%2Fuploads%2Fgit-blob-db01d37cf9e73fbbe98890e07e2cbd6ab196dde5%2Fimage-20240717-170804.png?alt=media)

#### Adicionar Dispositivo na Plataforma Navixy

* **Acesse sua conta de usuário.**
* **Selecione o dispositivo Globalmatix na lista.**
* **Clique no botão “Next Step”.**
* **Especifique o IMEI do dispositivo.**
* **Clique no botão “Activate”.**

![](https://786860322-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIgDb43gtyXcm1Av4h1np%2Fuploads%2Fgit-blob-83d406f918ac4bad13c57b88cf515c6650823d52%2Fimage-20240717-170828.png?alt=media)

### Exemplo #3 Dispositivos Xirgo Global XG37/XG40/GX47

#### #Configure o dispositivo&#x20;

1. **Configure o APN.**
2. **Verifique as configurações de sessão.**
3. **Configure o endereço do servidor:**

* Servidor: `devices.xgfleet.eu`
* Porta: `1888`
* Protocolo: `TCP`

4. **Verifique as configurações do nome do tópico MQTT.**
5. **Configure as configurações do broker MQTT:**

* Nome de domínio / IP: *Domínio configurado no Navixy Admin Panel*
* Porta: `1883`
* Protocolo: `TCP`

**APN configurado**

<figure><img src="https://786860322-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIgDb43gtyXcm1Av4h1np%2Fuploads%2FoUENEoU1b55okkk2treq%2Funknown.png?alt=media&#x26;token=4ac25501-c14a-4490-a70a-c1d5bb75803a" alt=""><figcaption></figcaption></figure>

**Configurações de Sessão.**&#x20;

<figure><img src="https://786860322-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIgDb43gtyXcm1Av4h1np%2Fuploads%2F1jkiTQ4DNNHDa4qfJSYk%2Funknown.png?alt=media&#x26;token=047b0571-061e-4ab9-b17e-9eef1ded7c7b" alt=""><figcaption></figcaption></figure>

**Endereço do servidor de configuração.**&#x20;

<figure><img src="https://786860322-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIgDb43gtyXcm1Av4h1np%2Fuploads%2FH111OjP8EZyDzkFtEl2d%2Funknown.png?alt=media&#x26;token=655c5636-7230-4537-9f4d-2f14f4d6a1e4" alt=""><figcaption></figcaption></figure>

**Configurações de nomes de tópicos MQTT**

<figure><img src="https://786860322-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIgDb43gtyXcm1Av4h1np%2Fuploads%2FcDglhVLM5wsdYABe3S5z%2Funknown.png?alt=media&#x26;token=22fcec87-b53a-4021-95ba-70f2e4278042" alt=""><figcaption></figcaption></figure>

**Configurações de endereço do broker MQTT.**

<figure><img src="https://786860322-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIgDb43gtyXcm1Av4h1np%2Fuploads%2F3xCSt3Yt12Amuo6Cid1m%2Funknown.png?alt=media&#x26;token=18c84b6f-4648-4cd1-9121-cc6035c6eb0c" alt=""><figcaption></figcaption></figure>

#### **Adicione o Dispositivo à plataforma Navixy**

* **Acesse Sua Conta de Usuário:** Faça login na sua conta de usuário Navixy.
* **Selecione o Dispositivo:** Escolha o dispositivo Xirgo XG37/XG40/GX47 compatível com MQTT (marcado como IOTM).
* **Prossiga para a Próxima Etapa:** Clique no botão “Next Step”.
* **Especifique o IMEI:** Insira o IMEI do dispositivo.
* **Ative o Dispositivo:** Clique no botão “Activate”.

<figure><img src="https://786860322-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIgDb43gtyXcm1Av4h1np%2Fuploads%2FlbQ0TW65YWjST9GzFCfP%2Funknown.png?alt=media&#x26;token=adea9e2f-f00b-4a3f-87aa-39c253a87fb7" alt=""><figcaption></figcaption></figure>

<br>
