Como Adicionar o Chatbot IA Asyntai ao DatoCMS
Guia passo a passo para sites baseados em DatoCMS
CMS Headless: O DatoCMS é um CMS headless que entrega conteúdo via APIs. O código do chatbot precisa ser adicionado à sua aplicação frontend (Next.js, Gatsby, Nuxt, etc.), não ao painel do DatoCMS.
Passo 1: Obtenha Seu Código de Incorporação
Primeiro, acesse seu Dashboard Asyntai e role para baixo até a seção "Embed Code". Copie seu código de incorporação exclusivo que se parecerá com isto:
<script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script>
Nota: O código acima é apenas um exemplo. Você deve copiar seu próprio código de incorporação exclusivo do seu Dashboard, pois ele contém seu ID de widget pessoal.
Etapa 2: Adicionar ao Frontend Next.js (Mais Comum)
O Next.js é o framework de frontend mais popular usado com o DatoCMS. Adicione o chatbot usando o componente Script:
App Router (app/layout.tsx):
- Abra seu arquivo de layout raiz:
app/layout.tsx - Importe o componente Script e adicione o 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>
)
} - Substitua
YOUR_WIDGET_IDpelo seu ID de widget real - Salve o arquivo e reinicie seu servidor de desenvolvimento
Pages Router (pages/_app.tsx):
- Abra seu arquivo
pages/_app.tsx - Adicione o 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"
/>
</>
)
}
Dica: Usar strategy="afterInteractive" garante que o chatbot carregue logo após a página se tornar interativa, proporcionando um bom equilíbrio entre desempenho e disponibilidade.
Método Alternativo 1: Frontend Gatsby
Para sites Gatsby que extraem conteúdo do DatoCMS via gatsby-source-datocms:
- Crie ou edite
gatsby-ssr.jsna raiz do seu projeto: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"
/>
])
} - Substitua
YOUR_WIDGET_IDpelo seu ID de widget real - Reinicie seu servidor de desenvolvimento Gatsby
Método Alternativo 2: Frontend Nuxt.js
Para aplicações Nuxt.js consumindo conteúdo do DatoCMS:
- Adicione ao seu
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'
}
]
}
}
}) - Substitua
YOUR_WIDGET_IDpelo seu ID de widget real - Reinicie seu servidor de desenvolvimento Nuxt
Método Alternativo 3: HTML Puro / Site Estático
Se você está usando a Content Delivery API do DatoCMS com um site HTML estático ou gerador de sites estáticos:
- Adicione o código de incorporação ao seu arquivo HTML antes da tag de fechamento
</body>:<script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script> - Substitua
YOUR_WIDGET_IDpelo seu ID de widget real - Salve o arquivo e envie para sua hospedagem
Método Alternativo 4: React (Vite/CRA)
Para apps React padrão (Create React App, Vite) consumindo a API do DatoCMS:
Opção A: Adicionar ao public/index.html
- Abra seu arquivo
public/index.html(CRA) ouindex.html(Vite) - Adicione o código de incorporação antes da tag de fechamento
</body>:<script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script> - Salve o arquivo
Opção B: useEffect no Componente Raiz
- Crie um componente de chatbot ou adicione ao seu componente raiz:
// 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
} - Importe e renderize o componente no seu
App.jsxou layout raiz
Etapa 3: Implantar e Verificar
Após adicionar o código do chatbot ao seu site baseado em DatoCMS, faça o deploy ou execute seu servidor de desenvolvimento. Visite seu site em uma nova aba do navegador ou janela anônima. Você deverá ver o botão do widget de chat no canto inferior direito. Clique nele para confirmar que abre e funciona corretamente.
Não está vendo o widget? Certifique-se de ter adicionado o script ao arquivo correto para o seu framework. Verifique o console de desenvolvedor do navegador para ver se há erros. Se estiver usando renderização no lado do servidor, garanta que o script seja executado no lado do cliente. Tente limpar o cache do navegador ou visualizar em uma janela anônima.
Variáveis de Ambiente: Para maior segurança e flexibilidade, considere armazenar seu ID de widget em uma variável de ambiente (por exemplo, NEXT_PUBLIC_ASYNTAI_ID para Next.js ou VITE_ASYNTAI_ID para Vite) em vez de codificá-lo diretamente.
Weebly