Configurazione di un Widget
Per poter essere caricato in AgentDesktop, il Widget deve prima essere configurato in AgentDesktopManager. Per prima cosa è necessario crearlo andando nella sezione Widgets, compilare i campi e salvare il widget appena creato. Se il widget che si vuole creare è monocontatto, effettuare le operazioni nella sezione AgentDesktop widgets; nel caso in cui sia multicontatto, compilare i campi nella sezione Multicontact widgets.
I campi da compilare sono i seguenti:
Nome Campo | Descrizione | Esempio |
---|---|---|
Widget ID | Identificativo univoco del widget che verrà utilizzato per invio di notifiche e messaggi all'interno di AgentDesktop. | AGENTDESKTOP_MY_WIDGET |
Widget Title | Titolo del Widget che verrà visualizzato in AgentDesktop nella barra laterale o nel tooltip in caso di configurazione di un Widget Multi-Contatto. | My Widget |
Widget URI | URL della propria web-app da caricare. Può essere di tipo relativo nel caso l'applicazione venga ospitata sullo stesso server dove è presente AgentDesktop, oppure, grazie al supporto della funzionalità Post Message da parte della libreria SDK, può essere un indirizzo appartenente ad un dominio differente rispetto ad AgentDektop. | https://www.myapp.com |
Widget Icon | Icona del Widget che verrà visualizzata in AgentDesktop. E' possibile utilizzare la collezione di icone di Font Awesome già disponibile in AgentDesktop. Fare riferimento al seguente link per disporre di una anteprima. https://fontawesome.com/v4.7.0/icons/ | fa fa-lightbulb-o fa-2x |
Infine, è necessario abilitarlo andando nella sezione Profiles, scegliere il profilo a cui associare la visualizzazione del widget creato e nella parte relativa ai Widgets o Multicontact (se multicontatto), cliccare sul suo nome per portarlo nella colonna di quelli abilitati.
Creazione di un Widget
Per consentire la comunicazione bidirezionale della propria Web-App con AgentDesktop è necessario caricare la libreria di sviluppo AgentDesktop SDK:
<script src="/widget/agentdesktop_widget.js"></script>,
In questo modo si avrà a disposizione un namespace AGENTDESKTOP.
Con il namespace AGENTDESKTOP si avrà a disposizione una serie di Widget per:
- aprire/chiudere i Tab (AGENTDESKTOP.TAB),
- visualizzare finestre informative (AGENTDESKTOP.ALERT),
- registrarti le tue callback (AGENTDESKTOP.WIDGET),
- effettuare chiamate (AGENTDESKTOP.CONTACT),
- gestire lo stato dell'operatore (AGENTDESKTOP.AGENT),
- gestire un contatto di tipo chat (AGENTDESKTOP.CHAT),
- gestire eventi relativi all'apertura/chiusura di finsestre di dialogo (AGENTDESKTOP.UI).
Requisiti
La possibilità di integrazione di un applicazione web all'interno del AD utilizzando i Widget è soggetta ad alcune requisiti.
X-Frame-Options
Molti amministratori di sistema di default settano IIS per evitare che le pagine web hostate possano essere inserite da altri come iframe su altri domini (siti web) e questo avviene per motivi di sicurezza (per evitare il "framesniffing").
Viene riportato un esempio di abilitazione per IIS o su web.config l'header "X-Frame-Options" come segue:
<configuration> |
Le altre 2 opzioni possono essere: SAMEORIGIN o DENY.
Controllo del TOP
Alcune applicazioni web verificano se sono incluse in un iframe, in qual caso cercano di ricaricarsi sostituendo la pagina principale.
Un esempio di questo codice è come segue:
<script type="text/javascript">
if (top.frames.length!=0)
top.location=self.document.location;
</script>
In questo caso, si dovrà modificare il codice per permettere l'inclusione in un iframe se la finestra padre è un url di Contact.