Module de chatbot Drupal
Utilisez le module Drupal officiel de ChattyBox si vous souhaitez une installation gérée par Composer pour un site Drupal 10 ou Drupal 11. Il charge le widget hébergé sur les routes HTML publiques et configure automatiquement le point de terminaison API de production. Ce guide couvre la configuration opérationnelle. La page du module de chatbot IA Drupal présente le produit et le processus d’évaluation.
Avant l’installation
Suivez d’abord le parcours Prise en main : connectez votre URL Drupal publique, examinez les pages indexées et vérifiez des réponses représentatives dans Test Chat. Créez ensuite une clé publique compatible avec le navigateur dans Public Keys et copiez-la depuis l’onglet Embed du projet.
Installation avec Composer
Le module est actuellement distribué sous forme de package balisé dans le dépôt GitHub public. Il n’est pas encore listé sur Drupal.org ni Packagist ; Composer a donc besoin de la déclaration du dépôt VCS ci-dessous avant que composer require puisse le résoudre.
Ajoutez le dépôt GitHub public à la racine composer.json du projet Drupal qui le consomme :
{
"repositories": {
"chattybox-drupal": {
"type": "vcs",
"url": "https://github.com/OpenStaticFish/chattybox-drupal.git"
}
}
}
Si le projet possède déjà une section repositories, fusionnez-y l’entrée chattybox-drupal. Installez ensuite le module balisé :
composer require openstaticfish/chattybox-drupal:^0.1
Le package est déclaré comme drupal-module et nécessite Drupal ^10 || ^11. Les chemins d’installation Composer standard de Drupal le placent sous web/modules/contrib/.
Consultez le code source public du module Drupal et les modifications balisées avant toute mise à niveau. Les mises à jour gérées par le répertoire Drupal.org ne sont pas encore disponibles.
Pour tester à la place la branche de développement actuelle :
composer require openstaticfish/chattybox-drupal:dev-main
Activer et configurer
- Activez ChattyBox depuis Extend, ou exécutez
drush en chattybox. - Ouvrez Configuration > Web services > ChattyBox.
- Collez uniquement la clé API publique du widget depuis l’onglet Embed du projet.
- Conservez l’URL du script du widget hébergé, sauf si ChattyBox vous a fourni une URL de loader de prévisualisation ou auto-hébergée.
- Laissez le remplacement vide pour suivre la politique du projet, ou saisissez un code minuscule pris en charge. En auto, la langue de la page précède celle du navigateur ; en fixe, la valeur par défaut est utilisée. Un remplacement ne fonctionne que si le projet l’autorise.
- Activez le chatbot et enregistrez la configuration.
Le module ne se charge pas sur les routes d’administration ni pour les réponses non HTML. Il ajoute la clé publique, le point de terminaison de production géré, la langue facultative et le loader via la bibliothèque Drupal et drupalSettings. Ces gardes ne sont pas un contrôle de confidentialité des pages frontend : excluez paiement, compte et membres si besoin.
Exclure d’autres routes
Le module ignore automatiquement les routes d’administration. Un module personnalisé peut désactiver le widget sur d’autres routes publiques avec hook_chattybox_load_widget_alter() :
/**
* Implements hook_chattybox_load_widget_alter().
*/
function mymodule_chattybox_load_widget_alter(&$should_load, $config, $route_match) {
if ('commerce_checkout.form' === $route_match->getRouteName()) {
$should_load = FALSE;
}
}
Solution de repli manuelle
Composer est la méthode d’installation recommandée. Si votre déploiement Drupal ne peut pas utiliser Composer, copiez le module dans web/modules/custom/chattybox ou un autre répertoire de modules personnalisés, activez-le et configurez-le depuis Configuration > Web services > ChattyBox.
Ne collez pas d’identifiant de gestion dans le module. La clé API publique du widget est destinée au balisage frontend.
Vérification
Après avoir configuré le module :
- Ouvrez une page Drupal publique dans une fenêtre de navigation privée.
- Vérifiez que le lanceur du widget apparaît une seule fois.
- Posez une vraie question de visiteur.
- Vérifiez qu’une réponse prise en charge cite les pages Drupal indexées et qu’une question non prise en charge renvoie le repli, éventuellement sans source.
- Consultez la console pour détecter l’absence de
data-api-key,data-api-urlou des erreurs de clé. Testez routes incluses et exclues avec caches froids et chauds : une exclusion serveur ne détruit pas un widget déjà chargé lors d’une navigation client.
Consultez la checklist de lancement avant d’annoncer le chatbot.