QZ TRAY LIBRARY PATCH NOTES
===========================
Version: 2.2.4 (patched for custom QZ Tray with pairing key authentication)
Date: October 2, 2025

CHANGES MADE:
-------------

1. Line ~387: Commented out certificate sending
   - Original: _qz.websocket.connection.sendData({ certificate: cert, promise: openPromise });
   - Patched: openPromise.resolve(); (resolves immediately without sending certificate)
   
2. Line ~391-403: Bypassed certificate retrieval
   - Original: Called _qz.security.callCert() to get certificate from user
   - Patched: Directly calls sendCert(null) without trying to get certificate
   
3. Comments added to indicate patches

REASON FOR PATCHES:
------------------
The custom QZ Tray server has certificate validation COMPLETELY DISABLED.
It uses ONLY pairing key (HMAC) authentication instead of certificates.
The original qz-tray.js library expects certificate-based authentication and
fails when the server doesn't respond to certificate requests.

COMPATIBILITY:
-------------
- Works with custom QZ Tray server (forked version with certificate validation disabled)
- NOT compatible with standard QZ Tray servers
- Connects to both ws://localhost:8181 and wss://localhost:8182
- Authentication handled by server-side pairing keys

BACKUP:
-------
Original unpatched version saved as: qz-tray.js.backup
