เริ่มต้นใช้งาน
ก่อนเริ่ม คุณต้องมีสองอย่าง: บัญชีสมาชิก Sukson และเซิร์ฟเวอร์ที่รับ HTTPS จากอินเทอร์เน็ตได้ (พอร์ต 443 หรือ 8443)
-
สร้างบอท
ไปที่ member.sukson.com/bots แล้วกดสร้างบอท ตั้งชื่อที่แสดง (ใช้ได้แค่ A–Z, a–z, 0–9) และตั้ง
handleซึ่งเป็นชื่อที่คนพิมพ์ตาม @ เพื่อเรียกบอทhandleต้องลงท้ายด้วย_botและเปลี่ยนไม่ได้หลังสร้าง -
เก็บ API token
API token คือรหัสที่บอทใช้ยืนยันตัวตนทุกครั้งที่เรียก API หลังสร้างบอท ระบบแสดง token ที่ขึ้นต้นด้วย
skbot_ให้ดู ครั้งเดียว คัดลอกไปเก็บในที่เก็บรหัสลับ (secret manager) หรือตัวแปรสภาพแวดล้อมของเซิร์ฟเวอร์ ถ้าทำหาย ให้ออก token ใหม่ในหน้าของบอท (การยืนยันตัวตน)ลองเรียก API ด้วย token นี้ ถ้าได้ข้อมูลบอทกลับมา แปลว่า token ใช้ได้
Terminal window export SUKSON_BOT_TOKEN="skbot_..."curl -s https://api.sukson.dev/v1/me \-H "Authorization: Bearer $SUKSON_BOT_TOKEN" -
ตั้ง webhook
webhook คือ URL บนเซิร์ฟเวอร์ของคุณที่ Sukson ส่งข้อความไปหา เตรียม URL นี้ให้ตรวจลายเซ็นได้ก่อน (ตัวอย่างโค้ด) แล้วตั้งค่าในหน้าของบอท หรือเรียก API:
Terminal window curl -s -X PUT https://api.sukson.dev/v1/me/webhook \-H "Authorization: Bearer $SUKSON_BOT_TOKEN" \-H "Content-Type: application/json" \-d '{"url":"https://bot.example.com/sukson"}'ก่อนบันทึก Sukson จะส่ง event
pingไปทดสอบ โดยลงลายเซ็นด้วยรหัสลับใหม่ เซิร์ฟเวอร์ต้องตอบ 2xx ภายใน 10 วินาที URL จึงจะถูกบันทึก คำตอบของ API มีsecret(รหัสลับ webhook) ซึ่ง แสดงครั้งเดียว เก็บไว้ใช้ตรวจลายเซ็น -
เพิ่มบอทเข้าห้อง
เปิดหน้าข้อมูลห้องในแชท แล้วเพิ่มบอท ทำได้เฉพาะห้องที่คุณเป็นเจ้าของหรือแอดมิน (ห้องสาธารณะ กลุ่ม หรือช่อง) บอทตัวเดียวอยู่ได้หลายห้อง จำนวนห้องขึ้นกับแพ็กเกจของบอท ดูรายชื่อห้องได้ที่
GET /v1/me/chats -
ลองเรียกบอท
พิมพ์
@handle สวัสดีในห้อง เซิร์ฟเวอร์ของคุณจะได้รับ eventmessageตอบกลับได้ด้วย{"reply": "สวัสดีครับ"}หรือเรียกPOST /v1/chats/{chat_id}/messages
ขั้นต่อไป
หัวข้อที่มีชื่อว่า “ขั้นต่อไป”- อ่านหน้า Webhook ให้ครบก่อนเปิดใช้จริง โดยเฉพาะการตรวจลายเซ็น การกันประมวลผลซ้ำ และกติกาการส่งซ้ำ
- ใช้ reply token เมื่อต้องการเวลาคิดคำตอบนานขึ้น (ไม่เกิน 60 วินาที)
- ดู ขีดจำกัด และโควตาข้อความรายเดือนของแพ็กเกจ