Connettività IoT
La Connettività IoT definisce come i device fisici comunicano con Trackle Spaces. È una proprietà del template: tutti gli asset di quel tipo usano lo stesso protocollo.
Nella scheda del template trovi la sezione Connettività IoT (separata da Telemetria, dove configuri le variabili). Scegli il tipo e completa le impostazioni specifiche; i valori live arrivano solo dopo aver collegato ogni asset con il suo ID esterno.
Tipi supportati
| Tipo | Quando usarlo |
|---|---|
| Trackle | Device con modulo/SDK Trackle nativo. |
| MQTT | Device che pubblicano/sottoscrivono topic MQTT. Include i profili Generico, Seneca, Siemens Logo e Teltonika RutOS. |
| HTTP | Device che chiamano periodicamente le API HTTP di Trackle Spaces. |
Trackle
Per i device con modulo/SDK Trackle nativo.
- Nel template, in Connettività IoT, seleziona Trackle.
- Inserisci le credenziali API Trackle (Product ID, Client ID, Client Secret) usate da Spaces per autenticarsi alle API Trackle.
- Nella console Trackle, configura l'integrazione Trackle Spaces (Prodotto → Integrazioni → Trackle Spaces) con l'URL webhook indicato nel template.
- Su ogni asset, imposta l'ID esterno (spesso il seriale del device, oppure un metadato di provisioning).
MQTT
L'ID esterno dell'asset serve per autenticazione e topic dedicati. Il token di Space (vedi API Token) è la password del device.
Dopo aver scelto MQTT, seleziona un profilo. Il profilo non cambia broker, username o password: cambia come Spaces interpreta i payload in ingresso e come costruisce i messaggi di scrittura (downlink). Influenza anche quali opzioni vedi sui campi di telemetria.
Profili
| Profilo | Quando usarlo | Downlink |
|---|---|---|
| Generico | Qualsiasi client MQTT. Tu definisci topic e forma del payload di scrittura. | Suffisso topic e template payload configurabili sul template; ogni campo scrivibile può averne uno proprio. |
| Seneca | Gateway/device Seneca. | Topic e payload sono fissi ({ "value": … }). I comandi remoti (reboot, VPN, …) sono disponibili sulla pagina dell'asset. |
| Siemens Logo | PLC Siemens LOGO! via MQTT. | Payload fisso nel formato state del LOGO ({{key}} è il nome del tag). |
| Teltonika RutOS | Router/gateway Teltonika (Modbus via MQTT). | Nessun payload di template: ogni campo scrivibile ha il proprio JSON di scrittura (spesso precompilato dal rilevamento). |
Per Seneca, Siemens Logo e Teltonika il testo in UI ricorda che topic e payload downlink sono definiti dal profilo: i campi Suffisso topic e Template payload del template restano nascosti.
Profilo Generico — downlink del template
Oltre al profilo, puoi configurare due opzioni opzionali usate quando una variabile scrivibile viene inviata al device. Valgono per tutti i campi che non hanno un template di scrittura proprio:
| Campo | Effetto |
|---|---|
Suffisso topic (topicSuffix) | Aggiunto al topic di subscribe downlink. Può usare il placeholder {{key}} (chiave del campo). Se vuoto, si usa il topic standard (…/<chiave>). |
Template payload (payloadTemplate) | Forma del messaggio pubblicato. Placeholder: {{key}}, {{value}}, {{json_value}}, {{random}}. Se vuoto, viene pubblicato solo il valore grezzo. |
Un template sul singolo campo (vedi Telemetria) ha priorità su quello di template.
Profilo Seneca — comandi remoti
Credenziali tipiche usate dal device:
- Tenant: nome dello Space
- ID esterno: di norma il MAC del device
- Token: token di autenticazione dello Space
Dallo scambio dati nel dettaglio asset puoi inviare (con conferma):
| Comando | Codice |
|---|---|
| Reboot | RESET |
| Configuration set / get | CONF_SET / CONF_GET |
| Firmware update | FW_UPDATE |
| VPN PPP on | VPN_PPP_ON |
| VPN on / off | VPN_ON / VPN_OFF |
| VPN custom on / off | VPN_CUSTOM_ON / VPN_CUSTOM_OFF |
| Clean logs | DL_CLEAN_LOGS |
Questi comandi non sono variabili di telemetria: usano un topic dedicato (act) e un payload { "act": <codice> }. La scrittura di un campo (setpoint, uscite, …) usa invece { "value": <valore> }.
Cosa configura il device
Nella scheda Connettività IoT del template trovi anche le istruzioni di connessione (broker TLS, username, password/token, topic di publish e subscribe). Usa quelle credenziali sul device; l'ID esterno va impostato sull'asset.
HTTP
Il device invia i dati con una POST all'API pubblica di Trackle Spaces, autenticandosi con il token di Space e l'ID esterno dell'asset (come header o come query parameter).
Impostazioni sul template
| Campo | Effetto |
|---|---|
| Timeout offline | Se il device non chiama l'API entro l'intervallo, l'asset risulta offline. Imposta 0 per disabilitare; se attivo, minimo 30 secondi. |
Nella stessa sezione trovi URL endpoint, esempi di richiesta e formati di payload accettati. La struttura dei campi (chiavi, tipi, unità) si definisce invece in Telemetria.