Hosted experience overview

Event handling

3min

There may be times when you want even more fine tuned control of your client application, and to synchronise your website with the state of the digital human. For this, we provide message events from the digital human application that may be consumed by your web client. To do this, you may listen to window event UneeqMessage.



Example

The below code example demonstrates how you can listen for messages, and in this case update the class list of the body element when the session becomes live. There are many more message events you may want to listen for, these are listed in the table below.

JS




Message List

Event Name

Description

ReadyToStart

The application has loaded and configuration validated. The session may now be started by calling uneeqStartSession()

SessionStateUpdate

Session state has been updated (Initial, WaitingToStart, AvatarUnavailable, MajorError, Live, Paused, Ended)

LayoutModeUpdate

The layout mode has been updated: LayoutModeUpdate.layoutMode

SessionId

The digital human session ID

AvatarAvailable

At least one digital human is available to be started

AvatarUnavailable

No digital humans are available to be started

AvatarQuestionText

A question was asked to the Digital Human

AvatarAnswer

Digital human has a response

AvatarAnswerContent

Content has been provided by the NLP system to be rendered

CustomData

JSON data that was provided by the NLP system in the 'instructions' field. This data can be used to pass custom instructions from the NLP system into your front end application. For example, you could set some customData of a product that you want to display on the website.

StartedSpeaking

Digital human has begun speaking

FinishedSpeaking

Digital human has finished speaking

DeviceEnabled

Permission to use recording devices has been granted by the user.

RecordingStarted

A voice recording has been initiated

RecordingStopped

A voice recording has been ended

DigitalHumanPlayedInMutedModeSuccess

Digital human audio could not be played due to browsers auto play policy. Digital human was started with audio muted. You may call uneeqUnmuteDigitalHuman() following user click/key event to unmute the digital human.

DigitalHumanUnmuted

The digital human was unmuted, or started in unmuted mode.

DigitalHumanVideoError

An error occurred with the digital human video. Refer to contents of message for details.

DigitalHumanFailedToPlay

The digital human video could not be played for some reason. Most likely blocked due to the browsers auto play policy (the user has not interacted with the page before attempting to play audio).

DigitalHumanUnmuted

The digital human was unmuted.

ServiceUnavailable

Something went wrong, refer to contained message for details.

SpeechTranscription

An interim or final speech transcription of the users speech was received. Speech Recognition mode only.

CustomMetadataUpdated

Chat metadata has been updated successfully. The message will provide the newly set metadata value.

CallToActionDismissed

The call to action box has been dismissed by the user.

DevicePermissionAllowed

[Deprecated]

AvatarTextInputFinished

[Deprecated]

Instructions

[Deprecated]