Identificação de Usuário em Eventos MQTT
Visão Geral
Ao enviar dados através de MQTT, você pode incluir informações de identificação de usuário em suas mensagens para rastrear qual usuário ou dispositivo originou os dados.
Estrutura da Mensagem com ID de Usuário
{
"user_id": "user@example.com",
"device_id": "device-123",
"timestamp": "2024-01-15T12:00:00Z",
"data": {
"temperature": 25.5,
"humidity": 60,
"pressure": 1013.25
}
}
Descrições dos Campos
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
user_id | string | Sim | Email ou identificador único do usuário |
device_id | string | Sim | Identificador único do dispositivo |
timestamp | string | Sim | Timestamp ISO 8601 |
data | object | Sim | Payload de dados do sensor |
Melhores Práticas
- Sempre inclua
user_idpara atribuição adequada dos dados - Use formato consistente de
device_idem toda sua organização - Certifique-se de que os timestamps estejam em UTC
- Valide os dados antes de enviar
Exemplo
import paho.mqtt.client as mqtt
import json
from datetime import datetime
# Configuração MQTT
broker = "mqtt.grouplink.com.br"
port = 8883
topic = "data/sensors"
# Criar mensagem com identificação de usuário
message = {
"user_id": "john.doe@company.com",
"device_id": "sensor-001",
"timestamp": datetime.utcnow().isoformat() + "Z",
"data": {
"temperature": 22.5,
"humidity": 55
}
}
# Publicar
client = mqtt.Client()
client.connect(broker, port)
client.publish(topic, json.dumps(message))
client.disconnect()