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

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

Узнайте, как использовать 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 в 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>

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

Шаг 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-фронтенд, просто добавьте стандартный тег скрипта перед закрывающим тегом </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 виджета из панели управления. Проверьте загрузку скрипта на вкладке «Сеть» в браузере (F12 > Сеть). Убедитесь, что витрина была передеплоена после добавления кода. Для Next.js используйте компонент Script из next/script, а не обычный тег <script>. Помните: код добавляется в витрину, а не на сервер Medusa. Очистите кэш браузера или проверьте в режиме инкогнито.