Legacy Clients
HandyCafe สามารถจัดการการติดตั้งไคลเอนต์ V3 และ V4 ควบคู่กับไคลเอนต์รุ่นใหม่บนเซิร์ฟเวอร์เดียวกันได้ ไคลเอนต์รุ่นเก่าจะแสดงใน Admin Panel เป็นการ์ดชนิดของตัวเอง พร้อมชุดปุ่มที่ลดลงให้ตรงกับสิ่งที่โปรโตคอลเดิมรองรับ
ก่อนที่คุณจะเห็นไคลเอนต์รุ่นเก่าใน Admin Panel ได้ ต้องเปิด runtime support จาก Settings > Legacy Clients ก่อน
ไคลเอนต์รุ่นเก่าแสดงอย่างไร
ไคลเอนต์รุ่นเก่าจะเชื่อมต่อเซิร์ฟเวอร์ผ่านโปรโตคอล UDP multicast เดิม พวกมันไม่ได้ใช้ mDNS แบบไคลเอนต์รุ่นใหม่ แต่เซิร์ฟเวอร์จะตรวจพบได้ 2 วิธี:
| เส้นทางการตรวจพบ | ทริกเกอร์ |
|---|---|
| TCP Login | ไคลเอนต์ส่ง LoginRequest มาที่ TCP command port เซิร์ฟเวอร์จะบันทึก peer และส่งเหตุการณ์ connected |
| UDP Ping | ไคลเอนต์ broadcast เฟรม Ping บน multicast group เซิร์ฟเวอร์รับเฟรม อัปเดตเรคคอร์ด peer และส่งเหตุการณ์ online |
สถานะราย MAC จะถูกเก็บไว้ใน legacy client store พร้อม IP, hostname, ผู้ใช้ที่ล็อกอิน, เวอร์ชันไคลเอนต์, ตัวจับเวลาเซสชัน และ timestamp ล่าสุดที่พบ ทุกเฟรมขาเข้าจะรีเซ็ต inactivity timer ถ้า timer หมดโดยไม่มีทราฟฟิก (ค่าเริ่มต้น 10 วินาที) ไคลเอนต์จะถูกมาร์กว่าออฟไลน์ แต่เรคคอร์ดยังคงอยู่ในฐานข้อมูลเพื่อไม่ให้ประวัติหาย
การ์ด Legacy Client
ไคลเอนต์รุ่นเก่าแต่ละตัวจะแสดงเป็นการ์ดที่ต่างจากการ์ดไคลเอนต์รุ่นใหม่ ส่วนหัวจะแสดงชื่อที่แสดง (hostname ถ้ามี MAC ถ้าไม่มี), badge ออนไลน์หรือออฟไลน์ที่มีสี และป้ายสถานะ
สีและป้ายสถานะ
| Status | สี | ความหมาย |
|---|---|---|
| Online | เขียว | กำลังมีเซสชันที่ใช้งานอยู่ |
| Idle | ฟ้าอมเขียว | เชื่อมต่ออยู่และรอ ไม่มีเซสชัน |
| Paused | เหลืองอำพัน | เซสชันถูกพัก การคิดเงินหยุดชั่วคราว |
| Busy | ม่วง | ไคลเอนต์กำลังประมวลผลคำขอ |
| Payment | ชมพูอมแดง | ไคลเอนต์อยู่ในขั้นตอนชำระเงิน |
| Admin | คราม | ไคลเอนต์อยู่ในโหมดแอดมินหรือบำรุงรักษา |
| Offline | เทา | ไม่มีทราฟฟิกล่าสุด ปุ่มต่างๆ ถูกปิดจนกว่าจะกลับมาออนไลน์ |
| Timed | ฟ้า | มีเซสชันแบบจำกัดเวลาพร้อมเส้นตาย |
Session Clock
เมื่อมีเซสชันทำงาน การ์ดจะแสดงบล็อกนาฬิกา:
- เวลาเริ่ม
- เวลาสิ้นสุด (สำหรับเซสชันแบบมีเวลา)
- นาทีที่ใช้ไป
- นาทีคงเหลือพร้อมตัวนับถอยหลังสด
- ค่าใช้จ่ายสะสม
ข้อมูลตัวตน
การ์ดจะแสดงเสมอ:
- MAC address
- IP address
- เวอร์ชันไคลเอนต์ เช่น "3.4.01"
- ผู้ใช้ที่ล็อกอิน ถ้ามี
แถบเครื่องมือคำสั่ง
เมื่อไคลเอนต์ออนไลน์ แถบเครื่องมือคำสั่งใต้ข้อมูลตัวตนจะมีการทำงานที่พร้อมใช้งาน
การควบคุมเซสชัน
| ปุ่ม | แสดงเมื่อ | พฤติกรรม |
|---|---|---|
| Login | สถานะเป็น idle | เปิดกล่อง Device Login ให้เลือกนาทีและวิธีชำระ เซิร์ฟเวอร์จะส่งคำสั่ง Login พร้อมค่าที่เลือก จากนั้นเซสชันเริ่มบนไคลเอนต์ |
| Logout | สถานะเป็น online, timed, paused, busy หรือ payment | ถ้าเป็น postpaid จะเปิดกล่องชำระเงินเพื่อกรอกจำนวนและวิธีชำระ แล้วบันทึกธุรกรรมลงบัญชีแยกประเภท จากนั้นเซิร์ฟเวอร์จะส่งคำสั่ง Logout และปิดเซสชันบนไคลเอนต์ |
Add Time
เปิดตัวเลือกนาที รับค่าบวกเพื่อเพิ่มเวลา หรือค่าลบเพื่อลดเวลา ขนาดสูงสุดคือ 10,000 นาทีในแต่ละทิศทาง ใช้ได้ทั้งเซสชัน prepaid และ postpaid
ถ้าคุณตั้ง preset นาทีไว้ในการตั้งค่าราคา การ์ดจะแสดงแถวปุ่ม preset ด้วย แตะ preset เพื่อใช้ค่าได้ทันทีโดยไม่ต้องเปิดตัวเลือกนาที
Screenshot
ขอภาพหน้าจอสดจากไคลเอนต์รุ่นเก่าผ่านพอร์ต file transfer โฟลว์คือ:
- เซิร์ฟเวอร์ส่งคำสั่งขอภาพหน้าจอ
- ไคลเอนต์เปิด TCP listener ชั่วคราวบนพอร์ตสุ่ม
- เซิร์ฟเวอร์เชื่อมต่อ ส่ง header file transfer 9 ไบต์ และรอ
- ไคลเอนต์จับภาพหน้าจอ เข้ารหัสเป็น BMP แบบบีบอัด แล้วสตรีมกลับมา
- เซิร์ฟเวอร์แตกไฟล์ BMP และเก็บไว้ในโฟลเดอร์
legacy_screenshotsภายใต้ไดเรกทอรีข้อมูล HandyCafe ของคุณ - โปรแกรมดูภาพหน้าจอจะเปิดพร้อมภาพใหม่
ถ้าไคลเอนต์ไม่ตอบภายใน timeout (ค่าเริ่มต้น 30 วินาทีเพื่อเชื่อมต่อ และ 20 วินาทีสำหรับข้อมูล) คำขอจะล้มเหลวและมี toast error คุณลองใหม่ได้ทันที
การสั่งงานพลังงาน
| การกระทำ | การยืนยัน | ผลลัพธ์ |
|---|---|---|
| Logoff | ไม่มี | ออกจากระบบ Windows ของผู้ใช้บนเครื่องไคลเอนต์ เซสชัน Windows จะจบแต่เครื่องยังเปิดอยู่ |
| Reboot | มี | ส่งคำสั่งรีบูต เครื่องไคลเอนต์จะเริ่มต้นใหม่ |
| Shutdown | มี | ส่งคำสั่งปิดเครื่อง เครื่องไคลเอนต์จะดับลง |
Reboot และ Shutdown จะแสดงกล่องยืนยันเพื่อป้องกันการสั่งพลังงานโดยไม่ตั้งใจ
การทำงานที่ไม่รองรับ
ไคลเอนต์รุ่นเก่าไม่รองรับทุกฟีเจอร์ที่มีใน HandyCafe รุ่นใหม่ ช่องว่างสำคัญมีดังนี้:
- ไม่มีการปรับ pause ระหว่างเซสชัน การเปลี่ยนเวลาที่ส่งตอนเซสชันหยุดพักจะถูกเข้าคิวไว้ แต่ไคลเอนต์อาจไม่รับ ให้ resume เซสชันก่อน ใช้การเปลี่ยนแปลง แล้วค่อย pause ใหม่ถ้าจำเป็น
- ไม่มีโหมด Admin ผ่านคำสั่งเซิร์ฟเวอร์ สถานะแอดมินภายในของไคลเอนต์ไม่สามารถสลับจากเซิร์ฟเวอร์ได้ โหมดแอดมินควบคุมได้เฉพาะบนเครื่องไคลเอนต์เอง
- ไม่มีการลงทะเบียนไลเซนส์จากเซิร์ฟเวอร์ เซิร์ฟเวอร์จะ mirror ไบต์ไลเซนส์ที่เห็นในเฟรมของไคลเอนต์ แต่ไม่สามารถ push ไลเซนส์ใหม่ไปที่ไคลเอนต์ได้ ต้องลงทะเบียนที่เครื่องนั้นเอง
- ไม่มีการเชื่อม wallet member สำหรับเซสชันที่เริ่มบนไคลเอนต์รุ่นเก่า การชำระเงินจะถูกบันทึกเป็นแถว
transactionsปกติด้วยtransaction_type=sessionsและ MAC ของไคลเอนต์ โฟลว์ wallet แบบรุ่นใหม่จะไม่ถูกใช้ - ไม่มี remote desktop ฟีเจอร์ remote desktop ใช้เส้นทางสตรีม UDP ที่ไคลเอนต์รุ่นเก่าไม่มี
- ไม่มี file sync push Sync Explorer จะ push ไฟล์ได้เฉพาะผ่านโปรโตคอลรุ่นใหม่เท่านั้น
ถ้าต้องการฟังก์ชันครบถ้วน ควรย้ายไปใช้ไคลเอนต์ HandyCafe รุ่นใหม่เมื่อเป็นไปได้
พฤติกรรมเมื่อออฟไลน์
เมื่อ inactivity timeout หมดอายุ การ์ดจะจางลง badge สถานะจะกลายเป็นเทา และปุ่มคำสั่งทั้งหมดจะถูกปิด เรคคอร์ดของไคลเอนต์จะยังอยู่ใน store เพื่อเก็บประวัติ MAC, hostname และข้อมูล last seen ไว้ เมื่อไคลเอนต์กลับมาออนไลน์อีกครั้งด้วย UDP ping ใหม่หรือ TCP login การ์ดจะกลับมามีชีวิตและใช้งานคำสั่งได้อีกครั้ง
เรคคอร์ดจะไม่ถูกลบอัตโนมัติ หากต้องการลบไคลเอนต์เก่าถาวร ให้แก้จากฐานข้อมูลผู้ดูแลหรือใช้เครื่องมือแอดมินที่เกี่ยวข้อง
เคล็ดลับ
- คง inactivity timeout ไว้ที่ 10 วินาที เว้นแต่ว่าคุณรู้แน่ชัดว่า legacy clients ของคุณ beacon ช้ากว่านั้น การตั้งให้สั้นเกินไปจะทำให้ไคลเอนต์ปกติถูกมาร์กว่าออฟไลน์ตอนเครือข่ายกระตุกสั้นๆ
- ถ้าไคลเอนต์รุ่นเก่าดูออนไลน์แต่ไม่ตอบคำสั่ง ให้ตรวจสอบ Protocol Variant ใน Settings ความไม่ตรงกันระหว่าง variant ของเซิร์ฟเวอร์ (STE กับ Standard) และบิลด์ไคลเอนต์จะทำให้คำสั่งถูกทิ้งเงียบๆ
- ภาพหน้าจอจากไคลเอนต์รุ่นเก่าเป็น BMP ที่บีบอัด ซึ่งมีขนาดใหญ่กว่า PNG แบบรุ่นใหม่ ถ้าคุณจับภาพจำนวนมาก ควรเก็บโฟลเดอร์
legacy_screenshotsไว้บนไดรฟ์ที่มีพื้นที่ว่างพอ - ใช้ Add Time กับปุ่ม preset ในช่วงเปลี่ยนกะ การแตะครั้งเดียวเพิ่มเวลาตามช่วงที่กำหนดเร็วกว่าการพิมพ์นาทีเอง
- ค่อยๆ ปลดระวางไคลเอนต์รุ่นเก่า ย้ายทีละชุด ยืนยันว่าไคลเอนต์ใหม่ทำงานเหมือนเดิมใน Admin Panel แล้วค่อยเลิกใช้เครื่องเก่า