Essentials/src
jkdevito 02216372bc feat(mobile-control): track and validate UI client app versions
Extend the /system/clientJoined handler to accept an optional
`appVersion` field reported by connecting UI clients (e.g. the
React app's build-time APP_VERSION), so Essentials can record and
validate what's actually running against the configured
versions.touchpanelWrapperApp version.

- Add ConnectedClientVersionInfo to capture clientId, roomKey,
  touchpanelKey, reported/expected app version, and last-seen time.
- Add MobileControlSystemController.TrackClientAppVersion(), storing
  results in a new thread-safe ConnectedClientVersions dictionary and
  logging a warning on version mismatch.
- Expose ConnectedClientVersions as a public read-only property for
  diagnostics.
- Surface reported vs. expected versions per client in the
  `mobileinfo` console command output.

No wire protocol changes required; content is passed as-is over the
existing clientJoined message.
2026-07-07 17:41:04 -05:00
..
PepperDash.Core fix: add port forward timeout handling in DebugSessionRequestHandler 2026-06-12 15:08:34 -06:00
PepperDash.Essentials feat: mark deprecated classes and methods for future removal 2026-05-08 13:08:58 -06:00
PepperDash.Essentials.Core fix: match main assembly by PackageId metadata instead of AssemblyName 2026-07-07 17:20:22 -05:00
PepperDash.Essentials.Devices.Common fix: update routing logic and enhance logging in Extensions and MockVC classes 2026-05-21 16:21:03 -06:00
PepperDash.Essentials.MobileControl feat(mobile-control): track and validate UI client app versions 2026-07-07 17:41:04 -05:00
PepperDash.Essentials.MobileControl.Messengers fix: add csIp handling and update debug session URL in DebugSessionRequestHandler 2026-06-12 14:29:49 -06:00
Directory.Build.props fix: prefer embedded PackageId assembly metadata in packageManifest API 2026-07-07 16:22:23 -05:00
Directory.Build.targets build: delete all local build clzs on build 2025-09-26 21:17:28 -05:00