Skip to Content
🚀 Welcome to Humansoft Open API Documentation
DocumentationAPI ReferenceHumanSoft Connect (ส่งข้อความแชท)Overview

HumanSoft Connect API Module

ภาพรวม (Overview)

โมดูล HumanSoft Connect ใช้ส่งข้อความจากระบบของคุณเข้าห้องแชท HumanSoft Connect (แชทในแอป HumanSoft) ของพนักงาน ข้อความจะแสดงในแอปของพนักงานในนามบอทของระบบ เช่น การแจ้งเตือนจากระบบภายนอกถึงพนักงานรายคน

สิทธิ์ที่ต้องการ: ทุก Endpoint ในโมดูลนี้ต้องใช้ API Key ที่มีสิทธิ์ การส่งข้อความ HumanSoft Connect (connect:send) หาก API Key ไม่มีสิทธิ์นี้จะได้รับ HTTP 403 ดูรายละเอียดที่ API Permissions

ขั้นตอนการใช้งาน (Workflow)

  1. ขอห้องแชทของพนักงาน — เรียก Get Chatroom ด้วย employee_code จะได้ chat_id และ sender_chat_user_id กลับมา
  2. เข้ารหัส Base64 — นำ chat_id และ sender_chat_user_id ที่ได้ไปเข้ารหัส Base64
  3. ส่งข้อความ — เรียก Send Message พร้อมค่าทั้งสองที่เข้ารหัสแล้วและข้อความที่ต้องการส่ง

chat_id และ sender_chat_user_id ใน Response เป็นค่า raw (ไม่ได้เข้ารหัส) ต้องเข้ารหัส Base64 ก่อนส่งเข้า Send Message ทุกครั้ง เช่น 20251127D4573C421639 → MjAyNTExMjdENDU3M0M0MjE2Mzk=

API Endpoints

OperationEndpointMethod
ขอห้องแชทของพนักงาน/api/v1/open-apis/hms-connect/get-chatroomGET
ส่งข้อความเข้าห้องแชท/api/v1/open-apis/hms-connect/send-messagePOST

เงื่อนไขก่อนใช้งาน

  • พนักงานต้องมีบัญชีผู้ใช้ในระบบ HumanSoft
  • พนักงานต้องเคยเปิดเมนูแชทในแอป HumanSoft อย่างน้อยหนึ่งครั้งจึงจะมีห้องแชท — API นี้ไม่ได้สร้างห้องให้
  • ค้นหาได้เฉพาะพนักงานของบริษัทที่ผูกกับ API Key เท่านั้น

ตัวอย่างการใช้งานครบขั้นตอน

ขอห้องแชทของพนักงาน EMP001 แล้วส่งข้อความเข้าห้องนั้น:

# 1) ขอห้องแชทของพนักงาน curl -X GET "https://openapi.humansoft.co.th/api/v1/open-apis/hms-connect/get-chatroom?employee_code=EMP001" \ -H "Ocp-Apim-Subscription-Key: YOUR_API_KEY" # 2) เข้ารหัส Base64 ค่าที่ได้จากขั้นตอนที่ 1 echo -n "20251127D4573C421639" | base64 # chat_id → MjAyNTExMjdENDU3M0M0MjE2Mzk= echo -n "20251127A1B2C3D4E5F6" | base64 # sender_chat_user_id → MjAyNTExMjdBMUIyQzNENEU1RjY= # 3) ส่งข้อความ curl -X POST "https://openapi.humansoft.co.th/api/v1/open-apis/hms-connect/send-message" \ -H "Ocp-Apim-Subscription-Key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "chat_id": "MjAyNTExMjdENDU3M0M0MjE2Mzk=", "sender_chat_user_id": "MjAyNTExMjdBMUIyQzNENEU1RjY=", "message": "แจ้งเตือนจากระบบ" }'

ข้อควรทราบ

  • ห้องแชทของพนักงานแต่ละคนเป็นห้องเดิม จึงเก็บ chat_id และ sender_chat_user_id ไว้ใช้ซ้ำได้ ไม่ต้องเรียก Get Chatroom ทุกครั้งก่อนส่ง
  • แต่ละคำขอทำงานกับพนักงานหรือห้องแชททีละรายการ หากต้องการส่งถึงพนักงานหลายคนให้เรียกซ้ำทีละคน
  • ข้อความที่ส่งแล้วยกเลิกไม่ได้ และระบบไม่ส่งซ้ำให้อัตโนมัติเมื่อส่งไม่สำเร็จ — ดูว่าส่งซ้ำได้หรือไม่จากข้อความ error ใน Send Message
  • ข้อความ error ของโมดูลนี้เป็นภาษาอังกฤษเสมอ
  • API Permissions - รายการสิทธิ์การเข้าถึง
  • Employee - ค้นหารหัสพนักงาน (employee_code)
Last updated on