{"_id":"@ecopoesis/homebridge-unifi-ap-rgb","_rev":"4-d96459f9bf0817ae26435c10b6d8d8fc","name":"@ecopoesis/homebridge-unifi-ap-rgb","dist-tags":{"latest":"2.0.0"},"versions":{"2.0.0-beta":{"name":"@ecopoesis/homebridge-unifi-ap-rgb","version":"2.0.0-beta","keywords":["homebridge-plugin","unifi","led","udm","wap"],"author":{"name":"Mike Roberts"},"license":"Apache-2.0","_id":"@ecopoesis/homebridge-unifi-ap-rgb@2.0.0-beta","maintainers":[{"name":"ecopoesis","email":"miker@miker.org"}],"homepage":"https://github.com/ecopoesis/homebridge-unifi-ap-light#readme","bugs":{"url":"https://github.com/ecopoesis/homebridge-unifi-ap-light/issues"},"dist":{"shasum":"a113aa966b75b46427a963fb691046a7ed822fc6","tarball":"https://registry.npmjs.org/@ecopoesis/homebridge-unifi-ap-rgb/-/homebridge-unifi-ap-rgb-2.0.0-beta.tgz","fileCount":45,"integrity":"sha512-cfwwqrmLf1aOd//F9mQKxzF5I3siqXZWXr9aG/NSqOg6ndhJ6SsbhfU6zETTGt3pORH5BNntfNnEpHYKobHzeg==","signatures":[{"sig":"MEUCIQDaYPzTkrA1bJKUoVknsVjg38vtkZxcWGP/rmW+odaSlAIgfJqJ6NsJ4h52cioSX8b0B5xVTrx0mzr0VtveNIxnbfw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":94238},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.15.0","homebridge":">=1.5.0"},"gitHead":"d2568ec90f4d1e009b8be9a4e14d06f3e28ea944","scripts":{"lint":"eslint src/**.ts --max-warnings=0","build":"rimraf ./dist && tsc","watch":"npm run build && npm link && nodemon","lint:fix":"eslint src/**.ts --max-warnings=0 --fix","prepublishOnly":"npm run lint && npm run build"},"_npmUser":{"name":"ecopoesis","email":"miker@miker.org"},"repository":{"url":"git+https://github.com/ecopoesis/homebridge-unifi-ap-light.git","type":"git"},"_npmVersion":"10.2.4","description":"Control the RGB LEDs on your UniFi APs","directories":{},"displayName":"UniFi Access Point RGB","_nodeVersion":"20.11.0","dependencies":{"axios":"^1.4.0","cookie":"^1.0.2","jsonwebtoken":"^9.0.0","@types/cookie":"^0.5.1"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.0.1","rimraf":"^3.0.2","nodemon":"^3.1.10","ts-node":"^10.3.0","homebridge":"^1.5.0","typescript":"^5.0.0","@types/node":"^18.0.0","@typescript-eslint/parser":"^5.0.0","@typescript-eslint/eslint-plugin":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/homebridge-unifi-ap-rgb_2.0.0-beta_1767289574224_0.7264135768391351","host":"s3://npm-registry-packages-npm-production"}},"2.0.0-beta1":{"name":"@ecopoesis/homebridge-unifi-ap-rgb","version":"2.0.0-beta1","keywords":["homebridge-plugin","unifi","led","udm","wap"],"author":{"name":"Mike Roberts"},"license":"Apache-2.0","_id":"@ecopoesis/homebridge-unifi-ap-rgb@2.0.0-beta1","maintainers":[{"name":"ecopoesis","email":"miker@miker.org"}],"homepage":"https://github.com/ecopoesis/homebridge-unifi-ap-light#readme","bugs":{"url":"https://github.com/ecopoesis/homebridge-unifi-ap-light/issues"},"dist":{"shasum":"8853f3c0d3f7669bbb02ee7bf3564a27c86533a0","tarball":"https://registry.npmjs.org/@ecopoesis/homebridge-unifi-ap-rgb/-/homebridge-unifi-ap-rgb-2.0.0-beta1.tgz","fileCount":45,"integrity":"sha512-KgPLkRjUA4UzRsJ1DlQD3YAIVKuUmMDfDhY3AYJxqI6HiuFnz+V+UZJc1ZTg3XiOeErd4/b3US5WqCVcjTZsfQ==","signatures":[{"sig":"MEYCIQCCB+OsZ4kMG0K8qTYjO0kwuUhDL/qwcw2sx+mGsb++1QIhALmFAhkocZFTPztOvwLk6ShjpTslkOjEqfGijSU5g662","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":94201},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.15.0","homebridge":">=1.5.0"},"gitHead":"d2568ec90f4d1e009b8be9a4e14d06f3e28ea944","scripts":{"lint":"eslint src/**.ts --max-warnings=0","build":"rimraf ./dist && tsc","watch":"npm run build && npm link && nodemon","lint:fix":"eslint src/**.ts --max-warnings=0 --fix","prepublishOnly":"npm run lint && npm run build"},"_npmUser":{"name":"ecopoesis","email":"miker@miker.org"},"repository":{"url":"git+https://github.com/ecopoesis/homebridge-unifi-ap-light.git","type":"git"},"_npmVersion":"10.2.4","description":"Control the RGB LEDs on your UniFi APs","directories":{},"displayName":"UniFi Access Point RGB","_nodeVersion":"20.11.0","dependencies":{"axios":"^1.4.0","cookie":"^1.0.2","jsonwebtoken":"^9.0.0","@types/cookie":"^0.5.1"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.0.1","rimraf":"^3.0.2","nodemon":"^3.1.10","ts-node":"^10.3.0","homebridge":"^1.5.0","typescript":"^5.0.0","@types/node":"^18.0.0","@typescript-eslint/parser":"^5.0.0","@typescript-eslint/eslint-plugin":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/homebridge-unifi-ap-rgb_2.0.0-beta1_1767290879412_0.8816051594583361","host":"s3://npm-registry-packages-npm-production"}},"2.0.0-beta2":{"name":"@ecopoesis/homebridge-unifi-ap-rgb","version":"2.0.0-beta2","keywords":["homebridge-plugin","unifi","led","udm","wap"],"author":{"name":"Mike Roberts"},"license":"Apache-2.0","_id":"@ecopoesis/homebridge-unifi-ap-rgb@2.0.0-beta2","maintainers":[{"name":"ecopoesis","email":"miker@miker.org"}],"homepage":"https://github.com/ecopoesis/homebridge-unifi-ap-light#readme","bugs":{"url":"https://github.com/ecopoesis/homebridge-unifi-ap-light/issues"},"dist":{"shasum":"da31c1c65b8b5eac850d5ed4ad49057c00b6e700","tarball":"https://registry.npmjs.org/@ecopoesis/homebridge-unifi-ap-rgb/-/homebridge-unifi-ap-rgb-2.0.0-beta2.tgz","fileCount":45,"integrity":"sha512-RKEQpDYZTomrxC11u4QL6VpckTXRvsZoLUO98pvZE99wMFeZe006B7zPEJSJOzwoH19d4DGR6qXbXd6aFe3SxA==","signatures":[{"sig":"MEUCIQC48j8Em+35ukYEBsGNYPTgdZYkd5EKJK+qu1aNJoP4zQIgO20gBmKAB6UoL2Mysz5MMSGOU6oGdq1nuwclaFEQuFo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":94201},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.15.0","homebridge":">=1.5.0"},"gitHead":"d2568ec90f4d1e009b8be9a4e14d06f3e28ea944","scripts":{"lint":"eslint src/**.ts --max-warnings=0","build":"rimraf ./dist && tsc","watch":"npm run build && npm link && nodemon","lint:fix":"eslint src/**.ts --max-warnings=0 --fix","prepublishOnly":"npm run lint && npm run build"},"_npmUser":{"name":"ecopoesis","email":"miker@miker.org"},"repository":{"url":"git+https://github.com/ecopoesis/homebridge-unifi-ap-light.git","type":"git"},"_npmVersion":"10.2.4","description":"Control the RGB LEDs on your UniFi APs","directories":{},"displayName":"UniFi Access Point RGB","_nodeVersion":"20.11.0","dependencies":{"axios":"^1.4.0","cookie":"^1.0.2","jsonwebtoken":"^9.0.0","@types/cookie":"^0.5.1"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.0.1","rimraf":"^3.0.2","nodemon":"^3.1.10","ts-node":"^10.3.0","homebridge":"^1.5.0","typescript":"^5.0.0","@types/node":"^18.0.0","@typescript-eslint/parser":"^5.0.0","@typescript-eslint/eslint-plugin":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/homebridge-unifi-ap-rgb_2.0.0-beta2_1767290937199_0.218901266489554","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"displayName":"UniFi Access Point RGB","name":"@ecopoesis/homebridge-unifi-ap-rgb","version":"2.0.0","description":"Control the RGB LEDs on your UniFi APs","license":"Apache-2.0","type":"module","repository":{"type":"git","url":"git+https://github.com/ecopoesis/homebridge-unifi-ap-rgb.git"},"bugs":{"url":"https://github.com/ecopoesis/homebridge-unifi-ap-rgb/issues"},"homepage":"https://github.com/ecopoesis/homebridge-unifi-ap-rgb#readme","engines":{"node":">=18.15.0","homebridge":">=1.5.0"},"main":"dist/index.js","scripts":{"lint":"eslint src/**.ts --max-warnings=0","lint:fix":"eslint src/**.ts --max-warnings=0 --fix","watch":"npm run build && npm link && nodemon","build":"rimraf ./dist && tsc","prepublishOnly":"npm run lint && npm run build"},"keywords":["homebridge-plugin","unifi","led","udm","wap","rgb"],"dependencies":{"@types/cookie":"^0.5.1","axios":"^1.4.0","cookie":"^1.0.2","jsonwebtoken":"^9.0.0"},"devDependencies":{"@types/node":"^18.0.0","@typescript-eslint/eslint-plugin":"^5.0.0","@typescript-eslint/parser":"^5.0.0","eslint":"^8.0.1","homebridge":"^1.5.0","nodemon":"^3.1.10","rimraf":"^3.0.2","ts-node":"^10.3.0","typescript":"^5.0.0"},"types":"./dist/index.d.ts","author":{"name":"Mike Roberts"},"_id":"@ecopoesis/homebridge-unifi-ap-rgb@2.0.0","gitHead":"02ad07702f2fca89db247bd390786dcf11e1d17b","_nodeVersion":"20.11.0","_npmVersion":"10.2.4","dist":{"integrity":"sha512-Ju9fmRkqs/Uai1uscOEciIRAZT4ltuxJqMMcjxsgqVBIubEzv+I6IQwxLF/jlqBOT2pSMedbhC5sXIE//OqTkA==","shasum":"ff2585fce754a377ad39a617c229bf70eb6ba398","tarball":"https://registry.npmjs.org/@ecopoesis/homebridge-unifi-ap-rgb/-/homebridge-unifi-ap-rgb-2.0.0.tgz","fileCount":45,"unpackedSize":94033,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDL+zSNEWJlc87onmVRLaaX19HwxxFPjj4LOtMmPrqmBQIgMhF8AKk4HoPBU45XcnUo6clPEJbKfOPGGz8XOM1KwQA="}]},"_npmUser":{"name":"ecopoesis","email":"miker@miker.org"},"directories":{},"maintainers":[{"name":"ecopoesis","email":"miker@miker.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/homebridge-unifi-ap-rgb_2.0.0_1767545526820_0.9270383184272877"},"_hasShrinkwrap":false}},"time":{"created":"2026-01-01T17:46:14.113Z","modified":"2026-01-04T16:52:07.166Z","2.0.0-beta":"2026-01-01T17:46:14.403Z","2.0.0-beta1":"2026-01-01T18:07:59.557Z","2.0.0-beta2":"2026-01-01T18:08:57.353Z","2.0.0":"2026-01-04T16:52:06.969Z"},"bugs":{"url":"https://github.com/ecopoesis/homebridge-unifi-ap-rgb/issues"},"author":{"name":"Mike Roberts"},"license":"Apache-2.0","homepage":"https://github.com/ecopoesis/homebridge-unifi-ap-rgb#readme","keywords":["homebridge-plugin","unifi","led","udm","wap","rgb"],"repository":{"type":"git","url":"git+https://github.com/ecopoesis/homebridge-unifi-ap-rgb.git"},"description":"Control the RGB LEDs on your UniFi APs","maintainers":[{"name":"ecopoesis","email":"miker@miker.org"}],"readme":"# homebridge-unifi-ap-rgb\nControl the lights on your UniFi Access Point(s) with HomeKit.\n\n## Features\n- **Multi-Site Support:** Supports multiple UniFi sites (tenants) in a single Homebridge config.\n- **Dynamic Discovery:** Automatically discovers UniFi APs across one or more specified sites.\n- **Real-time Updates:** Changes made in HomeKit instantly reflect on your access points.\n- **Advanced Filtering:** Include or exclude specific APs by ID.\n- **Compatibility:** Supports self-hosted and Ubiquiti-hosted (e.g. UDM) UniFi API structures.\n- **Session Management:** Robust handling of cookie- and token-based API authentication.\n- **RGB support:** Auto-detects and supports APs with RGB lights.\n\n## Installation\nSearch for `@ecopoesis/homebridge-unifi-ap-rgb` in the Homebridge UI.\n\n## Usage\n\n1. Create a dedicated UniFi OS local user (not your UI account).\n2. Note the username and password.\n3. Add the following to your Homebridge `config.json`:\n\n```json\n{\n  \"name\": \"UniFi Access Point RGB\",\n  \"platform\": \"UnifiAPLight\",\n  \"host\": \"<hostname>:<port>\",\n  \"username\": \"<username>\",\n  \"password\": \"<password>\"\n}\n```\n\n- For self-hosted controllers, include the port (e.g., `\"192.168.1.1:8443\"`).\n- For UniFi devices like UDM or UDR, omit the port (e.g., `\"192.168.1.1\"`).\n\n## Optional Configuration\n\n### Specify UniFi Site(s)\n\n```json\n{\n  \"sites\": [\"Default\", \"mySite\"]\n}\n```\n\n- You may specify site `desc` values (friendly names like `\"Default\"`, `\"mySite\"`) or internal names (`\"default\"`, `\"p2yvd0iv\"`).\n- The plugin automatically resolves the proper internal identifiers using the UniFi API.\n\n### Include / Exclude Specific Devices\n\n```json\n{\n  \"includeIds\": [\"<device-id-1>\", \"<device-id-2>\"],\n  \"excludeIds\": [\"<device-id-3>\"]\n}\n```\n\n- `includeIds`: Only devices with these IDs will be shown in HomeKit.\n- `excludeIds`: Devices with these IDs will always be excluded, even if included elsewhere.\n\n## Debugging Tips\n\n- Run Homebridge in debug mode (`homebridge -D`) to view detailed logs.\n- On startup, the plugin will list all detected sites:\n  ```\n  [UniFi Access Point RGB] Available sites loaded: Default, default, mySite, p2yvd0iv\n  ```\n- If a site is not recognized, you'll see:\n  ```\n  Site \"xyz\" is not recognized by the controller (api.err.NoSiteContext).\n  ```\n\n## License\nThis project is licensed under the Apache 2.0 License — see the LICENSE file for details.\n","readmeFilename":"README.md"}