Powrót do panelu

Dokumentacja

Dowiedz się, jak korzystać z Asyntai

Jak dodać chatbota Asyntai AI do Sanity

Instrukcja krok po kroku dla stron opartych na Sanity

Pobierz kod osadzania

Ważne: Sanity to bezglowy system CMS dostarczajacy treść przez API. Kod chatbota należy dodać do aplikacji frontendowej (Next.js, Gatsby, Nuxt, zwykły HTML itp.), a nie do samego Sanity Studio.

Krok 1: Pobierz swój kod osadzania

Najpierw przejdź do swojego Panelu Asyntai i przewiń w dół do sekcji "Kod osadzania". Skopiuj swój unikalny kod osadzania, który będzie wyglądał tak:

<script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script>

Uwaga: Powyższy kod to tylko przykład. Musisz skopiować swój własny unikalny kod osadzania z Panelu, ponieważ zawiera on Twój osobisty identyfikator widgetu.

Krok 2: Dodaj do frontendu Next.js (najczęściej stosowane)

Jeśli Twoja strona oparta na Sanity używa Next.js (najczestsze połączenie), dodaj chatbota do głównego ukladu:

App Router (Next.js 13+)

Otwórz app/layout.js (lub app/layout.tsx) i dodaj komponent Script:

import Script from 'next/script' export default function RootLayout({ children }) { return ( <html lang="en"> <body> {children} <Script src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID" strategy="afterInteractive" /> </body> </html> ) }

Pages Router

Jeśli używasz Pages Router, otwórz pages/_app.js:

import Script from 'next/script' export default function MyApp({ Component, pageProps }) { return ( <> <Component {...pageProps} /> <Script src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID" strategy="afterInteractive" /> </> ) }

Wskazówka: Opcja strategy=\"afterInteractive\" zapewnia, że chatbot ładuje się po tym, jak strona stanie się interaktywna, zapewniając najlepsze doświadczenie użytkownika bez wpływu na wydajność ładowania strony.

Metoda alternatywna 1: Frontend Gatsby

Jeśli Twoja strona Sanity używa Gatsby, dodaj skrypt przez gatsby-ssr.js:

// gatsby-ssr.js import React from 'react' export const onRenderBody = ({ setPostBodyComponents }) => { setPostBodyComponents([ <script key="asyntai" async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID" /> ]); };

Uwaga: Musisz również dodać ten sam kod do gatsby-browser.js, jeśli chcesz, aby widget utrzymywal sie podczas nawigacji po stronie klienta. Alternatywnie dodaj go do głównego komponentu ukladu.

Metoda alternatywna 2: Frontend Nuxt.js

Jeśli Twoja strona Sanity używa Nuxt.js, dodaj skrypt w nuxt.config.js (lub nuxt.config.ts):

// nuxt.config.ts export default defineNuxtConfig({ app: { head: { script: [ { src: 'https://asyntai.com/static/js/chat-widget.js', 'data-asyntai-id': 'YOUR_WIDGET_ID', async: true } ] } } })

Metoda alternatywna 3: Frontend w zwyklym HTML

Jeśli Twoja strona oparta na Sanity używa zwyklego HTML lub generatora stron statycznych korzystajacego z API Sanity:

  1. Otwórz główny plik HTML (zwykle index.html)
  2. Dodaj kod osadzania tuz przed zamykającym znacznikiem </body>:
<script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script> </body> </html>

Metoda alternatywna 4: React (Vite lub Create React App)

Jeśli Twój frontend używa React z Vite lub Create React App:

Dodaj skrypt do index.html w katalogu public/:

<!DOCTYPE html> <html lang="en"> <head> <!-- ... existing head content ... --> </head> <body> <div id="root"></div> <script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script> </body> </html>

Lub użyj hooka useEffect w swoim głównym komponencie:

// App.jsx or App.tsx import { useEffect } from 'react'; function App() { useEffect(() => { const script = document.createElement('script'); script.src = 'https://asyntai.com/static/js/chat-widget.js'; script.setAttribute('data-asyntai-id', 'YOUR_WIDGET_ID'); script.async = true; document.body.appendChild(script); return () => { document.body.removeChild(script); }; }, []); return ( // ... your app content ); }

Krok 3: Wdrożenie i weryfikacja

Po dodaniu kodu do aplikacji frontendowej:

  1. Wdrozz frontend u swojego dostawcy hostingu (Vercel, Netlify itp.)
  2. Otwórz swoja stronę na żywo w nowej karcie przeglądarki
  3. Powinieneś zobaczyć przycisk widgetu czatu w prawym dolnym rogu
  4. Kliknij go, aby upewnić się, że otwiera się i działa poprawnie

Nie widzisz widgetu? Upewnij sie, ze zastapiles YOUR_WIDGET_ID swoim rzeczywistym identyfikatorem widgetu z panelu. Sprawdź, czy skrypt ładuje sie w zakladce Network przeglądarki (F12 > Network). Zweryfikuj, czy frontend został ponownie wdrozony po dodaniu kodu. W przypadku Next.js upewnij sie, ze używasz komponentu Script z next/script, a nie zwyklego znacznika <script>. Wyczyść pamięć podręczna przeglądarki lub przetestuj w trybie incognito.