Powrót do panelu

Dokumentacja

Dowiedz się, jak korzystać z Asyntai

Jak dodać chatbota Asyntai AI do PayloadCMS

Instrukcja krok po kroku dla stron opartych na PayloadCMS

Pobierz kod osadzania

Ważne: PayloadCMS to bezglowy system CMS. Kod chatbota należy dodać do aplikacji frontendowej, a nie do panelu administracyjnego Payload.

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)

PayloadCMS najczęściej używa Next.js jako frameworka frontendowego. Dodaj chatbota do głównego ukladu:

App Router (Next.js 13+)

Otwórz 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.tsx:

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: Niestandardowy frontend React

Jeśli Twój projekt PayloadCMS używa niestandardowego frontendu React zamiast Next.js, możesz załadować chatbota dynamicznie za pomocą hooka useEffect:

// App.tsx or App.jsx 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 ); }

Uwaga: Zastap YOUR_WIDGET_ID swoim rzeczywistym identyfikatorem widgetu z panelu. Funkcja czyszczaca w instrukcji return zapewnia usuniecie skryptu w przypadku odmontowania komponentu.

Metoda alternatywna 2: Użycie niestandardowych komponentow Payload (tylko panel administracyjny)

Jeśli chcesz, aby chatbot pojawiał sie wewnątrz samego panelu administracyjnego Payload (do wewnetrznego wsparcia), możesz zarejestrowac niestandardowy komponent w payload.config.ts:

// payload.config.ts import { buildConfig } from 'payload/config'; export default buildConfig({ admin: { components: { afterDashboard: ['/components/AsyntaiChatbot'], }, }, // ... rest of your config })

Następnie utwórz plik komponentu:

// components/AsyntaiChatbot.tsx 'use client' import { useEffect } from 'react'; const AsyntaiChatbot = () => { 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 null; }; export default AsyntaiChatbot;

Wskazówka: Ta metoda sluzy wylacznie do dodania chatbota do panelu administracyjnego Payload. W przypadku strony publicznej użyj kroku 2 lub metody alternatywnej 1.

Metoda alternatywna 3: Zwykły HTML / strona statyczna

Jeśli Twoja strona oparta na PayloadCMS używa zwyklego HTML lub statycznego frontendu korzystajacego z API Payload, dodaj kod osadzania bezpośrednio do HTML:

  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>

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.