API Endpoints (V 1.0.61)

My Socage

Nome Tipo Header Endpoint Parametri Ritorna
Test GET No /mysocage/test Nessuno Stringa di test
Geolocations GET auth = API Key mysocage /mysocage/geos/{name}/{start} name = matricola piattaforma, start = data inizio (yyyy-mm-dd) json array delle geolocalizzazioni piattaforma da data inizio
Geolocations GET auth = API Key mysocage /mysocage/geos/{name}/{start}/{end} name = matricola piattaforma, start = data inizio (yyyy-mm-dd), end = data fine (yyyy-mm-dd) json array delle geolocalizzazioni piattaforma tra due date
Last Position Multi POST auth = API Key mysocage /mysocage/geos Body: elenco matricole tra apici (es. '20D00001','28T00002','24D00003') json array dell'ultima posizione pervenuta per ogni piattaforma nella lista
Activities (ore e giorni di lavoro) GET auth = API Key mysocage /mysocage/acts/{name}/{start} name = matricola piattaforma, start = data inizio (yyyy-mm-dd) json array delle attività piattaforma da data inizio, contenenti data/ora inizio e fine attività e le ore di lavoro
Activities (ore e giorni di lavoro) GET auth = API Key mysocage /mysocage/acts/{name}/{start}/{end} name = matricola piattaforma, start = data inizio (yyyy-mm-dd), end = data fine (yyyy-mm-dd) json array delle attività piattaforma tra due date, contenenti data/ora inizio e fine attività e le ore di lavoro
Hour Meter Multi POST auth = API Key mysocage /mysocage/hmeter Body: elenco matricole tra apici (es. '20D00001','28T00002','24D00003') json array dell'h.meter più recente per ogni piattaforma nella lista
Connection Status Multi POST auth = API Key mysocage /mysocage/connstatus Body: elenco matricole tra apici (es. '20D00001','28T00002','24D00003') json array dello stato connessione per ogni piattaforma nella lista. 0 = disconnesso. 1 = connesso. 3 = Agg.firmware. 4 = scheda in blocco. 5 = lettura log.
Connection Status (solo connesso) GET auth = API Key mysocage /mysocage/rt/connstatus/{name} name = matricola piattaforma Messaggio di errore = disconnesso. 1 = connesso. 3 = Agg.firmware. 4 = scheda in blocco. 5 = lettura log.
Hour Meter (solo connesso) GET auth = API Key mysocage /mysocage/rt/hmeter/{name} name = matricola piattaforma json hour meter della piattaforma in tempo reale (contatore totale e parziale, ore e giorni prox. manutenzione)
Mac. Status (solo connesso) GET auth = API Key mysocage /mysocage/rt/mstatus/{name} name = matricola piattaforma json stato ingressi piattaforma in tempo reale (emergenza, mac.chiusa, mac.aperta,stabilizzata)
Errors + Led (solo connesso) GET auth = API Key mysocage /mysocage/rt/errled/{name} name = matricola piattaforma json display errori e led bordo macchina in tempo reale
Settore anteriore enable - read (solo connesso) GET auth = API Key mysocage /mysocage/rt/frontenable/{name} name = matricola piattaforma json stato sett. ant. (0 = sbloccato, 1 = bloccato)
Selettore altezza - read (solo connesso) GET auth = API Key mysocage /mysocage/rt/heightselector/{name} name = matricola piattaforma json contenente valore attualmente impostato (0 = Local control, 1 = Remote control limiter 1, 2 = Remote control limiter 2, 128 = disable)
Reset Service POST auth = API Key mysocage /mysocage/resetservice/{name} name = matricola piattaforma OK o messaggio di errore (se offline, il comando verrà eseguito alla prox. accensione della PLE)
Comando salva parametri (solo connesso) POST auth = API Key mysocage /mysocage/rt/saveparams/{name} name = matricola piattaforma OK o messaggio di errore
Telemetry Master+Truck (solo connesso) WS Telemetry topic subscription (4) /broker-ws auth = API Key mysocage, name = matricola piattaforma, cycles = numero cicli Push telemetria per N cicli / Stop telemetria
Read Optionals GET auth = API Key mysocage /mysocage/optionals/{name} name = matricola piattaforma json optionals per piattaforma
Read Optionals Events GET auth = API Key mysocage /mysocage/events/optionals/{name} name = matricola piattaforma json array evento più recente per ogni optional macchina impostato (5)
Set Optionals POST auth = API Key mysocage /mysocage/optionals/post Body: json degli optionals da aggiungere/aggiornare (3) Numero intero o errore. 0 = nessun dato aggiornato. > 0 optionals salvati (e inviati alla PLE se online)
Check Radius - last hour GET auth = API Key mysocage /mysocage/wradius/lasthour Nessuno json elenco sforamenti raggio di lavoro nell'ultima ora; solo ultimo per ogni piattaforma
Check Radius - last day GET auth = API Key mysocage /mysocage/wradius/lastday Nessuno json elenco sforamenti raggio di lavoro nell'ultimo giorno; solo ultimo per ogni piattaforma
API SIM - Stato SIM GET auth = API Key mysocage /mysocage/rt/statussim/{name} name = matricola piattaforma JSON contenente tutti i dati della SIM associata ad IoT
API SIM - Attiva SIM POST auth = API Key mysocage /mysocage/rt/activatesim/{name} name = matricola piattaforma Messaggio Eseye di sucesso o di errore.
API SIM - Termina SIM DELETE auth = API Key mysocage /mysocage/rt/terminatesim/{iccid} iccid -> identificativo SIM, ricavabile tramite Stato SIM Messaggio Eseye di sucesso o di errore.
Taratura zero encoder (solo connesso) PUT auth = API Key mysocage /mysocage/rt/calibration/zeroencoder/{name} name = matricola piattaforma OK o messaggio di errore

Socage 360

Nome Tipo Header Endpoint Parametri Ritorna
Test GET No /socage360/test Nessuno Stringa di test
Connection Status GET auth = API Key socage360 /socage360/rt/connstatus/{name} name = matricola piattaforma Messaggio di errore = disconnesso. 1 = connesso. 2 e 3 = Agg.firmware. 4 = scheda in blocco. 5 = lettura log.
Reset Service (solo connesso) POST auth = API Key socage360 /socage360/rt/resetservice/{name} name = matricola piattaforma OK o messaggio di errore
API SIM - Associa SIM POST auth = API Key socage360 /socage360/updateiot Body: json associazione es. {"iot_serial":"685576","soc_serial":"20D01234","jc_model":"D SPEED - SERIE A"} Messaggio contenente 'successfully assigned' se ok, oppure 'error updating' se errore, oppure 'already assigned' se IoT già associato
API SIM - Dissocia SIM DELETE auth = API Key socage360 /socage360/freeiot/{iotserial} iotserial -> seriale IoT Numero intero. negativo = errore. zero = nessun dato aggiornato. positivo = operazione eseguita con successo

Socage Connect

Nome Tipo Header Endpoint Parametri Ritorna
User GET No /get/user/{name}/{password} name = nome utente login, password = password login json contenente i dettagli utente, compreso l'identificativo per le altre chiamate API
Geolocations GET identifier = identificativo utente /get/geos Nessuno json array con l'ultima posizione pervenuta per ogni piattaforma associata ad utente
Geolocations GET identifier = identificativo utente /get/geos/{name}/{start}/{end} name = matricola piattaforma, start = data inizio (yyyy-mm-dd), end = data fine (yyyy-mm-dd) json array delle geolocalizzazioni piattaforma tra due date
Activities (ricava attività commessa) GET identifier = identificativo utente /get/acts/job/{number} number = identificativo commessa json array delle attività delle macchine relative alla commessa
Activities (ricava attività commessa) POST identifier = identificativo utente /get/acts/job/v2 Body: number = identificativo commessa json array delle attività delle macchine relative alla commessa
Activities (ricava attività con commessa) GET identifier = identificativo utente /get/acts/mac/{serial}/{date_start}/{date_end} serial = seriale IoT macchina, start = data inizio (yyyy-mm-dd), end = data fine (yyyy-mm-dd) json array delle attività macchina associate ad una commessa, tra due date
Activities Report (ricava tutte le attività) GET identifier = identificativo utente /get/acts/all/mac/{serial}/{date_start}/{date_end} serial = seriale IoT macchina, start = data inizio (yyyy-mm-dd), end = data fine (yyyy-mm-dd) json array delle attività macchina tra due date
IORecording (ricava input/output commessa) GET identifier = identificativo utente /get/iorec/job/{number} number = identificativo commessa json array degli input/output delle macchine relative alla commessa
IORecording (ricava input/output commessa) POST identifier = identificativo utente /get/iorec/job/v2 Body: number = identificativo commessa json array degli input/output delle macchine relative alla commessa
IORecording (ricava input/output con commessa) GET identifier = identificativo utente /get/iorec/mac/{serial}/{date_start}/{date_end} serial = seriale IoT macchina, start = data inizio (yyyy-mm-dd), end = data fine (yyyy-mm-dd) json array degli input/output macchina con commessa, tra due date
IORecording Report (ricava report degli input/output) GET identifier = identificativo utente /get/iorec/all/mac/{serial}/{date_start}/{date_end} serial = seriale IoT macchina, start = data inizio (yyyy-mm-dd), end = data fine (yyyy-mm-dd) json array degli input/output macchina, tra due date
Machines GET identifier = identificativo utente /get/machines Nessuno json array delle piattaforme associate ad utente
Machines GET identifier = identificativo utente /get/machines/{number} number = identificativo commessa json array delle piattaforme associate alla commessa
Machines POST identifier = identificativo utente /get/machines/v2 Body: number = identificativo commessa json array delle piattaforme associate alla commessa
Machines POST identifier = identificativo utente /post/job/machines Body: json associazione piattaforme/commessa (1) Numero intero. negativo = errore. zero = nessun dato aggiornato. positivo = numero di record aggiornati.
Commissions GET identifier = identificativo utente /get/jobs Nessuno json array delle commesse associate ad utente
Commissions GET identifier = identificativo utente /get/jobs/{number} number = identificativo commessa json dettaglio commessa
Commissions POST identifier = identificativo utente /get/jobs/v2 Body: number = identificativo commessa json dettaglio commessa
Commissions POST identifier = identificativo utente /post/job Body: json della commessa da aggiungere/aggiornare (2) Numero intero. negativo = errore. zero = nessun dato aggiornato. positivo = identificativo nuova commessa o numero record aggiornati.
Commissions DELETE identifier = identificativo utente /delete/job/{number} number = identificativo commessa Numero intero. negativo = errore. zero = nessun dato aggiornato. positivo = numero di record cancellati.
Commissions PUT identifier = identificativo utente /delete/job/v2 Body: number = identificativo commessa Numero intero. negativo = errore. zero = nessun dato aggiornato. positivo = numero di record cancellati.
Connection GET identifier = identificativo utente /get/connstatus/{name} name = matricola piattaforma Messaggio di errore = disconnesso. 1 = connesso. 2 e 3 = Agg.firmware. 4 = scheda in blocco. 5 = lettura log.
Read Parameter GET identifier = identificativo utente /get/param/{name}/{param} name = matricola piattaforma. param = identificativo parametro Stringa composta da identificativo parametro: valore
Set Parameter GET identifier = identificativo utente /set/param/{name}/{param}/{value} name = matricola piattaforma. param = identificativo parametro. value = valore parametro Ok o stringa di errore
Send command GET identifier = identificativo utente /send/{name}/{command} name = matricola piattaforma. command = identificativo comando Ok o stringa di errore
(1)
	   	esempio json associazione piattaforme/commessa {"number":"Nr12345","machines":"'28D00230','24D0173','18TE0020'"}
	   	note: number è il numero alfanumerico commessa, machines è la lista matricole da associare alla commessa. lista vuota "''" dissocia tutte le piattaforme dalla commessa.
   	

(2)
   		esempio json aggiunta/aggiornamento commessa
	   	{
		    "idjob": 20,
		    "isopen": 1,
		    "number": "Nr12345",
		    "customer": "rossi snc",
		    "descr": "descrizione commessa",
		    "date_opened": "2021-07-23",
		    "date_closed": null
		}
		note:
		idjob deve essere 0 per aggiunta, > 0 per modifica.
		isopen deve essere 1 per commessa aperta, 0 per commessa chiusa.
		tutte le date devono essere nel formato yyyy-mm-dd.
	

(3)
		esempio json aggiunta/aggiornamento optionals
	   	{
	   		"serial": "20D12345",
	   		"work_days_enable": 1,
	   		"work_days": "2022-04-11,2022-04-12,2022-04-13,2022-04-14",
	   		"work_radius_enable": 1,
	   		"work_radius_center": "44.88632942785808,11.063120841979996",
	   		"work_radius": 15,
	   		"front_sector_en": 1,
	   		"height_selector_val": 2
	   	}
		note:
		work_days_enable = 0 disabilitato, 1 abilitato
		work_days = lista giorni di lavoro abilitati, in formato yyyy-mm-dd
		work_radius_enable = 0 disabilitato, 1 abilitato
		work_radius_center = centro del raggio, composto da latitudine,longitudine
		work_radius = distanza in Km dal centro
		front_sector_en = settore anteriore abilitato -> 0 disabilitato, 1 abilitato
		height_selector_val = selettore altezza -> 0 controllo locale, 1 remoto limite 1, 2 remoto limite 2, 128 disabilitato
	

(4)
   		/user/topic/private-telmaster -> subscription telemetria start
   		/user/topic/private-telmaster-stop -> subscription telemetria stop
   		/ws/pv-telmaster -> comando telemetria start
   	    /ws/pv-telmaster-stop -> comando telemetria stop
   

(5)
	esempio json:
	[
	    {
	        "serial": "IOT TEST DIASTECA",
	        "eventType": 2,
	        "eventValue": 2,
	        "eventDate": "2024-01-22 09:46:56",
	        "eventTypeDesc": "Limitatore altezza -> remoto limite 2 attivo"
	    },
	    ...
	]
	dove:
	eventType -> 1=Settore anteriore, 2=Limitatore altezza, 3=Blocco giorni lavoro
	eventValue -> 
			Blocco settore anteriore: 
                 0x01 --> richiesto sblocco ma ancora attivo,
                 0x03 --> blocco non attivo,
                 0x10 --> richiesto blocco ma non ancora attivo,
                 0x30 --> blocco attivo
                 0x08 --> funzione NON attiva da SFC       
			Limitatore altezza:
                 0x00 --> controllo locale, 
                 0x01 --> remoto limite 1, 
                 0x02 --> remoto limite 2, 
                 0x80 --> disabilitato,
                 0x08 --> funzione NON attiva da SFC    
			Blocco giorni lavoro:
                 0x00 --> non attivo (non usato),
                 0x01 --> ricevuto ma non ancora attivo,
                 0x10 --> attivo,
                 0x08 --> By-Pass da JClient  
	eventDate -> data e ora evento