C.C.S. FUTURE SYSTEMS CO., LTD.
21 Jul 2026 เข้าชม 18 ครั้ง

คู่มือเชื่อมต่อ ZKBioTime API กับ Google Apps Script ดึงข้อมูลเข้า Google คู่มือเชื่อมต่อ ZKBioTime API กับ Google Apps Script ดึงข้อมูลเข้า Google Sheets อัตโนมัติSheets อัตโนมัติ

คู่มือเชื่อมต่อ ZKBioTime API กับ Google Apps Script ดึงข้อมูลเข้า Google คู่มือเชื่อมต่อ ZKBioTime API กับ Google Apps Script ดึงข้อมูลเข้า Google Sheets อัตโนมัติSheets อัตโนมัติ

บทนำ

ZKBioTime API คือช่องทางสำหรับนักพัฒ ZKBioTime API คือช่องทางสำหรับนักพัฒนาในการดึงข้อมูลจากเซิร์ฟเวอร์ ZKBioTime ไปใช้งานต่อ เมื่อนำมาเชื่อมต่อกับ Google Apps Script จะสามารถดึงข้อมูลเวลาเข้า-ออกงาน (Attendance Record) ไปแสดงผลบน Google Sheets หรือส่งแจ้งเตือนผ่าน Telegram ได้แบบอัตโนมัติ ช่วยลดงานเอกสารของฝ่ายทรัพยากรบุคคล (HR) ได้ 100%นาในการดึงข้อมูลจากเซิร์ฟเวอร์ ZKBioTime ไปใช้งานต่อ เมื่อนำมาเชื่อมต่อกับ Google Apps Script จะสามารถดึงข้อมูลเวลาเข้า-ออกงาน (Attendance Record) ไปแสดงผลบน Google Sheets หรือส่งแจ้งเตือนผ่าน Telegram ได้แบบอัตโนมัติ ช่วยลดงานเอกสารของฝ่ายทรัพยากรบุคคล (HR) ได้ 100%

รายละเอียด

ZKBioTime API คืออะไร?

 

ZKBioTime API คืออินเทอร์เฟซการเขียนโปรแกรม (Application Programming Interface) แบบ RESTful ที่ ZKTeco เปิดให้ระบบภายนอกสามารถสื่อสาร ดึงข้อมูล หรือส่งคำสั่งไปยังฐานข้อมูลของเซิร์ฟเวอร์ ZKBioTime ได้โดยตรง เทคโนโลยีนี้ทำให้นักพัฒนา (Developer) สามารถดึงข้อมูลลายนิ้วมือ ใบหน้า หรือประวัติการสแกนเข้า-ออกงาน เพื่อนำไปเชื่อมต่อกับซอฟต์แวร์อื่น เช่น ระบบ Payroll ภายในองค์กร หรือ Google Workspace ได้อย่างอิสระ

 

ทำไมถึงควรเชื่อมต่อ BioTime เข้ากับ Google Apps Script?

 

บริษัทหลายแห่งนิยมใช้ Google Sheets ในการทำสรุปเวลาทำงานหรือคิดเงินเดือน (Payroll) แต่ปัญหาที่พบคือ HR ต้องคอย Export ไฟล์ Excel จาก ZKBioTime แล้วนำมา Copy-Paste ลงใน Google Sheets ด้วยตัวเองทุกเดือน การใช้ Google Apps Script (GAS) เพื่อยิง API ไปยัง ZKBioTime จะเปลี่ยนกระบวนการนี้ให้เป็นอัตโนมัติ (Automation) ทำให้ข้อมูลเวลาทำงานไหลเข้าสู่ Google Sheets แบบเรียลไทม์ ลดความผิดพลาดจากคน (Human Error) และทำให้ผู้บริหารดูรายงานสรุปผ่าน Cloud ได้ทันที

 

หลักการทำงานของการเชื่อมต่อ ZKBioTime API

 

การเชื่อมต่อผ่าน Google Apps Script ทำงานผ่านสถาปัตยกรรมแบบ Client-Server โดยมีขั้นตอนหลักๆ ดังนี้:

 

1. การขอสิทธิ์การเข้าถึง (Authentication Token)

Google Apps Script จะทำการส่ง HTTP POST Request พร้อมด้วย Username และ Password ของ Admin ไปที่ Endpoint `/api/jwt-api-token-auth/` เพื่อขอ Token สำหรับยืนยันตัวตน ระบบจะไม่ยอมให้ดึงข้อมูลใดๆ หากไม่มี Token นี้

 

2. การดึงข้อมูลเวลาเข้า-ออก (Fetching Transactions)

เมื่อได้ Token มาแล้ว Apps Script จะส่งคำสั่ง GET Request ไปยัง Endpoint `/api/iclock/transactions/` โดยแนบ Token ใน Header ระบบ BioTime จะตอบกลับข้อมูลการสแกนนิ้วหรือใบหน้าในรูปแบบ JSON กลับมาให้ Apps Script นำไปเขียนลงในเซลล์ของ Google Sheets

 

ข้อเปรียบเทียบ: ดึง API ด้วย Google Apps Script vs ติดตั้งระบบบน Server เอง

 

การเลือกว่าจะใช้ Google Apps Script หรือจะเขียนโปรแกรมรันบนเซิร์ฟเวอร์ (เช่น Node.js หรือ Python) มีข้อดีข้อเสียแตกต่างกัน ดังตารางนี้:

 

วิธีเขียนสคริปต์เบื้องต้น (Practical Steps)

 

ในการเริ่มต้นใช้งาน คุณต้องเปิด Google Sheets คลิกเมนู **Extensions > Apps Script** แล้วเขียนโค้ดเพื่อขอ Token เบื้องต้น:

 

```javascript

function getBioTimeToken() {

var url = "http://[IP-ของ-BioTime]:[Port]/api/jwt-api-token-auth/";

var payload = {

"username": "admin",

"password": "yourpassword"

};

var options = {

"method": "post",

"payload": payload

};

try {

var response = UrlFetchApp.fetch(url, options);

var json = JSON.parse(response.getContentText());

return json.token; // เก็บ Token ไว้ใช้เรียก API อื่นๆ

} catch (e) {

Logger.log("Error: " + e.toString());

}

}

```

*หมายเหตุ: เซิร์ฟเวอร์ ZKBioTime ของคุณจะต้องเปิด Port Forwarding และมี Public IP หรือโดเมนเนม เพื่อให้ Google Apps Script สามารถวิ่งเข้าถึงได้*

 

ข้อผิดพลาดที่พบบ่อยในการเขียน API เชื่อมต่อ BioTime

 

BioTime เป็น Local IP (วงแลนภายใน): Google Apps Script ทำงานบนเซิร์ฟเวอร์ของ Google มันจึงมองไม่เห็น IP ภายในองค์กร (เช่น 192.168.x.x) คุณต้องตั้งค่า NAT Forwarding ที่เราเตอร์บริษัทเสียก่อน

Token หมดอายุ (Token Expiration): Token ของ ZKBioTime จะมีอายุจำกัด สคริปต์ของคุณต้องถูกออกแบบให้ดึง Token ใหม่เสมอทุกครั้งที่รัน หรือเมื่อระบบตอบกลับมาว่า Unauthorized (401)

ดึงข้อมูลเยอะเกินไปจนติด Timeout: หากคุณดึงประวัติการสแกนของพนักงานพันคนย้อนหลัง 1 ปีในครั้งเดียว Google Apps Script จะตัดการทำงาน (Timeout) ควรแบ่งดึงทีละวัน หรือใช้พารามิเตอร์ `?start_time=` และ `?end_time=`

 

คำถามที่พบบ่อย (FAQ)

 

Q: ต้องเสียค่าใช้จ่ายในการเปิดใช้ ZKBioTime API หรือไม่?

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

 

Q: ZKBioTime API สามารถสั่งเพิ่มหรือลบพนักงานได้ไหม?

A: ได้ครับ ZKBioTime API รองรับทั้งการทำ GET (ดึงข้อมูล) และ POST/PUT (เพิ่ม/แก้ไขข้อมูล) คุณสามารถเขียนสคริปต์เพื่อซิงค์ข้อมูลพนักงานเข้าใหม่จากฐานข้อมูลบริษัทไปยังเครื่องสแกนได้ทันที

 

Q: หากดึงข้อมูลเข้า Google Sheets ช้าเกิดจากอะไร?

A: มักเกิดจากความเร็วอินเทอร์เน็ตฝั่งเซิร์ฟเวอร์ BioTime หรือมีการดึงข้อมูลจำนวนมากเกินไปต่อหนึ่งคำสั่ง ควรปรับสคริปต์ให้ดึงเฉพาะข้อมูลที่ยังไม่เคยซิงค์ (Delta Sync) เพื่อลดภาระเซิร์ฟเวอร์

 

Q: Google Apps Script รองรับการดึงข้อมูลทุกๆ กี่นาที?

A: Google Apps Script มีระบบ Trigger ที่สามารถตั้งค่าให้ทำงานอัตโนมัติ (Time-driven) ได้ถี่ที่สุดคือ 1 นาทีต่อครั้ง ซึ่งเพียงพอต่อการทำระบบแจ้งเตือนการสแกนนิ้ว

 

Q: สามารถส่งข้อมูลเข้า Telegram Notify ได้หรือไม่?

A: ได้แน่นอน เมื่อ Google Apps Script ดึงข้อมูลการสแกนจาก BioTime สำเร็จ สามารถเขียนโค้ดเพิ่มอีกเพียง 4-5 บรรทัด เพื่อส่งข้อความหรือรูปภาพแจ้งเตือนไปยัง Telegram Notify ได้ทันที

 

 

 

การเชื่อมต่อ ZKBioTime API เข้ากับ Google Apps Script เป็นทางเลือกที่ลงทุนน้อยแต่ได้ผลลัพธ์มหาศาล (High ROI) เพราะคุณไม่ต้องซื้อเซิร์ฟเวอร์ หรือเช่าบริการรายเดือนเพิ่มเติม ก็สามารถอัปเกรดระบบเดิมให้กลายเป็นระบบจัดการเวลาทำงานแบบ Cloud-based ได้ หากองค์กรของคุณใช้งาน Google Workspace เป็นหลักอยู่แล้ว การนำเทคนิคนี้ไปปรับใช้จะช่วยลดข้อผิดพลาด ลดเวลาทำงานของ HR และทำให้ข้อมูลของพนักงานพร้อมใช้งานสำหรับการบริหารจัดการเสมอ

 

ผู้โพสต์บทความ admin

 

สนใจติดต่อได้ที่ = CCS = E-mail : ccsfuture@gmail.com

Facebook : ccsfingerscan Hotline : 094 490 3941 -3 Tel : 02 525 4178 -80 

Line : @ccsfuture Email : ccsfuture@gmail.com

 

Keyword : API,zkteco,นาฬิกายาม,สแกนนิ้ว,สแกนนิ้วมือ,สแกนลายนิ้ว,สแกนลายนิ้วมือ,สแกนหน้า,สแกนใบหน้า,เครื่องบันทึกเวลา,เครื่องสแกนนิ้ว,เครื่องสแกนนิ้วhip,เครื่องสแกนนิ้วราคาถูก,เครื่องสแกนลายนิ้ว,เครื่องสแกนลายนิ้วมือ,เครื่องสแกนลายนิ้วมือราคาถูก,เครื่องสแกน