The Chat’s API can be obtained using the EUWA Wrapper Interface, described in a separate article.

Events List

chatInit
Fired when the chat has been initialized

chatStarts
Fired when the chat starts

chatContinue
Fired when the chat has been continued

chatEnded
Fired when the chat has ended

chatWindowShow
Fired when the chat window has been shown

chatWindowClosed
Fired when the chat window has been closed

chatWindowMinimized
Fired when the chat window has been minimized

contactCenterClose
Fired when the time module has returned not opened exit

Event Data

type EventData = {
    chat: {
        activeUsers: Array<{userId: number, name: string, userType: string}>,
        lastConnectedAgentId: number,
        sessionId: string,
        requestId: number,
        variables: object,
        queueKey: string,
        languageCode: string
    },
    chatter: {
        subject: string,
        name: string,
        email: string,
        hasBeenConnected: boolean,
        hasBeenInConference: boolean
    },
    survey: {
        result: number,
        comment: string
    },
    device: {
        isMobile: boolean
    }
};

Methods

api.startChat()
Similar to clicking the start button. It will open the chat window and show the next view.

api.minimize()
Minimizes the chat window

api.maximize()
Maximizes the chat window

api.updateVariables(variablesObject)
Updates the chat variables

api.updateVariables({
    NewVariable: 'Some Value'
});

api.updateSystemVariables(variablesObject)
Updates system variables (enteredFormName, enteredChatId, enteredFormIssue, selectedQueueKey, timeId2Map)

api.updateSystemVariables({
    enteredFormName: 'Chatter name',
    enteredChatId: 'chatter@email.com',
    enteredFormIssue: 'I have issues with my cookies. I ate them all.',
    selectedQueueKey: 'q_cookies_problems',
    timeId2Map: 'cookiesQueueWorkingTime'
});

api.getState()
Returns object with minimal chat state.

const { isConnected, isEnded, isMinimized } = api.getState();

Published

Last updated

2
-3