Autenticazione TVox WebAPI¶
L’autenticazione verso le TVox WebAPI è necessaria al fine di utilizzare i vari metodi che si andranno ad integrare.
Il login viene effettuato mediante la sequenza dei metodi getVersion e login, chiamati tramite jsonrpc verso l’indirizzo https://<tvox_url>/tvox/webapi ( dove <tvox_url> corrisponde al dominio o all’indirizzo IP in cui risiede il TVox )
getVersion¶
Il metodo getVersion è necessario al fine di ottenere la versione del server TVox in cui si effettuerà l’accesso. Il metodo non richiede parametri.
Il risultato conterrà la versione del server TVox in uso e la versione delle WebAPI.
Il valore da utilizzare è il secondo, ovvero la versione delle WebAPI (nell’esempio sottostante «10.26.0).
Richiesta di esempio¶
{
"id": 0,
"jsonrpc": "2.0",
"method": "getVersion",
"params": []
}
Risposta di esempio¶
{
"id": 1,
"jsonrpc": "2.0",
"result": [ "10.26.32", "10.26.0" ]
}
login¶
Il metodo login va utilizzato per autenticarsi sulle TVox WebAPI ed avere l’accesso a tutti i metodi che richiedono autenticazione.
Nota
È necessario che l’utente con il quale si va ad accedere disponga dei permessi di Superuser o Supervisor
Le successive richieste alle TVox WebAPI che richiedono autenticazione dovranno avere un cookie contenente il sessionId generato dalla richiesta di login.
Il cookie dovrà avere questa forma:
Set-Cookie: JSESSIONID=lmjfmm378du718big0jwv4bjg; path=/tvox;
ovvero chiave JSESSIONID, valore sessionId (ottenuto dalla risposta della login) e path /tvox.
Parametri richiesti¶
version¶
String Versione del server TVox ottenuta tramite il metodo getVersion Campo obbligatorio
username¶
String Nome utente Campo obbligatorio
password¶
String Password Campo obbligatorio
Richiesta di esempio¶
{
"id": 2
"jsonrpc": "2.0",
"method": "login",
"params": [
"10.26.0",
"admin",
"admin"
]
}
Risposta di esempio¶
{
"jsonrpc": "2.0",
"id": 2,
"result": {
"username": "admin",
"surname": "Admin",
"name": "",
"publicUsername": "admin",
"accessToken": "c53aaeb3734191788f45b413da1ef24",
"sessionId": "lmjfmm378du718big0jwv4bjg",
"status": "LOGGED",
"language": null,
"anonymous": false,
"pwdChangeable": false,
"chatUserId": null,
"chatAuthToken": null,
"chatUri": null,
"profileRoles": [
"TVOX_SUPERVISOR",
"TVOX_AGENT",
"TVOX_USER",
"SYSTEM_USER"
],
"userPermissions": [
"IVR",
"SUPERVISOR"
],
"logged": true
}
}