Повернутися до панелі керування

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

Дізнайтеся, як використовувати Asyntai

Початок роботи
Встановлення База знань Як ШІ отримує доступ до вашого контенту Підключіть свій сайт Тестуйте ваш ШI Керування сайтами Поради щодо інструкцій для ШI Перехід з іншого чат-бота Порівняння тарифів
Функції
Панель Ask AI Панель AI-пошуку Сканування сайту Прогалини у знаннях Картки товарів Динамічні картки товарів Динамічні зображення Контекст користувача Власні інструменти Параметри посилань Проактивні повідомлення Моніторинг у реальному часі Перехоплення оператором Ескалація Сповіщення ШI Сповіщення в браузері Щоденний звіт Потік даних у реальному часі Потік даних у реальному часі Max Учасники команди Єдиний вхід Двофакторна автентифікація Включити зображення Розпізнавання зображень Віджет перекладу Локалізація Прозорість ШІ Ліди Розумне захоплення лідів Тікети підтримки Категорії чатів Бронювання Голосовий агент Вбудовування Виключення сторінок Заблоковані IP Політика зберігання Режим нульового зберігання Маскування PII Класифікатор відповідей Access Tags Закріплення версії віджета Журнал аудиту Пропозиції відповідей Подальші повідомлення Мовлення в текст Завантаження стенограми Вбудований чат Вбудовування через iframe

Як додати AI чат-бот Asyntai до MedusaCMS

Покрокова інструкція для магазинів на базі Medusa

Отримати код вбудовування

Важливо: Medusa - це headless платформа електронної комерції. Код чат-бота потрібно додати до вашого додатку вітрини магазину, а не до сервера/адмінки Medusa.

Крок 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>

Примітка: Код вище є лише прикладом. Ви повиннi скопiювати власний унiкальний код для вставки з вашої Панелi керування, оскiльки вiн мiстить ваш особистий ID вiджета.

Крок 2: Додати до вітрини Next.js (найпоширеніший варіант)

Стандартний стартовий шаблон вітрини Medusa використовує 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/_document.tsx або pages/_app.tsx:

// 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: Вітрина на Gatsby

Якщо ваша вітрина Medusa використовує Gatsby, додайте скрипт через gatsby-ssr.js, використовуючи onRenderBody та setPostBodyComponents:

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

Примітка: Вам також слід додати той самий код до gatsby-browser.js, якщо ви хочете, щоб віджет зберігався під час клієнтської навігації. Як альтернативу, додайте його до кореневого компонента макета.

Альтернативний метод 2: Власна вітрина на React

Якщо ваша вітрина Medusa використовує власну конфігурацію React (Vite, Create React App тощо):

Додайте скрипт до public/index.html безпосередньо перед закриваючим тегом </body>:

<!DOCTYPE html> <html lang="en"> <head> <!-- ... existing head content ... --> </head> <body> <div id="root"></div> <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>

Або використайте хук 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 ); }

Альтернативний метод 3: Будь-який власний фронтенд

Якщо ваш магазин на базі Medusa використовує будь-який інший фронтенд на базі HTML, просто додайте стандартний тег script перед закриваючим тегом </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>

Порада: Цей метод працює з будь-яким фронтенд-фреймворком або генератором статичних сайтів, який виводить HTML, включаючи Vue, Svelte, Angular, Astro та інші, підключені до бекенду Medusa.

Крок 3: Розгортання та перевірка

Після додавання коду до вашого додатку вітрини:

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

Не бачите віджет? Переконайтеся, що ви замінили YOUR_WIDGET_ID на ваш справжній ID віджета з панелі керування. Перевірте, що скрипт завантажується на вкладці Network браузера (F12 > Network). Перевірте, що вітрина була повторно розгорнута після додавання коду. Для Next.js переконайтеся, що ви використовуєте компонент Script з next/script, а не звичайний тег <script>. Пам'ятайте, код додається до вітрини, а не до сервера Medusa. Очистіть кеш браузера або перевірте у режимі інкогніто.