gitextract_9a1zhf9_/ ├── .gitignore ├── .travis.yml ├── LICENSE ├── README.md ├── examples/ │ ├── .gitignore │ ├── bridge/ │ │ ├── get-bridge.js │ │ ├── is-authenticated.js │ │ ├── lamp-stealer.js │ │ ├── link-button.js │ │ ├── ping.js │ │ └── save-bridge.js │ ├── capabilities/ │ │ ├── get-groups.js │ │ ├── get-lights.js │ │ ├── get-resource-links.js │ │ ├── get-rules.js │ │ ├── get-scenes.js │ │ ├── get-schedules.js │ │ ├── get-sensors.js │ │ └── get-time-zones.js │ ├── discover.js │ ├── groups/ │ │ ├── get-groups.js │ │ ├── increase-group-hs.js │ │ ├── manage-group.js │ │ └── manage-room-group.js │ ├── init-client.js │ ├── internet-services/ │ │ └── get-internet-services.js │ ├── lights/ │ │ ├── get-light.js │ │ ├── get-lights.js │ │ ├── get-new-lights.js │ │ ├── increase-light-hs.js │ │ ├── save-light.js │ │ └── start-light-scan.js │ ├── portal/ │ │ └── get-portal.js │ ├── resource-links/ │ │ ├── get-resource-link.js │ │ ├── get-resource-links.js │ │ └── manage-resource-link.js │ ├── rules/ │ │ ├── get-rules.js │ │ └── manage-rule.js │ ├── scenes/ │ │ ├── get-scenes.js │ │ ├── manage-scene.js │ │ ├── recall-scene.js │ │ └── save-scene.js │ ├── schedules/ │ │ ├── get-schedules.js │ │ └── manage-schedule.js │ ├── sensors/ │ │ ├── create-switch.js │ │ ├── get-sensors.js │ │ ├── manage-sensor.js │ │ └── update-switch.js │ ├── software-update/ │ │ ├── check-for-software-updates.js │ │ ├── disable-install-notification.js │ │ ├── get-software-update.js │ │ └── install-software-updates.js │ ├── time-zones/ │ │ └── get-time-zones.js │ └── users/ │ ├── create-user.js │ ├── delete-user.js │ ├── get-user.js │ └── get-users.js ├── lib/ │ ├── Accessor/ │ │ ├── AbstractAccessor.js │ │ ├── Actions.js │ │ ├── Bridge.js │ │ ├── Capabilities.js │ │ ├── Groups.js │ │ ├── InternetServices.js │ │ ├── Lights.js │ │ ├── Portal.js │ │ ├── ResourceLinks.js │ │ ├── Rules.js │ │ ├── Scenes.js │ │ ├── Schedules.js │ │ ├── Sensors.js │ │ ├── SoftwareUpdate.js │ │ ├── TimePatterns.js │ │ ├── TimeZones.js │ │ └── Users.js │ ├── Action/ │ │ ├── AbstractAction.js │ │ ├── ChangeGroupAction.js │ │ ├── ChangeLightState.js │ │ └── ChangeSensorState.js │ ├── BridgeModel/ │ │ ├── AbstractBridgeModel.js │ │ ├── BSB001.js │ │ ├── BSB002.js │ │ ├── Factory.js │ │ └── Unknown.js │ ├── CapabilityModel/ │ │ ├── AbstractCapabilityModel.js │ │ ├── Groups.js │ │ ├── Lights.js │ │ ├── ResourceLinks.js │ │ ├── Rules.js │ │ ├── Scenes.js │ │ ├── Schedules.js │ │ └── Sensors.js │ ├── Client.js │ ├── Command/ │ │ ├── Bridge/ │ │ │ ├── EnableLinkButton.js │ │ │ ├── EnableTouchlink.js │ │ │ ├── GetBridge.js │ │ │ ├── IsAuthenticated.js │ │ │ ├── Ping.js │ │ │ ├── SaveBridge.js │ │ │ └── Utils.js │ │ ├── Capability/ │ │ │ ├── GetGroups.js │ │ │ ├── GetLights.js │ │ │ ├── GetResourceLinks.js │ │ │ ├── GetRules.js │ │ │ ├── GetScenes.js │ │ │ ├── GetSchedules.js │ │ │ ├── GetSensors.js │ │ │ └── GetTimeZones.js │ │ ├── Group/ │ │ │ ├── CreateGroup.js │ │ │ ├── DeleteGroup.js │ │ │ ├── GetGroup.js │ │ │ ├── GetGroups.js │ │ │ ├── SaveGroup.js │ │ │ ├── SaveGroupAction.js │ │ │ └── Utils.js │ │ ├── InternetServices/ │ │ │ ├── GetInternetServices.js │ │ │ └── Utils.js │ │ ├── Light/ │ │ │ ├── DeleteLight.js │ │ │ ├── GetLight.js │ │ │ ├── GetLights.js │ │ │ ├── GetNewLights.js │ │ │ ├── SaveLight.js │ │ │ ├── SaveLightState.js │ │ │ ├── StartLightScan.js │ │ │ └── Utils.js │ │ ├── Portal/ │ │ │ ├── GetPortal.js │ │ │ └── Utils.js │ │ ├── ResourceLinks/ │ │ │ ├── CreateResourceLink.js │ │ │ ├── DeleteResourceLink.js │ │ │ ├── GetResourceLink.js │ │ │ ├── GetResourceLinks.js │ │ │ ├── SaveResourceLink.js │ │ │ └── Utils.js │ │ ├── Rule/ │ │ │ ├── CreateRule.js │ │ │ ├── DeleteRule.js │ │ │ ├── GetRule.js │ │ │ ├── GetRules.js │ │ │ ├── SaveRule.js │ │ │ └── Utils.js │ │ ├── Scene/ │ │ │ ├── CreateScene.js │ │ │ ├── DeleteScene.js │ │ │ ├── GetSceneById.js │ │ │ ├── GetScenes.js │ │ │ ├── RecallScene.js │ │ │ ├── SaveScene.js │ │ │ ├── SaveSceneLightState.js │ │ │ └── Utils.js │ │ ├── Schedule/ │ │ │ ├── CreateSchedule.js │ │ │ ├── DeleteSchedule.js │ │ │ ├── GetSchedule.js │ │ │ ├── GetSchedules.js │ │ │ ├── SaveSchedule.js │ │ │ └── Utils.js │ │ ├── Sensor/ │ │ │ ├── CreateSensor.js │ │ │ ├── DeleteSensor.js │ │ │ ├── GetNewSensors.js │ │ │ ├── GetSensor.js │ │ │ ├── GetSensors.js │ │ │ ├── SaveSensor.js │ │ │ ├── SaveSensorConfig.js │ │ │ ├── SaveSensorState.js │ │ │ ├── StartSensorScan.js │ │ │ └── Utils.js │ │ ├── SoftwareUpdate/ │ │ │ ├── CheckForSoftwareUpdates.js │ │ │ ├── DisableInstallNotification.js │ │ │ ├── GetSoftwareUpdate.js │ │ │ ├── InstallSoftwareUpdates.js │ │ │ └── Utils.js │ │ ├── TimeZone/ │ │ │ └── GetTimeZones.js │ │ └── User/ │ │ ├── CreateUser.js │ │ ├── DeleteUser.js │ │ ├── GetUser.js │ │ ├── GetUsers.js │ │ └── Utils.js │ ├── Discovery.js │ ├── DiscoveryStrategy/ │ │ ├── Nupnp.js │ │ └── Upnp.js │ ├── Error.js │ ├── GroupModel/ │ │ ├── AbstractGroupModel.js │ │ ├── Factory.js │ │ ├── HBL001.js │ │ ├── HBL002.js │ │ ├── HBL003.js │ │ ├── HEL001.js │ │ ├── HEL002.js │ │ ├── HIL001.js │ │ ├── HIL002.js │ │ ├── HML001.js │ │ ├── HML002.js │ │ ├── HML003.js │ │ ├── HML004.js │ │ ├── HML005.js │ │ ├── HML006.js │ │ ├── HML007.js │ │ └── Unknown.js │ ├── Huejay.js │ ├── LightModel/ │ │ ├── AbstractLightModel.js │ │ ├── Factory.js │ │ ├── LCT001.js │ │ ├── LCT002.js │ │ ├── LCT003.js │ │ ├── LCT007.js │ │ ├── LCT010.js │ │ ├── LCT011.js │ │ ├── LCT012.js │ │ ├── LCT014.js │ │ ├── LLC006.js │ │ ├── LLC007.js │ │ ├── LLC010.js │ │ ├── LLC011.js │ │ ├── LLC012.js │ │ ├── LLC013.js │ │ ├── LLC014.js │ │ ├── LLC020.js │ │ ├── LLM001.js │ │ ├── LLM010.js │ │ ├── LLM011.js │ │ ├── LLM012.js │ │ ├── LST001.js │ │ ├── LST002.js │ │ ├── LTW001.js │ │ ├── LTW004.js │ │ ├── LTW010.js │ │ ├── LTW011.js │ │ ├── LTW012.js │ │ ├── LTW013.js │ │ ├── LTW014.js │ │ ├── LTW015.js │ │ ├── LWB004.js │ │ ├── LWB006.js │ │ ├── LWB007.js │ │ ├── LWB010.js │ │ ├── LWB014.js │ │ └── Unknown.js │ ├── Model/ │ │ ├── Attributes.js │ │ ├── Bridge.js │ │ ├── Condition.js │ │ ├── Group.js │ │ ├── InternetServices.js │ │ ├── Light.js │ │ ├── Portal.js │ │ ├── ResourceLink.js │ │ ├── Rule.js │ │ ├── Scene.js │ │ ├── Schedule.js │ │ ├── Sensor.js │ │ ├── SoftwareUpdate.js │ │ └── User.js │ ├── SensorModel/ │ │ ├── AbstractSensorModel.js │ │ ├── Factory.js │ │ ├── PHDL00.js │ │ ├── RWL020.js │ │ ├── RWL021.js │ │ ├── SML001.js │ │ ├── Unknown.js │ │ └── ZGPSWITCH.js │ ├── SensorType/ │ │ ├── AbstractClipSensorConfig.js │ │ ├── AbstractSensorConfig.js │ │ ├── AbstractSensorState.js │ │ ├── AbstractZLLSensorConfig.js │ │ ├── CLIPGenericFlag/ │ │ │ ├── Config.js │ │ │ └── State.js │ │ ├── CLIPGenericStatus/ │ │ │ ├── Config.js │ │ │ └── State.js │ │ ├── CLIPHumidity/ │ │ │ ├── Config.js │ │ │ └── State.js │ │ ├── CLIPLightLevel/ │ │ │ ├── Config.js │ │ │ └── State.js │ │ ├── CLIPOpenClose/ │ │ │ ├── Config.js │ │ │ └── State.js │ │ ├── CLIPPresence/ │ │ │ ├── Config.js │ │ │ └── State.js │ │ ├── CLIPSwitch/ │ │ │ ├── Config.js │ │ │ └── State.js │ │ ├── CLIPTemperature/ │ │ │ ├── Config.js │ │ │ └── State.js │ │ ├── Daylight/ │ │ │ ├── Config.js │ │ │ └── State.js │ │ ├── Factory.js │ │ ├── Unknown/ │ │ │ ├── Config.js │ │ │ └── State.js │ │ ├── ZGPSwitch/ │ │ │ ├── Config.js │ │ │ └── State.js │ │ ├── ZLLLightLevel/ │ │ │ ├── Config.js │ │ │ └── State.js │ │ ├── ZLLPresence/ │ │ │ ├── Config.js │ │ │ └── State.js │ │ ├── ZLLSwitch/ │ │ │ ├── Config.js │ │ │ └── State.js │ │ └── ZLLTemperature/ │ │ ├── Config.js │ │ └── State.js │ ├── TimePattern/ │ │ ├── AbsoluteTime.js │ │ ├── RandomizedTime.js │ │ ├── RecurringTime.js │ │ └── Timer.js │ └── Transport.js ├── package.json └── test/ ├── Discovery.spec.js ├── Huejay.spec.js ├── TimePattern/ │ ├── AbsoluteTime.spec.js │ ├── RandomizedTime.spec.js │ ├── RecurringTime.spec.js │ └── Timer.spec.js └── mocha.opts