Petite frontière client
Marquez uniquement le module de chat interactif avec use client au lieu de transférer une page ou un layout entier dans le navigateur.
Utilisez @openstaticfish/chattybox dans une frontière client ciblée tandis que le reste de votre application App Router reste rendu côté serveur. ChattyBox gère la recherche, les citations, les conversations et la mise à l'échelle.
ChattyBox explore votre documentation existante, indexe le contenu pour la recherche et intègre un chatbot qui répond avec vos docs plutôt qu’avec la mémoire générique du modèle.
Installez @openstaticfish/chattybox dans l'application Next.js.
Ajoutez la clé API publique du widget et l'URL de l'API sous forme de variables d'environnement NEXT_PUBLIC.
Créez un composant client pour l'état du chat et les interactions dans le navigateur.
Importez ce composant client depuis une page ou un layout Server Component.
Un lancement en trois étapes
Gardez le SDK à la frontière client où se déroule l'interaction avec le chat et conservez les Server Components pour le reste de l'application.
Marquez uniquement le module de chat interactif avec use client au lieu de transférer une page ou un layout entier dans le navigateur.
Utilisez une clé de projet compatible avec le navigateur et des origines autorisées ; n'exposez jamais d'identifiants de gestion via des variables NEXT_PUBLIC.
Affichez les messages et les citations dans votre navigation, votre espace client, votre interface de documentation ou votre workflow de support.
Évitez d'ajouter des route handlers uniquement pour relayer une API de navigateur gérée, sauf si votre produit présente un besoin concret côté serveur.
Le SDK utilise fetch et des identifiants de projet visibles dans le navigateur : initialisez-le donc dans un module client. Ne placez jamais de secrets ni d'API de gestion dans des variables NEXT_PUBLIC.
'use client';
import { useState } from 'react';
import { Chattybox } from '@openstaticfish/chattybox';
const chattybox = new Chattybox({
apiKey: process.env.NEXT_PUBLIC_CHATTYBOX_API_KEY!,
baseUrl: process.env.NEXT_PUBLIC_CHATTYBOX_API_URL!,
});
export function Chat() {
const [answer, setAnswer] = useState('');
async function ask(message: string) {
const response = await chattybox.sendMessage({ message });
setAnswer(response.message);
}
return <div aria-live="polite">{answer}</div>;
}Découvrez le package sous-jacent et la frontière de l'infrastructure gérée.
Découvrez les modèles de composants et d'état communs aux applications React.
Consultez les champs de réponse, les conversations de suivi et les erreurs.
Utilisez next/script et l'interface de widget maintenue pour une expérience de chat sans build.
Oui. Utilisez-le dans un composant client pour l'état interactif du chat et affichez ce composant depuis une page ou un layout de l'App Router.
Pas pour l'intégration normale dans le navigateur. Les clés publiques du widget sont conçues pour une utilisation côté client et peuvent être limitées aux origines autorisées.
La clé publique du widget identifie un projet, mais ne constitue pas un identifiant de gestion. Limitez-la à vos origines de production et de prévisualisation, et n'exposez jamais de secrets administratifs.
Oui. Le guide d'installation hébergée présente l'approche next/script si vous préférez une interface maintenue à une interface SDK personnalisée.
Aucune carte de crédit requise. Votre contenu n’est pas utilisé pour l’entraînement de modèles.
Niveau Free. Aucune carte requise.