เชื่อมต่อ Shopee Chat ด้วย Omnichat Bridge

คู่มือเชื่อม Shopee Seller Chat กับ KaoJai Inbox ด้วย Omnichat Bridge แบบ Open-sourced พร้อมเงื่อนไขความเสี่ยง ขอบเขตข้อมูล และขั้นตอนตั้งค่า

เชื่อมต่อ Shopee Chat ด้วย Omnichat Bridge

👉 อ่านก่อนเริ่ม: Omnichat Bridge เป็นการเชื่อมต่อที่ไม่เป็นทางการ ไม่ได้เป็นผลิตภัณฑ์ของหรือได้รับการรับรองจาก Shopee

⚠️ ความเสี่ยง: ใช้ต่อเมื่อคุณยอมรับความเสี่ยงและตรวจสอบข้อกำหนดของแพลตฟอร์มแล้ว เพราะอาจเกิดคำเตือน การจำกัดบัญชี การระงับบัญชี หรือการสูญเสียสิทธิ์เข้าถึงได้ โค้ดเป็นโอเพนซอร์สให้ตรวจสอบได้ และการตั้งค่านี้ต้องใช้บัญชีของคุณเองเท่านั้น

ลูกค้าทักร้านใน Shopee แต่ทีมขายกลับต้องสลับหน้าจอไปมา—เป็นปัญหาที่ทำให้ตอบช้าและตามบทสนทนายาก สำหรับทีมที่ต้องทำงานใน Inbox เดียวกัน Omnichat Bridge คือสะพานที่ส่งต่อข้อความจากหน้า Shopee Seller Chat ที่เปิดอยู่เข้า KaoJai Inbox โดยไม่ต้องส่งรหัสผ่าน คุกกี้ หรือ token ของบัญชีผู้ขายออกจากเบราว์เซอร์

Omnichat Bridge ทำงานอย่างไร

ภาพรวม Omnichat Bridge: รับข้อความจาก Seller Chat ที่เปิดอยู่ ส่งเข้า Inbox โดยไม่ใช้ข้อมูลเข้าสู่ระบบ

แนวคิดสำคัญคือ เบราว์เซอร์ของผู้ขายยังคงเป็นที่ที่ล็อกอิน Shopee อยู่ ส่วน extension ทำงานเป็น co-pilot ที่ส่งต่อเฉพาะเหตุการณ์แชตที่รองรับไปยังเซิร์ฟเวอร์ที่กำหนดไว้

เส้นทางข้อมูลมีดังนี้:

  1. ผู้ขายล็อกอินและเปิด Shopee Seller Chat ด้วยตนเอง
  2. Extension อ่านข้อความใหม่จาก session ที่เปิดอยู่ และเก็บรายการที่ยังส่งไม่สำเร็จไว้ในคิวภายในเครื่อง
  3. Extension ส่ง batch ไปยังเซิร์ฟเวอร์ที่ตั้งค่าไว้ผ่าน HTTPS พร้อมลายเซ็น HMAC
  4. เซิร์ฟเวอร์ยืนยันว่าได้รับข้อมูลแล้ว จึงลบรายการออกจากคิวในเครื่อง
  5. ทีมเห็นบทสนทนาใน KaoJai Inbox และทำงานต่อจากบริบทเดียวกัน

เมื่อ Chrome หรือแท็บ Seller Chat ปิดอยู่ Bridge ก็หยุดทำงาน ไม่มีบอตระยะไกลที่ตอบแชตต่อเองตอนที่ผู้ขายไม่อยู่หน้าจอ

ผู้ช่วยที่ทำงานในเบราว์เซอร์: Forwarder จะทำงานเฉพาะตอนที่คอมพิวเตอร์, Chrome และหน้า Seller Chat เปิดอยู่ โดยทำหน้าที่เหมือน co-pilot ที่ช่วยผู้ขายทำงานจากในเบราว์เซอร์ และไม่ส่งรหัสผ่าน คุกกี้ login token หรือข้อมูลเข้าสู่ระบบอื่นของผู้ขายไปยัง target server

ตัวอย่างด้านล่างแสดงบทสนทนา Shopee ใน KaoJai Inbox พร้อมสถานะ Omnichat · Live การตอบกลับจากทีม และแผงสินค้าและออเดอร์ที่ช่วยให้ผู้ขายทำงานต่อจากหน้าจอเดียว

ตัวอย่างบทสนทนา Shopee ใน KaoJai Inbox พร้อมสถานะ Omnichat Live และแผงสินค้าและออเดอร์

สิ่งที่ส่ง และสิ่งที่ไม่ส่ง

Bridge ส่งไปยังเซิร์ฟเวอร์Bridge ไม่เก็บหรือส่ง
ข้อความเข้าและข้อความออกที่รองรับรหัสผ่าน Shopee
URL รูปภาพและวิดีโอที่รองรับคุกกี้, token, หรือข้อมูลล็อกอิน
รหัสผู้ซื้อ ชื่อที่แสดง รูปโปรไฟล์ และเวลาrequest header ของ session ผู้ขาย
ข้อมูลสนทนาที่จำเป็นต่อการทำงานใน InboxHMAC secret ไปพร้อมกับข้อมูลข้อความ

การรับส่งทุก batch ใช้ HTTPS และ HMAC เพื่อตรวจสอบว่า request มาจาก Bridge ที่ตั้งค่าไว้จริง แต่ไม่ได้ทำให้ความเสี่ยงด้านเงื่อนไขแพลตฟอร์มหายไป—จึงต้องใช้โดยมีคนดูแลและติดตามสถานะเสมอ

แผนภาพเส้นทางข้อมูลจาก Shopee Seller Chat ผ่านคิวในเครื่อง ไปยังเซิร์ฟเวอร์ผ่าน HTTPS และ HMAC

ตั้งค่า Shopee message forwarding เข้า KaoJai Inbox

ก่อนเริ่ม คุณต้องเป็นผู้ดูแล KaoJai workspace และเชื่อมร้าน Shopee ของตนเองใน KaoJai แล้ว ใช้ Chrome ที่ล็อกอิน Seller Chat ของร้านนั้นอยู่

  1. ไปที่ Integrations → Shopee ใน KaoJai Admin แล้วเชื่อมร้าน Shopee ให้เรียบร้อย
  2. ในส่วน Omnichat Bridge กด เริ่มตั้งค่า เพื่อสร้างและดาวน์โหลดไฟล์ kaojai-omnichat-shopee.json
  3. ติดตั้ง Omnichat Bridge Chrome Extension
  4. เปิด Shopee Seller Chat ด้วยบัญชีร้านที่เชื่อมไว้
  5. เปิด Extension เลือก Import config แล้วเลือกไฟล์ที่ดาวน์โหลดจาก KaoJai Admin
  6. ตรวจสอบ Shop ID ที่ Extension ตรวจพบ แล้วเลือก Sync messages เพื่อเริ่มดึงข้อความและรอข้อความใหม่
  7. ส่งข้อความทดสอบเข้าร้าน และยืนยันว่าข้อความแสดงใน KaoJai Inbox

เก็บไฟล์ config ให้เป็นความลับ: ไฟล์นี้มี HMAC secret สำหรับยืนยันตัวตนของ Bridge อย่าส่งต่อในแชตสาธารณะ อย่า commit เข้า Git และอย่า export จาก Extension ไปเก็บในที่ที่บุคคลอื่นเข้าถึงได้

หากมีการเปลี่ยนผู้ดูแลเครื่องหรือสงสัยว่าไฟล์รั่ว ให้หยุดใช้ config เดิมและติดต่อทีม KaoJai เพื่อออก config ใหม่ก่อนใช้งานต่อ

เงื่อนไขการทำงานที่ต้องรู้

  • Chrome และแท็บ Seller Chat ต้องเปิดอยู่เพื่อรับข้อความแบบ realtime
  • Bridge อาจกู้ข้อความที่พลาดระหว่างที่กลับมาออนไลน์ได้ แต่ไม่ใช่บริการ background ที่รับประกันว่าจะเก็บทุกข้อความขณะเครื่องปิด
  • การตอบกลับแบบ live ต้องมี browser ที่เชื่อมต่ออยู่และเปิด conversation เป้าหมาย หากไม่พร้อม ระบบจะแจ้ง error แทนการแอบคิวคำสั่งไว้
  • ใช้บัญชีร้านและ workspace ที่คุณได้รับอนุญาตเท่านั้น และตรวจสอบนโยบาย Shopee ก่อนเปิดใช้หรือขยายจำนวนผู้ใช้

เอกสารและวิดีโอที่เกี่ยวข้อง

ที่มา: ทำไมเราจึงสร้าง Omnichat Bridge นี้

เป้าหมายของเราคือช่วยให้ร้านค้าที่ได้รับอนุญาตดูแลแชต Shopee ใน workflow เดียวกับทีม โดยยังเคารพข้อกำหนดของแพลตฟอร์ม

ก่อนเริ่มพัฒนา เราพยายามติดต่อ Shopee หลายครั้ง ผ่านทั้ง support, human agent และ account executive เพื่อสอบถามว่ามีช่องทางอย่างเป็นทางการหรือผู้รับผิดชอบสำหรับการเชื่อม customer service หรือไม่ แต่ทุกครั้งคำตอบที่ได้รับกลับมาที่ข้อมูลเดียวกันว่า Chat API (Customer Service Apps) ไม่เปิดรับผู้สมัครใหม่ โดย ปิดรับสมัครตั้งแต่ 18 พฤศจิกายน 2024 หรือนานกว่า 1 ปี 8 เดือน ณ วันที่เขียนบทความนี้ เราหวังว่าจะพบเส้นทางที่ได้รับการรองรับ แต่เมื่อสอบถามหลายครั้งและยังได้รับคำตอบเดิม เราต้องยอมรับอย่างตรงไปตรงมาว่ารู้สึกหมดหวัง และในเวลานั้นเราไม่เหลือช่องทางอย่างเป็นทางการให้เดินหน้าต่อ

อีเมลจาก Shopee Agent ระบุว่าการสมัคร Customer Service Apps สำหรับ Individual Third Parties และ Third-party Partner Platforms ปิดตั้งแต่ 18 พฤศจิกายน 2024

เมื่อเรายังไม่พบช่องทางอย่างเป็นทางการที่เปิดให้ใช้ได้ จึงสร้าง Omnichat Bridge เป็นตัวเลือกแบบโอเพนซอร์สที่ผู้ขายควบคุมเอง เพื่อช่วยลดการสลับหน้าจอ พร้อมเปิดให้ตรวจสอบวิธีทำงาน ขอบเขตข้อมูล และความเสี่ยงได้ หากร้านของคุณมีช่องทางอย่างเป็นทางการจาก Shopee โปรดเลือกใช้ช่องทางนั้นก่อน