Skip to content

MonitorPro

Self-hosted workforce monitoring for Windows environments. Scheduled screenshots, screen recording, live view, and application activity logging, with every byte staying on a server you control.

Architecture

How MonitorPro is deployed.

MonitorPro architecture: a C#/.NET Windows agent with an offline queue sends captures over TLS and WebSocket to a Node.js Express and Socket.IO API with MySQL 8 storage, all running on the customer's own server, accessed through a React dashboard.EndpointsWindows agentC# / .NETOffline queuebuffers on dropTransportTLS + WebSocketpersistentYour serverNode.js APIExpress · Socket.IOMySQL 8captures · logsAccessReact dashboardlive view · history
Every component runs on infrastructure you own. Nothing routes through a third party.

What It Is

MonitorPro pairs a Windows agent with a web dashboard. The agent records what happens on managed endpoints and reports back to a server you own, so monitoring data never passes through a third party cloud. It was built for operations teams that need verifiable activity records: BPO floors, distributed development teams, and regulated environments where external monitoring services are not an option.

Capabilities

Scheduled Screenshots

Timezone-aware capture intervals with per-company defaults and full searchable history.

Screen Recording

FFmpeg-based capture with local, server, or hybrid retention, so you control where footage lives and how long it is kept.

Live View Streaming

Real-time screen streaming with adaptive quality. Works over RDP sessions, which most monitoring agents cannot capture.

Application & Window Activity Logging

Active window and application tracking, resolved to readable application names rather than raw process identifiers.

Browser Tab Tracking

Active browser tab capture through Windows UI Automation, so web activity is visible without a browser extension on every machine.

Idle Detection

A configurable inactivity threshold separates active time from idle time, so activity reports reflect real work.

Presence Signalling

Instant online and offline state for every endpoint over a persistent WebSocket connection.

Offline Queue With Sync

Captures buffer on the endpoint when connectivity drops and sync automatically when the connection returns. Nothing is lost to a dropped link.

Per-Company Enrollment Keys

Agent keys scope each installation to a single tenant, so one deployment can serve separate companies without data crossing between them.

Self-Hosted Data

Screenshots, recordings, and logs stay on infrastructure you control. No monitoring data passes through a cloud operated by us or anyone else.

Technical Specification

AgentC# / .NET, Windows
APINode.js, Express, Socket.IO
DashboardReact, Vite
DatabaseMySQL 8
DeploymentDocker behind nginx
TransportTLS, WebSocket

Deployment

1 · Provision

We stand up the API, dashboard, and MySQL on a server you own, running in Docker behind nginx with TLS terminated at the proxy.

2 · Enroll

Each company gets an enrollment key. The Windows agent is installed on endpoints and scoped to that tenant at install time.

3 · Configure

Capture intervals, retention policy, and idle thresholds are set per company to match your operating hours and storage budget.

4 · Hand over

Dashboard access, documented configuration, and the runbook for updates and restores. The deployment is yours to run.

See MonitorPro Running on Your Own Endpoints

We typically respond within 4–8 business hours.