Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Gestione dei Tab/Schede dei singoli Widget di AgentDesktop (AGENTDESKTOP.TAB),

  • Visualizzazione di finestre/pannelli informativi custom (AGENTDESKTOP.ALERT),

  • Controllo dei Widget, registrazione di proprie callback per la notifica di eventi (AGENTDESKTOP.WIDGET),

  • Gestione dei Contatti, effettuare chiamate, eseguire trasferimenti (AGENTDESKTOP.CONTACT),

  • Gestione dello stato e della schedulabilità di un operatore (AGENTDESKTOP.AGENT),

  • Gestione di un contatto di tipologia chat, invio di un messaggio testuale (AGENTDESKTOP.CHAT),

  • Gestione e notifica degli eventi relativi all'apertura/chiusura delle finestre di dialogo in AgentDesktop (AGENTDESKTOP.UI).

...

...

Requisiti per l’integrazione di un Widget

La possibilità di integrazione di un applicazione web all'interno di AgentDesktop 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 limpostano alcune protezioni di sicurezza all’interno della pagine che costituiscono la loro web-application o CRM con l’intento che le loro pagine web non possano essere utilizzate da altre applicazioni e caricati in elementi come frames/iframes al fine di essere servite da pagine provenienti da altri domini non autorizzati. Questa tecnica solitamente è denominata "framesniffing".
A titolo di esempio viene riportata una configurazione relativa ad IIS per la abilitazione del'header "X-Frame-Options" come seguee consentire il caricamento della propria web-app in un Widget di AgentDesktop:

...

Code Block

...

language

...

xml
<configuration><system.webServer><httpProtocol><customHeaders><add name="X-Frame-Options" value="ALLOW-FROM url_del_ContaCT" /

...

></customHeaders></httpProtocol></system.

...

webServer></configuration>

Le altre 2 due opzioni di configurazione possono essere: SAMEORIGIN o DENY.

Controllo

...

della TOP window

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:

Code Block
languagejs
<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 Contactdella propria web-app appartiene al domino applicativo di Contact7.