@homebridge-plugins/homebridge-govee 11.32.2-beta.18 → 11.32.2-beta.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -37,6 +37,8 @@ All notable changes to `@homebridge-plugins/homebridge-govee` will be documented
37
37
  - refactor: move the settings parsing into its own file, away from the code that talks to devices
38
38
  - refactor: move the work of describing a device to its handler into its own file
39
39
  - refactor: move the rules for combining govee's device lists, and for letting go of a device that has gone, into their own file with tests
40
+ - test: check what the plugin sends over aws, the local network and the public api, none of which was covered before
41
+ - feat: say when govee has not listed a capability the plugin is about to use, since the request then succeeds and the device does nothing
40
42
 
41
43
  ## v11.32.1 (2026-08-02)
42
44
 
@@ -3,6 +3,7 @@ import mqtt from 'mqtt'
3
3
 
4
4
  import { k2rgb } from '../utils/colour.js'
5
5
  import { describeControlFailure, parseError } from '../utils/functions.js'
6
+ import { isFirstReport } from '../utils/report-unknown.js'
6
7
 
7
8
  const BASE_URL = 'https://openapi.api.govee.com'
8
9
 
@@ -381,6 +382,23 @@ export default class {
381
382
  if (capability?.type && capability?.instance) {
382
383
  return capability
383
384
  }
385
+
386
+ // The device never listed this one. Govee will still accept the request and
387
+ // answer as though it worked, then do nothing - so without saying something
388
+ // here the control simply appears broken with no clue why. Said once per
389
+ // device and capability, then dropped to debug
390
+ const fingerprint = `openapi-unlisted|${accessory.context.gvDeviceId}|${instance}`
391
+ const message = `govee did not list [${instance}] for this device, so that command may be ignored - please report this line if the control does not work: ${JSON.stringify({
392
+ model: accessory.context.gvModel,
393
+ instance,
394
+ listed: Object.keys(lookup),
395
+ })}`
396
+ if (isFirstReport(fingerprint)) {
397
+ accessory.logDebugWarn(message)
398
+ } else {
399
+ accessory.logDebug(message)
400
+ }
401
+
384
402
  return {
385
403
  type: fallbackType,
386
404
  instance,
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@homebridge-plugins/homebridge-govee",
3
3
  "alias": "Govee",
4
4
  "type": "module",
5
- "version": "11.32.2-beta.18",
5
+ "version": "11.32.2-beta.19",
6
6
  "description": "Homebridge plugin to integrate Govee devices into HomeKit.",
7
7
  "author": {
8
8
  "name": "bwp91",