Protocollo di comunicazione
Sirio basa la comunicazione client-server sul protocollo JSON per lo scambio dei dati.
Cos'è JSON
JSON (JavaScript Object Notation), è un semplice formato per lo scambio di dati tra client e server che si basa
sulla sintassi di JavaScript, da cui il nome, ma il cui formato è esclusivamente testuale.
Per maggiori informazioni sul formato JSON, consultare la guida ufficiale.
Come inviare a Sirio
Nella comunicazione con Sirio - Il Gestionale è necessario settare propriamente le seguenti variabili:
$account // Il nome che si può leggere nella URL (Es: https://nomeaccount.app.sirio.com).
$username // Il nome del bot che si è creato nella sezione App/Bot del pannello di amministrazione.
$password // Token del bot creato; è un codice alfanumerico di 32 cifre.
$module // Nome del modulo con cui si vuole interagire (Es. products , headers , shops , ... )
$action // Nome della funzione che si vuole eseguire sul modulo selezionato (Es. get , list , create , ... ).
$dataset // Variabile che contiene eventuali parametri per le varie action.
Per instaurare una connessione con Sirio si può operare in due modi:
Metodo 1
$sirio = new SirioService($account,$username,$password); // Passando i parametri di connessione direttamente al costruttore SirioService
$sirio->login(); //Questo metodo restituirà un booleano a seconda dello stato dell'operazione
Metodo 2
$sirio = new SirioService();
$sirio->login($account,$username,$password);
Le funzioni si possono eseguire tramite il comando:
$response = $sirio->sendCommand($module, $action, $dataset);
Come Sirio invia la risposta
Anche la risposta del server avviene tramite un oggetto JSON contenente sia le informazioni sullo status della comunicazione sia il payload.
Un esempio di risposta è il seguente:
{
"status": 1, // Flag che indica se l'operazione è andata a buon fine
"dataset": { // Oggetto JSON contenente il risultato del comando eseguito
"product_id": 956,
"brand": "Studio Ing. Abc",
"line": "Consulenza",
"name": "Studio Di Fattibilità",
"version": "",
"description": "Consulenza per studio di fattibilità",
"unit": 6,
"price": 100,
"vat": 22,
"vat_type": "0",
"code": null,
"code_ean": null,
"code_taric": null,
"code_cpv": null,
"code_ssc": null,
"code_ateco": null,
"date_created": null,
"date_dismissed": null
}
}
Sirio - Il Gestionale è anche social!