React e Next.js
Installa il widget Agentkit attuale con due script in React, Vite o Next.js e provalo su una pagina pubblicata.
Il widget di chat Agentkit richiede il codice generato completo con due script: prima lo script di inizializzazione della coda dei comandi, poi il loader con ID agente e URL del widget. Il solo loader non basta.
Apri Canali → Incorporamento nel sito web → Widget di chat dell'agente, abilita il canale e copia entrambi i tag generati. Mantieni ID e URL generati.
React con Vite o Create React App
Incolla i due tag senza modifiche e nell'ordine indicato prima di </body> in index.html (Vite) o public/index.html (Create React App). Compila e pubblica il sito. Non inserirli in un componente che viene rimontato a ogni cambio di pagina.
Next.js App Router
Per mostrare il widget in tutto il sito, adatta i due tag generati con next/script in app/layout.tsx. Sostituisci YOUR_WIDGET_URL e YOUR_CHATBOT_ID con i valori del loader generato. Mantieni il codice di inizializzazione mostrato. Lo script inline richiede un id; beforeInteractive lo esegue prima del loader.
// app/layout.tsx
import Script from 'next/script';
const bootstrap = `(function (w) {
if (w.agentkit) return;
var q = [];
var agentkit = function () { q.push(arguments); };
agentkit.q = q;
w.agentkit = agentkit;
})(window);`;
export default function RootLayout({ children }: { children: React.ReactNode }) {
return (
<html lang="en">
<body>
{children}
<Script id="agentkit-bootstrap" strategy="beforeInteractive">
{bootstrap}
</Script>
<Script
id="agentkit-widget"
src="YOUR_WIDGET_URL"
data-chatbot="YOUR_CHATBOT_ID"
strategy="afterInteractive"
/>
</body>
</html>
);
}
Next.js Pages Router
Per tutto il sito, inserisci l'inizializzazione inline in pages/_document.tsx e il loader in pages/_app.tsx. Sostituisci i due segnaposto con i valori del loader generato. beforeInteractive va in _document, non in _app.
// pages/_document.tsx
import { Html, Head, Main, NextScript } from 'next/document';
import Script from 'next/script';
export default function Document() {
return (
<Html lang="en">
<Head />
<body>
<Main />
<NextScript />
<Script id="agentkit-bootstrap" strategy="beforeInteractive">
{`(function (w) {
if (w.agentkit) return;
var q = [];
var agentkit = function () { q.push(arguments); };
agentkit.q = q;
w.agentkit = agentkit;
})(window);`}
</Script>
</body>
</Html>
);
}
// pages/_app.tsx
import Script from 'next/script';
import type { AppProps } from 'next/app';
export default function App({ Component, pageProps }: AppProps) {
return (
<>
<Component {...pageProps} />
<Script
id="agentkit-widget"
src="YOUR_WIDGET_URL"
data-chatbot="YOUR_CHATBOT_ID"
strategy="afterInteractive"
/>
</>
);
}
Prova la pagina pubblicata
- Apri l'URL pubblicato e controlla che appaia la bolla. Con Vite o Create React App controlla il sorgente; con Next.js controlla il pannello Elementi dopo il caricamento. Devono esserci inizializzazione e loader con ID agente.
- Apri la bolla e invia una domanda la cui risposta hai già verificato nel Playground. Confronta la risposta con la fonte approvata.
- Se il widget manca, verifica canale, URL dello script e i due tag. Se si apre ma non risponde, controlla errori di rete, limite messaggi, fonti e restrizioni di dominio. Consenti l'origine di sviluppo o anteprima solo durante la prova.
La guida del widget JavaScript contiene la lista di controllo del codice generato. Next.js documenta posizionamento e caricamento degli script e l'ID richiesto per gli script inline. Questi esempi riguardano un widget flottante per tutto il sito; prova separatamente le installazioni per pagina o tenant.