Closed CyberMrProper closed 11 months ago
:white_check_mark: Pre-checks completed successfully.
/check
to run checks again.Hi @CyberMrProper we recently added a criteria that plugins must be dynamic platform based, rather than accessory type.
A brief look at the plugin and it seems like this really wouldn't suit a platform type right? I mean, there is no login into an external cloud provider, the device is found and discovered locally?
And I assume that most users would only have one of these devices anyway (rather than multiple)?
It is a local/device with its own IP, and the device is a pellet stove. For now this is a single device, not sure if this brand eventually will launch additional devices. So for now, keeping it as a single accessory makes sense to me.
With a config of this:
"accessories": [
{
"name": "Example",
"apiroute": "1.1.1.1",
"username": "b",
"temperatureColdTolerance": 0.5,
"temperatureHotTolerance": 0.5,
"minPowerLevel": 1,
"maxPowerLevel": 9,
"pullInterval": 10000,
"accessory": "EcoforestThermostat"
}
],
An unhandled error is thrown:
[14/12/2023, 19:38:09] [Example] Initializing EcoforestThermostat accessory...
[14/12/2023, 19:38:09] [Example] Example 1.1.1.1
[14/12/2023, 19:38:10] TypeError: The "path" argument must be of type string or an instance of Buffer or URL. Received undefined
at Object.readFile (node:fs:389:10)
at EcoforestThermostat.updateTemperatureFromFile (/usr/local/lib/node_modules/homebridge-ecoforest-thermostat/index.js:125:8)
at EcoforestThermostat.refreshEcoforestThermostatStatus (/usr/local/lib/node_modules/homebridge-ecoforest-thermostat/index.js:92:10)
at EcoforestThermostat.getServices (/usr/local/lib/node_modules/homebridge-ecoforest-thermostat/index.js:343:10)
at BridgeService.createHAPAccessory (/usr/local/lib/node_modules/homebridge/src/bridgeService.ts:462:41)
at /usr/local/lib/node_modules/homebridge/src/server.ts:382:44
at Array.forEach (<anonymous>)
at Server.loadAccessories (/usr/local/lib/node_modules/homebridge/src/server.ts:299:29)
at Server.start (/usr/local/lib/node_modules/homebridge/src/server.ts:179:12)
[14/12/2023, 19:38:10] Got SIGTERM, shutting down Homebridge...
[14/12/2023, 19:38:10] AssertionError [ERR_ASSERTION]: Cannot generate setupURI on an accessory that isn't published yet!
at Bridge.Accessory.setupURI (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/src/lib/Accessory.ts:994:11)
at Server.setServerStatus (/usr/local/lib/node_modules/homebridge/src/server.ts:155:45)
at Server.teardown (/usr/local/lib/node_modules/homebridge/src/server.ts:199:10)
at signalHandler (/usr/local/lib/node_modules/homebridge/src/cli.ts:93:12)
at process.emit (node:events:514:28)
at process.emit (/usr/local/lib/node_modules/homebridge/node_modules/source-map-support/source-map-support.js:516:21)
[14/12/2023, 19:38:15] [HB Supervisor] Homebridge Process Ended. Code: 143, Signal: null
[14/12/2023, 19:38:20] [HB Supervisor] Restarting Homebridge...
Please remember that the validation in the config schema file is not enforced on the user, so they can end up with a config like mine (i did this via the plugin settings UI) so all formations of a config need to be accounted for
You are right! thanks for pointing it out, adding the fix in v1.1.6
Nice, I have tried various weird combinations of other configs and I cannot get it to crash so thanks for fixing that one!
The other things I would maybe suggest, but not necessary for verification:
Congratulations! Your plugin has been verified.
You can now add one of the Verified by Homebridge badges to your plugin's README:
[![verified-by-homebridge](https://badgen.net/badge/homebridge/verified/purple)](https://github.com/homebridge/homebridge/wiki/Verified-Plugins)
[![verified-by-homebridge](https://img.shields.io/badge/homebridge-verified-blueviolet?color=%23491F59&style=for-the-badge&logoColor=%23FFFFFF&logo=homebridge)](https://github.com/homebridge/homebridge/wiki/Verified-Plugins)
Your plugin is now also eligible to display a :heart: Donate button on its tile in the Homebridge UI. See https://github.com/homebridge/homebridge/wiki/Donation-Links for instructions.
If for any reason in the future you can no longer maintain your plugin, please consider transferring it to our unmaintained plugins repo. We can take ownership until another willing developer comes along.
Don't forget to join the official Homebridge Discord server, where plugin developers can get tips and advice from other developers and the Homebridge project team in the #plugin-development channel!
Thank you for your contribution to the Homebridge Community. https://homebridge.io
Thank you!!
Icon added too :)
Link To GitHub Repo
https://github.com/CyberMrProper/homebridge-ecoforest-thermostat/
Link To NPM Package
https://www.npmjs.com/package/homebridge-ecoforest-thermostat
Plugin Icon (Optional)