Natrag na nadzornu ploču

Dokumentacija

Naučite kako koristiti Asyntai

Kako dodati Asyntai AI chatbot na Sanity

Vodič korak po korak za web stranice pokretane Sanityjem

Nabavite kod za ugradnju

Važno: Sanity je headless CMS koji isporucuje sadrzaj putem API-ja. Kod chatbota treba dodati u vasu frontend aplikaciju (Next.js, Gatsby, Nuxt, obicni HTML itd.), a ne u sam Sanity Studio.

Korak 1: Nabavite svoj kod za ugradnju

Prvo idite na svoju Asyntai nadzornu ploču i pomaknite se prema dolje do odjeljka "Kod za ugradnju". Kopirajte svoj jedinstveni kod za ugradnju koji će izgledati ovako:

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

Napomena: Gornji kod je samo primjer. Morate kopirati svoj vlastiti jedinstveni kod za ugradnju sa svoje Nadzorne ploče jer sadrži vaš osobni ID widgeta.

Korak 2: Dodajte u Next.js frontend (Najčešći)

Ako vasa stranica pokretana Sanityjem koristi Next.js (najcesci par), dodajte chatbot u svoj korijenski raspored:

App Router (Next.js 13+)

Otvorite app/layout.js (ili app/layout.tsx) i dodajte komponentu 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

Ako koristite Pages Router, otvorite 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" /> </> ) }

Savjet: Opcija strategy="afterInteractive" osigurava da se chatbot ucitava nakon sto stranica postane interaktivna, pruzajuci najbolje korisnicko iskustvo bez utjecaja na performanse ucitavanja.

Alternativna metoda 1: Gatsby frontend

Ako vasa Sanity stranica koristi Gatsby, dodajte skriptu putem 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" /> ]); };

Napomena: Takoder trebate dodati isti kod u gatsby-browser.js ako zelite da widget ostane prisutan tijekom navigacije na strani klijenta. Alternativno, dodajte ga u korijensku komponentu rasporeda.

Alternativna metoda 2: Nuxt.js frontend

Ako vasa Sanity stranica koristi Nuxt.js, dodajte skriptu u nuxt.config.js (ili 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 } ] } } })

Alternativna metoda 3: Obicni HTML frontend

Ako vasa stranica pokretana Sanityjem koristi obicni HTML ili generator staticnih stranica koji konzumira Sanity API:

  1. Otvorite svoju glavnu HTML datoteku (obično index.html)
  2. Dodajte ugradni kod neposredno prije zavrsne oznake </body>:
<script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script> </body> </html>

Alternativna metoda 4: React (Vite ili Create React App)

Ako vaš frontend koristi React s Viteom ili Create React Appom:

Dodajte skriptu u index.html u direktoriju 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>

Ili upotrijebite kuku useEffect u svojoj korijenskoj komponenti:

// 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 ); }

Korak 3: Postavite i provjerite

Nakon dodavanja koda u svoju frontend aplikaciju:

  1. Postavite svoj frontend na svog pružatelja hostinga (Vercel, Netlify itd.)
  2. Otvorite svoju živu stranicu u novoj kartici preglednika
  3. Trebali biste vidjeti gumb chat widgeta u donjem desnom kutu
  4. Kliknite ga kako biste provjerili otvara li se i radi li ispravno

Ne vidite widget? Provjerite jeste li zamijenili YOUR_WIDGET_ID svojim stvarnim ID-jem widgeta s nadzorne ploce. Provjerite ucitava li se skripta u kartici Network preglednika (F12 > Network). Potvrdite da je frontend ponovno postavljen nakon dodavanja koda. Za Next.js provjerite koristite li komponentu Script iz next/script, a ne obicnu oznaku <script>. Ocistite predmemoriju preglednika ili testirajte u anonimnom nacinu.