Concepts / Emotions
Emotions
The server can classify the emotion of an utterance and, when enabled, switch
the avatar's tone clips to match. Your app is notified through an
EMOTION_DETECTED event.
Emotion-responsive delivery
Set emotion_responsive=True on AvatarConfig to let the
server adapt the avatar's tone clips to the emotion of the reply:
from zeli import AvatarConfig
AvatarConfig(
avatar_id="presenter-male-1080",
emotion_responsive=True,
)Reacting to emotions
Subscribe to EMOTION_DETECTED; the handler receives an
EmotionEvent:
from zeli import ZeliEvent
@client.on(ZeliEvent.EMOTION_DETECTED)
async def on_emotion(event):
print("emotion:", event.emotion, "for", event.correlation_id)emotionstrOptional
The classified emotion for the utterance.
correlation_idstr | NoneOptional
The originating command id, tying the emotion to a specific utterance.
Needs the control gateway
Emotion events flow over the control channel, so they require the server's control gateway. See the control gateway.