Назад к панели управления

Документация

Узнайте, как использовать Asyntai

Возможности
Панель Ask AI Панель AI-поиска ИИ-поиск для WordPress AI Search for Joomla AI Search for Webflow AI Search for Moodle AI Search for TYPO3 AI Search for Craft CMS AI Search for Grav AI Search for October CMS AI Search for ProcessWire AI Search for Odoo AI Search for Bagisto AI Search for OpenCart AI Search for BigCommerce AI Search for Magento Сканирование сайта Пробелы в знаниях Карточки продуктов Динамические карточки товаров Динамические изображения Контекст пользователя Пользовательские инструменты Параметры ссылок Мониторинг в реальном времени Передача живому оператору Эскалация Уведомления ИИ Ежедневный отчёт Поток данных в реальном времени Поток данных в реальном времени Max Участники команды Единый вход Двухфакторная аутентификация Показывать изображения Распознавание изображений Виджет перевода Локализация Прозрачность ИИ Лиды Умный захват лидов Тикеты поддержки Категории чатов Бронирования Встраивания Исключить страницы Заблокированные IP Политика хранения Режим нулевого хранения Маскирование PII Классификатор ответов Access Tags Закрепление версии виджета Журнал аудита Продвинутая модель Включите режим размышления Подсказки для ответа Дополнительные сообщения Распознавание речи Скачать транскрипт Встроенный чат Встраивание через iframe

Как добавить ИИ-чат-бот Asyntai в PayloadCMS

Пошаговое руководство для сайтов на PayloadCMS

Получить код встраивания

Важно: PayloadCMS — это headless CMS. Код чат-бота нужно добавить в ваше фронтенд-приложение, а не в панель администратора Payload.

Шаг 1: Получите код встраивания

Сначала перейдите на Панель управления Asyntai и прокрутите вниз до раздела «Код для встраивания». Скопируйте уникальный код, который выглядит так:

<script>(function(){var l=function(){var s=document.createElement("script");s.src="https://widget.asyntai.com/static/js/chat-widget.js";s.async=true;s.setAttribute("data-asyntai-id","YOUR_WIDGET_ID");document.head.appendChild(s)};if(document.readyState==="complete"){l()}else{window.addEventListener("load",l)}})();</script>

Примечание: Код выше — всего лишь пример. Вы должны скопировать свой уникальный код для встраивания с вашей Панели управления, так как он содержит ваш персональный идентификатор виджета.

Шаг 2: Добавьте во фронтенд Next.js (самый распространённый способ)

PayloadCMS обычно использует Next.js в качестве фронтенд-фреймворка. Добавьте чат-бот в корневой макет:

App Router (Next.js 13+)

Откройте app/layout.tsx и добавьте компонент 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

Если вы используете Pages Router, откройте 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" /> </> ) }

Совет: Опция strategy="afterInteractive" гарантирует, что чат-бот загрузится после того, как страница станет интерактивной, обеспечивая наилучший пользовательский опыт без влияния на скорость загрузки.

Альтернативный способ 1: Фронтенд на React

Если ваш проект PayloadCMS использует пользовательский React-фронтенд вместо Next.js, вы можете динамически загрузить чат-бот с помощью хука 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 ); }

Примечание: Замените YOUR_WIDGET_ID на ваш реальный ID виджета из панели управления. Функция очистки в операторе return гарантирует удаление скрипта при размонтировании компонента.

Альтернативный метод 2: использование пользовательских компонентов Payload (только панель администратора)

Если вы хотите, чтобы чат-бот отображался внутри самой панели администратора Payload (для внутренней поддержки), вы можете зарегистрировать пользовательский компонент в payload.config.ts:

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

Затем создайте файл компонента:

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

Совет: Этот метод предназначен только для добавления чат-бота в административную панель Payload. Для вашего публичного сайта используйте шаг 2 или альтернативный метод 1.

Альтернативный способ 3: Статический HTML-сайт

Если ваш сайт на базе PayloadCMS использует чистый HTML или статический фронтенд, потребляющий Payload API, добавьте код встраивания прямо в ваш HTML:

  1. Откройте главный HTML-файл (обычно index.html)
  2. Добавьте код вставки непосредственно перед закрывающим тегом </body>:
<script>(function(){var l=function(){var s=document.createElement("script");s.src="https://widget.asyntai.com/static/js/chat-widget.js";s.async=true;s.setAttribute("data-asyntai-id","YOUR_WIDGET_ID");document.head.appendChild(s)};if(document.readyState==="complete"){l()}else{window.addEventListener("load",l)}})();</script> </body> </html>

Шаг 3: Развёртывание и проверка

После добавления кода в ваше клиентское приложение:

  1. Разверните ваш фронтенд у хостинг-провайдера (Vercel, Netlify и т.д.)
  2. Откройте свой рабочий сайт в новой вкладке браузера
  3. Кнопка виджета чата должна появиться в правом нижнем углу
  4. Нажмите на него, чтобы убедиться, что он открывается и работает корректно

Виджет не отображается? Убедитесь, что вы заменили YOUR_WIDGET_ID на фактический ID виджета из панели управления. Проверьте загрузку скрипта на вкладке «Сеть» в браузере (F12 > Сеть). Убедитесь, что фронтенд был передеплоен после добавления кода. Для Next.js используйте компонент Script из next/script, а не обычный тег <script>. Очистите кэш браузера или проверьте в режиме инкогнито.