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

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

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

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

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

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

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

Крок 1: Отримайте код для вставки

Спочатку перейдiть до вашої Панелi керування Asyntai та прокрутiть вниз до роздiлу "Код для вставки". Скопiюйте унiкальний код для вставки, який виглядатиме так:

<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. Очистіть кеш браузера або перевірте у режимі інкогніто.