Come aggiungere il chatbot IA Asyntai a DatoCMS
Guida passo passo per i siti web basati su DatoCMS
CMS headless: DatoCMS è un CMS headless che fornisce contenuti tramite API. Il codice del chatbot deve essere aggiunto alla tua applicazione frontend (Next.js, Gatsby, Nuxt, ecc.), non alla dashboard di DatoCMS.
Passaggio 1: ottieni il tuo codice di incorporamento
Per prima cosa, vai alla tua Dashboard Asyntai e scorri fino alla sezione "Codice di incorporamento". Copia il tuo codice di incorporamento univoco che apparirà così:
<script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script>
Nota: Il codice sopra è solo un esempio. Devi copiare il tuo codice di incorporamento univoco dalla tua Dashboard poiché contiene il tuo ID widget personale.
Passaggio 2: Aggiungi al frontend Next.js (più comune)
Next.js è il framework frontend più popolare utilizzato con DatoCMS. Aggiungi il chatbot utilizzando il componente Script:
App Router (app/layout.tsx):
- Apri il file di layout root:
app/layout.tsx - Importa il componente Script e aggiungi il chatbot:
import Script from 'next/script'
export default function RootLayout({ children }) {
return (
<html>
<body>
{children}
<Script
src="https://asyntai.com/static/js/chat-widget.js"
data-asyntai-id="YOUR_WIDGET_ID"
strategy="afterInteractive"
/>
</body>
</html>
)
} - Sostituisci
YOUR_WIDGET_IDcon il tuo ID widget effettivo - Salva il file e riavvia il server di sviluppo
Pages Router (pages/_app.tsx):
- Apri il file
pages/_app.tsx - Aggiungi il componente Script:
import Script from 'next/script'
import type { AppProps } from 'next/app'
export default function App({ Component, pageProps }: AppProps) {
return (
<>
<Component {...pageProps} />
<Script
src="https://asyntai.com/static/js/chat-widget.js"
data-asyntai-id="YOUR_WIDGET_ID"
strategy="afterInteractive"
/>
</>
)
}
Suggerimento: L'utilizzo di strategy="afterInteractive" assicura che il chatbot venga caricato subito dopo che la pagina diventa interattiva, offrendo un buon equilibrio tra prestazioni e disponibilità.
Metodo alternativo 1: Frontend Gatsby
Per i siti Gatsby che estraggono contenuti da DatoCMS tramite gatsby-source-datocms:
- Crea o modifica
gatsby-ssr.jsnella root del progetto:import React from 'react'
export const onRenderBody = ({ setPostBodyComponents }) => {
setPostBodyComponents([
<script
key="asyntai-chatbot"
async
src="https://asyntai.com/static/js/chat-widget.js"
data-asyntai-id="YOUR_WIDGET_ID"
/>
])
} - Sostituisci
YOUR_WIDGET_IDcon il tuo ID widget effettivo - Riavvia il server di sviluppo Gatsby
Metodo alternativo 2: Frontend Nuxt.js
Per le applicazioni Nuxt.js che consumano contenuti DatoCMS:
- Aggiungi al tuo
nuxt.config.ts:export default defineNuxtConfig({
app: {
head: {
script: [
{
src: 'https://asyntai.com/static/js/chat-widget.js',
async: true,
'data-asyntai-id': 'YOUR_WIDGET_ID'
}
]
}
}
}) - Sostituisci
YOUR_WIDGET_IDcon il tuo ID widget effettivo - Riavvia il server di sviluppo Nuxt
Metodo alternativo 3: HTML statico / Sito statico
Se stai utilizzando la Content Delivery API di DatoCMS con un sito HTML statico o un generatore di siti statici:
- Aggiungi il codice di incorporamento al file HTML prima del tag di chiusura
</body>:<script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script> - Sostituisci
YOUR_WIDGET_IDcon il tuo ID widget effettivo - Salva il file e caricalo sul tuo hosting
Metodo alternativo 4: React (Vite/CRA)
Per le app React standard (Create React App, Vite) che utilizzano l'API di DatoCMS:
Opzione A: Aggiungi a public/index.html
- Apri il file
public/index.html(CRA) oindex.html(Vite) - Aggiungi il codice di integrazione prima del tag di chiusura
</body><script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script> - Salva il file
Opzione B: useEffect nel componente root
- Crea un componente chatbot o aggiungilo al componente root:
// components/Chatbot.jsx
import { useEffect } from 'react'
export default function Chatbot() {
useEffect(() => {
const script = document.createElement('script')
script.src = 'https://asyntai.com/static/js/chat-widget.js'
script.async = true
script.setAttribute('data-asyntai-id', 'YOUR_WIDGET_ID')
document.body.appendChild(script)
return () => document.body.removeChild(script)
}, [])
return null
} - Importa e renderizza il componente nel tuo
App.jsxo layout root
Passaggio 3: Distribuisci e verifica
Dopo aver aggiunto il codice del chatbot al tuo sito basato su DatoCMS, effettua il deploy o avvia il server di sviluppo. Visita il tuo sito web in una nuova scheda del browser o in una finestra di navigazione in incognito. Dovresti vedere il pulsante del widget di chat nell'angolo in basso a destra. Cliccaci sopra per assicurarti che si apra e funzioni correttamente.
Non vedi il widget? Assicurati di aver aggiunto lo script al file corretto per il tuo framework. Controlla la console per sviluppatori del browser per eventuali errori. Se utilizzi il rendering lato server, assicurati che lo script venga eseguito lato client. Prova a svuotare la cache del browser o a visualizzare in una finestra di navigazione in incognito.
Variabili d'ambiente: Per una maggiore sicurezza e flessibilità, considera di memorizzare l'ID del widget in una variabile d'ambiente (ad es., NEXT_PUBLIC_ASYNTAI_ID per Next.js o VITE_ASYNTAI_ID per Vite) anziché codificarlo direttamente.
Weebly