हर computer को register किया जाता है
हर computer को एक अलग System Code, जैसे SYS-001, दिया जाता है। Registration के बाद उस system के लिए एक अलग API token बनता है। MySQL में token का plain text नहीं, केवल उसका सुरक्षित hash रखा जाता है।
यह पेज बताता है कि अलग-अलग Windows computers का चालू/बंद समय सुरक्षित तरीके से central MySQL database तक कैसे पहुँचता है।
हर computer को एक अलग System Code, जैसे SYS-001, दिया जाता है। Registration के बाद उस system के लिए एक अलग API token बनता है। MySQL में token का plain text नहीं, केवल उसका सुरक्षित hash रखा जाता है।
Windows start होते ही Third Eye Agent background service के रूप में चलता है। यह user login का इंतज़ार नहीं करता और कोई visible window नहीं खोलता।
Agent एक नया session_uuid बनाता है और AGENT_STARTED तथा SYSTEM_START events तैयार करता है। इस समय computer name और Windows version जैसी basic जानकारी भी भेजने के लिए रखी जाती है।
हर event पहले C:\ProgramData\UptimeAgent\data\uptime_agent.db में save होता है। इसलिए internet या server बंद होने पर भी startup, heartbeat और shutdown का data खोता नहीं है। SQLite केवल temporary offline queue है; official database नहीं है।
Default रूप से हर 60 seconds में HEARTBEAT event बनता है। इससे central server को पता चलता है कि computer अभी चल रहा था और पिछली valid activity किस समय हुई।
Agent केवल Wi-Fi या LAN connected देखकर internet available नहीं मानता। वह PHP API तक event sync करके वास्तविक connectivity check करता है। Connection बंद हो तो NETWORK_DISCONNECTED, और वापस आने पर NETWORK_CONNECTED event queue में जुड़ता है।
जब API reachable हो, agent pending SQLite events को अधिकतम 50 events के batch में sync_events.php को भेजता है। API token request को authenticate करता है और PHP API event को validate करके MySQL में save करती है। सफल sync के बाद ही local event का status synced होता है।
हर event का अलग event_uuid होता है, इसलिए retry होने पर MySQL में duplicate row नहीं बनती। हर event में sequence number, previous hash और HMAC-SHA256 hash होता है। Local SQLite में पुराना event edit करने पर hash chain नहीं मिलेगी और agent आगे चलने से रुक जाएगा।
Windows service सामान्य रूप से stop होने पर SYSTEM_SHUTDOWN event local queue में save करती है। API तक पहुँच होने पर उसी समय sync होता है; नहीं होने पर अगली startup के बाद sync होगा। Central session का end time और total running seconds update हो जाते हैं।
अगर computer अचानक बंद हो जाए तो shutdown event नहीं बनता। अगली बार SYSTEM_START आने पर server पुरानी running session को unexpected_shutdown के रूप में close करता है। End time के लिए last heartbeat को प्राथमिकता मिलती है।
हर नए computer के लिए अलग System ID और API Token बनाना जरूरी है। उदाहरण के लिए पहला computer SYS-0001, दूसरा SYS-0002 और तीसरा SYS-0003 होगा।
SYS-0002।api/register_agent.php endpoint से उस System ID के लिए registration करें। सफल registration पर unique API Token मिलता है; इसे सुरक्षित रखें क्योंकि token plain text में दोबारा नहीं दिखता।UptimeAgentSetup-1.1.0.exe को Run as administrator चलाएँ।http://localhost/allerp/widget/track/api (local server के लिए) या live server का URL भरें। फिर System ID और उसी system का API Token भरें।systems table में last_seen update होगा, systemdata में first-time hardware details आएँगी और uptime_sessions में नई session दिखेगी।