Commit Graph

8 Commits

Author SHA1 Message Date
d42dc562a3 Add RDP user consent popup before screen sharing
When rdp_start arrives, agent first spawns a WPF consent dialog in the
user session (via schtasks). User has 30s to accept or deny. On deny,
agent sends rdp_denied to browser which shows "Zugriff abgelehnt".
On accept, screen capture starts as before.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-11 10:19:43 +02:00
058f968af1 Add Remote Desktop screen selector + new-tab button (v2.2.0)
- CaptureModeRunner: screen index param (0=all, 1-N=specific monitor)
- RtcService: reads screen from rdp_start JSON, passes to capture helper
- Program.cs: parses optional screen index arg for --rdp-capture
- RemoteDesktopPanel: screen dropdown (Alle/1-4), new-tab button
- RdpPage: fullscreen standalone page at /rdp/:agentId
- AgentDetailPage: removed dead _RemoteDesktopOld_unused code

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-11 10:15:00 +02:00
d3bc68d6a5 Fix SpawnHelper: rename pipeName param to portStr, fix taskName
pipeName[^8..] crashed for 5-char port strings (e.g. "54321").
Now uses port number directly as task name suffix.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-11 10:05:12 +02:00
0b76ef3bfd Fix pipe ACL: switch from named pipe to TCP loopback
Named pipe created by SYSTEM service denied connection from user process.
TCP loopback socket (127.0.0.1:random) has no cross-session ACL issues.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-11 09:56:49 +02:00
45f4c7846e Fix Session 0 issue: spawn screen capture helper in user session
- CaptureModeRunner: captures desktop in user session via schtasks,
  sends JPEG frames over named pipe to service
- RtcService: creates named pipe server, spawns helper via schtasks
  (same pattern as NotificationService), reads frames and forwards to WS
- Program.cs: added --rdp-capture <pipeName> mode
- Multi-monitor: captures all screens combined

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-11 09:49:26 +02:00
0a8b186585 Add Remote Desktop (JPEG-over-WebSocket), Agent v2.2.0
- RtcService.cs: Screen capture via Graphics.CopyFromScreen, ~8fps JPEG stream over WebSocket
- shellServer.js: Separate rdp-agent/rdp types with independent socket maps (no shell collision)
- AgentDetailPage: WebSocket-based RemoteDesktop component replaces WebRTC attempt
- setup.iss: Fixed filename to include 'v' prefix (IT-Nexus-Agent-Setup-v2.2.0.exe)
- Removed SIPSorcery dependencies, added System.Drawing.Common

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-10 14:13:18 +02:00
c23091fa6e Add: Agent v2.1.2, WebSocket Live Shell, WebRTC Remote Desktop (Beta), Announcement Push
- Agent v2.1.2: WebSocket ShellService, ACK nach WS-Ankündigungen, shown_announcements Fix
- Backend: shellServer.js mit WebSocket-Server (Shell + Announcement Push + RTC Signaling)
- Backend: patch.controller.js Fix (command_id=0 Falsy-Bug beim Auto-Update)
- Frontend: Remote Desktop Tab (WebRTC Beta) in AgentDetailPage für super_admin/admin
- Frontend: PatchManagementPage auf v2.1.2 aktualisiert
- WPF Notification: AllowsTransparency=False + kein DropShadowEffect (Dispatcher-Crash Fix)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-10 13:31:11 +02:00
8023765e6c Initial commit: IT Nexus Web-App 2026-06-01 20:49:07 +02:00