เลือกลูกค้า
สร้างออร์เดอร์
AI ตอบแชต
กำลังโหลด…ให้ AI เขียนคำตอบให้ลูกค้าอย่างเป็นธรรมชาติ ระบบเดิมยังเป็นคนจัดการตะกร้า สต็อก และส่งต่อทีมงาน ถ้า AI ขัดข้องหรือช้า ระบบจะตอบแบบเดิมให้อัตโนมัติ เลือกใช้ Claude จาก Anthropic โดยตรง หรือโมเดลใดก็ได้บน WaveSpeed
เชื่อมต่อเพจ Facebook
ให้ข้อความที่ลูกค้าทักเพจเข้ามาในกล่องแชต และส่งคำตอบกลับไปทาง Messenger นำค่าด้านล่างไปใส่ใน Meta for Developers
วิธีเชื่อมต่อเพจ Facebook ทีละขั้น
-
เตรียมเซิร์ฟเวอร์
Order Center ต้องเปิดผ่านโดเมนที่เป็น https:// (Facebook ไม่ส่งข้อความไปที่ http หรือ localhost) และเซิร์ฟเวอร์ต้องรัน 2 อย่างตลอดเวลา:
* * * * * php artisan schedule:run php artisan queue:work --tries=3
ตัวแรกตั้งใน cron ทุกนาที ตัวที่สองคือตัวส่งคำตอบกลับไปที่ Messenger ถ้าโฮสต์ไม่มี Supervisor ใช้ cron ทุกนาที
php artisan queue:work --stop-when-emptyแทนได้ -
สร้างแอปใน Meta for Developers
เข้า developers.facebook.com › My Apps › Create App ใช้บัญชี Facebook ที่เป็นแอดมินของเพจ เลือกให้แอปใช้กับ Messenger (หรือเพิ่มผลิตภัณฑ์ Messenger ภายหลัง)
-
ใส่ App Secret ในเซิร์ฟเวอร์
ในแอป ไปที่ App settings › Basic กด Show ที่ App Secret แล้วใส่ในไฟล์ .env ของ Order Center:
META_APP_SECRET=ค่า App Secret
ระบบใช้ค่านี้ตรวจว่าข้อความมาจาก Facebook จริง ถ้าไม่ใส่ เซิร์ฟเวอร์จริงจะไม่รับข้อความ
-
ตั้ง Webhook
ในหน้าตั้งค่า Messenger ของแอป ส่วน Webhooks วาง Callback URL และ Verify Token จากด้านบน กด Verify and save แล้วเลือกฟิลด์
messagesและmessaging_postbacks -
ผูกเพจกับแอปและสร้าง Page Access Token
ในหน้าตั้งค่า Messenger เดียวกัน ส่วน Access Tokens กดเพิ่มหรือเชื่อมเพจ อนุญาตสิทธิ์ให้ครบ แล้วกด Generate token ของเพจนั้น คัดลอก token ไว้ (token จากหน้านี้ไม่หมดอายุ อย่าใช้ token ชั่วคราวจาก Graph API Explorer) และเปิดการรับ Webhook ของเพจนั้นให้เป็นเปิด
-
ใส่ Page ID และ Token ใน Order Center
Page ID ดูได้ในหน้าตั้งค่า Messenger ของแอป หรือที่เพจ Facebook › เกี่ยวกับ › ความโปร่งใสของเพจ จากนั้นที่การ์ด "เพจและผู้ดูแล" ด้านขวา เลือกเพจ ใส่ Facebook Page ID และ Page Access Token แล้วกดบันทึก แล้วกด ตรวจ ในรายการเพจด้านล่างการ์ดนั้น ระบบจะถาม Facebook ว่า token ตรงกับเพจหรือไม่
-
ทดสอบ
ใช้บัญชี Facebook ที่มีบทบาทในแอป (แอดมิน นักพัฒนา หรือผู้ทดสอบ) ทักเพจ ข้อความควรขึ้นในกล่องแชตภายในไม่กี่วินาที และสถานะ "รับข้อความล่าสุด" ของเพจจะอัปเดต
-
เปิดให้ลูกค้าทุกคน
ระหว่างที่แอปยังเป็นโหมดพัฒนา จะรับได้เฉพาะคนที่มีบทบาทในแอป ก่อนใช้กับลูกค้าจริง ต้องยืนยันธุรกิจ (Business Verification) ขอสิทธิ์
pages_messagingแบบ Advanced Access ผ่าน App Review แล้วสลับแอปเป็น Live ขั้นตอนนี้ Meta ใช้เวลาตรวจหลายวัน
แจ้งเตือนผ่าน LINE
เมื่อบอทปิดอยู่และลูกค้ารอเกิน 3 นาทีโดยไม่มีใครตอบ ระบบจะแจ้งในแอปและส่งข้อความเข้า LINE
ตั้งค่า LINE_CHANNEL_ACCESS_TOKEN (จาก LINE Messaging API) และ LINE_ALERT_TO (User ID หรือ Group ID ที่จะรับแจ้งเตือน) ในไฟล์ .env
ซิงก์สินค้ากับระบบสต็อกของร้าน
กำลังโหลด…ดึงตารางสินค้าจากระบบสต็อกที่ร้านใช้อยู่ทุก 1 นาที เพิ่ม แก้ไข หรือลบสินค้าที่ร้าน ที่นี่จะเปลี่ยนตามเอง ระบบอ่านข้อมูลอย่างเดียว ไม่เขียนกลับไปที่ร้าน ถ้าสต็อกกลายเป็น 0 หรือสินค้าหายพร้อมกันเกิน 20% ระบบจะหยุดรอบนั้นไว้และแจ้งแอดมินให้ตรวจก่อน
วิธีเชื่อมต่อ
แบบที่ 1 ต่อฐานข้อมูลร้านโดยตรง สร้างผู้ใช้ MySQL ที่อ่านได้อย่างเดียว (SELECT) สำหรับฐาน xncadpma_lv56em แล้วอนุญาต IP ของเซิร์ฟเวอร์นี้ใน cPanel › Remote MySQL จากนั้นตั้งค่าใน .env ของ Order Center:
SHOP_SYNC_DRIVER=mysql SHOP_DB_HOST=ชื่อโฮสต์หรือ IP ของเซิร์ฟเวอร์ร้าน SHOP_DB_DATABASE=xncadpma_lv56em SHOP_DB_USERNAME=ผู้ใช้ที่อ่านอย่างเดียว SHOP_DB_PASSWORD=รหัสผ่านของผู้ใช้นั้น
แบบที่ 2 ผ่านไฟล์ส่งออก (ใช้เมื่อโฮสต์ไม่เปิด Remote MySQL) อัปโหลดไฟล์ deploy/shop/order-center-products.php ไปไว้ในเว็บร้าน ใส่ token ยาวๆ ในไฟล์นั้น แล้วตั้งค่า:
SHOP_SYNC_DRIVER=http SHOP_SYNC_URL=https://โดเมนร้าน/order-center-products.php SHOP_SYNC_TOKEN=token เดียวกับในไฟล์
เซิร์ฟเวอร์ต้องตั้ง cron * * * * * php artisan schedule:run ให้ระบบซิงก์ทุกนาที
เพจและผู้ดูแล
ผูก Facebook Page ID และ Page Access Token ให้แต่ละเพจ