SoftControl
คู่มือผู้ใช้ SoftAgent

คู่มือผู้ใช้ SoftAgent

SoftAgent เป็นเอเจนต์ระดับโฮสต์น้ำหนักเบาที่ทำงานบน PC Windows ที่ถูกควบคุม รับคำสั่งเครือข่ายจาก SoftControl และระบบควบคุมอื่นเพื่อดำเนินการระดับระบบ — ระดับเสียง เปิด-ปิดเครื่อง ล็อกหน้าจอ จำลองแป้นพิมพ์ และ watchdog กระบวนการ — และรายงานสัญญาณชีพอย่างแข็งขัน คู่มือนี้จะพาคุณจากการติดตั้งไปจนถึงการใช้งานจริงอย่างเสถียร

ข้อมูลจำเพาะผลิตภัณฑ์

พอร์ตควบคุม

UDP 6500 (ค่าเริ่มต้น กำหนดค่าได้ใน config)

แพลตฟอร์ม

Windows 10/11 (ต้องการสิทธิ์ admin สำหรับการควบคุมระดับระบบ)

ใบอนุญาต

ใช้งานฟรี ต้องลงทะเบียนบัญชีเพื่อดาวน์โหลด

สถาปัตยกรรม

ตัวดำเนินการล้วนๆ — ไม่มี LLM ในตัว ไม่มีการประสานงาน AI บนอุปกรณ์

Keep-Alive สองกระบวนการ

กระบวนการหลัก App + Watchdog — ดูแลกันและกันเมื่อเกิดข้อผิดพลาด

เริ่มต้นอัตโนมัติ

ลงทะเบียน scheduled task เพื่อเริ่มต้นเมื่อล็อกอินด้วยสิทธิ์สูงสุด

1. เริ่มต้นอย่างรวดเร็ว: การติดตั้ง การใช้งาน และการตรวจสอบครั้งแรก

SoftAgent มีตัวติดตั้งแบบคลิกเดียว — ดับเบิลคลิกเพื่อติดตั้ง ลงทะเบียน scheduled task เริ่มต้นอัตโนมัติ และเลือกเริ่มทันที บทนี้ช่วยให้คุณเสร็จสิ้นการติดตั้ง เปิดใช้งานครั้งแรก และตรวจสอบว่าเอเจนต์ทำงานได้ภายใน 10 นาที

1.1 ข้อกำหนดเบื้องต้น

SoftAgent ทำงานด้วยสิทธิ์สูงสุดเพื่อดำเนินการควบคุมระดับระบบ (ปิดเครื่อง เปลี่ยน IP จำลองแป้นพิมพ์) การติดตั้งและการใช้งานต้องการสิทธิ์ผู้ดูแลระบบ

เป้าหมาย

ยืนยันสภาพแวดล้อมตรงตามข้อกำหนดและเตรียมการติดตั้ง

ขั้นตอน
  1. ยืนยันว่า PC เป้าหมายใช้ Windows 10/11 x64
  2. ยืนยันว่ามีสิทธิ์บัญชีผู้ดูแลระบบ (ตัวติดตั้งจะแสดงพรอมต์ UAC elevation)
  3. ยืนยันว่าไฟร์วอลล์อนุญาตการรับส่งข้อมูล UDP ขาเข้าบนพอร์ต 6500 (พอร์ตฟังของ SoftAgent)
  4. แพ็กเกจตัวติดตั้งเป็น self-contained — ไม่ต้องติดตั้ง .NET runtime บนเครื่องเป้าหมายก่อน
การตรวจสอบความสำเร็จ
  • สามารถรันโปรแกรมในฐานะผู้ดูแลระบบได้ (UAC elevation ผ่านแล้ว)
  • UDP พอร์ต 6500 ไม่ถูกใช้งานโดยโปรแกรมอื่น
เคล็ดลับ
  • PC ที่ถูกควบคุมหลายเครื่องสามารถใช้ตัวติดตั้งเดียวกัน — กำหนดค่าพอร์ตและที่อยู่การรายงานแยกกันในแต่ละเครื่อง
  • สำหรับโครงการนิทรรศการ แนะนำให้ตั้ง PC ที่ถูกควบคุมทั้งหมดให้ล็อกอินอัตโนมัติด้วยบัญชีผู้ดูแลระบบ เพื่อให้ scheduled task เริ่มต้นได้อย่างน่าเชื่อถือ

1.2 การติดตั้งและการเริ่มต้น

ใช้ตัวติดตั้งอย่างเป็นทางการสำหรับการติดตั้งแบบคลิกเดียว หลังติดตั้ง SoftAgent ทำงานเป็นแอปพลิเคชัน system tray โดยไม่มีหน้าต่างหลักให้เห็น

เป้าหมาย

เสร็จสิ้นการติดตั้งและยืนยันว่า SoftAgent ทำงานปกติใน system tray

ขั้นตอน
  1. ดับเบิลคลิก SoftAgent-Setup-version.exe และคลิก Yes ในพรอมต์ UAC เพื่ออนุญาตสิทธิ์ผู้ดูแลระบบ
  2. ทำตามวิซาร์ดตัวติดตั้งเพื่อเสร็จสิ้นการติดตั้ง (ค่าเริ่มต้น: C:\Program Files\SoftAgent\)
  3. ในหน้าเสร็จสิ้น เลือกติ๊ก 'Launch SoftAgent now' หรือเริ่มด้วยตนเองภายหลัง
  4. หลังเริ่มต้น SoftAgent จะปรากฏใน system tray (ไม่มีหน้าต่างหลักเปิด)
  5. คลิกขวาที่ไอคอน tray และเลือก 'Open Config' — ยืนยันว่าหน้าต่างหลักปรากฏพร้อม 4 แท็บ (Properties / Programs / Watchdog / Settings)
การตรวจสอบความสำเร็จ
  • ไอคอน SoftAgent ปรากฏใน system tray
  • Task Manager แสดงกระบวนการ SoftAgent.App และ SoftAgent.Watchdog ทั้งสองกำลังทำงาน
  • การคลิกขวาที่ tray แสดง: Open Config / Status / Pause Watchdog / Open Log Directory / About / Exit
หมายเหตุ

SoftAgent ใช้สถาปัตยกรรมสองกระบวนการ: กระบวนการ App จัดการฟังก์ชัน และ Watchdog ตรวจสอบและรีสตาร์ท App อัตโนมัติหากเกิดข้อผิดพลาด — ดูแลกันและกัน

1.3 การกำหนดค่าเริ่มต้นและการตรวจสอบ

หลังเรียกใช้ครั้งแรก เสร็จสิ้นการกำหนดค่าพื้นฐาน (พอร์ตฟัง ที่อยู่การรายงาน เริ่มต้นอัตโนมัติ) แล้วตรวจสอบว่าเอเจนต์ตอบสนองถูกต้องโดยใช้คำสั่ง ping

เป้าหมาย

เสร็จสิ้นการกำหนดค่าพื้นฐานและยืนยันว่าเอเจนต์ทำงานผ่าน UDP ping

ขั้นตอน
  1. ดับเบิลคลิกไอคอน tray เพื่อเปิดหน้าต่างหลัก สลับไปที่แท็บ Settings
  2. ยืนยันว่าพอร์ตฟังเป็น 6500 (หรือเปลี่ยนตามต้องการ) และติ๊ก 'Auto-start' เพื่อลงทะเบียน scheduled task
  3. สำหรับการผสานรวม SoftControl ป้อน IP:port ของเครื่อง SoftControl ในช่อง 'Report Address'
  4. คลิก 'Save and Apply' เพื่อบันทึกการกำหนดค่า
  5. เปิด PowerShell และส่ง ping เพื่อตรวจสอบ:
  6. $u = New-Object System.Net.Sockets.UdpClient
  7. $b = [Text.Encoding]::UTF8.GetBytes('ping')
  8. $u.Send($b, $b.Length, '127.0.0.1', 6500)
  9. $r = $u.Receive([ref](New-Object System.Net.IPEndPoint([Net.IPAddress]::Any, 0)))
  10. [Text.Encoding]::UTF8.GetString($r)
  11. การรับ ok:pong ยืนยันว่าเอเจนต์ทำงานปกติ
การตรวจสอบความสำเร็จ
  • การส่ง ping ได้รับการตอบสนอง ok:pong
  • ช่องทำเครื่องหมาย Auto-start ในแท็บ Settings ถูกบันทึกแล้ว
  • การรัน schtasks /Query /TN SoftAgent แสดง scheduled task ที่ลงทะเบียนแล้ว
ข้อผิดพลาดที่พบบ่อย
  • เปลี่ยนพอร์ตแต่ลืมคลิก 'Save and Apply' ทำให้การเปลี่ยนแปลงไม่มีผล
  • ป้อนพอร์ตคอนโซลจัดการ HTTP แทนพอร์ตฟัง UDP

2. เอกสารอ้างอิงคำสั่งความสามารถ: ควบคุมระบบและ Watchdog กระบวนการ

SoftAgent รับคำสั่งข้อความผ่าน UDP ในรูปแบบ verb หรือ verb:arg บทนี้แสดงรายการคำสั่งทั้งหมดจัดเรียงตามระดับความเสี่ยงเพื่อช่วยให้คุณเข้าใจจุดประสงค์และข้อควรพิจารณาด้านความปลอดภัยของแต่ละคำสั่ง

2.1 รูปแบบคำสั่งและกฎการตอบสนอง

คำสั่งทั้งหมดใช้รูปแบบเดียวกัน การเข้าใจหมวดหมู่ระดับความเสี่ยงช่วยให้ใช้การดำเนินการระดับระบบได้อย่างปลอดภัย

เป้าหมาย

เข้าใจรูปแบบคำสั่งและระดับความเสี่ยงเพื่อใช้ SoftAgent อย่างปลอดภัย

ขั้นตอน
  1. รูปแบบคำสั่ง: verb หรือ verb:arg (อาร์กิวเมนต์ตามหลังเครื่องหมายโคลอนแรก) เช่น volume:80 หรือ ping
  2. การตอบสนองสำเร็จ: ok:<code> เช่น ok:pong หรือ ok:volume
  3. การตอบสนองล้มเหลว: err:<code> เช่น err:wol.invalidMac
  4. สามระดับความเสี่ยง: ปลอดภัย (ไม่รบกวน ทำซ้ำได้) / รบกวน (ขัดจังหวะ session/กระบวนการแต่ไม่สูญเสียข้อมูล) / ทำลาย (ปิดเครื่อง/รีสตาร์ท/logoff ฯลฯ)
  5. คำสั่งทำลายจะแสดงกล่องยืนยันใน UI เมื่อทริกเกอร์จากระยะไกล ผู้เรียกมีหน้าที่ยืนยันความตั้งใจ
การตรวจสอบความสำเร็จ
  • การส่ง ping ได้รับ ok:pong ยืนยันว่าการเชื่อมต่อและรูปแบบคำสั่งถูกต้อง
  • การส่ง describe ได้รับรายการความสามารถ JSON พร้อมคำสั่งที่รองรับทั้งหมดและระดับความเสี่ยง
หมายเหตุ

คำสั่ง describe คืนรายการความสามารถทั้งหมดของ SoftAgent instance นี้ รวมถึงชื่อ คำอธิบาย ระดับความเสี่ยง และว่าต้องการการยืนยันของแต่ละคำสั่ง — มีประโยชน์สำหรับการค้นหาความสามารถเมื่อผสานรวมกับ SoftControl หรือระบบ AI

2.2 คำสั่งปลอดภัย: การตรวจสอบ ระดับเสียง และการดึงข้อมูล

คำสั่งปลอดภัยไม่ทำลายและสามารถรันซ้ำได้ทุกเวลา — เหมาะสำหรับการตรวจสอบสถานะประจำและควบคุมระดับเสียง

เป้าหมาย

เข้าใจคำสั่งปลอดภัยสำหรับการควบคุมระดับเสียงและการตรวจสอบสถานะประจำวัน

ขั้นตอน
  1. ตรวจสอบการเชื่อมต่อ: ping (ตอบสนอง ok:pong ยืนยันว่าเอเจนต์ออนไลน์)
  2. รับรายการความสามารถ: describe (คืน JSON แสดงคำสั่งทั้งหมดพร้อมคำอธิบายและระดับความเสี่ยง)
  3. ค้นหาอุปกรณ์: discover (คืน JSON snapshot สัญญาณชีพพร้อม hostname, IP, MAC, ระดับเสียง, สถานะ guard)
  4. เพิ่มระดับเสียงหนึ่งขั้น: volup (ค่าเริ่มต้น +5% ต่อครั้ง)
  5. ลดระดับเสียงหนึ่งขั้น: voldown (ค่าเริ่มต้น -5% ต่อครั้ง)
  6. สลับปิดเสียง: mute (สลับระหว่างปิดเสียงและเปิดเสียง)
  7. รับที่อยู่ MAC ของ NIC หลัก: getmac (คืนรูปแบบขีดคั่นตัวพิมพ์ใหญ่ เช่น AA-BB-CC-DD-EE-FF)
  8. ส่ง Wake-on-LAN magic packet: wol:AA-BB-CC-DD-EE-FF (ปลุกเครื่องที่มี MAC ที่ระบุ)
  9. จำลองแป้นพิมพ์: key:^s (Ctrl+S), key:{F5} (ปุ่ม F5), key:Hello (พิมพ์ตัวอักษร)
การตรวจสอบความสำเร็จ
  • คำสั่ง ping คืน ok:pong
  • volup/voldown เปลี่ยนระดับเสียงของเครื่องที่ถูกควบคุม
  • คำสั่ง wol ปลุกเครื่องเป้าหมาย (ต้องเปิดใช้ WoL บนเป้าหมาย)
เคล็ดลับ
  • ใช้ discover เพื่อรับสถานะปัจจุบันของเครื่องที่ถูกควบคุมอย่างรวดเร็ว (IP ระดับเสียง สถานะ guard) — มีประโยชน์สำหรับการตรวจสุขภาพแบบ batch ของ SoftControl
  • key: ใช้ไวยากรณ์ Microsoft SendKeys: ^ คือ Ctrl, % คือ Alt, + คือ Shift, ปุ่มพิเศษในวงเล็บปีกกาเช่น {ENTER}

2.3 คำสั่งรบกวน: ล็อกหน้าจอ Watchdog กระบวนการ และโปรแกรมที่จัดการ

คำสั่งรบกวนขัดจังหวะ session หรือกระบวนการปัจจุบันแต่ไม่ทำให้ข้อมูลสูญหาย ยืนยันว่าจะไม่ส่งผลกระทบต่องานที่กำลังทำก่อนดำเนินการ

เป้าหมาย

เข้าใจการล็อกหน้าจอ การเริ่ม/หยุดกระบวนการ และคำสั่งยกเลิกการปิดเครื่อง

ขั้นตอน
  1. ล็อกหน้าจอ: lock (ล็อก workstation ปัจจุบัน — ล็อกอินใหม่เพื่อกู้คืน)
  2. ยกเลิกการปิดเครื่อง/รีสตาร์ทที่รอดำเนินการแบบหน่วงเวลา: cancelshutdown (ใช้ระหว่าง countdown การปิดเครื่อง)
  3. เริ่ม watchdog item ตาม ID: run:id (เช่น run:db-player เริ่ม item ที่ชื่อ db-player)
  4. หยุด watchdog item ตาม ID: stop:id (หยุดและหยุด watchdog — กระบวนการจะไม่รีสตาร์ทอัตโนมัติ)
  5. เริ่มโปรแกรมที่จัดการตาม index: startpro:0 (เริ่มโปรแกรมที่ index 0 ในรายการโปรแกรมที่จัดการ)
  6. หยุดโปรแกรมที่จัดการตาม index: killpro:0
  7. หยุดโปรแกรมที่จัดการทั้งหมด: killall
การตรวจสอบความสำเร็จ
  • หลัง lock เครื่องที่ถูกควบคุมแสดงหน้าจอล็อก
  • หลัง run:id watchdog item ที่สอดคล้องเริ่มต้น — สถานะเปลี่ยนจาก Stopped เป็น Running ในแท็บ Watchdog
  • cancelshutdown ที่ส่งระหว่าง countdown การปิดเครื่องยกเลิกการปิดเครื่อง
เคล็ดลับ
  • ใช้ run/stop กับ watchdog ID (ตัวระบุที่เสถียร) แทน startpro/killpro กับ index (index เปลี่ยนเมื่อลบหรือจัดเรียง item ใหม่)
  • Watchdog ID กำหนดค่าในแท็บ Watchdog ของ SoftAgent อัปเดตคำสั่ง SoftControl หากเปลี่ยนชื่อ ID

2.4 คำสั่งทำลาย: ปิดเครื่อง รีสตาร์ท และ Logoff

คำสั่งทำลายมีความเสี่ยง (ปิดเครื่อง/รีสตาร์ท/logoff ฯลฯ) และต้องการการยืนยัน แนะนำ: ใช้การปิดเครื่องแบบหน่วงเวลา + cancelshutdown เพื่อความสามารถในการยกเลิกฉุกเฉิน

เป้าหมาย

ดำเนินการทำลายอย่างปลอดภัย เช่น ปิดเครื่อง รีสตาร์ท และ logoff

ขั้นตอน
  1. ปิดเครื่องแบบหน่วงเวลา (แนะนำ): shutdown:60 (ปิดเครื่องหลัง 60 วินาที cancelshutdown สามารถยกเลิกระหว่าง countdown)
  2. ปิดเครื่องทันที (ใช้ด้วยความระมัดระวัง): shutdown (ไม่มีหน่วงเวลา ยกเลิกไม่ได้)
  3. รีสตาร์ทแบบหน่วงเวลา (แนะนำ): reboot:60 (รีสตาร์ทหลัง 60 วินาที)
  4. รีสตาร์ทเข้า BIOS/UEFI: reboot:firmware (ต้องการการรองรับ UEFI firmware)
  5. Logoff ผู้ใช้ปัจจุบัน: logoff (ยืนยันว่าไม่มีข้อมูลที่ยังไม่ได้บันทึกก่อนดำเนินการ)
  6. เปิด/ปิด UAC: uac:off / uac:on (เปลี่ยน registry ต้องรีสตาร์ทเพื่อให้มีผล ต้องการสิทธิ์ admin)
  7. เปิด/ปิด edge gestures ของหน้าจอสัมผัส: edgeswipe:off / edgeswipe:on
  8. เปิด/ปิด Windows startup auto-repair: autorepair:off / autorepair:on
การตรวจสอบความสำเร็จ
  • หลัง shutdown:60 ระบบแสดงการแจ้งเตือน countdown 'กำลังปิดเครื่องใน 60 วินาที'
  • cancelshutdown ที่ส่งระหว่าง countdown ยกเลิกการปิดเครื่อง
ข้อผิดพลาดที่พบบ่อย
  • ส่ง shutdown โดยไม่มีหน่วงเวลา ทำให้ยกเลิกไม่ได้ — เครื่องที่ถูกควบคุมปิดทันที
  • หลัง uac:off ไม่รีบูตและสมมติว่า UAC ถูกปิดใช้งานแล้ว (ต้องรีสตาร์ทเพื่อให้มีผล)
หมายเหตุ

คำสั่งปิดเครื่องต้องการสิทธิ์ผู้ดูแลระบบ หากสิทธิ์ไม่เพียงพอ จะคืนรหัสข้อผิดพลาดที่ชัดเจนเช่น err:power.denied — ไม่ล้มเหลวแบบเงียบ

3. การกำหนดค่าและเครือข่าย: พอร์ต IP และการเริ่มต้นอัตโนมัติ

การกำหนดค่าของ SoftAgent เก็บใน %ProgramData%\SoftAgent\config.json (ระดับเครื่อง ใช้ร่วมกันทุก user) แก้ไขการกำหนดค่าผ่านแท็บ Settings ในหน้าต่างหลัก — การเปลี่ยนแปลงมีผลทันที (hot reload) ยกเว้นการเปลี่ยนพอร์ตที่ต้องรีสตาร์ท

3.1 การตั้งค่าการกำหนดค่าหลัก

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

เป้าหมาย

เสร็จสิ้นการกำหนดค่าพื้นฐานเพื่อให้ SoftAgent ค้นพบและถูกควบคุมโดย SoftControl ได้ถูกต้อง

ขั้นตอน
  1. เปิดหน้าต่างหลัก SoftAgent และสลับไปที่แท็บ Settings
  2. พอร์ตฟัง (ค่าเริ่มต้น 6500): SoftControl และคอนโทรลเลอร์อื่นส่งคำสั่ง UDP ไปยังพอร์ตนี้
  3. ที่อยู่การรายงาน (รูปแบบ IP:port): SoftAgent ส่ง JSON สัญญาณชีพเป็นระยะไปยังที่อยู่นี้ ป้อน IP และพอร์ตฟังของ SoftControl
  4. ช่วงเวลาสัญญาณชีพ (วินาที): ค่าเริ่มต้น 10 วินาที สัญญาณชีพประกอบด้วย hostname, IP, MAC, ระดับเสียง, สถานะ guard ฯลฯ
  5. หน่วงเวลาเริ่มต้นอัตโนมัติ (วินาที): หน่วงเวลาหลังล็อกอินก่อน SoftAgent เริ่ม (มีประโยชน์สำหรับรอความพร้อมของเครือข่าย)
  6. คลิก 'Save and Apply' หลังการเปลี่ยนแปลง — การเปลี่ยนพอร์ตแสดงการแจ้งเตือน 'Restart Required' ถาวร การเปลี่ยนแปลงอื่นมีผลทันที
การตรวจสอบความสำเร็จ
  • การกำหนดค่ามีผลทันทีหลังบันทึก (การเปลี่ยนพอร์ตต้องรีสตาร์ท)
  • หากกำหนดค่าที่อยู่การรายงาน SoftControl ควรเริ่มรับ JSON สัญญาณชีพเป็นระยะจาก SoftAgent นี้
เคล็ดลับ
  • สำหรับ PC ที่ถูกควบคุมหลายเครื่อง แนะนำใช้พอร์ตเดียวกัน (6500) ทั้งหมดเพื่อลดความซับซ้อนในการป้อนคำสั่ง batch ใน SoftControl
  • การปล่อยที่อยู่การรายงานว่างหมายความว่า SoftAgent จะไม่ส่งสัญญาณชีพเชิงรุกแต่จะยังตอบสนองต่อคำสั่ง UDP

3.2 การกำหนดค่า IP เครือข่าย

แท็บ Properties ในหน้าต่างหลักของ SoftAgent มีแผงเครือข่ายเพื่อตั้ง IP แบบ static / สลับเป็น DHCP โดยตรง — โดยไม่ต้องใช้ Windows settings หรือ RDP เข้าแต่ละเครื่อง

เป้าหมาย

แก้ไขการกำหนดค่า IP ของเครื่องที่ถูกควบคุมผ่านอินเทอร์เฟซ SoftAgent โดยไม่ต้องใช้ RDP

ขั้นตอน
  1. เปิดหน้าต่างหลัก สลับไปที่แท็บ Properties และเลือก NIC เป้าหมายในดรอปดาวน์ของแผงเครือข่าย
  2. หลังเลือก NIC IP ปัจจุบัน subnet mask gateway DNS และที่อยู่ MAC จะถูกกรอกอัตโนมัติ
  3. สลับโหมด 'Static IP / DHCP': ช่องแก้ไขได้ในโหมด Static; อ่านอย่างเดียวในโหมด DHCP
  4. กรอก IP เป้าหมาย subnet mask gateway และ DNS (โหมด Static)
  5. คลิก 'Change IP Settings' และยืนยันในกล่องยืนยัน
  6. การเปลี่ยน IP เป็นการดำเนินการทำลาย — การเชื่อมต่อปัจจุบันจะขาดหลังเปลี่ยน เชื่อมต่อใหม่ด้วย IP ใหม่
การตรวจสอบความสำเร็จ
  • หลังเปลี่ยน เครื่องที่ถูกควบคุมสามารถ ping สำเร็จที่ IP ใหม่
  • JSON สัญญาณชีพ SoftAgent แสดง IP ที่อัปเดตแล้ว
หมายเหตุ

การเปลี่ยน IP เป็นการทำลาย ก่อนดำเนินการ ยืนยันว่า IP ใหม่เข้าถึงได้บน LAN เพื่อหลีกเลี่ยงการสูญเสียการเข้าถึงจากระยะไกลกับเครื่องที่ถูกควบคุม

3.3 การกำหนดค่าเริ่มต้นอัตโนมัติ

SoftAgent ใช้ Windows scheduled task เพื่อเริ่มต้นอัตโนมัติ ทริกเกอร์เมื่อล็อกอินด้วยสิทธิ์สูงสุด — ทำให้นิทรรศการพร้อมทันทีที่ PC บูต

เป้าหมาย

กำหนดค่าเริ่มต้นอัตโนมัติเพื่อให้ SoftAgent กลับมาทำงานอัตโนมัติหลัง PC ที่ถูกควบคุมรีสตาร์ท

ขั้นตอน
  1. ในแท็บ Settings ของหน้าต่างหลัก ติ๊ก 'Auto-start'
  2. คลิก 'Save and Apply'
  3. ตรวจสอบด้วย: schtasks /Query /TN SoftAgent ใน PowerShell — ยืนยันว่า scheduled task ถูกลงทะเบียนแล้ว
  4. ทริกเกอร์ task: ONLOGON (ทริกเกอร์หลัง user ล็อกอิน) ด้วยระดับสิทธิ์ HIGHEST
  5. เพื่อตั้งหน่วงเวลาเริ่มต้น (รอเครือข่ายหรือบริการที่ขึ้นอยู่) ตั้งวินาทีในช่อง 'Auto-start Delay'
  6. เพื่อปิด auto-start ยกเลิกการติ๊ก 'Auto-start' และบันทึก
การตรวจสอบความสำเร็จ
  • schtasks /Query /TN SoftAgent แสดง task ที่มีอยู่และเปิดใช้งาน
  • หลังรีสตาร์ท PC ที่ถูกควบคุม SoftAgent ปรากฏอัตโนมัติใน system tray หลังล็อกอิน

4. การผสานรวมกับ SoftControl: เอเจนต์โฮสต์ที่ถูกควบคุม

SoftAgent เป็นส่วนประกอบเสริมฝั่งที่ถูกควบคุมสำหรับระบบควบคุมนิทรรศการ SoftControl กำหนดค่าคำสั่ง UDP ใน SoftControl และการกดปุ่มครั้งเดียวสามารถควบคุม SoftAgent บน PC ที่ถูกควบคุมหลายเครื่องพร้อมกัน

4.1 การกำหนดค่าคำสั่ง SoftAgent ใน SoftControl

สร้างคำสั่ง UDP ใน command management ของ SoftControl สำหรับแต่ละเครื่องที่ถูกควบคุม โดยตั้ง IP เป้าหมายเป็น IP ของเครื่องและพอร์ตเป็นพอร์ตฟังของ SoftAgent (ค่าเริ่มต้น 6500)

เป้าหมาย

เสร็จสิ้นการตั้งค่าคำสั่ง SoftAgent ใน SoftControl สำหรับการควบคุมเครื่องที่ถูกควบคุมด้วยปุ่ม

ขั้นตอน
  1. เข้า admin panel ของ SoftControl และเปิด Command Management
  2. สร้างคำสั่งใหม่ เลือกโปรโตคอล UDP
  3. ตั้งที่อยู่เป้าหมายเป็น IP ของ PC ที่ถูกควบคุม (เช่น 192.168.1.101)
  4. ตั้งพอร์ตเป็นพอร์ตฟังของ SoftAgent (ค่าเริ่มต้น 6500)
  5. ตั้งข้อความคำสั่งเป็นคำสั่งที่เฉพาะเจาะจง เช่น: volup (เพิ่มระดับเสียง), mute (สลับปิดเสียง), lock (ล็อกหน้าจอ), shutdown:60 (ปิดเครื่องใน 60 วินาที)
  6. บันทึกและทดสอบคำสั่งแยกกัน — ยืนยันว่าเครื่องที่ถูกควบคุมตอบสนองถูกต้อง
  7. ผูกคำสั่งที่ตรวจสอบแล้วกับปุ่มบนอินเทอร์เฟซหน้าบ้านของ SoftControl
การตรวจสอบความสำเร็จ
  • หลัง SoftControl ส่งคำสั่ง UDP SoftAgent ของเครื่องที่ถูกควบคุมดำเนินการกระทำ
  • Log ของ SoftControl แสดงว่าส่งคำสั่งสำเร็จ (การตอบสนอง OK)
เคล็ดลับ
  • สร้างชุดคำสั่งสำหรับแต่ละเครื่องที่ถูกควบคุม โดยใช้ชื่ออุปกรณ์เป็นคำนำหน้า (เช่น 'Hall-PC-01_Shutdown') เพื่อง่ายต่อการบำรุงรักษา
  • สำหรับการดำเนินการ batch เช่น ปิดนิทรรศการ ใช้ command groups ของ SoftControl — เพิ่มคำสั่ง shutdown สำหรับหลายเครื่องในกลุ่มเดียวและทริกเกอร์ครั้งเดียว

4.2 การใช้ Heartbeat และ Discover สำหรับการรับรู้สถานะอุปกรณ์

SoftAgent รองรับการรายงานสัญญาณชีพเชิงรุกและการตอบสนองต่อ query discover SoftControl สามารถใช้สิ่งเหล่านี้เพื่อตรวจสอบสถานะออนไลน์ของเครื่องที่ถูกควบคุม

เป้าหมาย

กำหนดค่าการรายงานสัญญาณชีพเพื่อตรวจสอบสถานะออนไลน์ของเครื่องที่ถูกควบคุมจาก SoftControl

ขั้นตอน
  1. ในการตั้งค่า SoftAgent กำหนดที่อยู่การรายงานเป็น IP:port ของ SoftControl (อินเทอร์เฟซ UDP ภายนอกของ SoftControl ค่าเริ่มต้น 8818)
  2. SoftAgent ส่งสัญญาณชีพหนึ่งครั้งทันทีเมื่อเริ่มต้น จากนั้นต่อเนื่องตามช่วงเวลาที่กำหนด (ค่าเริ่มต้น 10 วินาที)
  3. JSON สัญญาณชีพประกอบด้วย: agentId (ตัวระบุอุปกรณ์เฉพาะ), hostname, ip/mac (ข้อมูลเครือข่าย), volume/muted (สถานะเสียง), guards (สถานะกระบวนการ watchdog), uptimeSeconds
  4. เพื่อ query สถานะปัจจุบันของเครื่องที่ถูกควบคุมอย่างแข็งขัน ส่ง discover จาก SoftControl — SoftAgent คืน snapshot สัญญาณชีพ
  5. ช่อง guards ในสัญญาณชีพบ่งชี้ว่ากระบวนการ watchdog ทำงานปกติหรือไม่ เผยให้เห็นการเกิดข้อผิดพลาดหรือสถานะ give-up
การตรวจสอบความสำเร็จ
  • SoftControl รับ JSON สัญญาณชีพเป็นระยะจาก SoftAgent
  • การส่ง discover ได้รับการตอบสนอง JSON พร้อม hostname, IP, ระดับเสียง และข้อมูลอื่น

4.3 Watchdog กระบวนการ: รีสตาร์ทแอปนิทรรศการอัตโนมัติหลังเกิดข้อผิดพลาด

Watchdog กระบวนการของ SoftAgent ตรวจสอบแอปพลิเคชัน Windows ใดก็ได้และรีสตาร์ทอัตโนมัติหลังเกิดข้อผิดพลาดโดยใช้กลยุทธ์ exponential backoff — เหมาะสำหรับซอฟต์แวร์เครื่องเล่นและ kiosk ที่ทำงานโดยไม่มีคนดูแล

เป้าหมาย

กำหนดค่า watchdog รีสตาร์ทเมื่อเกิดข้อผิดพลาดสำหรับแอปนิทรรศการ

ขั้นตอน
  1. เปิดหน้าต่างหลัก SoftAgent และสลับไปที่แท็บ Watchdog
  2. คลิก 'Browse...' เพื่อเลือก .exe ที่จะดูแล เลือกตั้งชื่อและ watchdog ID (ตัวระบุที่เสถียรใช้สำหรับคำสั่ง run/stop)
  3. คลิก 'Add' เพื่อใส่ในรายการ watchdog สวิตช์แยกควบคุมว่า watchdog ของ item นี้เปิดใช้งานหรือไม่
  4. สวิตช์ watchdog หลักอยู่ด้านบนของแท็บ — การปิดใช้งานหยุด watchdog ทั้งหมด (ซิงค์กับเมนู tray 'Pause Watchdog')
  5. สัญลักษณ์สถานะแสดงสถานะของแต่ละ item: Running / Stopped / Crashed / GaveUp (watchdog ยกเลิกหลังเกิดข้อผิดพลาดมากเกินไปในช่วงเวลา)
  6. หลังเกิดข้อผิดพลาด SoftAgent รีสตาร์ทด้วย exponential backoff (เริ่มต้น 5 วินาที เพิ่มเป็นสองเท่าแต่ละครั้ง ยกเลิกหลังเกินขีดจำกัดในช่วงเวลา)
การตรวจสอบความสำเร็จ
  • โปรแกรมที่ดูแลแสดงสถานะ 'Running' ในรายการ watchdog
  • การปิดกระบวนการที่ดูแลด้วยตนเองและ SoftAgent รีสตาร์ทอัตโนมัติหลังหน่วงเวลา
  • ช่อง guards ของ JSON สัญญาณชีพแสดงสถานะ watchdog ล่าสุด
หมายเหตุ

อย่าเปลี่ยน watchdog ID โดยพลการ — คำสั่ง run/stop ของ SoftControl ขึ้นอยู่กับมัน หากเปลี่ยนชื่อ ID ให้อัปเดตคำสั่ง SoftControl ที่สอดคล้องด้วย

5. การแก้ไขปัญหา: คู่มือวินิจฉัยปัญหาที่พบบ่อย

บทนี้ครอบคลุมประเภทปัญหา SoftAgent ที่พบบ่อยที่สุดและขั้นตอนการวินิจฉัย เมื่อเกิดปัญหา ส่ง ping ก่อนเพื่อยืนยันการเชื่อมต่อ จากนั้นตรวจสอบ log จากนั้นทำงานผ่านพอร์ต สิทธิ์ และการกำหนดค่า

5.1 คำสั่ง UDP ไม่ตอบสนอง

ไม่มีการตอบสนองจาก SoftAgent หลังส่งคำสั่ง — ปัญหาที่พบบ่อยที่สุด มักเกิดจากการกำหนดค่าพอร์ตไม่ถูกต้อง ไฟร์วอลล์บล็อก หรือ SoftAgent ไม่ทำงาน

เป้าหมาย

กู้คืนช่องทางควบคุมคำสั่ง UDP

ขั้นตอน
  1. ยืนยันว่า SoftAgent มองเห็นได้ใน system tray (กระบวนการกำลังทำงาน)
  2. ยืนยันว่าพอร์ตที่ส่งตรงกับพอร์ตฟังที่กำหนดค่าของ SoftAgent (ค่าเริ่มต้น 6500)
  3. ตรวจสอบว่า Windows Firewall อนุญาตการรับส่งข้อมูล UDP ขาเข้าบนพอร์ต 6500
  4. ลอง ping จาก localhost (127.0.0.1) ก่อนเพื่อแยกปัญหาเครือข่าย จากนั้นลองจากระยะไกล
  5. ตรวจสอบไฟล์ log ใน %ProgramData%\SoftAgent\logs\ สำหรับบันทึกการรับคำสั่ง
การตรวจสอบความสำเร็จ
  • การส่ง ping ไปยัง 127.0.0.1 ได้รับ ok:pong ยืนยันว่า SoftAgent และพอร์ต UDP ทำงาน
  • การส่ง ping จากเครื่องระยะไกลยังได้รับการตอบสนอง ยืนยันว่าเส้นทางเครือข่ายปลอดโปร่ง

5.2 คำสั่งระบบคืนข้อผิดพลาดสิทธิ์

คำสั่งปิดเครื่อง/รีสตาร์ท/เปลี่ยน IP/แก้ไข UAC คืน err:xxx.denied — SoftAgent ไม่ได้ทำงานด้วยสิทธิ์ผู้ดูแลระบบ

เป้าหมาย

ทำให้แน่ใจว่า SoftAgent ทำงานด้วยสิทธิ์ผู้ดูแลระบบเพื่อรองรับคำสั่งระดับระบบทั้งหมด

ขั้นตอน
  1. ยืนยันว่า SoftAgent ทำงานด้วยสิทธิ์ admin: auto-start ใช้ scheduled task HIGHEST privilege; สำหรับการเริ่มด้วยตนเอง คลิกขวาที่ exe และ 'Run as administrator'
  2. หากคำสั่งถูกทริกเกอร์ผ่าน SoftControl ตัว SoftControl เองไม่ต้องการสิทธิ์ admin — สิทธิ์ถูกกำหนดโดย SoftAgent ฝั่งที่ถูกควบคุม
  3. ตรวจสอบคอลัมน์ 'Elevated' สำหรับ SoftAgent.App.exe ในแท็บ Details ของ Task Manager — ควรแสดง 'Yes'
  4. หากไม่ได้ทำงานในฐานะ admin ให้ออกจาก SoftAgent และรีสตาร์ทในฐานะผู้ดูแลระบบ
การตรวจสอบความสำเร็จ
  • แท็บ Details ของ Task Manager แสดง 'Yes' ในคอลัมน์ Elevated สำหรับ SoftAgent.App.exe
  • คำสั่ง volup/voldown ตอบสนองปกติ (ไม่ต้องการสิทธิ์ admin — มีประโยชน์สำหรับการตรวจสอบพื้นฐาน)
  • คำสั่ง lock ล็อกหน้าจอเครื่องที่ถูกควบคุม (ระดับ Disruptive — ยืนยันว่าสิทธิ์ถูกต้อง)

5.3 Auto-Start ไม่ทำงาน

SoftAgent ไม่เริ่มต้นอัตโนมัติหลัง PC ที่ถูกควบคุมรีสตาร์ท — ไม่มีไอคอน tray ปรากฏ

เป้าหมาย

วินิจฉัยและแก้ไขความล้มเหลวของ auto-start

ขั้นตอน
  1. รัน schtasks /Query /TN SoftAgent ใน PowerShell เพื่อยืนยันว่า scheduled task มีอยู่
  2. หาก task ไม่มีอยู่ เปิดแท็บ Settings ของ SoftAgent ติ๊ก 'Auto-start' ใหม่ และบันทึก
  3. ยืนยันว่า PC ใช้ auto-login (ปกติในนิทรรศการ) แทนการรอการล็อกอินด้วยตนเอง — ทริกเกอร์ task คือ ONLOGON ต้องการให้ user ล็อกอิน
  4. หากตั้งค่า auto-login ยืนยันว่าบัญชี auto-login มีสิทธิ์รัน task (ต้องการบัญชีผู้ดูแลระบบ)
  5. ตรวจสอบ log ล่าสุดใน %ProgramData%\SoftAgent\logs\ สำหรับเหตุผลที่เริ่มต้นล้มเหลว
การตรวจสอบความสำเร็จ
  • เอาต์พุต schtasks /Query /TN SoftAgent ประกอบด้วยทริกเกอร์ ONLOGON และสิทธิ์ HIGHEST
  • หลังรีสตาร์ท PC ที่ถูกควบคุมและล็อกอิน SoftAgent ปรากฏอัตโนมัติใน system tray

5.4 Watchdog ยกเลิกกระบวนการ (สถานะ GaveUp)

หลังเกิดข้อผิดพลาดหลายครั้งในระยะสั้น SoftAgent หยุดพยายามรีสตาร์ทกระบวนการที่ดูแล (สถานะ GaveUp) เพื่อป้องกันการรีสตาร์ทวนซ้ำอนันต์

เป้าหมาย

เข้าใจว่าทำไม watchdog ถึงยกเลิกและกู้คืนการตรวจสอบแอปเป้าหมาย

ขั้นตอน
  1. ในแท็บ Watchdog ของหน้าต่างหลัก SoftAgent ตรวจสอบสัญลักษณ์สถานะ — ยืนยันสถานะ 'GaveUp'
  2. ตรวจสอบไฟล์ log ใน %ProgramData%\SoftAgent\logs\ สำหรับเหตุผลเฉพาะของการเกิดข้อผิดพลาด (ข้อผิดพลาดก่อนการเกิดข้อผิดพลาดแต่ละครั้ง)
  3. แก้ไขสาเหตุที่แท้จริงของการเกิดข้อผิดพลาดของแอปที่ดูแล (ข้อผิดพลาดในการกำหนดค่า dependency ที่ขาดหาย port conflict ฯลฯ)
  4. หลังแก้ไข สลับสวิตช์แยกของ watchdog item ปิดแล้วเปิดในแท็บ Watchdog (หรือส่ง run:id จาก SoftControl) เพื่อเรียก watchdog ใหม่
  5. ยืนยันว่าสถานะ watchdog item เปลี่ยนเป็น 'Running' และคงที่ตามเวลา
การตรวจสอบความสำเร็จ
  • หลังแก้ไขแอปที่ดูแล สถานะ watchdog เปลี่ยนจาก 'GaveUp' เป็น 'Running'
  • JSON สัญญาณชีพแสดงสถานะ watchdog item ที่สอดคล้องอัปเดตเป็น running
หมายเหตุ

GaveUp เป็นพฤติกรรมที่ตั้งใจเพื่อป้องกันการรีสตาร์ทวนซ้ำอนันต์จากส่งผลกระทบต่อทรัพยากรระบบ วิธีแก้จริงคือแก้ไขสาเหตุที่แท้จริงของการเกิดข้อผิดพลาด — ไม่ใช่การเรียก watchdog ใหม่ซ้ำๆ ด้วยตนเอง

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

SoftAgent ใช้งานฟรีหรือไม่?

ใช่ SoftAgent ฟรี คุณต้องลงทะเบียนบัญชีบนเว็บไซต์อย่างเป็นทางการเพื่อดาวน์โหลด SoftAgent เป็นส่วนประกอบฝั่งที่ถูกควบคุมในระบบนิเวศ Soft และทำงานได้ดีที่สุดเมื่อใช้คู่กับ SoftControl

SoftAgent รัน AI inference หรือโมเดลภาษาขนาดใหญ่บนอุปกรณ์หรือไม่?

ไม่ SoftAgent เป็นตัวดำเนินการล้วนๆ — ไม่มี LLM ในตัวและไม่ดำเนินการประสานงาน AI บนอุปกรณ์ 'สมอง' AI อยู่ในชั้นควบคุมระดับบน (เช่น SoftControl หรือชั้นประสานงาน AI) SoftAgent ดำเนินการเฉพาะคำสั่งระดับระบบบน PC ที่ถูกควบคุม

SoftAgent และ SoftPlayer สามารถทำงานบน PC เดียวกันพร้อมกันได้หรือไม่?

ได้ SoftAgent ฟังบน UDP 6500 และ SoftPlayer ฟังบน UDP 7600 (ค่าเริ่มต้น) — ไม่มีความขัดแย้งของพอร์ต ทั้งคู่สามารถอยู่ร่วมกันบนเครื่องเดียวกัน SoftControl สามารถส่งคำสั่งควบคุมที่แตกต่างกันไปยังแต่ละพอร์ตอย่างอิสระ

ความแตกต่างระหว่าง watchdog ID และ index คืออะไร? ทำไมต้องใช้ ID?

Watchdog ID เป็นตัวระบุ string ที่เสถียรที่คุณกำหนด (เช่น db-player) — ไม่เปลี่ยนเมื่อลบหรือจัดเรียง item อื่นใหม่ Index (เริ่มจาก 0) เปลี่ยนเมื่อรายการเปลี่ยน การใช้ ID (run:id/stop:id) ทำให้แน่ใจว่าคำสั่ง SoftControl ยังชี้ไปยังโปรแกรมที่ถูกต้องหลังการจัดเรียงรายการใหม่

ไฟล์ log ของ SoftAgent บันทึกที่ไหน?

Log บันทึกใน %ProgramData%\SoftAgent\logs\ (เช่น C:\ProgramData\SoftAgent\logs\) โดยชื่อไฟล์ในรูปแบบ softagent-date.log เมนูคลิกขวาที่ tray 'Open Log Directory' นำทางไปยังโฟลเดอร์นี้โดยตรง

พร้อมติดตั้ง SoftAgent หรือยัง?

ดาวน์โหลด SoftAgent ติดตั้งบน PC ที่ถูกควบคุมและตรวจสอบการตอบสนอง ping จากนั้นกำหนดค่าพอร์ตและ auto-start ก่อนผสานรวมกับ SoftControl เพื่อจัดการเครื่องที่ถูกควบคุมทั้งหมดในนิทรรศการของคุณจากส่วนกลาง