@switchbot/homebridge-switchbot 4.3.2-beta.8 → 5.0.0-beta.0
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/.github/copilot-instructions.md +328 -0
- package/.github/workflows/beta-release.yml +8 -12
- package/.github/workflows/release.yml +57 -21
- package/README.md +13 -10
- package/config.schema.json +1 -12
- package/coverage/base.css +224 -0
- package/coverage/block-navigation.js +87 -0
- package/coverage/clover.xml +15847 -0
- package/coverage/coverage-final.json +42 -0
- package/coverage/docs/assets/dmt/dmt-component-data.js.html +85 -0
- package/coverage/docs/assets/dmt/dmt-components.js.html +286 -0
- package/coverage/docs/assets/dmt/index.html +131 -0
- package/coverage/docs/assets/hierarchy.js.html +85 -0
- package/coverage/docs/assets/icons.js.html +136 -0
- package/coverage/docs/assets/index.html +146 -0
- package/coverage/docs/assets/main.js.html +265 -0
- package/coverage/favicon.png +0 -0
- package/coverage/index.html +191 -0
- package/coverage/prettify.css +1 -0
- package/coverage/prettify.js +2 -0
- package/coverage/sort-arrow-sprite.png +0 -0
- package/coverage/sorter.js +196 -0
- package/coverage/src/device/blindtilt.ts.html +3238 -0
- package/coverage/src/device/bot.ts.html +2803 -0
- package/coverage/src/device/ceilinglight.ts.html +2338 -0
- package/coverage/src/device/colorbulb.ts.html +2824 -0
- package/coverage/src/device/contact.ts.html +1465 -0
- package/coverage/src/device/curtain.ts.html +2869 -0
- package/coverage/src/device/device.ts.html +2500 -0
- package/coverage/src/device/fan.ts.html +2242 -0
- package/coverage/src/device/hub.ts.html +1408 -0
- package/coverage/src/device/humidifier.ts.html +2116 -0
- package/coverage/src/device/index.html +416 -0
- package/coverage/src/device/iosensor.ts.html +1375 -0
- package/coverage/src/device/lightstrip.ts.html +2617 -0
- package/coverage/src/device/lock.ts.html +1963 -0
- package/coverage/src/device/meter.ts.html +1372 -0
- package/coverage/src/device/meterplus.ts.html +1384 -0
- package/coverage/src/device/meterpro.ts.html +1618 -0
- package/coverage/src/device/motion.ts.html +1264 -0
- package/coverage/src/device/plug.ts.html +1372 -0
- package/coverage/src/device/relayswitch.ts.html +2284 -0
- package/coverage/src/device/robotvacuumcleaner.ts.html +1810 -0
- package/coverage/src/device/waterdetector.ts.html +1294 -0
- package/coverage/src/homebridge-ui/index.html +116 -0
- package/coverage/src/homebridge-ui/server.ts.html +229 -0
- package/coverage/src/index.html +161 -0
- package/coverage/src/index.ts.html +124 -0
- package/coverage/src/irdevice/airconditioner.ts.html +1687 -0
- package/coverage/src/irdevice/airpurifier.ts.html +844 -0
- package/coverage/src/irdevice/camera.ts.html +475 -0
- package/coverage/src/irdevice/fan.ts.html +766 -0
- package/coverage/src/irdevice/index.html +251 -0
- package/coverage/src/irdevice/irdevice.ts.html +1117 -0
- package/coverage/src/irdevice/light.ts.html +826 -0
- package/coverage/src/irdevice/other.ts.html +2458 -0
- package/coverage/src/irdevice/tv.ts.html +1222 -0
- package/coverage/src/irdevice/vacuumcleaner.ts.html +466 -0
- package/coverage/src/irdevice/waterheater.ts.html +469 -0
- package/coverage/src/platform.ts.html +8776 -0
- package/coverage/src/settings.ts.html +934 -0
- package/coverage/src/utils.ts.html +2092 -0
- package/dist/{device → devices-hap}/airpurifier.d.ts +3 -3
- package/dist/devices-hap/airpurifier.d.ts.map +1 -0
- package/dist/devices-hap/airpurifier.js.map +1 -0
- package/dist/{device → devices-hap}/blindtilt.d.ts +3 -3
- package/dist/devices-hap/blindtilt.d.ts.map +1 -0
- package/dist/{device → devices-hap}/blindtilt.js +6 -1
- package/dist/devices-hap/blindtilt.js.map +1 -0
- package/dist/{device → devices-hap}/bot.d.ts +3 -3
- package/dist/devices-hap/bot.d.ts.map +1 -0
- package/dist/devices-hap/bot.js.map +1 -0
- package/dist/{device → devices-hap}/ceilinglight.d.ts +3 -3
- package/dist/devices-hap/ceilinglight.d.ts.map +1 -0
- package/dist/devices-hap/ceilinglight.js.map +1 -0
- package/dist/{device → devices-hap}/colorbulb.d.ts +3 -3
- package/dist/devices-hap/colorbulb.d.ts.map +1 -0
- package/dist/devices-hap/colorbulb.js.map +1 -0
- package/dist/{device → devices-hap}/contact.d.ts +3 -3
- package/dist/devices-hap/contact.d.ts.map +1 -0
- package/dist/devices-hap/contact.js.map +1 -0
- package/dist/{device → devices-hap}/curtain.d.ts +3 -3
- package/dist/devices-hap/curtain.d.ts.map +1 -0
- package/dist/{device → devices-hap}/curtain.js +32 -8
- package/dist/devices-hap/curtain.js.map +1 -0
- package/dist/{device → devices-hap}/device.d.ts +3 -3
- package/dist/devices-hap/device.d.ts.map +1 -0
- package/dist/{device → devices-hap}/device.js +10 -4
- package/dist/devices-hap/device.js.map +1 -0
- package/dist/{device → devices-hap}/fan.d.ts +3 -3
- package/dist/devices-hap/fan.d.ts.map +1 -0
- package/dist/devices-hap/fan.js.map +1 -0
- package/dist/{device → devices-hap}/hub.d.ts +5 -5
- package/dist/devices-hap/hub.d.ts.map +1 -0
- package/dist/{device → devices-hap}/hub.js +2 -1
- package/dist/devices-hap/hub.js.map +1 -0
- package/dist/{device → devices-hap}/humidifier.d.ts +3 -3
- package/dist/devices-hap/humidifier.d.ts.map +1 -0
- package/dist/devices-hap/humidifier.js.map +1 -0
- package/dist/{device → devices-hap}/iosensor.d.ts +3 -3
- package/dist/devices-hap/iosensor.d.ts.map +1 -0
- package/dist/devices-hap/iosensor.js.map +1 -0
- package/dist/{device → devices-hap}/lightstrip.d.ts +3 -3
- package/dist/devices-hap/lightstrip.d.ts.map +1 -0
- package/dist/devices-hap/lightstrip.js.map +1 -0
- package/dist/{device → devices-hap}/lock.d.ts +3 -3
- package/dist/devices-hap/lock.d.ts.map +1 -0
- package/dist/devices-hap/lock.js.map +1 -0
- package/dist/{device → devices-hap}/meter.d.ts +3 -3
- package/dist/devices-hap/meter.d.ts.map +1 -0
- package/dist/devices-hap/meter.js.map +1 -0
- package/dist/{device → devices-hap}/meterplus.d.ts +3 -3
- package/dist/devices-hap/meterplus.d.ts.map +1 -0
- package/dist/devices-hap/meterplus.js.map +1 -0
- package/dist/{device → devices-hap}/meterpro.d.ts +3 -3
- package/dist/devices-hap/meterpro.d.ts.map +1 -0
- package/dist/{device → devices-hap}/meterpro.js +16 -3
- package/dist/devices-hap/meterpro.js.map +1 -0
- package/dist/{device → devices-hap}/motion.d.ts +3 -3
- package/dist/devices-hap/motion.d.ts.map +1 -0
- package/dist/devices-hap/motion.js.map +1 -0
- package/dist/{device → devices-hap}/plug.d.ts +3 -3
- package/dist/devices-hap/plug.d.ts.map +1 -0
- package/dist/devices-hap/plug.js.map +1 -0
- package/dist/{device → devices-hap}/relayswitch.d.ts +3 -3
- package/dist/devices-hap/relayswitch.d.ts.map +1 -0
- package/dist/devices-hap/relayswitch.js.map +1 -0
- package/dist/{device → devices-hap}/robotvacuumcleaner.d.ts +3 -3
- package/dist/devices-hap/robotvacuumcleaner.d.ts.map +1 -0
- package/dist/devices-hap/robotvacuumcleaner.js.map +1 -0
- package/dist/{device → devices-hap}/waterdetector.d.ts +3 -3
- package/dist/devices-hap/waterdetector.d.ts.map +1 -0
- package/dist/devices-hap/waterdetector.js.map +1 -0
- package/dist/devices-matter/BaseMatterAccessory.d.ts +63 -0
- package/dist/devices-matter/BaseMatterAccessory.d.ts.map +1 -0
- package/dist/devices-matter/BaseMatterAccessory.js +100 -0
- package/dist/devices-matter/BaseMatterAccessory.js.map +1 -0
- package/dist/devices-matter/ColorLightAccessory.d.ts +18 -0
- package/dist/devices-matter/ColorLightAccessory.d.ts.map +1 -0
- package/dist/devices-matter/ColorLightAccessory.js +96 -0
- package/dist/devices-matter/ColorLightAccessory.js.map +1 -0
- package/dist/devices-matter/ColorTemperatureLightAccessory.d.ts +16 -0
- package/dist/devices-matter/ColorTemperatureLightAccessory.d.ts.map +1 -0
- package/dist/devices-matter/ColorTemperatureLightAccessory.js +83 -0
- package/dist/devices-matter/ColorTemperatureLightAccessory.js.map +1 -0
- package/dist/devices-matter/ContactSensorAccessory.d.ts +10 -0
- package/dist/devices-matter/ContactSensorAccessory.d.ts.map +1 -0
- package/dist/devices-matter/ContactSensorAccessory.js +31 -0
- package/dist/devices-matter/ContactSensorAccessory.js.map +1 -0
- package/dist/devices-matter/DimmableLightAccessory.d.ts +56 -0
- package/dist/devices-matter/DimmableLightAccessory.d.ts.map +1 -0
- package/dist/devices-matter/DimmableLightAccessory.js +170 -0
- package/dist/devices-matter/DimmableLightAccessory.js.map +1 -0
- package/dist/devices-matter/DoorLockAccessory.d.ts +12 -0
- package/dist/devices-matter/DoorLockAccessory.d.ts.map +1 -0
- package/dist/devices-matter/DoorLockAccessory.js +47 -0
- package/dist/devices-matter/DoorLockAccessory.js.map +1 -0
- package/dist/devices-matter/ExtendedColorLightAccessory.d.ts +19 -0
- package/dist/devices-matter/ExtendedColorLightAccessory.d.ts.map +1 -0
- package/dist/devices-matter/ExtendedColorLightAccessory.js +108 -0
- package/dist/devices-matter/ExtendedColorLightAccessory.js.map +1 -0
- package/dist/devices-matter/FanAccessory.d.ts +14 -0
- package/dist/devices-matter/FanAccessory.d.ts.map +1 -0
- package/dist/devices-matter/FanAccessory.js +73 -0
- package/dist/devices-matter/FanAccessory.js.map +1 -0
- package/dist/devices-matter/HumiditySensorAccessory.d.ts +10 -0
- package/dist/devices-matter/HumiditySensorAccessory.d.ts.map +1 -0
- package/dist/devices-matter/HumiditySensorAccessory.js +33 -0
- package/dist/devices-matter/HumiditySensorAccessory.js.map +1 -0
- package/dist/devices-matter/LeakSensorAccessory.d.ts +10 -0
- package/dist/devices-matter/LeakSensorAccessory.d.ts.map +1 -0
- package/dist/devices-matter/LeakSensorAccessory.js +30 -0
- package/dist/devices-matter/LeakSensorAccessory.js.map +1 -0
- package/dist/devices-matter/LightSensorAccessory.d.ts +10 -0
- package/dist/devices-matter/LightSensorAccessory.d.ts.map +1 -0
- package/dist/devices-matter/LightSensorAccessory.js +33 -0
- package/dist/devices-matter/LightSensorAccessory.js.map +1 -0
- package/dist/devices-matter/OccupancySensorAccessory.d.ts +10 -0
- package/dist/devices-matter/OccupancySensorAccessory.d.ts.map +1 -0
- package/dist/devices-matter/OccupancySensorAccessory.js +43 -0
- package/dist/devices-matter/OccupancySensorAccessory.js.map +1 -0
- package/dist/devices-matter/OnOffLightAccessory.d.ts +36 -0
- package/dist/devices-matter/OnOffLightAccessory.d.ts.map +1 -0
- package/dist/devices-matter/OnOffLightAccessory.js +117 -0
- package/dist/devices-matter/OnOffLightAccessory.js.map +1 -0
- package/dist/devices-matter/OnOffOutletAccessory.d.ts +12 -0
- package/dist/devices-matter/OnOffOutletAccessory.d.ts.map +1 -0
- package/dist/devices-matter/OnOffOutletAccessory.js +43 -0
- package/dist/devices-matter/OnOffOutletAccessory.js.map +1 -0
- package/dist/devices-matter/OnOffSwitchAccessory.d.ts +12 -0
- package/dist/devices-matter/OnOffSwitchAccessory.d.ts.map +1 -0
- package/dist/devices-matter/OnOffSwitchAccessory.js +43 -0
- package/dist/devices-matter/OnOffSwitchAccessory.js.map +1 -0
- package/dist/devices-matter/RoboticVacuumAccessory.d.ts +66 -0
- package/dist/devices-matter/RoboticVacuumAccessory.d.ts.map +1 -0
- package/dist/devices-matter/RoboticVacuumAccessory.js +402 -0
- package/dist/devices-matter/RoboticVacuumAccessory.js.map +1 -0
- package/dist/devices-matter/SmokeCOAlarmAccessory.d.ts +11 -0
- package/dist/devices-matter/SmokeCOAlarmAccessory.d.ts.map +1 -0
- package/dist/devices-matter/SmokeCOAlarmAccessory.js +49 -0
- package/dist/devices-matter/SmokeCOAlarmAccessory.js.map +1 -0
- package/dist/devices-matter/TemperatureSensorAccessory.d.ts +10 -0
- package/dist/devices-matter/TemperatureSensorAccessory.d.ts.map +1 -0
- package/dist/devices-matter/TemperatureSensorAccessory.js +33 -0
- package/dist/devices-matter/TemperatureSensorAccessory.js.map +1 -0
- package/dist/devices-matter/ThermostatAccessory.d.ts +17 -0
- package/dist/devices-matter/ThermostatAccessory.d.ts.map +1 -0
- package/dist/devices-matter/ThermostatAccessory.js +87 -0
- package/dist/devices-matter/ThermostatAccessory.js.map +1 -0
- package/dist/devices-matter/VenetianBlindAccessory.d.ts +17 -0
- package/dist/devices-matter/VenetianBlindAccessory.d.ts.map +1 -0
- package/dist/devices-matter/VenetianBlindAccessory.js +100 -0
- package/dist/devices-matter/VenetianBlindAccessory.js.map +1 -0
- package/dist/devices-matter/WindowBlindAccessory.d.ts +15 -0
- package/dist/devices-matter/WindowBlindAccessory.d.ts.map +1 -0
- package/dist/devices-matter/WindowBlindAccessory.js +81 -0
- package/dist/devices-matter/WindowBlindAccessory.js.map +1 -0
- package/dist/devices-matter/custom/PowerStripAccessory.d.ts +97 -0
- package/dist/devices-matter/custom/PowerStripAccessory.d.ts.map +1 -0
- package/dist/devices-matter/custom/PowerStripAccessory.js +265 -0
- package/dist/devices-matter/custom/PowerStripAccessory.js.map +1 -0
- package/dist/devices-matter/custom/index.d.ts +8 -0
- package/dist/devices-matter/custom/index.d.ts.map +1 -0
- package/dist/devices-matter/custom/index.js +8 -0
- package/dist/devices-matter/custom/index.js.map +1 -0
- package/dist/devices-matter/index.d.ts +29 -0
- package/dist/devices-matter/index.d.ts.map +1 -0
- package/dist/devices-matter/index.js +28 -0
- package/dist/devices-matter/index.js.map +1 -0
- package/dist/homebridge-ui/public/index.html +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -2
- package/dist/index.js.map +1 -1
- package/dist/index.test.js +2 -2
- package/dist/index.test.js.map +1 -1
- package/dist/irdevice/airconditioner.d.ts +3 -3
- package/dist/irdevice/airconditioner.d.ts.map +1 -1
- package/dist/irdevice/airconditioner.js.map +1 -1
- package/dist/irdevice/airpurifier.d.ts +3 -3
- package/dist/irdevice/airpurifier.d.ts.map +1 -1
- package/dist/irdevice/airpurifier.js.map +1 -1
- package/dist/irdevice/camera.d.ts +3 -3
- package/dist/irdevice/camera.d.ts.map +1 -1
- package/dist/irdevice/camera.js.map +1 -1
- package/dist/irdevice/fan.d.ts +3 -3
- package/dist/irdevice/fan.d.ts.map +1 -1
- package/dist/irdevice/fan.js.map +1 -1
- package/dist/irdevice/irdevice.d.ts +3 -3
- package/dist/irdevice/irdevice.d.ts.map +1 -1
- package/dist/irdevice/irdevice.js.map +1 -1
- package/dist/irdevice/light.d.ts +3 -3
- package/dist/irdevice/light.d.ts.map +1 -1
- package/dist/irdevice/light.js.map +1 -1
- package/dist/irdevice/other.d.ts +3 -3
- package/dist/irdevice/other.d.ts.map +1 -1
- package/dist/irdevice/other.js.map +1 -1
- package/dist/irdevice/tv.d.ts +3 -3
- package/dist/irdevice/tv.d.ts.map +1 -1
- package/dist/irdevice/tv.js.map +1 -1
- package/dist/irdevice/vacuumcleaner.d.ts +3 -3
- package/dist/irdevice/vacuumcleaner.d.ts.map +1 -1
- package/dist/irdevice/vacuumcleaner.js.map +1 -1
- package/dist/irdevice/waterheater.d.ts +3 -3
- package/dist/irdevice/waterheater.d.ts.map +1 -1
- package/dist/irdevice/waterheater.js.map +1 -1
- package/dist/{platform.d.ts → platform-hap.d.ts} +2 -2
- package/dist/platform-hap.d.ts.map +1 -0
- package/dist/{platform.js → platform-hap.js} +32 -31
- package/dist/{platform.js.map → platform-hap.js.map} +1 -1
- package/dist/platform-matter.d.ts +75 -0
- package/dist/platform-matter.d.ts.map +1 -0
- package/dist/platform-matter.js +362 -0
- package/dist/platform-matter.js.map +1 -0
- package/dist/verifyconfig.test.d.ts +2 -0
- package/dist/verifyconfig.test.d.ts.map +1 -0
- package/dist/verifyconfig.test.js +167 -0
- package/dist/verifyconfig.test.js.map +1 -0
- package/docs/index.html +20 -11
- package/docs/variables/default.html +1 -1
- package/package.json +10 -10
- package/src/{device → devices-hap}/airpurifier.ts +2 -2
- package/src/{device → devices-hap}/blindtilt.ts +7 -3
- package/src/{device → devices-hap}/bot.ts +2 -2
- package/src/{device → devices-hap}/ceilinglight.ts +2 -2
- package/src/{device → devices-hap}/colorbulb.ts +2 -2
- package/src/{device → devices-hap}/contact.ts +2 -2
- package/src/{device → devices-hap}/curtain.ts +32 -10
- package/src/{device → devices-hap}/device.ts +12 -6
- package/src/{device → devices-hap}/fan.ts +2 -2
- package/src/{device → devices-hap}/hub.ts +7 -6
- package/src/{device → devices-hap}/humidifier.ts +2 -2
- package/src/{device → devices-hap}/iosensor.ts +2 -2
- package/src/{device → devices-hap}/lightstrip.ts +2 -2
- package/src/{device → devices-hap}/lock.ts +2 -2
- package/src/{device → devices-hap}/meter.ts +2 -2
- package/src/{device → devices-hap}/meterplus.ts +2 -2
- package/src/{device → devices-hap}/meterpro.ts +18 -5
- package/src/{device → devices-hap}/motion.ts +2 -2
- package/src/{device → devices-hap}/plug.ts +2 -2
- package/src/{device → devices-hap}/relayswitch.ts +2 -2
- package/src/{device → devices-hap}/robotvacuumcleaner.ts +2 -2
- package/src/{device → devices-hap}/waterdetector.ts +2 -2
- package/src/devices-matter/BaseMatterAccessory.ts +131 -0
- package/src/devices-matter/ColorLightAccessory.ts +113 -0
- package/src/devices-matter/ColorTemperatureLightAccessory.ts +98 -0
- package/src/devices-matter/ContactSensorAccessory.ts +37 -0
- package/src/devices-matter/DimmableLightAccessory.ts +196 -0
- package/src/devices-matter/DoorLockAccessory.ts +56 -0
- package/src/devices-matter/ExtendedColorLightAccessory.ts +127 -0
- package/src/devices-matter/FanAccessory.ts +87 -0
- package/src/devices-matter/HumiditySensorAccessory.ts +39 -0
- package/src/devices-matter/LeakSensorAccessory.ts +36 -0
- package/src/devices-matter/LightSensorAccessory.ts +39 -0
- package/src/devices-matter/OccupancySensorAccessory.ts +52 -0
- package/src/devices-matter/OnOffLightAccessory.ts +133 -0
- package/src/devices-matter/OnOffOutletAccessory.ts +52 -0
- package/src/devices-matter/OnOffSwitchAccessory.ts +52 -0
- package/src/devices-matter/RoboticVacuumAccessory.ts +484 -0
- package/src/devices-matter/SmokeCOAlarmAccessory.ts +59 -0
- package/src/devices-matter/TemperatureSensorAccessory.ts +39 -0
- package/src/devices-matter/ThermostatAccessory.ts +105 -0
- package/src/devices-matter/VenetianBlindAccessory.ts +118 -0
- package/src/devices-matter/WindowBlindAccessory.ts +94 -0
- package/src/devices-matter/custom/PowerStripAccessory.ts +309 -0
- package/src/devices-matter/custom/index.ts +8 -0
- package/src/devices-matter/index.ts +29 -0
- package/src/homebridge-ui/public/index.html +1 -1
- package/src/index.test.ts +2 -2
- package/src/index.ts +7 -2
- package/src/irdevice/airconditioner.ts +2 -2
- package/src/irdevice/airpurifier.ts +2 -2
- package/src/irdevice/camera.ts +2 -2
- package/src/irdevice/fan.ts +2 -2
- package/src/irdevice/irdevice.ts +2 -2
- package/src/irdevice/light.ts +2 -2
- package/src/irdevice/other.ts +2 -2
- package/src/irdevice/tv.ts +2 -2
- package/src/irdevice/vacuumcleaner.ts +2 -2
- package/src/irdevice/waterheater.ts +2 -2
- package/src/{platform.ts → platform-hap.ts} +31 -30
- package/src/platform-matter.ts +450 -0
- package/src/verifyconfig.test.ts +197 -0
- package/tsconfig.json +2 -1
- package/typedoc.json +1 -0
- package/.github/workflows/build.yml +0 -18
- package/.github/workflows/changerelease.yml +0 -11
- package/.github/workflows/labeler.yml +0 -16
- package/.github/workflows/release-drafter.yml +0 -14
- package/dist/device/airpurifier.d.ts.map +0 -1
- package/dist/device/airpurifier.js.map +0 -1
- package/dist/device/blindtilt.d.ts.map +0 -1
- package/dist/device/blindtilt.js.map +0 -1
- package/dist/device/bot.d.ts.map +0 -1
- package/dist/device/bot.js.map +0 -1
- package/dist/device/ceilinglight.d.ts.map +0 -1
- package/dist/device/ceilinglight.js.map +0 -1
- package/dist/device/colorbulb.d.ts.map +0 -1
- package/dist/device/colorbulb.js.map +0 -1
- package/dist/device/contact.d.ts.map +0 -1
- package/dist/device/contact.js.map +0 -1
- package/dist/device/curtain.d.ts.map +0 -1
- package/dist/device/curtain.js.map +0 -1
- package/dist/device/device.d.ts.map +0 -1
- package/dist/device/device.js.map +0 -1
- package/dist/device/fan.d.ts.map +0 -1
- package/dist/device/fan.js.map +0 -1
- package/dist/device/hub.d.ts.map +0 -1
- package/dist/device/hub.js.map +0 -1
- package/dist/device/humidifier.d.ts.map +0 -1
- package/dist/device/humidifier.js.map +0 -1
- package/dist/device/iosensor.d.ts.map +0 -1
- package/dist/device/iosensor.js.map +0 -1
- package/dist/device/lightstrip.d.ts.map +0 -1
- package/dist/device/lightstrip.js.map +0 -1
- package/dist/device/lock.d.ts.map +0 -1
- package/dist/device/lock.js.map +0 -1
- package/dist/device/meter.d.ts.map +0 -1
- package/dist/device/meter.js.map +0 -1
- package/dist/device/meterplus.d.ts.map +0 -1
- package/dist/device/meterplus.js.map +0 -1
- package/dist/device/meterpro.d.ts.map +0 -1
- package/dist/device/meterpro.js.map +0 -1
- package/dist/device/motion.d.ts.map +0 -1
- package/dist/device/motion.js.map +0 -1
- package/dist/device/plug.d.ts.map +0 -1
- package/dist/device/plug.js.map +0 -1
- package/dist/device/relayswitch.d.ts.map +0 -1
- package/dist/device/relayswitch.js.map +0 -1
- package/dist/device/robotvacuumcleaner.d.ts.map +0 -1
- package/dist/device/robotvacuumcleaner.js.map +0 -1
- package/dist/device/waterdetector.d.ts.map +0 -1
- package/dist/device/waterdetector.js.map +0 -1
- package/dist/platform.d.ts.map +0 -1
- /package/dist/{device → devices-hap}/airpurifier.js +0 -0
- /package/dist/{device → devices-hap}/bot.js +0 -0
- /package/dist/{device → devices-hap}/ceilinglight.js +0 -0
- /package/dist/{device → devices-hap}/colorbulb.js +0 -0
- /package/dist/{device → devices-hap}/contact.js +0 -0
- /package/dist/{device → devices-hap}/fan.js +0 -0
- /package/dist/{device → devices-hap}/humidifier.js +0 -0
- /package/dist/{device → devices-hap}/iosensor.js +0 -0
- /package/dist/{device → devices-hap}/lightstrip.js +0 -0
- /package/dist/{device → devices-hap}/lock.js +0 -0
- /package/dist/{device → devices-hap}/meter.js +0 -0
- /package/dist/{device → devices-hap}/meterplus.js +0 -0
- /package/dist/{device → devices-hap}/motion.js +0 -0
- /package/dist/{device → devices-hap}/plug.js +0 -0
- /package/dist/{device → devices-hap}/relayswitch.js +0 -0
- /package/dist/{device → devices-hap}/robotvacuumcleaner.js +0 -0
- /package/dist/{device → devices-hap}/waterdetector.js +0 -0
package/src/irdevice/irdevice.ts
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
import type { API, CharacteristicValue, HAP, Logging, PlatformAccessory, Service } from 'homebridge'
|
|
6
6
|
import type { bodyChange, irdevice } from 'node-switchbot'
|
|
7
7
|
|
|
8
|
-
import type {
|
|
8
|
+
import type { SwitchBotHAPPlatform } from '../platform-hap.js'
|
|
9
9
|
import type { irAirConfig, irDevicesConfig, irFanConfig, irLightConfig, irOtherConfig, SwitchBotPlatformConfig } from '../settings.js'
|
|
10
10
|
|
|
11
11
|
export abstract class irdeviceBase {
|
|
@@ -26,7 +26,7 @@ export abstract class irdeviceBase {
|
|
|
26
26
|
protected deviceDisablePushDetail?: boolean
|
|
27
27
|
|
|
28
28
|
constructor(
|
|
29
|
-
protected readonly platform:
|
|
29
|
+
protected readonly platform: SwitchBotHAPPlatform,
|
|
30
30
|
protected accessory: PlatformAccessory,
|
|
31
31
|
protected device: irdevice & irDevicesConfig,
|
|
32
32
|
) {
|
package/src/irdevice/light.ts
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
import type { CharacteristicValue, PlatformAccessory, Service } from 'homebridge'
|
|
6
6
|
import type { bodyChange, irdevice } from 'node-switchbot'
|
|
7
7
|
|
|
8
|
-
import type {
|
|
8
|
+
import type { SwitchBotHAPPlatform } from '../platform-hap.js'
|
|
9
9
|
import type { irDevicesConfig, irLightConfig } from '../settings.js'
|
|
10
10
|
|
|
11
11
|
import { irdeviceBase } from './irdevice.js'
|
|
@@ -38,7 +38,7 @@ export class Light extends irdeviceBase {
|
|
|
38
38
|
}
|
|
39
39
|
|
|
40
40
|
constructor(
|
|
41
|
-
readonly platform:
|
|
41
|
+
readonly platform: SwitchBotHAPPlatform,
|
|
42
42
|
accessory: PlatformAccessory,
|
|
43
43
|
device: irdevice & irDevicesConfig,
|
|
44
44
|
) {
|
package/src/irdevice/other.ts
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
import type { CharacteristicValue, PlatformAccessory, Service } from 'homebridge'
|
|
6
6
|
import type { bodyChange, irdevice } from 'node-switchbot'
|
|
7
7
|
|
|
8
|
-
import type {
|
|
8
|
+
import type { SwitchBotHAPPlatform } from '../platform-hap.js'
|
|
9
9
|
import type { irDevicesConfig, irOtherConfig } from '../settings.js'
|
|
10
10
|
|
|
11
11
|
import { irdeviceBase } from './irdevice.js'
|
|
@@ -73,7 +73,7 @@ export class Others extends irdeviceBase {
|
|
|
73
73
|
otherDeviceType?: string
|
|
74
74
|
|
|
75
75
|
constructor(
|
|
76
|
-
readonly platform:
|
|
76
|
+
readonly platform: SwitchBotHAPPlatform,
|
|
77
77
|
accessory: PlatformAccessory,
|
|
78
78
|
device: irdevice & irDevicesConfig,
|
|
79
79
|
) {
|
package/src/irdevice/tv.ts
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
import type { CharacteristicValue, PlatformAccessory, Service } from 'homebridge'
|
|
6
6
|
import type { bodyChange, irdevice } from 'node-switchbot'
|
|
7
7
|
|
|
8
|
-
import type {
|
|
8
|
+
import type { SwitchBotHAPPlatform } from '../platform-hap.js'
|
|
9
9
|
import type { irDevicesConfig } from '../settings.js'
|
|
10
10
|
|
|
11
11
|
import { irdeviceBase } from './irdevice.js'
|
|
@@ -38,7 +38,7 @@ export class TV extends irdeviceBase {
|
|
|
38
38
|
// Characteristic Values
|
|
39
39
|
|
|
40
40
|
constructor(
|
|
41
|
-
readonly platform:
|
|
41
|
+
readonly platform: SwitchBotHAPPlatform,
|
|
42
42
|
accessory: PlatformAccessory,
|
|
43
43
|
device: irdevice & irDevicesConfig,
|
|
44
44
|
) {
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
import type { CharacteristicValue, PlatformAccessory, Service } from 'homebridge'
|
|
6
6
|
import type { bodyChange, irdevice } from 'node-switchbot'
|
|
7
7
|
|
|
8
|
-
import type {
|
|
8
|
+
import type { SwitchBotHAPPlatform } from '../platform-hap.js'
|
|
9
9
|
import type { irDevicesConfig } from '../settings.js'
|
|
10
10
|
|
|
11
11
|
import { irdeviceBase } from './irdevice.js'
|
|
@@ -24,7 +24,7 @@ export class VacuumCleaner extends irdeviceBase {
|
|
|
24
24
|
}
|
|
25
25
|
|
|
26
26
|
constructor(
|
|
27
|
-
readonly platform:
|
|
27
|
+
readonly platform: SwitchBotHAPPlatform,
|
|
28
28
|
accessory: PlatformAccessory,
|
|
29
29
|
device: irdevice & irDevicesConfig,
|
|
30
30
|
) {
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
import type { CharacteristicValue, PlatformAccessory, Service } from 'homebridge'
|
|
6
6
|
import type { bodyChange, irdevice } from 'node-switchbot'
|
|
7
7
|
|
|
8
|
-
import type {
|
|
8
|
+
import type { SwitchBotHAPPlatform } from '../platform-hap.js'
|
|
9
9
|
import type { irDevicesConfig } from '../settings.js'
|
|
10
10
|
|
|
11
11
|
import { irdeviceBase } from './irdevice.js'
|
|
@@ -24,7 +24,7 @@ export class WaterHeater extends irdeviceBase {
|
|
|
24
24
|
}
|
|
25
25
|
|
|
26
26
|
constructor(
|
|
27
|
-
readonly platform:
|
|
27
|
+
readonly platform: SwitchBotHAPPlatform,
|
|
28
28
|
accessory: PlatformAccessory,
|
|
29
29
|
device: irdevice & irDevicesConfig,
|
|
30
30
|
) {
|
|
@@ -24,27 +24,27 @@ import { EveHomeKitTypes } from 'homebridge-lib/EveHomeKitTypes'
|
|
|
24
24
|
import { LogLevel, SwitchBotBLE, SwitchBotModel, SwitchBotOpenAPI } from 'node-switchbot'
|
|
25
25
|
import { queueScheduler } from 'rxjs'
|
|
26
26
|
|
|
27
|
-
import { AirPurifier } from './
|
|
28
|
-
import { BlindTilt } from './
|
|
29
|
-
import { Bot } from './
|
|
30
|
-
import { CeilingLight } from './
|
|
31
|
-
import { ColorBulb } from './
|
|
32
|
-
import { Contact } from './
|
|
33
|
-
import { Curtain } from './
|
|
34
|
-
import { Fan } from './
|
|
35
|
-
import { Hub } from './
|
|
36
|
-
import { Humidifier } from './
|
|
37
|
-
import { IOSensor } from './
|
|
38
|
-
import { StripLight } from './
|
|
39
|
-
import { Lock } from './
|
|
40
|
-
import { Meter } from './
|
|
41
|
-
import { MeterPlus } from './
|
|
42
|
-
import { MeterPro } from './
|
|
43
|
-
import { Motion } from './
|
|
44
|
-
import { Plug } from './
|
|
45
|
-
import { RelaySwitch } from './
|
|
46
|
-
import { RobotVacuumCleaner } from './
|
|
47
|
-
import { WaterDetector } from './
|
|
27
|
+
import { AirPurifier } from './devices-hap/airpurifier.js'
|
|
28
|
+
import { BlindTilt } from './devices-hap/blindtilt.js'
|
|
29
|
+
import { Bot } from './devices-hap/bot.js'
|
|
30
|
+
import { CeilingLight } from './devices-hap/ceilinglight.js'
|
|
31
|
+
import { ColorBulb } from './devices-hap/colorbulb.js'
|
|
32
|
+
import { Contact } from './devices-hap/contact.js'
|
|
33
|
+
import { Curtain } from './devices-hap/curtain.js'
|
|
34
|
+
import { Fan } from './devices-hap/fan.js'
|
|
35
|
+
import { Hub } from './devices-hap/hub.js'
|
|
36
|
+
import { Humidifier } from './devices-hap/humidifier.js'
|
|
37
|
+
import { IOSensor } from './devices-hap/iosensor.js'
|
|
38
|
+
import { StripLight } from './devices-hap/lightstrip.js'
|
|
39
|
+
import { Lock } from './devices-hap/lock.js'
|
|
40
|
+
import { Meter } from './devices-hap/meter.js'
|
|
41
|
+
import { MeterPlus } from './devices-hap/meterplus.js'
|
|
42
|
+
import { MeterPro } from './devices-hap/meterpro.js'
|
|
43
|
+
import { Motion } from './devices-hap/motion.js'
|
|
44
|
+
import { Plug } from './devices-hap/plug.js'
|
|
45
|
+
import { RelaySwitch } from './devices-hap/relayswitch.js'
|
|
46
|
+
import { RobotVacuumCleaner } from './devices-hap/robotvacuumcleaner.js'
|
|
47
|
+
import { WaterDetector } from './devices-hap/waterdetector.js'
|
|
48
48
|
import { AirConditioner } from './irdevice/airconditioner.js'
|
|
49
49
|
import { AirPurifierIR } from './irdevice/airpurifier.js'
|
|
50
50
|
import { Camera } from './irdevice/camera.js'
|
|
@@ -62,7 +62,7 @@ import { formatDeviceIdAsMac, isBlindTiltDevice, isCurtainDevice, safeStringify,
|
|
|
62
62
|
* This class is the main constructor for your plugin, this is where you should
|
|
63
63
|
* parse the user config and discover/register accessories with Homebridge.
|
|
64
64
|
*/
|
|
65
|
-
export class
|
|
65
|
+
export class SwitchBotHAPPlatform implements DynamicPlatformPlugin {
|
|
66
66
|
// Platform properties
|
|
67
67
|
public accessories: PlatformAccessory[] = []
|
|
68
68
|
public readonly api: API
|
|
@@ -233,7 +233,7 @@ export class SwitchBotPlatform implements DynamicPlatformPlugin {
|
|
|
233
233
|
const context = JSON.parse(message.toString())
|
|
234
234
|
this.webhookEventHandler[context.deviceMac]?.(context)
|
|
235
235
|
} catch (e: any) {
|
|
236
|
-
this.errorLog(`Failed to handle webhook event. Error
|
|
236
|
+
this.errorLog(`Failed to handle webhook event. Error: ${e.message ?? e}`)
|
|
237
237
|
}
|
|
238
238
|
})
|
|
239
239
|
}
|
|
@@ -260,14 +260,14 @@ export class SwitchBotPlatform implements DynamicPlatformPlugin {
|
|
|
260
260
|
this.webhookEventHandler[body.context.deviceMac]?.(body.context)
|
|
261
261
|
})
|
|
262
262
|
} catch (e: any) {
|
|
263
|
-
this.errorLog(`Failed to setup webhook. Error
|
|
263
|
+
this.errorLog(`Failed to setup webhook. Error: ${e.message ?? e}`)
|
|
264
264
|
}
|
|
265
265
|
|
|
266
266
|
this.api.on('shutdown', async () => {
|
|
267
267
|
try {
|
|
268
268
|
this.switchBotAPI.deleteWebhook(url)
|
|
269
269
|
} catch (e: any) {
|
|
270
|
-
this.errorLog(`Failed to delete webhook. Error
|
|
270
|
+
this.errorLog(`Failed to delete webhook. Error: ${e.message ?? e}`)
|
|
271
271
|
}
|
|
272
272
|
})
|
|
273
273
|
}
|
|
@@ -318,14 +318,14 @@ export class SwitchBotPlatform implements DynamicPlatformPlugin {
|
|
|
318
318
|
try {
|
|
319
319
|
await this.switchBotBLE.startScan()
|
|
320
320
|
} catch (e: any) {
|
|
321
|
-
this.errorLog(`Failed to start BLE scanning. Error
|
|
321
|
+
this.errorLog(`Failed to start BLE scanning. Error: ${e.message ?? e}`)
|
|
322
322
|
}
|
|
323
323
|
// Set an event handler to monitor advertisement packets
|
|
324
324
|
this.switchBotBLE.onadvertisement = async (ad: any) => {
|
|
325
325
|
try {
|
|
326
326
|
this.bleEventHandler[ad.address]?.(ad.serviceData)
|
|
327
327
|
} catch (e: any) {
|
|
328
|
-
this.errorLog(`Failed to handle BLE event. Error
|
|
328
|
+
this.errorLog(`Failed to handle BLE event. Error: ${e.message ?? e}`)
|
|
329
329
|
}
|
|
330
330
|
}
|
|
331
331
|
})()
|
|
@@ -335,7 +335,7 @@ export class SwitchBotPlatform implements DynamicPlatformPlugin {
|
|
|
335
335
|
// this.switchBotBLE.stopScan()
|
|
336
336
|
this.infoLog('Stopped BLE scanning to close listening.')
|
|
337
337
|
} catch (e: any) {
|
|
338
|
-
this.errorLog(`Failed to stop Platform BLE scanning. Error
|
|
338
|
+
this.errorLog(`Failed to stop Platform BLE scanning. Error: ${e.message ?? e}`)
|
|
339
339
|
}
|
|
340
340
|
})
|
|
341
341
|
}
|
|
@@ -370,10 +370,10 @@ export class SwitchBotPlatform implements DynamicPlatformPlugin {
|
|
|
370
370
|
for (const deviceConfig of this.config.options.devices) {
|
|
371
371
|
if (!deviceConfig.hide_device) {
|
|
372
372
|
if (!deviceConfig.deviceId) {
|
|
373
|
-
|
|
373
|
+
this.errorLog('The devices config section is missing the *Device ID* in the config. Please check your config.')
|
|
374
374
|
}
|
|
375
375
|
if (!deviceConfig.configDeviceType && (deviceConfig as devicesConfig).connectionType) {
|
|
376
|
-
|
|
376
|
+
this.errorLog('The devices config section is missing the *Device Type* in the config. Please check your config.')
|
|
377
377
|
}
|
|
378
378
|
}
|
|
379
379
|
}
|
|
@@ -583,6 +583,7 @@ export class SwitchBotPlatform implements DynamicPlatformPlugin {
|
|
|
583
583
|
'Humidifier': this.createHumidifier.bind(this),
|
|
584
584
|
'Humidifier2': this.createHumidifier.bind(this),
|
|
585
585
|
'Hub 2': this.createHub2.bind(this),
|
|
586
|
+
'Hub 3': this.createHub2.bind(this),
|
|
586
587
|
'Bot': this.createBot.bind(this),
|
|
587
588
|
'Relay Switch 1': this.createRelaySwitch.bind(this),
|
|
588
589
|
'Relay Switch 1PM': this.createRelaySwitch.bind(this),
|