Prerequisiti¶
Per questo esempio è necessario disporre di un TVox OmniChannel Contact Center opportunamente licenziato e configurato per ricevere chiamate di servizio da numerazioni pubbliche, nello specifico devono esistere:
- Almeno un servizio di Contact Center, che noi chiameremo Customer Care (codice: customercare)
- Almeno due operatori di Contact Center appartenenti ad uno skillset associato al servizio Customer Care, nel nostro caso saranno Operatore 1 (username: op1) e Operatore 2 (username: op2)
- Trunk configurato per ricevere chiamate da numerazioni pubbliche che dovranno essere inoltrate al servizio Customer Care
- Contatto in rubrica esterna (associata al servizio Customer Care), che nel nostro caso si chiamerà Mario Rossi e avrà numero 0987654321; il numero di questo contatto verrà usato come identificativo per essere associato al relativo contatto su CRM
Di seguito è possibile scaricare i sorgenti dell’applicazione utilizzata in questo esempio.
I sorgenti contengono:
index.php, pagina del nostro CRM su cui vedremo la scheda contatto con il suo Customer Journey che si popolerà delle interazioni di chiamataservice/*.php, Web Service per la gestione degli eventi di chiamata di serviziooutbound/*.php, Web Service per la gestione degli eventi di chiamata outboundtransfer/*.php, Web Service per la gestione degli eventi di chiamata trasferitadb.json, sorgente dati per il Customer Journey del contatto
Per le finalità dell’esercizio è necessario disporre di un Web Server con interprete PHP raggiungibile da TVox, nel nostro caso, all’indirizzo http://democrm.teleniasoftware.com.
Per mantenere una memoria delle interazioni associate al contatto è stato scelto di salvare le informazioni su un file JSON (db.json) in modo da non dover aggiungere ulteriori dipendenze. Di seguito è possibile scaricare il file relativo all’esempio, completo di tutti i dati ottenuti al termine dell’esempio stesso.
I Web Service presenti nei sorgenti sono solo a scopo dimostrativo, ma possono essere presi come base per sviluppi più complessi; all’utilizzatore rimane comunque la piena libertà di sviluppo in termini di linguaggio e modalità implementative.