Files
BizGaze_Remote/desktop
Sravan 21ae3e1aa5 feat(desktop): Phase D — inline-reply notifications (Windows toast reply box)
Reply to a chat straight from the OS notification, no app switch:
- node-notifier (bundles SnoreToast) renders a native Windows toast with a reply box —
  Electron's own Notification can't do Windows inline reply.
- main.js reply-notification handler resolves {text}|{open}|null; preload exposes replyNotify.
- home.html notify() routes chat toasts through it on desktop: a typed reply -> sendReplyTo()
  POSTs to /api/messages without opening the app; a click opens the chat. Web/PWA path unchanged.
- Works only in the installed app (needs the installer's AppUserModelID). desktop 0.1.2, build batch21.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-01 22:36:02 +05:30
..

Biz Connect — Desktop client

Electron shell that loads the live Connect web UI and adds native screen capture. See the overall plan in ../CLIENTS.md.

Run (dev)

npm install
SERVER_URL=http://localhost:8090 npm start     # default is https://remote.bizgaze.com

Build installers

npm run dist        # electron-builder → Win NSIS / Mac dmg / Linux AppImage

Signed, trusted installers need certificates:

  • Windows: an EV (or OV) code-signing certificate.
  • macOS: Apple Developer ID cert + notarization (CSC_LINK, APPLE_ID, APPLE_APP_SPECIFIC_PASSWORD).

Notes

  • The window loads ${SERVER_URL}/home; relative /api and /ws URLs work because the origin is the server itself — no web-code changes.
  • setDisplayMediaRequestHandler in main.js is what makes "Share Screen" work in Electron; it currently defaults to the primary display. Swap in a source-picker for production.
  • The session is persisted (persist:bizconnect) so login survives restarts.
  • window.__NATIVE__ === 'desktop' is exposed for the web UI to feature-detect.