Eseguire richieste HTTP / HTTPS dal dialplan

ATTENZIONE!
La seguente funzionalità non è disponibile su nexicloud.

Nella versione 3.1.0 del sistema è stata introdotta la possibilità di eseguire richieste HTTP / HTTPS dal dialplan.

Prima di procedere con la realizzazione del dialplan avanzato che vi permetterà di usare questa funzionalità è necessario abilitare in “Configurazione Sistema” o “Configurazione Dominio” il permesso “Permetti l’applicazione http_request” a Vero.

La procedura per realizzare il vostro diaplan è la seguente:

  • Come prima cosa è necessario andare a creare un rotta in ingresso e renderla avanzata: vi basterà salvare la rotta quando siete in modalità avanzata;
  • Nella rotta avanzata cancellate tutte le istruzioni non necessarie (mantenete solo le varie condition) tramite la X presente su ogni riga e procedete con l’inserimento delle variabili necessarie per configurare lo script.
    Lo script supporta le seguenti variabili per parametrizzarne il funzionamento, di seguito anche uno screenshot di come impostare le variabili nel dialplan:
    • http_request_cache_id: se compilata ed esiste un risultato in cache il sistema non esegue la richiesta ma usa il valore in cache, non è obbligatoria;
    • http_request_timeout: timeout in secondi per la richiesta, non è obbligatoria e di default è 3 secondi;
    • http_request_url: URL da richiamare (HTTP e HTTPS supportati);
    • http_request_method: metodo richiesta (GET, POST, PUT, DELETE);
    • http_request_headers: elenco headers richiesta, la sintassi prevista è “Header: Valore”. Per inserirne più di uno è necessario usare “
” come divisore, esempio: “User-Agent: Prova
Content-Type: application/json”, non è obbligatoria;
    • http_request_body: stringa body richiesta, usare “
” per andare a capo e “"” per doppio apice, non è obbligatoria;
    • http_response_body_parser: specifica che tipo di parser si dovrà usare, disponibili “json” per convertire il JSON in oggetto e “text” per gestire tutta la response come stringa e valorizzare tutto su “http_response”, non è obbligatoria e di default è “text”;
    • http_response_vars_mapper: se impostato “http_response_body_parser=json” è possibile impostare il percorso nell’oggetto JSON da estrarre esempio: “variabile1.variabile2” preleverà il valore se presente e lo valorizzerà sulla variabile “variabile1_variabile2”, è possibile estrarre più valori separando le chiavi con la virgola.
  • Inserire la action finale con la chiamata allo script come da screenshot.