Événements du client vers le serveur
Événements du client vers le serveur
Envoyez des informations contextuelles depuis le client pour enrichir les applications conversationnelles en temps réel.
Les événements du client vers le serveur sont des messages que votre application envoie proactivement au serveur afin de fournir un contexte supplémentaire pendant les conversations. Ils vous permettent d’enrichir la conversation avec des informations pertinentes, sans interrompre son déroulement.
Pour en savoir plus sur les événements que le serveur envoie au client, consultez la documentation sur les événements client.
Vue d’ensemble
Votre application peut envoyer des informations contextuelles au serveur à tout moment de la conversation afin d’en améliorer la qualité et la pertinence. Il n’est pas nécessaire que cela réponde à un événement client reçu du serveur. Cette fonctionnalité est particulièrement utile pour partager l’état de l’interface, les actions de l’utilisateur ou d’autres données environnementales qui ne sont pas nécessairement transmises par la voix.
Bien que nos SDK proposent des méthodes d’assistance pour envoyer ces événements, il est utile de comprendre le protocole sous-jacent pour les implémentations personnalisées et les cas d’usage avancés.
Types d’événements
Mises à jour contextuelles
Les mises à jour contextuelles permettent à votre application d’envoyer des informations d’arrière-plan à la conversation sans l’interrompre.
Principales caractéristiques :
- Les mises à jour sont intégrées à la conversation comme informations d’arrière-plan.
- Elles n’interrompent pas le flux de la conversation en cours.
- Elles sont utiles pour envoyer l’état de l’interface, les actions de l’utilisateur ou des données environnementales.
Messages utilisateur
Les messages utilisateur vous permettent d’envoyer du texte directement à la conversation, comme si l’utilisateur l’avait prononcé. Ils sont utiles pour les interactions textuelles ou lorsque vous souhaitez injecter un texte précis dans le flux de la conversation.
Principales caractéristiques :
- Le texte est traité comme une entrée utilisateur dans la conversation.
- Ils déclenchent le même flux de réponse qu’une entrée vocale de l’utilisateur.
- Ils sont utiles pour les interfaces textuelles ou les entrées utilisateur programmatiques.
Activité utilisateur
Les événements d’activité utilisateur servent d’indicateurs pour empêcher les interruptions de l’agent.
Principales caractéristiques :
- Ils réinitialisent le minuteur de délai d’attente du tour de parole.
- Ils n’affectent ni le contenu ni le flux de la conversation.
- Ils sont utiles pour maintenir des conversations longues pendant les périodes de silence.
Bonnes pratiques
-
Mises à jour contextuelles
- Envoyez des informations contextuelles pertinentes, mais concises.
- Évitez de surcharger le LLM avec trop de mises à jour.
- Privilégiez les informations qui influencent le flux de la conversation ou constituent un contexte important issu d’une activité dans une interface non accessible à l’agent vocal.
-
Messages utilisateur
- Utilisez-les pour les entrées utilisateur textuelles lorsque l’audio n’est pas disponible ou approprié.
- Veillez à ce que le contenu textuel soit clair et bien formaté.
- Tenez compte du contexte de la conversation lorsque vous injectez des messages programmatiques.
-
Activité utilisateur
- Envoyez des signaux d’activité pendant les périodes d’interaction utilisateur afin de maintenir la session.
- Utilisez des intervalles raisonnables, par exemple 30 à 60 secondes, pour éviter un trafic réseau inutile.
- Mettez en place une détection de l’activité basée sur l’engagement réel de l’utilisateur, comme les mouvements de souris ou la saisie.
-
Considérations de timing
- Envoyez les mises à jour aux moments appropriés.
- Envisagez de regrouper plusieurs mises à jour contextuelles en une seule, plutôt que d’envoyer séparément chaque petite modification.
- Trouvez l’équilibre entre le maintien de la session et l’évitement d’une messagerie excessive.
Pour des exemples d’implémentation détaillés, consultez notre documentation des SDK.