# Appendici
# Criteri nomenclatura Plexus
I carattere accettati da Plexus sono solo i caratteri alfanumerici [0-9, a-z, A-Z] e pochi altri simboli [-, _]. Punti di domanda, spazi, apici e doppi apici, slash e backslash, parentesi e simboli matematici sono proibiti.
Maggiori dettagli sull'uso delle API Functions e delle variabili qui
# Bridge mode API REST
La URL che offre le API REST è http://<HOST>/plexus/api/api.php
; accetta sia il metodo GET, che POST.
# Elenco parametri
Nome parametro | Obbligatorio | Tipo | Info |
---|---|---|---|
psw | check | string | Password per API / Bridge |
read | clear | array of string | Quando incluso, fa sì che la risposta venga popolata con i valori richiesti |
write | clear | array of tuple string-value | Quando incluso, fa sì che i valori richiesti vengano scritti nel sistema |
alarms_log | clear | string = "list" | Quando incluso, fa sì che la risposta venga popolata con la lista di messaggi di errore associati agli allarmi |
Warning
- il parametro "read" può includere nomi di canali di devices, variabili e timers di sections, e allarmi;
- il parametro "write" può includere nomi di canali di devices, variabili di sections, e allarmi; i timers al momento non sono supportati in scrittura
Hint
Per visualizzare l'intero elenco di nomi di canali di devices, variabili e timers di sections e allarmi, puoi navigare alla URL http://<HOST>/plexus/pages/data_table.php
# Struttura della risposta
La risposta, un oggetto JSON, avrà questa forma:
{
"error": 0,
"response": {
"system": "OK",
"alarms_log": { // questo campo "alarms_log" appare solo quando la richiesta contiene il campo "alarms_log" valorizzato con "list"
"63637f931523d": {
"message": "A sensor is broken, please replace it",
"triggered": 1667465107.086585,
"alert_name": "Faulty_sensor",
"element_id": "res",
"duration": "ACTIVE",
"rand_id": "63637f931523d",
"email": 1
}
},
"read": { // questo campo "read" appare solo quando la richiesta contiene "read"
"Variable_1": 77,
"Variable_2": 44
},
"write": "OK" // questo campo "write" appare solo quando la richiesta contiene "write"
}
}
# Esempio con metodo GET
curl --location -g --request GET 'http://localhost/plexus/api/api.php?json={"psw": "93gy6w1v", "read": ["Sensor_1", "Sensor_2"], "write": {"EV_1": 1}}'
Notice
I parametri descritti nella tabella sopra devono andare a formare una JSON string che deve essere passata in query string alla URL come valore di un unico parametro chiamato "json"
# Esempio con metodo POST
curl --location --request POST 'http://localhost/plexus/api/api.php' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'psw=93gy6w1v' \
--data-urlencode 'read[]=Variable_1' \
--data-urlencode 'read[]=Variable_2' \
--data-urlencode 'write[Variable_3]=5' \
--data-urlencode 'alarms_log=list'
Notice
Il Content-Type deve essere 'application/x-www-form-urlencoded'.
← Users Functions API →