Note. User Documentation can be found at https://invade.atlassian.net/l/c/w1uPL6YA
Integration
Transfer widget is created a web component meaning as long as you have the library (app-session-controller.js) in the script section of html i.e.
...
Code Block |
---|
initiator={predefined agent name} target={predefined target agent name} catiapiurl={url to Invade's cati api (provided by Invade)} catiapisocketurl={url to Invade's cati api for socket connections (provided by Invade)} catiapisocketpath={socket connection path (provided by Invade)} diallerapiurl={url to Invade's dialler api (provided by Invade)} |
Look and feel
When no “Initiator” & “New target” is not set
...
In order to complete the transfer “Complete” button needs to be clicked.
...
Getting state
<app-session-controller> has real time attributes reflecting transfer states. Those attributes are:
...
Code Block |
---|
<label id="state"></label> <label id="primaryState"></label> <label id="secondaryState"></label> setInterval(function() { const sessContrl = document.querySelector('#session-controller'); document.getElementById('state').innerHTML = sessContrl.getAttribute('xferstate'); document.getElementById('primaryState').innerHTML = sessContrl.getAttribute('xferprimarystate'); document.getElementById('secondaryState').innerHTML = sessContrl.getAttribute('xfersecondarystate'); }, 1000); |
Requesting agent list refresh
<app-session-controller> can be controlled using external code by referencing the tag.
...
Code Block |
---|
<button id="getAgentsBtn" onclick="getAgentsFunc()">getAgents</button> function getAgentsFunc() { const sessContrl = document.querySelector('#session-controller'); sessContrl.getAgents = "all"; } |
Requesting state change
<app-session-controller> can be controlled using external code by referencing the tag.
...