# QZ Tray connector (`qz-tray.js`) - **Version:** 2.2.4 - **License:** LGPL-2.1-only (see the header of `qz-tray.js`) - **Source:** copied unmodified from `quality_app-v2/app/static/js/qz-tray.js` (Gitea: `ske087/quality_app-v2`). - **Local patch:** it **skips the certificate exchange** and connects to the custom QZ Tray service that authenticates with a **pairing key** (`PATCHED` markers around the original `_qz.websocket.connection.sendData({ certificate … })`). Because the file is a modified LGPL-2.1 library, keep it under `static/js/vendor/` and ship this notice plus the license header with it. If you later use stock QZ Tray (certificate + signature), set `window.CANTARIRE_QZ = { certificateUrl, signatureUrl }` before loading `qz-print.js`; `qz-print.js` wires `qz.security.setCertificatePromise` and `setSignaturePromise` when those URLs are provided.