Aller au contenu

Configurez les actions de l'Agent IA : Human Handoff, collecte intelligente de données pour la génération de leads et actions API personnalisées.

Définissez ce que votre Agent IA peut faire pendant une conversation : depuis les réponses basées sur des données d’API en temps réel, la collecte de prospects et d’insights, jusqu’à l’exécution de tâches personnalisées.

La fonctionnalité Human Handoff garantit que les conversations nécessitant l’attention d’un humain sont transférées en toute transparence à un Agent humain.

Elle est particulièrement utile pour gérer les questions au‑delà de la Base de connaissances de l’Agent IA ou lorsque l’utilisateur demande explicitement à parler à une personne. Pendant le transfert, l’Assistant IA se met en pause et l’Agent humain reprend la conversation via la Boîte de réception (Inbox).

Voici ce qui se passe côté utilisateur :

  1. L’utilisateur échange avec l’Assistant IA.
  2. Si la demande dépasse les capacités de l’IA ou si l’utilisateur demande un humain, l’IA l’informe du transfert.
  3. La conversation est désassignée de l’IA et assignée à un Agent humain.
  4. L’Agent humain résout la demande ou réassigne l’Assistant IA pour continuer.

Transfert à l’humain côté visiteur.

Voici ce que vous voyez dans l’interface Quickchat AI :

  1. La conversation non assignée apparaît dans l’Inbox.
  2. Votre équipier lit le Résumé IA pour comprendre le contexte.
  3. Il reprend la main et s’occupe de la demande.
  4. Il clôture la conversation ou la réassigne.

Transfert à l’humain côté utilisateur Quickchat AI.

Allez dans Capabilities > Human Handoff et activez l’option.

Activation du transfert dans l’app Quickchat AI.

Vous pouvez ensuite configurer :

Disponibilité des Agents humains

Définissez la disponibilité des Agents humains pour n’initier des transferts que pendant les horaires d’ouverture.

  • Horaires de travail : heures de début/fin et jours ouvrés.
  • Fuseau horaire : sélectionnez le fuseau adapté.
  • Message hors horaires : informez l’utilisateur lorsqu’aucun Agent humain n’est disponible.

Configuration de la disponibilité

Définissez la question que l’IA posera avant d’initier le transfert.

Exemple : Souhaitez‑vous que je vous mette en relation avec notre équipe Support ?

Configuration de la question

Précisez le message de confirmation envoyé lorsque le transfert est lancé.

Exemple : Je comprends. Je vous transfère à notre équipe Support. Merci de patienter…

Configuration du message de confirmation

Activez les Résumés IA pour générer automatiquement une courte synthèse de la conversation. Elle fournit à l’Agent humain le contexte nécessaire pour répondre rapidement.

Configuration du résumé IA

Décrivez les situations dans lesquelles Human Handoff doit être déclenché. Chaque règle possède un Nom de la règle, une Description en langage clair et un bouton État. Vous pouvez ainsi activer ou désactiver les règles sans les supprimer.

Quickchat AI fournit un ensemble de règles par défaut qui couvre les motifs de transfert les plus courants :

  • Message multimédia : l’utilisateur a envoyé une image, un fichier ou un autre média que l’IA ne peut pas traiter.
  • Frustration de l’utilisateur : l’utilisateur exprime clairement de la colère, de la frustration ou de l’insatisfaction.
  • Suggestion de contacter le support client : l’Agent IA a indiqué à l’utilisateur de contacter le support client comme prochaine étape ou a clairement mis fin à l’assistance fournie par l’IA.
  • Manque de connaissances : l’Agent IA a reconnu ne pas disposer des informations nécessaires.
  • Conseil non pertinent : l’Agent IA a tenté plusieurs fois d’aider, mais l’utilisateur n’est toujours pas satisfait.

Vous pouvez activer ou désactiver chacune de ces règles et ajouter vos propres règles avec un Nom de la règle et une Description personnalisés qui indiquent à l’IA quand déclencher le transfert.

En plus des règles, vous pouvez indiquer des Mots-clés qui forceront toujours Human Handoff, quel que soit le contexte. Cette option est utile pour les termes de conformité tels que « poursuite judiciaire », « RGPD » ou « rétrofacturation », que l’IA ne doit jamais traiter.

Lorsque Human Handoff est déclenché, le Routage par sujet envoie la conversation à l’agent humain le mieux placé pour traiter ce sujet au lieu de la laisser sans attribution dans une file d’attente partagée.

Configurez le routage en associant chaque sujet (défini sous Insights → Gérer les sujets) à un ou plusieurs membres de l’équipe. Lorsqu’un transfert est déclenché, Quickchat lit le sujet détecté de la conversation et l’achemine vers l’un des agents affectés à ce sujet. Si aucune règle ne correspond, la conversation reste sans attribution afin qu’un membre de l’équipe puisse la prendre en charge depuis la boîte de réception.

Configurez les adresses à notifier lorsqu’une nouvelle conversation nécessite un transfert humain.

Voici à quoi cela ressemble :

Configuration des notifications e‑mail


Collecte intelligente de données / Génération de leads

Section intitulée « Collecte intelligente de données / Génération de leads »

La Collecte intelligente de données permet à votre Agent IA de collecter des informations utilisateur naturellement, en posant des questions pertinentes pour obtenir nom, e‑mail, téléphone, ou tout autre champ requis. Ces données peuvent ensuite être envoyées à votre CRM ou autres systèmes pour un suivi efficace.

La collecte s’intègre au fil de la conversation de manière fluide et non intrusive.

Lorsqu’un utilisateur échange avec l’Agent :

  1. L’IA détecte les opportunités de collecte (intérêt marqué, etc.).
  2. Elle pose des questions ciblées, par exemple :
    • « Puis‑je avoir votre nom pour mieux vous aider ? »
    • « Quel est le meilleur e‑mail pour vous contacter ? »
  3. Elle enregistre les réponses pour revue ou intégration CRM.
  • Allez dans Actions & MCPs
  • Trouvez Smart Data Gathering
  • Activez l’option

Activation de la génération de leads

Sélectionnez les coordonnées à capturer.

  • Adresse e‑mail
  • Prénom
  • Numéro de téléphone

Sélection des champs

Définissez quand l’Agent doit demander les coordonnées.

  • Après quelques messages échangés
  • Immédiatement après un signal d’intérêt

Quand collecter

Personnalisez la manière de poser les questions.

  • Subtil : intégration naturelle dans la conversation
  • Direct : demande explicite et concise

Manière de collecter

La génération de leads intelligente permet de collecter efficacement des coordonnées tout en assurant une expérience fluide et conforme.

Procédez ainsi pour exporter les détails recueillis :

  1. Allez dans Inbox
  2. Cliquez sur l’icône export
  3. Choisissez Export Gathered Data
  4. Définissez la période (dates de début et fin)
  5. Choisissez le format (CSV, XLSX)
  6. Cliquez sur Download pour enregistrer le fichier

Les Actions personnalisées permettent à votre IA d’appeler des APIs externes pendant la conversation. Utilisez‑les pour rechercher des outils internes, créer des tickets, déclencher des alertes ou récupérer des données fraîchement mises à jour qui ne figurent pas dans la Base de connaissances. Retrouvez‑les dans Actions & MCPs sous Custom Actions.

  1. Choisissez un type d’action : Action API, MCP, Action HubSpot, Action Discord, Google Sheets ou Shopify MCP. Configurez la connexion et les instructions dont l’IA a besoin.
  2. Pendant une conversation, l’IA utilise la description de l’action et les détails disponibles sur les outils ou les paramètres pour décider quand l’exécuter.
  3. Quickchat exécute l’appel et renvoie le résultat à l’IA. L’IA lit la réponse et répond à l’utilisateur en langage naturel.
  4. Testez ou connectez l’action depuis son éditeur avant de l’utiliser dans des conversations.
  1. Allez dans Actions & MCPs.
  2. Cliquez sur + dans Custom Actions et choisissez API Action.
  3. Renseignez Details :
    • Name : clair et descriptif
    • Description : quand l’utiliser et quoi inclure dans les paramètres
  4. Configurez Connection :
    • Action Type : GET ou POST
    • Action endpoint URL : URL complète
    • Headers : ajoutez les en‑têtes requis (Authorization, content-type: application/json, etc.)
  5. Définissez les Parameters : pour chaque paramètre, indiquez name, location (query, body ou header) et une description guidant l’IA sur la composition de la valeur. Les valeurs de chemin ne sont pas une location de paramètre ; insérez‑les directement dans l’URL de l’endpoint via le templating {{placeholder}}.
  6. Test request, vérifiez la réponse, puis cliquez Done.

Au‑delà de la requête elle‑même, une API Action possède trois réglages optionnels qu’il est utile de connaître : Save to memory, Run only when et Response filter.

Action Discord ouvre une galerie d’Actions API préremplies et modifiables :

  • Support & Tickets : Ouvrir un ticket de support vous invite à sélectionner un serveur et un canal texte. Vous pouvez également sélectionner un rôle de support mentionnable, mais ce choix est facultatif. Le modèle crée trois Actions qui ouvrent un thread privé, ajoutent l’auteur de la demande actuelle et publient un résumé avec la mention facultative du rôle.
  • Modération : Timeout d’un membre, Expulser un membre, Bannir un membre, Révoquer un bannissement, Attribuer un rôle, Définir le slowmode et Envoyer une annonce. Chaque modèle s’installe en un clic et utilise le serveur, le membre, le rôle ou le canal de la requête Discord actuelle.

Quickchat crée la méthode HTTP, l’URL, les headers, le body, les paramètres, la description, les réglages de réponse et les conditions d’exécution dans le backend. Les cartes obtenues sont des Actions de requête HTTP ordinaires. Vous pouvez consulter et modifier chaque champ.

Les sept modèles de modération incluent la condition author_is_admin is true sous Exécuter uniquement si. Discord calcule la permission Administrator de l’auteur actuel, la gateway Discord fournit cette valeur et Quickchat la vérifie avant d’envoyer la requête. Les métadonnées provenant du chat public ou de l’API ne peuvent pas définir cette clé. Testez les Actions de modération dans Discord avec un compte administrateur et un compte non-administrateur. AI Preview ne fournit pas d’expéditeur Discord autorisé.

Le bot lui-même a toujours besoin de la permission Discord requise par chaque requête :

ActionPermission ou accès du bot
Timeout d’un membreModerate Members
Expulser un membreKick Members
Bannir un membre, Révoquer un bannissementBan Members
Attribuer un rôleManage Roles
Définir le slowmodeManage Channels
Envoyer une annonceView Channels et Send Messages

Discord applique également la hiérarchie des rôles. Placez le rôle du bot au-dessus des membres et des rôles qu’il doit gérer. Le modèle n’effectue aucune vérification supplémentaire de la hiérarchie ou des permissions individuelles pour l’administrateur à l’origine de la demande.

Définir le slowmode et Envoyer une annonce acceptent un ID de canal comme paramètre. Sans cible fixe supplémentaire, le modèle ne vérifie pas que le canal appartient au serveur depuis lequel l’administrateur a envoyé la requête. Si le même bot appartient à plusieurs serveurs, modifiez ces Actions pour utiliser un ID de canal fixe ou répartissez les serveurs entre des Agents et des identifiants de bot distincts.

L’installation du ticket de support utilise les fonctions existantes des Actions pour transmettre les données :

  1. open_support_ticket crée un thread privé dans le canal sélectionné, capture $.id et l’enregistre dans la mémoire de la conversation sous la clé discord_ticket_thread_id. Cette Action exige la condition visible discord_message is true, s’exécute uniquement sur le serveur sélectionné et seulement tant que cette clé de mémoire n’existe pas.
  2. add_ticket_requester lit {{metadata_discord_ticket_thread_id}} et la variable {{metadata_discord_author_id}} fournie par Discord. Cette Action exige la condition visible discord_message is true et s’exécute uniquement sur le serveur sélectionné une fois l’ID du thread disponible.
  3. post_in_ticket lit le même ID de thread enregistré, publie le résumé du problème en une ligne fourni par l’Agent et mentionne l’auteur de la demande. Si vous avez sélectionné un rôle de support, cette Action le mentionne également. Elle possède les mêmes conditions visibles concernant le message Discord, le serveur et le thread enregistré. Son body Discord allowed_mentions est limité à l’auteur de la demande et, lorsqu’un rôle est configuré, à ce rôle.

Les descriptions et le prompt de votre Agent doivent lui indiquer d’exécuter ces Actions dans cet ordre. Il n’existe pas de couche distincte pour l’état du workflow, le verrouillage, la confirmation, les nouvelles tentatives, la récupération, la réconciliation ou la protection contre le replay. Si un résultat est incertain, vérifiez Discord et le journal de l’Action avant de réessayer, car Discord a peut-être déjà exécuté la requête.

discord_ticket_thread_id n’est pas effacé automatiquement. Le modèle prend donc en charge un ticket par conversation Quickchat. Pour un autre ticket, démarrez une nouvelle conversation ou un nouveau thread Discord, ou modifiez les Actions afin d’ajouter le cycle de vie de la mémoire dont vous avez besoin.

Pour les tickets de support, accordez au bot les permissions View Channels, Send Messages, Read Message History, Create Private Threads, Send Messages in Threads et Manage Threads dans le canal de tickets sélectionné. Choisissez N’avertir aucun rôle sous Avertir un rôle (facultatif) si aucun rôle ne doit être mentionné. Si vous sélectionnez un rôle, il doit être mentionnable et ses membres doivent avoir accès aux threads privés. Lorsqu’aucun rôle mentionnable n’est disponible, les tickets s’ouvrent normalement sans notification de rôle. La galerie répertorie les canaux texte et les rôles mentionnables, mais ne valide pas tous les remplacements de permissions du canal.

La galerie est un raccourci de configuration, pas une couche de policy supplémentaire. Si vous modifiez une Action générée ou créez une Action API Discord personnalisée, vérifiez ses identifiants, ses cibles, ses paramètres, l’exposition de sa réponse et ses conditions Exécuter uniquement si avant de l’activer.

Capturez une valeur de la réponse de l’API et stockez‑la dans la mémoire de la conversation sous une clé de votre choix. Les Actions ultérieures peuvent la réutiliser via {{metadata_<key>}}, et elle apparaît dans les détails de la conversation (Boîte de réception, API et exports).

Utilisez‑la lorsqu’une Action produit quelque chose dont une Action ultérieure a besoin. Une Action de recherche peut enregistrer un customer_id issu de sa réponse ; une Action de suivi envoie ensuite {{metadata_customer_id}} sans que l’IA ait à recopier la valeur d’une Action à l’autre.

Dans la section Save to memory de l’éditeur d’API Action, donnez à la valeur capturée une memory key et pointez‑la vers la partie de la réponse que vous souhaitez conserver. À partir de là, c’est une variable de métadonnées comme une autre.

La section Save to memory de l’éditeur d’API Action

Restreignez une Action pour qu’elle ne s’exécute que lorsque des conditions sur les métadonnées de la conversation sont remplies. Les conditions sont vérifiées de notre côté, au moment de l’appel, après que l’IA a décidé d’appeler l’Action mais avant l’envoi de la moindre requête : impossible de les contourner depuis le chat.

C’est l’outil adapté aux Actions à privilèges ou irréversibles (bannir un membre, émettre un remboursement, supprimer un enregistrement). Une ligne dans votre prompt indiquant « seuls les admins peuvent faire cela » est une instruction utile, mais ce n’est pas une frontière de sécurité : un utilisateur déterminé peut argumenter avec le modèle ou tenter une injection de prompt. Une condition d’exécution est déterministe et vit en dehors du prompt, elle tient donc quoi que dise la conversation.

  • La condition d’exécution est la frontière. Elle est évaluée côté serveur et ne fait pas partie du prompt lu par le modèle. C’est elle qui empêche réellement l’Action de s’exécuter.
  • La règle du prompt est l’expérience utilisateur. Gardez aussi une ligne dans votre prompt, pour que l’IA refuse poliment et explique pourquoi au lieu de rester silencieuse.

Ajoutez des conditions dans la section Run only when de l’éditeur d’Action. Cliquez sur Add condition, choisissez une clé de métadonnées (par exemple telegram_sender_is_admin) et choisissez comment la comparer :

ConditionPasse lorsque la valeur de métadonnée…
is trueest truthy
is falseest falsy
existsest présente sur la conversation
does not existest absente
equalscorrespond à une valeur que vous indiquez
does not equaldiffère d’une valeur que vous indiquez

L’Action ne s’exécute que lorsque toutes les conditions sont remplies. Une condition sur une clé non définie sur la conversation ne passe pas.

La section Run only when avec une condition : telegram_sender_is_admin is true

Lorsqu’une condition échoue, aucune requête n’est envoyée et l’IA indique à l’utilisateur qu’elle ne peut pas le faire. Ci‑dessous, la même demande de bannissement est bloquée pour un non‑admin et autorisée pour un admin, sans rien changer d’autre que la personne qui la formule :

La tentative de bannissement d’un non‑admin bloquée par la condition d’exécution : aucune requête n’est envoyée et le résultat est un refus

La même demande de bannissement émanant d’un admin : la condition d’exécution passe et l’Action renvoie 200

Par défaut, l’IA voit la réponse complète de l’API. Ajoutez des expressions JSONPath dans la section Response filter pour limiter l’IA à des parties précises de la réponse.

Deux raisons courantes de filtrer :

  • Masquer les champs sensibles. Gardez les e‑mails des clients, les détails de paiement ou les identifiants internes hors du contexte du modèle lorsque l’endpoint renvoie plus que ce dont l’IA a besoin.
  • Réduire le prompt. Les APIs bavardes peuvent renvoyer des payloads volumineux ; filtrer pour ne garder que les quelques champs qui comptent garde la réponse petite et l’IA concentrée.

Ajoutez une ou plusieurs expressions JSONPath et l’IA ne reçoit que les parties correspondantes. Par exemple, $.data.items[*].name ne conserve que les noms des éléments d’une réponse plus large.

La section Response filter de l’éditeur d’API Action

  • Soyez explicite dans les descriptions : quand utiliser l’action et comment remplir chaque paramètre.
  • Limitez les scopes au minimum : n’incluez que les en‑têtes et jetons nécessaires.
  • Testez avant déploiement avec le panneau de test. Vérifiez les codes et payloads.

MCP (Model Context Protocol) est un standard ouvert qui permet à une IA d’utiliser directement les outils d’un autre service. Au lieu de décrire à la main un endpoint et ses paramètres, un serveur MCP publie lui‑même ses outils, que votre Agent IA découvre et utilise.

Pour la plupart des services, la connexion tient en un seul clic. Allez dans Actions & MCPs, cliquez sur + Ajouter une action et choisissez MCP.

L’écran MCP s’ouvre sur un catalogue de services connus, doté d’un champ de recherche et classé par catégorie (Populaires, Support client, CRM & ventes, Planification, E-commerce, Paiements & facturation, Marketing & e-mail, Communication, Productivité, Données & analytics, Recherche & web, Voyage & réservation, Design, Développeur & infra).

  1. Trouvez le service souhaité, en parcourant le catalogue ou via le champ de recherche.
  2. Cliquez sur sa vignette. Quickchat vérifie le serveur et découvre les outils qu’il propose.
  3. Si le service exige une connexion, un panneau Autorisation requise apparaît. Cliquez sur Se connecter avec <service>, approuvez l’accès dans la fenêtre popup qui s’ouvre : le panneau passe alors à l’état connecté.
  4. L’action est créée, activée, et ses outils sont listés. Votre Agent IA peut les utiliser dès le message suivant.

Cliquez sur Saisir une URL manuellement sous le catalogue, puis :

  1. Collez l’URL du serveur MCP (elle doit commencer par https://).
  2. Si le serveur s’authentifie avec un jeton statique plutôt qu’avec un flux de connexion, ouvrez En-têtes de connexion (facultatif) et ajoutez l’en‑tête attendu, par exemple Authorization: Bearer <your-token>.
  3. Cliquez sur Connecter.

Utilisez Parcourir le catalogue pour revenir à la vue en vignettes. Si un service dont vous avez besoin est absent, Une intégration manque ? Proposez-la ouvre un e‑mail pré‑rempli adressé à notre équipe.

Une fois la connexion établie, l’action liste sous Outils chaque outil exposé par le serveur, avec son propre interrupteur. Désactivez tout ce que vous ne voulez pas voir appelé par l’IA : les recherches en lecture seule d’un serveur de réservation peuvent rester actives pendant que son outil d’annulation reste désactivé.

Activation par défaut de l’outil détermine ce qui se passe lorsque le serveur ajoute un nouvel outil par la suite : activée, les nouveaux outils sont disponibles immédiatement ; désactivée, vous activez chacun d’eux délibérément.

Pendant l’exécution d’un outil, le widget de chat affiche une courte ligne d’état décrivant ce que fait l’IA, dérivée du nom de l’outil : un outil appelé search_flights affiche « Recherche de vols… ». Le visiteur dispose ainsi d’une information utile pendant l’attente, au lieu d’un simple indicateur de saisie. Cette ligne est générée automatiquement, il n’y a rien à configurer.

  • Reconnecter : relance l’autorisation. Utilisez cette option si la connexion a expiré, si vous voulez autoriser un autre compte, ou si la liste des outils du serveur a changé et que vous voulez récupérer les nouveaux outils.
  • Déconnecter : révoque l’autorisation enregistrée et met l’action hors ligne. L’action elle‑même reste dans votre liste : vous pouvez donc vous reconnecter plus tard sans tout reconfigurer.

Modifier l’URL du serveur MCP d’une action connectée efface son autorisation et désactive l’action, car les identifiants délivrés par un serveur ne sont jamais réutilisés auprès d’un autre. Autorisez à nouveau pour la remettre en ligne.

Ce que vous voyezCe que cela signifie
L’autorisation a échouéLa connexion ne s’est pas terminée. Essayez Reconnecter ; si la fenêtre popup a été fermée trop tôt, rien n’a été enregistré.
Connecté, mais le chargement des outils a échouéL’autorisation a réussi, mais la liste des outils n’a pas pu être chargée. Cliquez sur Reconnecter.
Aucun outil n’a été trouvé sur ce serveur. Essayez de vous reconnecter.Le serveur a bien autorisé la connexion, mais ne publie aucun outil. Vérifiez que le compte que vous avez approuvé a accès aux données attendues.
Saisissez une URL valide, commençant par https://L’URL n’a pas pu être lue. Utilisez l’adresse https:// complète du serveur. Quickchat se connecte toujours en https, afin que les identifiants ne soient jamais transmis en clair.
L’action s’est désactivée d’elle‑mêmeSon autorisation a expiré ou a été révoquée chez le fournisseur. Ouvrez l’action et cliquez sur Reconnecter.

Dernière mise à jour :