/
Vidyo Agent Integration Sample

Vidyo Agent Integration Sample

CTLive has a built-in agent integration page with video support. The page is available at the following address:

http://<CTLIVE_SERVER_ADDRESS>:3001/domain/agentTest.html

CTLIVE_SERVER_ADDRESS marker is the hostname/IP address of the application server where CTLive is installed.

Once loaded the Agent Integration Sample looks as follow:

High area of the page is reserved for logging pourpose. The lightblue panel will display all the activities and notifications relating to CTLive Agent SDK library.

A lower panel element is reserved for video streaming.

This CTLiveAgent SDK integration sample is not intended for standalone use.
It is necessary to have a valid authentication JWT Token in order to log in as an Agent and allow you to manage an audio/video escalation on the chat channel using Vidyo technology.

How to use

First of all the Agent must log in to CTLive to get a valid JWT session token.
The token must be entered in the corresponding input box on the sample application page.

Press the LOGIN button to login into CTLive engine as a new Agent. The log panel will display the authentication result.

To login in order to support Video capabilities, it’s needed to add an additional flag to Login request enableVideo = true. Check API documentation login.

Join a Chat

The sample can join an ongoing chat between Agent and Customer by using the ChatID and pressing the JOIN CHAT button.

Once joined a chat, the sample integration will automatically accept any audio / video engagement requests using the following API:

contact.on("requestVideoUpgrade", function (event) { LOG("[CTLIVE AGENT SDK] On [requestVideoUpgrade] event"); LOG("[CTLIVE AGENT SDK] Accept Audio/Video media upgrade"); contact.responseVideoUpgrade(true, "videoPanel", true, true); });

The video stream will be rendered in the DOM Element whose ID is “videoPanel”.

Participant and audio/video Devices notifications will be automatically bind with custom callbacks:

// Bind Video Callback contact.bindVideoParticipantEvent(function(event, eventName) { LOG("[CTLIVE AGENT SDK] PARTICIPANT Event [" + eventName + "]"); }); contact.bindVideoMicrophoneEvent(function(event, eventName, microphoneObj, state) { console.log("[CTLIVE AGENT SDK] MICROPHONE Event [" + eventName + "]" + String.fromCharCode(10) + JSON.stringify(microphoneObj, null, 2) ); });

All the notifications will be logged in the high area panel:

Feel free to modify the code as you wish, for example to manage the system's audio and video devices, or change the viewing area of ​​the video stream.

 

Related content

CTLive Vidyo Integration
CTLive Vidyo Integration
More like this
Agent SDK Integration
Agent SDK Integration
More like this
How to use the CTLive Agent SDK
How to use the CTLive Agent SDK
More like this
CTLive Agent Login and Logout via Rest API
CTLive Agent Login and Logout via Rest API
More like this
Version 2.0.6
Version 2.0.6
More like this