กลับไปที่แดชบอร์ด

เอกสาร

เรียนรู้วิธีใช้ Asyntai

ฟีเจอร์
การรวบรวมข้อมูลเว็บไซต์ ช่องว่างความรู้ การ์ดสินค้า การ์ดสินค้าแบบไดนามิก Dynamic Images บริบทผู้ใช้ เครื่องมือที่กำหนดเอง การติดตามแบบเรียลไทม์ Human Takeover การยกระดับ การแจ้งเตือน AI รายงานประจำวัน ฟีดข้อมูลแบบเรียลไทม์ ฟีดข้อมูลแบบเรียลไทม์ Max สมาชิกในทีม การลงชื่อเข้าใช้ครั้งเดียว การยืนยันตัวตนสองขั้นตอน รวมรูปภาพ การมองเห็นรูปภาพ วิดเจ็ตแปลภาษา การปรับให้เข้ากับท้องถิ่น ลูกค้าเป้าหมาย การจับลูกค้าเป้าหมายอัจฉริยะ ตั๋วสนับสนุน การจอง การฝัง ยกเว้นหน้า IP ที่ถูกบล็อก โมเดลที่ฉลาดกว่า เปิดใช้งานการคิดวิเคราะห์ คำแนะนำการตอบกลับ ข้อความติดตามผล เสียงเป็นข้อความ ดาวน์โหลดบันทึกการสนทนา แชทแบบฝังตัว

วิธีเพิ่มแชทบอท AI Asyntai ไปยัง MedusaCMS

คู่มือทีละขั้นตอนสำหรับหน้าร้านที่ขับเคลื่อนโดย Medusa

รับโค้ดฝัง

สำคัญ: Medusa เป็นแพลตฟอร์มอีคอมเมิร์ซแบบ headless โค้ดแชทบอทจำเป็นต้องเพิ่มไปยังแอปพลิเคชันหน้าร้านของคุณ ไม่ใช่ไปที่ Medusa server/admin

ขั้นตอนที่ 1: รับโค้ดฝังตัวของคุณ

ก่อนอื่น ไปที่แดชบอร์ด Asyntai ของคุณและเลื่อนลงไปที่ส่วน "Embed Code" คัดลอกโค้ดฝังตัวเฉพาะของคุณซึ่งจะมีลักษณะดังนี้:

<script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script>

หมายเหตุ: โค้ดด้านบนเป็นเพียงตัวอย่าง คุณต้องคัดลอกโค้ดฝังตัวเฉพาะของคุณจากแดชบอร์ดเนื่องจากมี widget ID ส่วนตัวของคุณ

ขั้นตอนที่ 2: เพิ่มไปยังหน้าร้าน Next.js (พบบ่อยที่สุด)

หน้าร้านเริ่มต้นของ Medusa ใช้ Next.js เพิ่มแชทบอทไปยัง root layout ของหน้าร้านของคุณ:

App Router (Next.js 13+)

เปิด app/layout.tsx ในโปรเจกต์หน้าร้านของคุณและเพิ่ม Script component:

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 ด้วย หากต้องการให้วิดเจ็ตคงอยู่ระหว่างการนำทางฝั่งไคลเอนต์ หรืออีกทางเลือกหนึ่งคือเพิ่มไปยัง root layout component ของคุณ

วิธีทางเลือกที่ 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 async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script> </body> </html>

หรือใช้ useEffect hook ใน root component ของคุณ:

// 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: Frontend แบบกำหนดเองใดก็ได้

หากร้านค้าที่ขับเคลื่อนโดย Medusa ของคุณใช้ frontend ที่ใช้ HTML อื่นๆ เพียงเพิ่มแท็กสคริปต์มาตรฐานก่อนแท็กปิด </body>:

<script async src="https://asyntai.com/static/js/chat-widget.js" data-asyntai-id="YOUR_WIDGET_ID"></script> </body> </html>

เคล็ดลับ: วิธีนี้ใช้ได้กับ frontend framework หรือ static site generator ใดก็ได้ที่สร้างผลลัพธ์เป็น HTML รวมถึง Vue, Svelte, Angular, Astro และอื่นๆ ที่เชื่อมต่อกับ Medusa backend

ขั้นตอนที่ 3: Deploy และตรวจสอบ

หลังจากเพิ่มโค้ดไปยังแอปพลิเคชันหน้าร้านของคุณแล้ว:

  1. ปรับใช้หน้าร้านของคุณไปยังผู้ให้บริการโฮสติ้ง (Vercel, Netlify, Railway ฯลฯ)
  2. เปิดหน้าร้านที่ใช้งานจริงของคุณในแท็บเบราว์เซอร์ใหม่
  3. คุณควรเห็นปุ่มวิดเจ็ตแชทที่มุมล่างขวา
  4. คลิกเพื่อตรวจสอบว่าเปิดขึ้นมาและทำงานได้อย่างถูกต้อง

ไม่เห็นวิดเจ็ต? ตรวจสอบให้แน่ใจว่าคุณเปลี่ยน YOUR_WIDGET_ID เป็น widget ID จริงของคุณจากแดชบอร์ดแล้ว ตรวจสอบว่าสคริปต์กำลังโหลดในแท็บ Network ของเบราว์เซอร์ (F12 > Network) ยืนยันว่าหน้าร้านถูกปรับใช้ใหม่หลังจากเพิ่มโค้ดแล้ว สำหรับ Next.js ตรวจสอบว่าคุณใช้ Script component จาก next/script ไม่ใช่แท็ก <script> ปกติ โปรดจำไว้ว่าโค้ดต้องอยู่ในหน้าร้าน ไม่ใช่ Medusa server ล้างแคชเบราว์เซอร์หรือทดสอบในโหมดไม่ระบุตัวตน