Luup UPnP Variables and Actions
(→EnergyMetering1) |
|||
(110 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
+ | [[Category:Development]] | ||
This is a list of all the UPnP actions and variables used by MiOS. | This is a list of all the UPnP actions and variables used by MiOS. | ||
Line 4: | Line 5: | ||
== HomeAutomationGateway1 == | == HomeAutomationGateway1 == | ||
− | |||
− | |||
+ | *'''Service ID''': urn:micasaverde-com:serviceId:HomeAutomationGateway1 | ||
+ | *'''File''': S_HomeAutomationGateway1.xml | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | {| style="border: 1px solid #000; border-collapse: collapse" | + | {| style="border: 1px solid #000; border-collapse: collapse" |
− | ! style="border: 1px solid #000; width: 150px" rowspan="2" | Action | + | |- |
− | + | ! style="border: 1px solid #000; width: 150px" | Variable | |
− | + | ! style="border: 1px solid #000; width: 60px" | Type | |
− | + | ! style="border: 1px solid #000" | Description<br/> | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | DataVersion | |
− | + | | style="border: 1px solid #000" | ui4 | |
− | + | | style="border: 1px solid #000" | A number that increases each time the data changes. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | UDN | |
− | + | | style="border: 1px solid #000" | string | |
− | + | | style="border: 1px solid #000" | The Unique Device Name of the UPnP device. | |
− | + | |} | |
− | + | ||
− | + | ||
− | * <tt>inUserData</tt> is the new UserData object which will be added to the UserData or will replace an existent UserData object. | + | |
− | * <tt>DataFormat</tt> must be ''json''. | + | {| style="border: 1px solid #000; border-collapse: collapse" |
− | * If <tt>Reload</tt> is ''1'' the LuaUPnP engine will reload after the UserData is modified. | + | |- |
+ | ! style="border: 1px solid #000; width: 150px" rowspan="2" | Action | ||
+ | ! style="border: 1px solid #000" colspan="2" | Arguments | ||
+ | ! style="border: 1px solid #000" rowspan="2" | Description | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 130px" | Name | ||
+ | ! style="border: 1px solid #000; width: 140px" | Type or Related Variable | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="1" | Reload | ||
+ | | style="border: 1px solid #000; text-align: center" colspan="2" | none | ||
+ | | style="border: 1px solid #000" rowspan="1" | Reload the LuaUPnP engine. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="3" | ModifyUserData | ||
+ | | style="border: 1px solid #000" | inUserData | ||
+ | | style="border: 1px solid #000" | UserData | ||
+ | | style="border: 1px solid #000" rowspan="3" | Make changes to the UserData. | ||
+ | *<tt>inUserData</tt> is the new UserData object which will be added to the UserData or will replace an existent UserData object. | ||
+ | *<tt>DataFormat</tt> must be ''json''. | ||
+ | *If <tt>Reload</tt> is ''1'' the LuaUPnP engine will reload after the UserData is modified. | ||
+ | |||
For more information read the [[ModifyUserData]] page. | For more information read the [[ModifyUserData]] page. | ||
− | + | ||
− | + | |- | |
− | + | | style="border: 1px solid #000" | DataFormat | |
− | + | | style="border: 1px solid #000" | string | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | Reload | |
− | + | | style="border: 1px solid #000" | boolean | |
− | + | |- | |
− | + | | style="border: 1px solid #000" rowspan="4" | SetVariable | |
− | + | | style="border: 1px solid #000" | DeviceNum | |
− | + | | style="border: 1px solid #000" | int or string | |
− | * <tt>DeviceNum</tt> can be an UDN or a number. | + | | style="border: 1px solid #000" rowspan="4" | Create or change the value of a variable. |
− | * <tt>Service</tt> is the service ID of the variable. | + | *<tt>DeviceNum</tt> can be an UDN or a number. |
− | * <tt>Variable</tt> is the variable name. | + | *<tt>Service</tt> is the service ID of the variable. |
− | * <tt>Value</tt> is the new variable value. | + | *<tt>Variable</tt> is the variable name. |
− | + | *<tt>Value</tt> is the new variable value. | |
− | + | ||
− | + | |- | |
− | + | | style="border: 1px solid #000" | Service | |
− | + | | style="border: 1px solid #000" | string | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | Variable | |
− | + | | style="border: 1px solid #000" | string | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | Value | |
− | + | | style="border: 1px solid #000" | string | |
− | + | |- | |
− | + | | style="border: 1px solid #000" rowspan="1" | RunScene | |
− | + | | style="border: 1px solid #000" | SceneNum | |
− | + | | style="border: 1px solid #000" | int | |
− | + | | style="border: 1px solid #000" rowspan="1" | Run the given scene. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" rowspan="1" | SceneOff | |
− | + | | style="border: 1px solid #000" | SceneNum | |
− | + | | style="border: 1px solid #000" | int | |
− | + | | style="border: 1px solid #000" rowspan="1" | Turn off all the devices from DEVICE_CATEGORY_DIMMABLE_LIGHT and DEVICE_CATEGORY_SWITCH from the given scene. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" rowspan="2" | RunLua | |
− | + | | style="border: 1px solid #000" | DeviceNum | |
− | + | | style="border: 1px solid #000" | int or string | |
− | + | | style="border: 1px solid #000" rowspan="2" | Run the given Lua code. If <tt>DeviceNum</tt> is specified, the code is run using that device's interface. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | Code | |
− | + | | style="border: 1px solid #000" | string | |
− | + | |- | |
− | + | | style="border: 1px solid #000" rowspan="14" | CreateDevice | |
− | + | | style="border: 1px solid #000" | deviceType | |
− | * <tt>deviceType</tt> is the UPnP device type. | + | | style="border: 1px solid #000" | string |
− | * <tt>internalID</tt> is the specific ID (also known as ''altid'') of the device; for example, for Z-Wave devices this is the Node ID, and for Insteon device it is the Insteon ID. | + | | style="border: 1px solid #000" rowspan="14" | Create a device using the given parameters. |
− | * <tt>Description</tt> is the device name, which is shown to the user on the dashboard. | + | *<tt>deviceType</tt> is the UPnP device type. |
− | * <tt>UpnpDevFilename</tt> is the UPnP device description file name. | + | *<tt>internalID</tt> is the specific ID (also known as ''altid'') of the device; for example, for Z-Wave devices this is the Node ID, and for Insteon device it is the Insteon ID. |
− | * <tt>UpnpImplFilename</tt> is the implementation file to use. | + | *<tt>Description</tt> is the device name, which is shown to the user on the dashboard. |
− | * If the device is IP based, <tt>IpAddress</tt> is the IP address and port of the device. | + | *<tt>UpnpDevFilename</tt> is the UPnP device description file name. |
− | * If this should be the child of another device, <tt>DeviceNumParent</tt> is the device number of the parent device. | + | *<tt>UpnpImplFilename</tt> is the implementation file to use. |
− | * <tt>RoomNum</tt> is the number of the room the device will be in. | + | *If the device is IP based, <tt>IpAddress</tt> is the IP address and port of the device. |
− | * <tt>StateVariables</tt> is a string containing the variables you want set when the device is created. You can specify multiple variables by separating them with a line feed ('\n'), and use ',' and '=' to separate service, variable and value, like this: <tt>service,variable=value\nservice,variable=value\n</tt>... | + | *If this should be the child of another device, <tt>DeviceNumParent</tt> is the device number of the parent device. |
− | + | *<tt>RoomNum</tt> is the number of the room the device will be in. | |
− | + | *<tt>PluginNum</tt> tells the device which plugin to use. The plugin will be installed automatically if it's not already installed. | |
− | + | *<tt>StateVariables</tt> is a string containing the variables you want set when the device is created. You can specify multiple variables by separating them with a line feed ('\n'), and use ',' and '=' to separate service, variable and value, like this: <tt>service,variable=value\nservice,variable=value\n</tt>... | |
− | + | *If <tt>Reload</tt> is '''1''', the Luup engine will be restarted after the device is created. | |
− | + | ||
− | + | |- | |
− | + | | style="border: 1px solid #000" | internalID | |
− | + | | style="border: 1px solid #000" | string | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | Description | |
− | + | | style="border: 1px solid #000" | string | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | UpnpDevFilename | |
− | + | | style="border: 1px solid #000" | string | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | UpnpImplFilename | |
− | + | | style="border: 1px solid #000" | string | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | IpAddress | |
− | + | | style="border: 1px solid #000" | string | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | MacAddress | |
− | + | | style="border: 1px solid #000" | string | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | Username | |
− | + | | style="border: 1px solid #000" | string | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | Password | |
− | + | | style="border: 1px solid #000" | string | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | DeviceNumParent | |
− | + | | style="border: 1px solid #000" | int | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | RoomNum | |
− | + | | style="border: 1px solid #000" | int | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | PluginNum | |
− | + | | style="border: 1px solid #000" | int | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | StateVariables | |
− | + | | style="border: 1px solid #000" | string | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | Reload | |
− | + | | style="border: 1px solid #000" | boolean | |
− | + | |- | |
− | + | | style="border: 1px solid #000" rowspan="2" | DeleteDevice | |
− | + | | style="border: 1px solid #000" | DeviceNum | |
− | + | | style="border: 1px solid #000" | int | |
− | + | | style="border: 1px solid #000" rowspan="2" | Delete the device given either through its number, or through its UDN. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | UDN | |
− | + | | style="border: 1px solid #000" | string | |
− | + | |- | |
− | + | | style="border: 1px solid #000" rowspan="3" | CreatePlugin | |
− | + | | style="border: 1px solid #000" | PluginNum | |
− | + | | style="border: 1px solid #000" | int | |
− | + | | style="border: 1px solid #000" rowspan="3" | Create a plugin with the <tt>PluginNum</tt> number and <tt>Version</tt> version. <tt>StateVariables</tt> are the variables that will be set when the device is created. For more information look at the description of the '''CreateDevice''' action above. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | Version | |
− | + | | style="border: 1px solid #000" | int | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | StateVariables | |
− | + | | style="border: 1px solid #000" | string | |
− | + | |- | |
− | + | | style="border: 1px solid #000" rowspan="1" | DeletePlugin | |
− | + | | style="border: 1px solid #000" | PluginNum | |
− | + | | style="border: 1px solid #000" | int | |
− | + | | style="border: 1px solid #000" rowspan="1" | Uninstall the given plugin. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" rowspan="2" | CreatePluginDevice | |
− | + | | style="border: 1px solid #000" | PluginNum | |
− | + | | style="border: 1px solid #000" | int | |
− | + | | style="border: 1px solid #000" rowspan="2" | Creates a device for plugin #<tt>PluginNum</tt>. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | StateVariables | |
− | + | | style="border: 1px solid #000" | string | |
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="2" | ImportUpnpDevice | ||
+ | | style="border: 1px solid #000" | UDN | ||
+ | | style="border: 1px solid #000" | UDN | ||
+ | | style="border: 1px solid #000" rowspan="2" | | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | RoomNum | ||
+ | | style="border: 1px solid #000" | DeviceNum | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="2" | LogIpRequest | ||
+ | | style="border: 1px solid #000" | IpAddress | ||
+ | | style="border: 1px solid #000" | UDN | ||
+ | | style="border: 1px solid #000" rowspan="2" | | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | MacAddress | ||
+ | | style="border: 1px solid #000" | UDN | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | SetHouseMode | ||
+ | | style="border: 1px solid #000" | Mode | ||
+ | | style="border: 1px solid #000" | int | ||
+ | | style="border: 1px solid #000" | Changes the house mode. | ||
+ | <tt>Mode</tt> can be: | ||
+ | |||
+ | *<tt>1</tt> = Home | ||
+ | *<tt>2</tt> = Away | ||
+ | *<tt>3</tt> = Night | ||
+ | *<tt>4</tt> = Vacation | ||
+ | |||
+ | |} | ||
+ | |||
== HaDevice1 == | == HaDevice1 == | ||
− | |||
− | |||
+ | *'''Service ID''': urn:micasaverde-com:serviceId:HaDevice1 | ||
+ | *'''File''': S_HaDevice1.xml | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | {| style="border: 1px solid #000; border-collapse: collapse" | + | {| style="border: 1px solid #000; border-collapse: collapse" |
− | + | |- | |
− | + | ! style="border: 1px solid #000; width: 150px" | Variable | |
− | + | ! style="border: 1px solid #000; width: 60px" | Type | |
− | + | ! style="border: 1px solid #000" | Description | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | CommFailure | |
− | + | | style="border: 1px solid #000" | i1 | |
− | + | | style="border: 1px solid #000" | Contains the communication status with the device: | |
− | + | * 0 : The communication with the device is OK. | |
− | + | * 1 : The communication with the device is not OK (e.g. lost connection). | |
− | + | * 2 : The device is reachable, but there's an authentication error (e.g. invalid credentials). | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | Configured | |
− | + | | style="border: 1px solid #000" | i1 | |
− | + | | style="border: 1px solid #000" | The configuration state of the device: | |
− | + | *-3 = Configuration failed | |
− | + | *-2 = Configuration in progress | |
− | + | *-1 = Device waiting to be configured | |
− | + | *0 = Device not configured | |
− | + | *1 = Device successfully configured | |
− | + | *2 = Device partially configured | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | AutoConfigure | ||
+ | | style="border: 1px solid #000" | boolean | ||
+ | | style="border: 1px solid #000" | If this is "1", MiOS will automatically check the routing info for this every 12 hours. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | BatteryLevel | ||
+ | | style="border: 1px solid #000" | i1 | ||
+ | | style="border: 1px solid #000" | The battery level reported by the device. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | BatteryDate | ||
+ | | style="border: 1px solid #000" | boolean | ||
+ | | style="border: 1px solid #000" | The UNIX time when the <tt>BatteryLevel</tt> was reported. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | LastTimeCheck | ||
+ | | style="border: 1px solid #000" | ui4 | ||
+ | | style="border: 1px solid #000" | Only for devices that are capable of implementing time, this is when the time was last checked. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | LastTimeOffset | ||
+ | | style="border: 1px solid #000" | ui1 | ||
+ | | style="border: 1px solid #000" | For <tt>LastTimeCheck</tt>, this is the timezone offset from UTC when the time was last checked. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | LastUpdate | ||
+ | | style="border: 1px solid #000" | ui4 | ||
+ | | style="border: 1px solid #000" | This is when the device information was last updated. (Mostly used for Z-Wave devices) | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | FirstConfigured | ||
+ | | style="border: 1px solid #000" | ui4 | ||
+ | | style="border: 1px solid #000" | This is when the device was first configured. (Mostly used for Z-Wave devices) | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | IgnoreRoom | ||
+ | | style="border: 1px solid #000" | boolean | ||
+ | | style="border: 1px solid #000" | Used only by the MiOS scene controller. Internal stuff. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | Commands | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | This is a comma separated list of <tt>ControlCodes</tt> for the enabled UI controls. If the <tt>ControlCode</tt> of an UI control (e.g. button) is not in this list, the button will be disabled (greyed out). If this variable is missing, all controls will be enabled. If this variable is empty, all controls will be disabled. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | IODevice | ||
+ | | style="border: 1px solid #000" | ui2 | ||
+ | | style="border: 1px solid #000" | The device number to connect to for IO. (this is on the master device) | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | IOPort | ||
+ | | style="border: 1px solid #000" | ui2 | ||
+ | | style="border: 1px solid #000" | The port to receive connections on from <tt>IODevice</tt>. (this is on the serial port) | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | ReverseOnOff | ||
+ | | style="border: 1px solid #000" | boolean | ||
+ | | style="border: 1px solid #000" | If this is "1", the commands for some devices are reversed (e.g. the On command will turn the device Off, and vice versa). Not all devices support this. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | sl_Alarm | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | Currently used only by the water leak sensor, contains the alarm code. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | ModeSetting | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | Contains the state of the device for each house mode. | ||
+ | The format is: | ||
+ | |||
+ | <house mode>:<state>;<house mode>:<state>;... | ||
+ | |||
+ | *If <tt>state</tt> is empty, the sensor is disarmed/bypassed. | ||
+ | *If <tt>state</tt> is "A", the sensor is armed. | ||
+ | |||
+ | Example: | ||
+ | |||
+ | 1:;2:A;3:A;4:A | ||
+ | |||
+ | *In <tt>Home</tt>(1) mode the sensor is disarmed; | ||
+ | *in <tt>Away</tt>(2), <tt>Night</tt>(3) and <tt>Vacation</tt>(4) modes the sensor is armed. | ||
+ | |||
+ | |- | ||
+ | | style="border: 1px solid #000" | Children | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | This is a comma separated list of KitDevice numbers. | ||
+ | LuaUPnP will create a child device for every item in the list, with the specified KitDevice properties. | ||
+ | |||
+ | Can be used to add children to devices which don't have MultiChannel support. | ||
+ | |||
+ | |- | ||
+ | | style="border: 1px solid #000" | PollRatings | ||
+ | | style="border: 1px solid #000" | double | ||
+ | | style="border: 1px solid #000" | This is a measure of how well the polls are doing, where 5.0 means that the last 50 polls were successful and 0.0 means that all the last 50 polls were unsuccessful. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | WakeupRatings | ||
+ | | style="border: 1px solid #000" | double | ||
+ | | style="border: 1px solid #000" | This is a measure of how well the wakeups are being received, where 5.0 means that the we received the last 50 wakeups when they have suppose to be sent and 0.0 means that we didn't receive any of the 50 last wakeups that the device should have sent | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | AlarmTypes | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | '''See the description of this variable in ZWaveDevice1 section, because it should belong to the service urn:micasaverde-com:serviceId:ZWaveDevice1, but it was kept in urn:micasaverde-com:serviceId:HaDevice1 to maintain backward compatibility.''' | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | CustomModeConfiguration | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | Implementation of custom preset modes for any device. | ||
+ | Format: | ||
+ | |||
+ | <mode code>;<mode name>;<upnp_action>[|<mode code>;<mode name>;<upnp_action>] | ||
+ | |||
+ | where: | ||
+ | |||
+ | *<tt><upnp_action></tt> = <code><service>/<action>/<parameters></code> | ||
+ | *<tt><parameters></tt> = <code><paramName>=<value>[&<paramName>=<value>]</code> | ||
+ | |||
+ | If the value is '?', it means that it's a wildcard and the ''ModeSettings'' variable should contain a comma separated list of values in order to substitute this '?' wildcard. If the value is not '?', then the value is fixed and it should be URL encoded. | ||
+ | |||
+ | Example: | ||
+ | |||
+ | h;h code;urn:upnp-org:serviceId:SwitchPower1/SetTarget/newTargetValue=?&otherParameter=45&another=?|s;s code;urn:upnp-org:serviceId:Dimming1/SetTargetLevel/newLevel=34&other=?&another=4 | ||
+ | |||
+ | |- | ||
+ | | style="border: 1px solid #000" | CustomModeControls | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | Used to tell the UI what controls to show in the House modes configuration page for the actions in the ''CustomModeConfiguration'' variable. | ||
+ | Format: | ||
+ | |||
+ | <mode>:<control info for arg #1>;<control info for arg #2>;..;<control info for arg #N>[|<mode>:<control info for arg #1>] | ||
+ | |||
+ | |} | ||
+ | |||
+ | |||
+ | |||
+ | {| style="border: 1px solid #000; border-collapse: collapse" | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 150px" rowspan="2" | Action | ||
+ | ! style="border: 1px solid #000" colspan="2" | Arguments | ||
+ | ! style="border: 1px solid #000" rowspan="2" | Description | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 130px" | Name | ||
+ | ! style="border: 1px solid #000; width: 140px" | Type or Related Variable | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="1" | Reconfigure | ||
+ | | style="border: 1px solid #000; text-align: center" colspan="2" | none | ||
+ | | style="border: 1px solid #000" rowspan="1" | Reconfigure the device. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="1" | StressTest | ||
+ | | style="border: 1px solid #000; text-align: center" colspan="2" | none | ||
+ | | style="border: 1px solid #000" rowspan="1" | Stress test the Z-Wave device. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="1" | Remove | ||
+ | | style="border: 1px solid #000; text-align: center" colspan="2" | none | ||
+ | | style="border: 1px solid #000" rowspan="1" | Remove the device from the Z-Wave network. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="1" | Poll | ||
+ | | style="border: 1px solid #000; text-align: center" colspan="2" | none | ||
+ | | style="border: 1px solid #000" rowspan="1" | Poll the device. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="1" | ToggleState | ||
+ | | style="border: 1px solid #000; text-align: center" colspan="2" | none | ||
+ | | style="border: 1px solid #000" rowspan="1" | Toggle the state of the device (e.g. if the device it's Off, turns it On). The device must have a binary state (On/Off, Locked/Unlocked, etc.). | ||
+ | |} | ||
== ZWaveDevice1 == | == ZWaveDevice1 == | ||
− | |||
− | |||
+ | *'''Service ID''': urn:micasaverde-com:serviceId:ZWaveDevice1 | ||
+ | *'''File''': S_ZWaveDevice1.xml ''(nonexistent)'' | ||
− | {| style="border: 1px solid #000; border-collapse: collapse" | + | |
− | + | ||
− | + | {| style="border: 1px solid #000; border-collapse: collapse" | |
− | + | |- | |
− | + | ! style="border: 1px solid #000; width: 150px" | Variable | |
− | + | ! style="border: 1px solid #000; width: 60px" | Type | |
− | + | ! style="border: 1px solid #000" | Description | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | PollSettings | |
− | + | | style="border: 1px solid #000" | ui4 | |
− | + | | style="border: 1px solid #000" | This is the polling frequency for a node (i.e. the minimum number of seconds between two poll commands to the same node). If this variable doesn't exist or is blank, the default polling frequency set in the <tt>ZWaveNetwork1</tt>'s <tt>PollFrequency</tt> variable will be used. If it's '''0''', polling will be disabled for this node. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | PollCommands | |
− | + | | style="border: 1px solid #000" | string | |
− | + | | style="border: 1px solid #000" | A comma-separated list of command classes/commands to poll. '<tt>X</tt>' means the device won't respond to any poll. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | MultiChEndpoint | |
− | + | | style="border: 1px solid #000" | string | |
− | + | | style="border: 1px solid #000" | Internal stuff. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | MultiChCapabilities | |
− | + | | style="border: 1px solid #000" | string | |
− | + | | style="border: 1px solid #000" | Internal stuff. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | Neighbors | |
− | + | | style="border: 1px solid #000" | string | |
− | + | | style="border: 1px solid #000" | This is a comma-separated list of the neighbor devices' node IDs. '1' is the Vera's node ID. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | NeighborsInverse | |
− | + | | style="border: 1px solid #000" | string | |
− | + | | style="border: 1px solid #000" | This is a comma-separated list of the neighbors that see us. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | Capabilities | |
− | + | | style="border: 1px solid #000" | string | |
− | + | | style="border: 1px solid #000" | The first 6 numbers in <tt>Capabilities</tt> are what is reported by the <tt>ZW_GetNodeProtocolInfo</tt> function: Capability, Security, Reserved, Basic Device Class [, Generic Device Class, Specific Device Class]. If the <tt>Capability</tt> is >= 128, then the device listens for commands, otherwise it's a battery operated device that only wakes up occasionally. After the '|' in <tt>Capabilities</tt> are the command classes supported. More information here: [[ZWave Command Classes]] | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | SecurityFailed | |
− | + | | style="border: 1px solid #000" | boolean | |
− | + | | style="border: 1px solid #000" | If this is "1", MiOS won't talk to this node with security even if the node reports it can. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | LastReset | |
− | + | | style="border: 1px solid #000" | ui4 | |
− | + | | style="border: 1px solid #000" | When we last reset the node association. (UNIX time) | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | WakeupInterval | |
− | + | | style="border: 1px solid #000" | ui4 | |
− | + | | style="border: 1px solid #000" | How often this battery operated device should wake up to report its status. The default value is 1800 seconds. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | ConfiguredWakeupInterval | |
− | + | | style="border: 1px solid #000" | ui4 | |
− | + | | style="border: 1px solid #000" | The wakeup interval already configured on the device. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | LastWakeup | |
− | + | | style="border: 1px solid #000" | ui4 | |
− | + | | style="border: 1px solid #000" | When this device last woke up and reported its status. (UNIX time) | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | LastRouteUpdate | |
− | + | | style="border: 1px solid #000" | ui4 | |
− | + | | style="border: 1px solid #000" | When this device's routing information was last checked/updated. (UNIX time) | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | Health | |
− | + | | style="border: 1px solid #000" | ui1 | |
− | + | | style="border: 1px solid #000" | A rating from 0-5. A large number means that MiOS can communicate with it easily. | |
− | + | |- | |
+ | | style="border: 1px solid #000" | HealthDate | ||
+ | | style="border: 1px solid #000" | ui4 | ||
+ | | style="border: 1px solid #000" | The date the rating was assigned. (UNIX time) | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | VariablesGet | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | This is a comma-separated list of the configuration settings read from the device. | ||
The format is: | The format is: | ||
+ | |||
variable1_number,variable1_value,variable2_number,variable2_value,... | variable1_number,variable1_value,variable2_number,variable2_value,... | ||
− | + | ||
− | + | |- | |
− | + | | style="border: 1px solid #000" | VariablesSet | |
− | + | | style="border: 1px solid #000" | string | |
+ | | style="border: 1px solid #000" | This is a comma-separated list of the configuration settings set by the user. | ||
The format is: | The format is: | ||
+ | |||
variable1_number-variable1_description,variable1_data_type,variable1_value,variable2_number-variable2_description,variable2_data_type,variable2_value,... | variable1_number-variable1_description,variable1_data_type,variable1_value,variable2_number-variable2_description,variable2_data_type,variable2_value,... | ||
− | + | ||
− | + | |- | |
− | + | | style="border: 1px solid #000" | AssociationGet | |
− | + | | style="border: 1px solid #000" | string | |
− | + | | style="border: 1px solid #000" | This are the association settings read from the device. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | AssociationSet | |
− | + | | style="border: 1px solid #000" | string | |
− | |- | + | | style="border: 1px solid #000" | Z-Wave associations for a device are stored in this variable. |
− | + | The associations are delimited by ';', with the first digit being the group number followed by a comma separated list of nodes to be associated with that group. Note these are Z-Wave node IDs, not device IDs (ie the 'altid' in the UI). If the node ID is 'z', it means the node ID of the device for which the variable is set. | |
− | + | ||
− | + | For multi-channel there is a '.' following the node ID with the endpoint ID. | |
− | + | ||
− | + | Example: | |
− | + | ||
− | + | 1,3.4,7;2,5.1,8 | |
− | + | ||
− | + | Means group #1 is associated with node #3 endpoint #4 and with node #7, which is non-multi-channel; group #2 is associated with node #5 endpoint #1, and with node #8. | |
− | + | ||
− | + | |- | |
− | + | | style="border: 1px solid #000" | AssociationNum | |
− | + | | style="border: 1px solid #000" | ui1 | |
− | + | | style="border: 1px solid #000" | The number of association groups supported by the device. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | NonceACK | |
− | + | | style="border: 1px solid #000" | boolean | |
− | + | | style="border: 1px solid #000" | Internal stuff. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | ManufacturerInfo | |
− | * <tt>H1</tt> = Heating | + | | style="border: 1px solid #000" | string |
− | * <tt>C1</tt> = Cooling | + | | style="border: 1px solid #000" | Device information. Format: |
− | * <tt>F1</tt> = Furnace | + | ManufacturerID,ProductType,ProductID |
− | * <tt>D1</tt> = Dry Air | + | |
− | * <tt>MA</tt> = Moist Air | + | |- |
− | * <tt>AC</tt> = Auto changeover | + | | style="border: 1px solid #000" | VersionInfo |
− | * <tt>H2</tt> = Energy Save Heating | + | | style="border: 1px solid #000" | string |
− | * <tt>C2</tt> = Energy Save Cooling | + | | style="border: 1px solid #000" | This is what's reported by the COMMAND_CLASS_VERSION command VERSION_REPORT. There are 5 values: Z-Wave Library Type, Z-Wave Protocol Version, Z-Wave Protocol Sub Version, Application Version, Application Sub Version. The <tt>Application Version</tt> is specific to the device and not defined by Z-Wave. |
− | * <tt>AH</tt> = Away Heating | + | |- |
− | + | | style="border: 1px solid #000" | SetPointInfo | |
− | + | | style="border: 1px solid #000" | string | |
− | + | | style="border: 1px solid #000" | A comma-separated list of the supported setpoint types: | |
− | + | *<tt>H1</tt> = Heating | |
− | + | *<tt>C1</tt> = Cooling | |
− | + | *<tt>F1</tt> = Furnace | |
− | + | *<tt>D1</tt> = Dry Air | |
− | + | *<tt>MA</tt> = Moist Air | |
− | + | *<tt>AC</tt> = Auto changeover | |
− | + | *<tt>H2</tt> = Energy Save Heating | |
− | + | *<tt>C2</tt> = Energy Save Cooling | |
− | + | *<tt>AH</tt> = Away Heating | |
− | + | ||
− | + | |- | |
− | + | | style="border: 1px solid #000" | NodeInfo | |
− | + | | style="border: 1px solid #000" | string | |
− | + | | style="border: 1px solid #000" | The list of the command classes supported by this device. (hexadecimal numbers) | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | InitialName | |
− | + | | style="border: 1px solid #000" | string | |
− | + | | style="border: 1px solid #000" | The name that was initially set when the node was first added. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | ConfiguredName | |
− | + | | style="border: 1px solid #000" | string | |
− | + | | style="border: 1px solid #000" | The user-specified name when we configured the node. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | ConfiguredVariable | |
− | + | | style="border: 1px solid #000" | string | |
− | * 1 = electric | + | | style="border: 1px solid #000" | The user-specified <tt>VariablesSet</tt> when we configured the node. |
− | * 2 = gas | + | |- |
− | * 3 = water | + | | style="border: 1px solid #000" | ConfiguredAssoc |
− | + | | style="border: 1px solid #000" | string | |
− | + | | style="border: 1px solid #000" | The user-specified <tt>AssociationSet</tt> when we configured the node. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | Documentation | |
− | + | | style="border: 1px solid #000" | string | |
− | + | | style="border: 1px solid #000" | URL of the documentation used on the ''Device Options'' page. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | MeterType | |
− | + | | style="border: 1px solid #000" | ui1 | |
− | + | | style="border: 1px solid #000" | The meter type: | |
− | + | *1 = electric | |
− | + | *2 = gas | |
− | + | *3 = water | |
− | + | ||
− | + | |- | |
− | + | | style="border: 1px solid #000" | MeterScale | |
− | + | | style="border: 1px solid #000" | ui4 | |
− | + | | style="border: 1px solid #000" | A bit map of the supported meter scales. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | AlarmType | |
− | + | | style="border: 1px solid #000" | string | |
− | + | | style="border: 1px solid #000" | List of the supported alarm types. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | PollOk, PollTxFail, PollNoReply | |
+ | | style="border: 1px solid #000" | ui4 | ||
+ | | style="border: 1px solid #000" | These variables are incremented each time the last poll job has the status they describe. They are reset after each network heal. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | ManualRoute | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | A route specified by the end-user. This is a '''dot'''-separated list of nodes. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | AllRoutesFailed | ||
+ | | style="border: 1px solid #000" | boolean | ||
+ | | style="border: 1px solid #000" | This is "1" when all the manual routes have failed. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | AutoRoute | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | This contains a list of various routes chosen by profilings. | ||
Format: | Format: | ||
+ | |||
route1_node1.route1_node2...-route1_score[x],route2_node1.route2_node2...-route2_score[x],... | route1_node1.route1_node2...-route1_score[x],route2_node1.route2_node2...-route2_score[x],... | ||
+ | |||
The <tt>score</tt> is a measure of latency and accuracy, the lower the number, the better. '<tt>x</tt>' means that the last attempt to use this route failed, so it won't be used anymore. | The <tt>score</tt> is a measure of latency and accuracy, the lower the number, the better. '<tt>x</tt>' means that the last attempt to use this route failed, so it won't be used anymore. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | |- | ||
+ | | style="border: 1px solid #000" | IgnoreDirectScene | ||
+ | | style="border: 1px solid #000" | boolean | ||
+ | | style="border: 1px solid #000" | Internal stuff. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | SwitchMlSettings | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | Internal stuff. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | BasicSetCapabilities | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | Allows defining actions for BASIC_SET messages. | ||
+ | Format: | ||
+ | |||
+ | <Value>=<Action><Endpoint> | ||
+ | |||
+ | where: | ||
+ | |||
+ | *Value : the BASIC_SET Value; if Value is "XX", it means any value | ||
+ | *Action : the Action to perform; the supported values are: T<tt>=Trip</tt>, U<tt>=Untrip</tt>, O<tt>=On</tt>, F<tt>=Off</tt>, D<tt>=Dim</tt> | ||
+ | *Endpoint : the Endpoint device ID (altid); if Endpoint=0, it means the parent node, or the current node if the device has no children | ||
+ | |||
+ | Examples: | ||
+ | |||
+ | <code>00=Ue1,FF=Te1</code> => if receive 0x00, Untrip endpoint "e1"; if receive 0xFF, Trip endpoint "e1" | ||
+ | |||
+ | <code>XX=D02</code> => Dim endpoint 02 to whatever value received | ||
+ | |||
+ | <code>00=T0,FF=U0</code> => if receive 0x00, Trip the current node; if receive 0xFF, Untrip the current node | ||
+ | |||
+ | |- | ||
+ | | style="border: 1px solid #000" | SupportedMRTypes | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | Allows defining which meter report types are supported by the device. | ||
+ | Format: | ||
+ | |||
+ | <CC Hex>-<Supported Type>,<Supported Type>;<CC Hex>-<Supported Type>,<Supported Type> | ||
+ | |||
+ | where: | ||
+ | |||
+ | *CC Hex : the Hex value of the command class (without 0x): | ||
+ | **0x31 for COMMAND_CLASS_SENSOR_MULTILEVEL | ||
+ | **0x32 for COMMAND_CLASS_METER | ||
+ | *Supported Type : The HEX value of the type supported for the Command class without 0x | ||
+ | **Supported types for COMMAND_CLASS_SENSOR_MULTILEVEL: | ||
+ | ***Temperature = 0x01 | ||
+ | ***General = 0x02 | ||
+ | ***Luminance = 0x03 | ||
+ | ***Power = 0x04 | ||
+ | ***RelativeHumidity = 0x05 | ||
+ | ***Velocity = 0x06 | ||
+ | ***Direction = 0x07 | ||
+ | ***AtmosphericPressure = 0x08 | ||
+ | ***BarometricPressure = 0x09 | ||
+ | ***SolarRadiation = 0x0A | ||
+ | ***DewPoint = 0x0B | ||
+ | ***RainRate = 0x0C | ||
+ | ***TideLevel = 0x0D | ||
+ | ***Weight = 0x0E | ||
+ | ***Voltage = 0x0F | ||
+ | ***Current = 0x10 | ||
+ | ***CO2level = 0x11 | ||
+ | ***AirFlow = 0x12 | ||
+ | ***TankCapacity = 0x13 | ||
+ | ***Distance = 0x14 | ||
+ | ***SeismicIntensity = 0x19 | ||
+ | ***UltraViolet = 0x1B | ||
+ | |||
+ | **Supported types for COMMAND_CLASS_METER: | ||
+ | ***Electric=0x01 | ||
+ | ***Gas=0x02 | ||
+ | ***Water=0x03 | ||
+ | |||
+ | Examples: | ||
+ | |||
+ | <code>31-0F,0E,10,1B;32-01,03</code> => Device supports Voltage, Weight, Current and UltraViolet for COMMAND_CLASS_SENSOR_MULTILEVEL and Electric and Water from COMMAND_CLASS_METER | ||
+ | |||
+ | If the variable is empty it will be treated as support anything. If the variable does not contain a command class that command class will be treated as support everything. | ||
+ | |||
+ | |- | ||
+ | | style="border: 1px solid #000" | NoChildren | ||
+ | | style="border: 1px solid #000" | boolean | ||
+ | | style="border: 1px solid #000" | If this variable is '''1''', delete the child devices, and don't allow the creation of other child devices, to avoid creating ghost devices. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | AlarmTypes | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | '''(NOTE: this is its new service. ''urn:micasaverde-com:serviceId:HaDevice1'' was left unchanged to mantain backward compatibility.)''' | ||
+ | Allows setting what each Alarm Type does for devices using COMMAND_CLASS_ALARM / COMMAND_CLASS_NOTIFICATION. The format is: | ||
+ | |||
+ | AlarmTypes:AlarmLevels:AlarmCode:Action;AlarmTypes:AlarmLevels:AlarmCode:Action | ||
+ | |||
+ | where: | ||
+ | |||
+ | *<tt>AlarmTypes</tt> : <code>type1,type2-type3,!type4</code> | ||
+ | *<tt>AlarmLevels</tt> : <code>00,01,05-20,!FF</code> | ||
+ | *<tt>AlarmCode</tt> : <code>SMOKE</code>, <code>CO</code>, <code>TAMPER_ALARM</code>, etc. | ||
+ | *<tt>Action</tt> : <code>0</code> = don't update the ''Tripped'' variable, <code>1</code> = update the ''Tripped'' variable, <code>2</code> = ignore the message (i.e. don't update the ''sl_Alarm'' variable) | ||
+ | |||
+ | Example: | ||
+ | |||
+ | 01:FF:SMOKE:1;0C:FF::1;0D:FF:TAMPER_ALARM:0 | ||
+ | |||
+ | *if Alarm Type is ''0x01'' and the Alarm Level is ''0xFF'', then set the ''sl_Alarm'' variable to "SMOKE" and trip the sensor | ||
+ | *if Alarm Type is ''0x0C'' and the Alarm Level is ''0xFF'', don't update the ''sl_Alarm'' variable, and trip the sensor | ||
+ | *if Alarm Type is ''0x0D'' and the Alarm Level is ''0xFF'', then set the ''sl_Alarm'' variable to "TAMPER_ALARM", but don't trip the sensor | ||
+ | |||
+ | |- | ||
+ | | style="border: 1px solid #000" | AlarmTypesV2 | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | Allows customizing the handling of the COMMAND_CLASS_ALARM / COMMAND_CLASS_NOTIFICATION >= v2 messages. | ||
+ | The format is a ';' separated list of tokens. Format of each token: | ||
+ | |||
+ | TypesV1:LevelV1:NotificationStatus:NotificationType:Event:AlarmCode:TripValue | ||
+ | |||
+ | Where: | ||
+ | |||
+ | *<tt>TypesV1</tt> : type1_v1,type2_v1-type3_v1,!type4_v1, XX (don't care) | ||
+ | *<tt>LevelV1</tt> : 00,01,02-05,!FF, XX (don't care) | ||
+ | *<tt>NotificationStatus</tt> : 01-FF, XX (don't care) | ||
+ | *<tt>NotificationType</tt> : type1,type2-type3,!type4, XX (don't care) | ||
+ | *<tt>Event</tt> : 00,01,03-5A,!04,!FF, XX (don't care) | ||
+ | *<tt>AlarmCode</tt> : SMOKE, CO, TAMPER_ALARM, etc. Leave empty if you don't want to set an alarm code. | ||
+ | *<tt>TripValue</tt> : 0 = Untrip, 1 = Trip, C = don't update the Tripped variable (only the Alarm Code), X = Ignore | ||
+ | |||
+ | If the TypeV1 or NotificationType are not XX and if there was no match, the function will try the next token. | ||
+ | |||
+ | |- | ||
+ | | style="border: 1px solid #000" | AssociationGroups | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | If specified, associate ourselves only with these groups, not all groups. The groups should be given as a comma separated list, like this: | ||
+ | 1,3,4,255 | ||
+ | |||
+ | You could add this variable with a value = 0 if you want to be in NO association groups. | ||
+ | |||
+ | |- | ||
+ | | style="border: 1px solid #000" | IgnoreCommandClass | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | Allows ignoring specific command classes (CC) for that device. | ||
+ | Format: | ||
+ | |||
+ | <CC #1>-<Command #1>,<Command #2>;<CC #2>-*;<CC #3>-<Command #1> | ||
+ | |||
+ | *Both the command classes and the commands are given by their hex code. | ||
+ | *<nowiki>*</nowiki> is used as an wild card indicating all commands. | ||
+ | |||
+ | Example: | ||
+ | |||
+ | 26-03,05;71-*;20-03 | ||
+ | |||
+ | That means: ignore CC 26 commands 03 and 05, all commands from CC 71, and CC 20 command 03. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | TemperatureScale | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | Contains information about the thermostat setpoint. | ||
+ | Format: | ||
+ | <code>Precision,Scale,Size</code> | ||
+ | |||
+ | Where: | ||
+ | *Precision: The number of decimals | ||
+ | *Scale: 0 = Celsius, 1 = Fahrenheit | ||
+ | *Size: Size of the setpoint in bits: number of bits = 2<sup>2+''Size''</sup> | ||
+ | {| class="wikitable" | ||
+ | ! Size || Number of bits | ||
+ | |- | ||
+ | | 1 || 8 | ||
+ | |- | ||
+ | | 2 || 16 | ||
+ | |- | ||
+ | | ... | ||
+ | |- | ||
+ | | 4 || 32 | ||
+ | |} | ||
+ | |} | ||
== ZWaveNetwork1 == | == ZWaveNetwork1 == | ||
− | |||
− | |||
+ | *'''Service ID''': urn:micasaverde-com:serviceId:ZWaveNetwork1 | ||
+ | *'''File''': S_ZWaveNetwork1.xml | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | {| style="border: 1px solid #000; border-collapse: collapse" | + | {| style="border: 1px solid #000; border-collapse: collapse" |
− | ! style="border: 1px solid #000; width: 150px" rowspan="2" | Action | + | |- |
− | + | ! style="border: 1px solid #000; width: 150px" | Variable | |
− | + | ! style="border: 1px solid #000; width: 60px" | Type | |
− | + | ! style="border: 1px solid #000" | Description | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | NetStatusID | |
− | + | | style="border: 1px solid #000" | ui1 | |
− | + | | style="border: 1px solid #000" | The status of the Z-Wave network: | |
− | + | *0 = Status not set | |
− | + | *1 = OK | |
− | + | *2 = Quiting | |
− | * <tt>ResetMode</tt> can be "SIS" or "SUC". | + | *3 = Waiting to quit |
− | * <tt>HomeID</tt> is a 32 bit hex number representing the new HomeID. If this parameter doesn't exist or is 0, MiOS will generate the new HomeID. | + | *4 = No dongle |
− | * <tt>ZeroMemory</tt>: if this is "1", the memory will be zeroed before resetting. | + | *5 = Configuring: still running init/configure scripts |
− | + | *6 = Failure | |
− | + | *7 = Initializing | |
− | + | ||
− | + | |- | |
− | + | | style="border: 1px solid #000" | NetStatusText | |
− | + | | style="border: 1px solid #000" | string | |
− | + | | style="border: 1px solid #000" | Full Z-Wave network status description | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | LastError | |
− | + | | style="border: 1px solid #000" | string | |
− | + | | style="border: 1px solid #000" | The last Z-Wave error in the network | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | LastUpdate | |
− | + | | style="border: 1px solid #000" | ui4 | |
− | + | | style="border: 1px solid #000" | The UNIX time when the Z-Wave component of the LuaUPnP engine started. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | LastDongleBackup | |
− | + | | style="border: 1px solid #000" | ui4 | |
− | + | | style="border: 1px solid #000" | The UNIX time of the last Z-Wave dongle backup. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | LastHeal | |
− | + | | style="border: 1px solid #000" | ui4 | |
− | + | | style="border: 1px solid #000" | The UNIX time of the last Z-Wave network heal. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | VersionInfo | |
− | + | | style="border: 1px solid #000" | boolean | |
− | + | | style="border: 1px solid #000" | The Z-Wave version. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | HomeID | |
− | + | | style="border: 1px solid #000" | boolean | |
− | + | | style="border: 1px solid #000" | The unique ID of the Z-Wave network. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | Role | |
− | + | | style="border: 1px solid #000" | boolean | |
− | + | | style="border: 1px solid #000" | Z-Wave specific stuff. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | TO3066 | |
− | + | | style="border: 1px solid #000" | boolean | |
− | + | | style="border: 1px solid #000" | Internal stuff. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | ComPort | |
− | + | | style="border: 1px solid #000" | string | |
− | + | | style="border: 1px solid #000" | This is the port where MiOS will search for the Z-Wave dongle. On Vera Lite, this is <tt>/dev/ttyS0</tt>. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | LockComPort | |
− | * <tt>InclusionMode</tt> can be "FullPower" or anything else, in which case the exclusion will be low power. | + | | style="border: 1px solid #000" | boolean |
− | * <tt>NodeType</tt> is the type of node to be excluded. The valid values are: | + | | style="border: 1px solid #000" | If this is "1", MiOS won't search for the Z-Wave dongle on the other available ports if it doesn't find it on <tt>ComPort</tt>. |
− | ** 1 = any | + | |- |
− | ** 2 = controller | + | | style="border: 1px solid #000" | Use45 |
− | ** 3 = slave | + | | style="border: 1px solid #000" | boolean |
− | ** 4 = existing | + | | style="border: 1px solid #000" | If this is "1", use Z-Wave version 3.20 instead of 2.78. |
− | ** 5 = stop | + | |- |
− | * <tt>Timeout</tt> is the number of seconds Vera will be in exclude mode. | + | | style="border: 1px solid #000" | UseMR |
− | * If <tt>Multiple</tt> is "0" then Vera will exit exclude mode after a node is excluded. | + | | style="border: 1px solid #000" | boolean |
− | * If <tt>Reload</tt> is "1" the LuaUPnP engine will be restarted after Vera exits exclude mode. | + | | style="border: 1px solid #000" | If this is "1", use MiOS routing. |
− | + | |- | |
− | + | | style="border: 1px solid #000" | LimitNeighbors | |
− | + | | style="border: 1px solid #000" | boolean | |
− | + | | style="border: 1px solid #000" | With MiOS routing: if this is "1", when the routing table is created, consider only Z-Wave's neighbors as valid options. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | PollingEnabled | |
− | + | | style="border: 1px solid #000" | boolean | |
− | + | | style="border: 1px solid #000" | If this is "1", MiOS will automatically poll the Z-Wave devices. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | PollDelayInitial | |
− | + | | style="border: 1px solid #000" | ui1 | |
− | + | | style="border: 1px solid #000" | Number of seconds after the LuaUPnP engine has (re-)started before the polling loop begins. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | PollDelayDeadTime | |
− | + | | style="border: 1px solid #000" | ui1 | |
− | + | | style="border: 1px solid #000" | Number of seconds MiOS must not have transmitted any non-poll command before the next poll command is sent. | |
− | + | |- | |
− | * <tt>InclusionMode</tt> can be "FullPower" or anything else, in which case the inclusion will be low power. | + | | style="border: 1px solid #000" | PollMinDelay |
− | * <tt>NodeType</tt> is the type of node to be included. The valid values are: | + | | style="border: 1px solid #000" | ui1 |
− | ** 1 = any | + | | style="border: 1px solid #000" | Number of seconds between poll commands. |
− | ** 2 = controller | + | |- |
− | ** 3 = slave | + | | style="border: 1px solid #000" | PollFrequency |
− | ** 4 = existing | + | | style="border: 1px solid #000" | ui1 |
− | ** 5 = stop | + | | style="border: 1px solid #000" | Minimum number of seconds between poll commands to the same node. |
− | * <tt>Timeout</tt> is the number of seconds Vera will be in include mode. | + | |- |
− | * If <tt>Multiple</tt> is "0" then Vera will exit include mode after a node is included. | + | | style="border: 1px solid #000" | SceneIDs |
− | * <tt>ControllerShift</tt> must be "0". | + | | style="border: 1px solid #000" | string |
− | * If <tt>Reload</tt> is "1" the LuaUPnP engine will be restarted after Vera exits include mode. | + | | style="border: 1px solid #000" | Used for scene controllers. This is a CSV where each item has this format: <tt>node#-button#=ZWaveSceneID</tt> |
− | + | |} | |
− | + | ||
− | + | ||
− | + | ||
− | + | {| style="border: 1px solid #000; border-collapse: collapse" | |
− | + | |- | |
− | + | ! style="border: 1px solid #000; width: 150px" rowspan="2" | Action | |
− | + | ! style="border: 1px solid #000" colspan="2" | Arguments | |
− | + | ! style="border: 1px solid #000" rowspan="2" | Description | |
− | + | |- | |
− | + | ! style="border: 1px solid #000; width: 130px" | Name | |
− | + | ! style="border: 1px solid #000; width: 140px" | Type or Related Variable | |
− | + | |- | |
− | + | | style="border: 1px solid #000" rowspan="3" | ResetNetwork | |
− | + | | style="border: 1px solid #000" | ResetMode | |
− | + | | style="border: 1px solid #000" | string | |
− | + | | style="border: 1px solid #000" rowspan="3" | Reset the Z-Wave network. | |
− | + | *<tt>ResetMode</tt> can be "SIS" or "SUC". | |
− | + | *<tt>HomeID</tt> is a 32 bit hex number representing the new HomeID. If this parameter doesn't exist or is 0, MiOS will generate the new HomeID. | |
− | + | *<tt>ZeroMemory</tt>: if this is "1", the memory will be zeroed before resetting. | |
− | + | ||
− | + | |- | |
− | + | | style="border: 1px solid #000" | HomeID | |
− | + | | style="border: 1px solid #000" | string | |
− | * <tt>BatteryMinutes</tt>: how many minutes to wait for battery operated devices to be discovered. | + | |- |
− | * If <tt>Node</tt> is not blank, then only this node will be repaired. | + | | style="border: 1px solid #000" | ZeroMemory |
− | * <tt>StressCycles</tt> is the number of cycles to stress test each node. | + | | style="border: 1px solid #000" | boolean |
− | * If <tt>Configure</tt> is "1", then all the devices will be re-configured when done. | + | |- |
− | * If <tt>ManualRoute</tt> is "1", then only update MiOS routing (overrides other settings). | + | | style="border: 1px solid #000" rowspan="3" | PutByte |
− | * <tt>StartStage</tt> is the starting heal stage. The valid values are: | + | | style="border: 1px solid #000" | StartAddress |
− | ** 1 = Request network update. | + | | style="border: 1px solid #000" | string |
− | ** 2 = Request neighbor node update. | + | | style="border: 1px solid #000" rowspan="3" | Used to convert Z-Wave from 2.78 to 3.20 in which case the <tt>StartAddress</tt> parameter must be "convert502_452" and the rest are ignored. |
− | ** 3 = Update the routing tables and neighbor nodes. | + | |- |
− | ** 4 = Calculate the best routes. | + | | style="border: 1px solid #000" | StopAddress |
− | ** 5 = Re-configure all nodes. | + | | style="border: 1px solid #000" | string |
− | ** 6 = Wait <tt>BatteryMinutes</tt> to request neighbor node update and configure all battery operated nodes. | + | |- |
− | ** 7 = Do a stress test for <tt>StressCycles</tt>. | + | | style="border: 1px solid #000" | Value |
− | * <tt>StopStage</tt>: Same as <tt>StartStage</tt>. | + | | style="border: 1px solid #000" | ui4 |
− | + | |- | |
− | + | | style="border: 1px solid #000" rowspan="1" | ReconfigureAllNodes | |
− | + | | style="border: 1px solid #000" | FailedOnly | |
− | + | | style="border: 1px solid #000" | boolean | |
− | + | | style="border: 1px solid #000" rowspan="1" | Reconfigure the Z-Wave nodes. If <tt>FailedOnly</tt> is "1", only the devices that failed to configure are reconfigured. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" rowspan="1" | UpdateNetwork | |
− | + | | style="border: 1px solid #000; text-align: center" colspan="2" | none | |
− | + | | style="border: 1px solid #000" rowspan="1" | Get network update from SUC/SIS. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" rowspan="1" | UpdateNeighbors | |
− | + | | style="border: 1px solid #000" | Device | |
− | + | | style="border: 1px solid #000" | ui4 | |
− | + | | style="border: 1px solid #000" rowspan="1" | Update the neighbor nodes of the given device. <tt>Device</tt> is the device number. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" rowspan="1" | BackupDongle | |
− | + | | style="border: 1px solid #000" | Restore | |
− | + | | style="border: 1px solid #000" | boolean | |
− | + | | style="border: 1px solid #000" rowspan="1" | Backs up the Z-Wave network. The backup is in <tt>/etc/cmh/dongle.dump</tt>. If <tt>Restore</tt> is "1", the Z-Wave network is restored from the backup. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" rowspan="1" | PollAllNodes | |
− | + | | style="border: 1px solid #000; text-align: center" colspan="2" | none | |
− | + | | style="border: 1px solid #000; text-align: center" rowspan="1" | - | |
− | * If <tt>IsTemporary</tt> is "1", then these polling settings will be lost when the LuaUPnP engine is reloaded. | + | |- |
− | * <tt>PollingEnabled</tt>: see the related variable. | + | | style="border: 1px solid #000" rowspan="5" | RemoveNodes |
− | * <tt>PollDelayInitial</tt>: see the related variable. | + | | style="border: 1px solid #000" | InclusionMode |
− | * <tt>PollDelayDeadTime</tt>: see the related variable. | + | | style="border: 1px solid #000" | string |
− | * <tt>PollMinDelay</tt>: see the related variable. | + | | style="border: 1px solid #000" rowspan="5" | Puts Vera in exclude mode. |
− | * <tt>PollFrequency</tt>: see the related variable. | + | *<tt>InclusionMode</tt> can be "FullPower" or anything else, in which case the exclusion will be low power. |
− | + | *<tt>NodeType</tt> is the type of node to be excluded. The valid values are: | |
− | + | **1 = any | |
− | + | **2 = controller | |
− | + | **3 = slave | |
− | + | **4 = existing | |
− | + | **5 = stop | |
− | + | *<tt>Timeout</tt> is the number of seconds Vera will be in exclude mode. | |
− | + | *If <tt>Multiple</tt> is "0" then Vera will exit exclude mode after a node is excluded. | |
− | + | *If <tt>Reload</tt> is "1" the LuaUPnP engine will be restarted after Vera exits exclude mode. | |
− | + | ||
− | + | |- | |
− | + | | style="border: 1px solid #000" | NodeType | |
− | + | | style="border: 1px solid #000" | ui1 | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | Timeout | |
− | + | | style="border: 1px solid #000" | ui1 | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | Multiple | |
− | + | | style="border: 1px solid #000" | boolean | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | Reload | |
− | + | | style="border: 1px solid #000" | boolean | |
− | + | |- | |
− | + | | style="border: 1px solid #000" rowspan="7" | AddNodes | |
− | + | | style="border: 1px solid #000" | InclusionMode | |
− | + | | style="border: 1px solid #000" | string | |
− | + | | style="border: 1px solid #000" rowspan="7" | Puts Vera in include mode. | |
− | + | *<tt>InclusionMode</tt> can be "FullPower" or anything else, in which case the inclusion will be low power. | |
− | + | *<tt>NodeType</tt> is the type of node to be included. The valid values are: | |
+ | **1 = any | ||
+ | **2 = controller | ||
+ | **3 = slave | ||
+ | **4 = existing | ||
+ | **5 = stop | ||
+ | *<tt>Timeout</tt> is the number of seconds Vera will be in include mode. | ||
+ | *If <tt>Multiple</tt> is "0" then Vera will exit include mode after a node is included. | ||
+ | *<tt>ControllerShift</tt> must be "0". | ||
+ | *If <tt>Reload</tt> is "1" the LuaUPnP engine will be restarted after Vera exits include mode. | ||
+ | *<tt>PK_KitDevice</tt> is the KitDevice number of the device we expect to be included. | ||
+ | |||
+ | |- | ||
+ | | style="border: 1px solid #000" | NodeType | ||
+ | | style="border: 1px solid #000" | ui1 | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | Timeout | ||
+ | | style="border: 1px solid #000" | ui1 | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | Multiple | ||
+ | | style="border: 1px solid #000" | boolean | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | ControllerShift | ||
+ | | style="border: 1px solid #000" | boolean | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | Reload | ||
+ | | style="border: 1px solid #000" | boolean | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | PK_KitDevice | ||
+ | | style="border: 1px solid #000" | ui4 | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="1" | DownloadNetwork | ||
+ | | style="border: 1px solid #000; text-align: center" colspan="2" | none | ||
+ | | style="border: 1px solid #000" rowspan="1" | Copy the Z-Wave network from a master controller. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="7" | HealNetwork | ||
+ | | style="border: 1px solid #000" | BatteryMinutes | ||
+ | | style="border: 1px solid #000" | ui1 | ||
+ | | style="border: 1px solid #000" rowspan="7" | Heals/consolidates the Z-Wave network. | ||
+ | *<tt>BatteryMinutes</tt>: how many minutes to wait for battery operated devices to be discovered. | ||
+ | *If <tt>Node</tt> is not blank, then only this node will be repaired. | ||
+ | *<tt>StressCycles</tt> is the number of cycles to stress test each node. | ||
+ | *If <tt>Configure</tt> is "1", then all the devices will be re-configured when done. | ||
+ | *If <tt>ManualRoute</tt> is "1", then only update MiOS routing (overrides other settings). | ||
+ | *<tt>StartStage</tt> is the starting heal stage. The valid values are: | ||
+ | **1 = Request network update. | ||
+ | **2 = Request neighbor node update. | ||
+ | **3 = Update the routing tables and neighbor nodes. | ||
+ | **4 = Calculate the best routes. | ||
+ | **5 = Re-configure all nodes. | ||
+ | **6 = Wait <tt>BatteryMinutes</tt> to request neighbor node update and configure all battery operated nodes. | ||
+ | **7 = Do a stress test for <tt>StressCycles</tt>. | ||
+ | *<tt>StopStage</tt>: Same as <tt>StartStage</tt>. | ||
+ | |||
+ | |- | ||
+ | | style="border: 1px solid #000" | Node | ||
+ | | style="border: 1px solid #000" | ui1 | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | StressCycles | ||
+ | | style="border: 1px solid #000" | ui1 | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | Configure | ||
+ | | style="border: 1px solid #000" | boolean | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | ManualRoute | ||
+ | | style="border: 1px solid #000" | boolean | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | StartStage | ||
+ | | style="border: 1px solid #000" | ui1 | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | StopStage | ||
+ | | style="border: 1px solid #000" | ui1 | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="6" | SetPolling | ||
+ | | style="border: 1px solid #000" | IsTemporary | ||
+ | | style="border: 1px solid #000" | boolean | ||
+ | | style="border: 1px solid #000" rowspan="6" | Set the polling parameters. | ||
+ | *If <tt>IsTemporary</tt> is "1", then these polling settings will be lost when the LuaUPnP engine is reloaded. | ||
+ | *<tt>PollingEnabled</tt>: see the related variable. | ||
+ | *<tt>PollDelayInitial</tt>: see the related variable. | ||
+ | *<tt>PollDelayDeadTime</tt>: see the related variable. | ||
+ | *<tt>PollMinDelay</tt>: see the related variable. | ||
+ | *<tt>PollFrequency</tt>: see the related variable. | ||
+ | |||
+ | |- | ||
+ | | style="border: 1px solid #000" | PollingEnabled | ||
+ | | style="border: 1px solid #000" | PollingEnabled | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | PollDelayInitial | ||
+ | | style="border: 1px solid #000" | PollDelayInitial | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | PollDelayDeadTime | ||
+ | | style="border: 1px solid #000" | PollDelayDeadTime | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | PollMinDelay | ||
+ | | style="border: 1px solid #000" | PollMinDelay | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | PollFrequency | ||
+ | | style="border: 1px solid #000" | PollFrequency | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="2" | SendData | ||
+ | | style="border: 1px solid #000" | Node | ||
+ | | style="border: 1px solid #000" | ui1 | ||
+ | | style="border: 1px solid #000" rowspan="2" | Sends the Z-Wave <code>Data</code> to the Z-Wave <code>Node</code>. | ||
+ | Examples: | ||
+ | |||
+ | 1. Set parameter 29 to "3" on node 15: | ||
+ | |||
+ | *HTTP request: | ||
+ | |||
+ | <code>/data_request?id=action&DeviceNum=1&serviceId=urn:micasaverde-com:serviceId:ZWaveNetwork1&action=SendData&Node=15&Data=x70%204%2029%201%203</code> | ||
+ | |||
+ | *Lua: | ||
+ | |||
+ | <code>luup.call_action("urn:micasaverde-com:serviceId:ZWaveNetwork1", "SendData", {Node=15, Data="x70 4 29 1 3"}, 1)</code> | ||
+ | |||
+ | 2. Turn on a light (node 7): | ||
+ | |||
+ | *HTTP request: | ||
+ | |||
+ | <code>/data_request?id=action&DeviceNum=1&serviceId=urn:micasaverde-com:serviceId:ZWaveNetwork1&action=SendData&Node=7&Data=x20%201%20xFF</code> | ||
+ | |||
+ | *Lua: | ||
+ | |||
+ | <code>luup.call_action("urn:micasaverde-com:serviceId:ZWaveNetwork1", "SendData", {Node=7, Data="x20 1 xFF"}, 1)</code> | ||
+ | |||
+ | |- | ||
+ | | style="border: 1px solid #000" | Data | ||
+ | | style="border: 1px solid #000" | string | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="1" | SimulateIncomingData | ||
+ | | style="border: 1px solid #000" | Data | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" rowspan="1" | Calls the Z-Wave message handler for the given data. | ||
+ | |} | ||
+ | |||
== USBUIRT1 == | == USBUIRT1 == | ||
− | |||
− | |||
+ | *'''Service ID''': urn:micasaverde-com:serviceId:USBUIRT1 | ||
+ | *'''File''': S_USBUIRT.xml | ||
+ | |||
+ | |||
+ | |||
+ | {| style="border: 1px solid #000; border-collapse: collapse" | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 150px" | Variable | ||
+ | ! style="border: 1px solid #000; width: 60px" | Type | ||
+ | ! style="border: 1px solid #000" | Description | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | ComPort | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | The path of the USB port the UIRT is connected to. On Vera Lite this is <tt>/dev/ttyUSB0</tt> | ||
+ | |} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== Camera1 == | == Camera1 == | ||
− | |||
− | |||
+ | *'''Service ID''': urn:micasaverde-com:serviceId:Camera1 | ||
+ | *'''File''': S_Camera1.xml | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | The <tt>Info</tt> parameters are: | + | {| style="border: 1px solid #000; border-collapse: collapse" |
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 150px" | Variable | ||
+ | ! style="border: 1px solid #000; width: 60px" | Type | ||
+ | ! style="border: 1px solid #000" | Description | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | VideoURLs | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | This variable defines the streaming parameters, and without it streaming doesn't work. This variable has this structure: | ||
+ | <tt>Info1:URL1:Info2:URL2:</tt> | ||
+ | |||
+ | <br/>The <tt>Info</tt> parameters are: | ||
1. The protocol: can be <tt>rtsp</tt> or <tt>http</tt> | 1. The protocol: can be <tt>rtsp</tt> or <tt>http</tt> | ||
Line 803: | Line 1,151: | ||
2. HTTP authentication required: 1 = yes, send the username and password in the request, 0 = no, don't send the username and password | 2. HTTP authentication required: 1 = yes, send the username and password in the request, 0 = no, don't send the username and password | ||
− | 3. Video codec: <tt>mpeg4</tt> | + | 3. Video codec: <tt>mpeg4</tt> | <tt>mjpeg</tt> | etc. |
4. Audio codec: blank = no audio | 4. Audio codec: blank = no audio | ||
Line 813: | Line 1,161: | ||
7. Height: 480 | 7. Height: 480 | ||
− | 8. Players: <tt>q</tt> | + | 8. Players: <tt>q</tt>|<tt>a</tt>|<tt>i</tt>|<tt>w</tt>, a string of characters indicating known good players. <tt>q</tt> = Quicktime plugin, <tt>a</tt> = Android, <tt>i</tt> = iPhone, <tt>w</tt> = normal web browser. |
+ | <br/>The <tt>URL</tt> is the streaming URL compatible with the players specified in <tt>Info</tt>. | ||
− | + | Currently only the <tt>protocol</tt>, <tt>HTTP auth</tt>, <tt>players</tt> and <tt>URL</tt> parameters are used. The rest of the parameters are ignored. | |
− | + | <br/><tt>VideoURLs</tt> example for VistaCam: | |
+ | <tt>rtsp,0,mpeg4,,m,640,480,qai:img/media.sav:http,0,mjpeg,,m,640,480,w:img/video.mjpeg:</tt> | ||
− | <tt> | + | |- |
+ | | style="border: 1px solid #000" | URL | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | This is the URL to get a snapshot from the camera. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | RingBuffer | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | This variable contains the ring buffer parameters. | ||
+ | The format is: <code>Enabled,BufferSeconds,NumFramesToPurge,Format,URL</code> | ||
+ | |||
+ | *<code>Enabled</code> can be '''0''' or '''1'''. If it's '''1''', the ring buffer is enabled. | ||
+ | *<code>BufferSeconds</code>: how many seconds of video to keep in the buffer. This is limited by the available memory on Vera. Setting this to a large value will cause instability. | ||
+ | *<code>NumFramesToPurge</code>: how many frames to wait before attempting to purge. | ||
+ | *<code>Format</code> can be '''2'''=MJPEG, '''3'''=MP4. | ||
+ | *<code>URL</code> is the streaming URL. | ||
+ | |||
+ | |- | ||
+ | | style="border: 1px solid #000" | RelatedSensors | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | Comma separated list of device numbers: archive a photo whenever one of the sensors is tripped. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | SensorArchiveSeconds | ||
+ | | style="border: 1px solid #000" | ui4 | ||
+ | | style="border: 1px solid #000" | How many seconds to archive the video after the sensor(s) are tripped. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | RelatedLights | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | Comma separated list of device numbers: which lights should be turned on when viewing this camera. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | LightOptions | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | When to turn on the lights: | ||
+ | *<tt>V</tt>: when I view the camera from the web or phone; | ||
+ | *<tt>S</tt>: when the sensor(s) above are tripped and they are armed; | ||
+ | *<tt>B</tt>: when the sensors above are tripped and they are *not* armed; | ||
+ | *<tt>A</tt>: when you take an automatic picture for the archive; | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
So <tt>VSBA</tt> means do them all. | So <tt>VSBA</tt> means do them all. | ||
− | + | ||
− | + | |- | |
− | + | | style="border: 1px solid #000" | AutoArchiveSeconds | |
− | + | | style="border: 1px solid #000" | ui4 | |
− | + | | style="border: 1px solid #000" | Archives a picture from the camera every this number of seconds. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | AutoArchivePreserveDays | |
− | + | | style="border: 1px solid #000" | ui4 | |
− | + | | style="border: 1px solid #000" | How many days to keep the pictures in the archive. | |
+ | |- | ||
+ | | style="border: 1px solid #000" | Streams | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | Contains a list separated by semicolons, where each element in the list has the following format: | ||
+ | <code><stream type>,<protocol>,<url></code> | ||
+ | |||
+ | *The ''stream types'' currently supported are: <tt>flv</tt>, <tt>flv_low</tt>, <tt>rtsp</tt>, <tt>rtsp_low</tt>. | ||
+ | |||
+ | The types with the "_low" suffix are the low bandwidth versions, and are used when streaming through the relay servers. | ||
+ | |||
+ | *The supported ''protocols'' are: <tt>http</tt>, <tt>rtsp</tt>. | ||
+ | |||
+ | Example: | ||
+ | |||
+ | <code>flv,http,/img/media.flv;rtsp,rtsp,/img/media.sav;flv_low,http,/img/media.flv?stream=2;rtsp_low,rtsp,/img/media.sav?stream=2</code> | ||
+ | |||
+ | |} | ||
+ | |||
== PanTiltZoom1 == | == PanTiltZoom1 == | ||
− | |||
− | |||
+ | *'''Service ID''': urn:micasaverde-com:serviceId:PanTiltZoom1 | ||
+ | *'''File''': S_PanTiltZoom1.xml | ||
+ | |||
+ | |||
+ | |||
+ | {| style="border: 1px solid #000; border-collapse: collapse" | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 150px" rowspan="2" | Action | ||
+ | ! style="border: 1px solid #000" colspan="2" | Arguments | ||
+ | ! style="border: 1px solid #000" rowspan="2" | Description | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 130px" | Name | ||
+ | ! style="border: 1px solid #000; width: 140px" | Type or Related Variable | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="1" | MoveLeft | ||
+ | | style="border: 1px solid #000; text-align: center" colspan="2" | none | ||
+ | | style="border: 1px solid #000; text-align: center" rowspan="1" | - | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="1" | MoveRight | ||
+ | | style="border: 1px solid #000; text-align: center" colspan="2" | none | ||
+ | | style="border: 1px solid #000; text-align: center" rowspan="1" | - | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="1" | MoveUp | ||
+ | | style="border: 1px solid #000; text-align: center" colspan="2" | none | ||
+ | | style="border: 1px solid #000; text-align: center" rowspan="1" | - | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="1" | MoveDown | ||
+ | | style="border: 1px solid #000; text-align: center" colspan="2" | none | ||
+ | | style="border: 1px solid #000; text-align: center" rowspan="1" | - | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="1" | ZoomIn | ||
+ | | style="border: 1px solid #000; text-align: center" colspan="2" | none | ||
+ | | style="border: 1px solid #000; text-align: center" rowspan="1" | - | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="1" | ZoomOut | ||
+ | | style="border: 1px solid #000; text-align: center" colspan="2" | none | ||
+ | | style="border: 1px solid #000; text-align: center" rowspan="1" | - | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="1" | GoToPreset | ||
+ | | style="border: 1px solid #000" | presetNumber | ||
+ | | style="border: 1px solid #000" | ui1 | ||
+ | | style="border: 1px solid #000" rowspan="1" | Moves the camera to the given preset. | ||
+ | |} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== SwitchPower1 == | == SwitchPower1 == | ||
− | |||
− | |||
+ | *'''Service ID''': urn:upnp-org:serviceId:SwitchPower1 | ||
+ | *'''File''': S_SwitchPower1.xml | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | {| style="border: 1px solid #000; border-collapse: collapse" | + | {| style="border: 1px solid #000; border-collapse: collapse" |
− | ! style="border: 1px solid #000; width: 150px" rowspan="2" | Action | + | |- |
− | + | ! style="border: 1px solid #000; width: 150px" | Variable | |
− | + | ! style="border: 1px solid #000; width: 60px" | Type | |
− | + | ! style="border: 1px solid #000" | Description | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | Target | |
− | + | | style="border: 1px solid #000" | boolean | |
− | + | | style="border: 1px solid #000" | The target state of the device. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | Status | |
− | + | | style="border: 1px solid #000" | boolean | |
− | + | | style="border: 1px solid #000" | The current state of the device. | |
+ | |} | ||
+ | |||
+ | |||
+ | |||
+ | {| style="border: 1px solid #000; border-collapse: collapse" | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 150px" rowspan="2" | Action | ||
+ | ! style="border: 1px solid #000" colspan="2" | Arguments | ||
+ | ! style="border: 1px solid #000" rowspan="2" | Description | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 130px" | Name | ||
+ | ! style="border: 1px solid #000; width: 140px" | Type or Related Variable | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="1" | SetTarget | ||
+ | | style="border: 1px solid #000" | newTargetValue | ||
+ | | style="border: 1px solid #000" | Target | ||
+ | | style="border: 1px solid #000" rowspan="1" | Sets the target state of the device. Used to turn a device On or Off. | ||
+ | |} | ||
+ | |||
== WindowCovering1 == | == WindowCovering1 == | ||
− | |||
− | |||
+ | *'''Service ID''': urn:upnp-org:serviceId:WindowCovering1 | ||
+ | *'''File''': S_WindowCovering1.xml | ||
+ | |||
+ | |||
+ | |||
+ | {| style="border: 1px solid #000; border-collapse: collapse" | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 150px" rowspan="2" | Action | ||
+ | ! style="border: 1px solid #000" colspan="2" | Arguments | ||
+ | ! style="border: 1px solid #000" rowspan="2" | Description | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 130px" | Name | ||
+ | ! style="border: 1px solid #000; width: 140px" | Type or Related Variable | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="1" | Up | ||
+ | | style="border: 1px solid #000; text-align: center" colspan="2" | none | ||
+ | | style="border: 1px solid #000; text-align: center" rowspan="1" | - | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="1" | Down | ||
+ | | style="border: 1px solid #000; text-align: center" colspan="2" | none | ||
+ | | style="border: 1px solid #000; text-align: center" rowspan="1" | - | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="1" | Stop | ||
+ | | style="border: 1px solid #000; text-align: center" colspan="2" | none | ||
+ | | style="border: 1px solid #000; text-align: center" rowspan="1" | - | ||
+ | |} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== Dimming1 == | == Dimming1 == | ||
− | |||
− | |||
+ | *'''Service ID''': urn:upnp-org:serviceId:Dimming1 | ||
+ | *'''File''': S_Dimming1.xml | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | {| style="border: 1px solid #000; border-collapse: collapse" | + | {| style="border: 1px solid #000; border-collapse: collapse" |
− | ! style="border: 1px solid #000; width: 150px" rowspan="2" | Action | + | |- |
− | + | ! style="border: 1px solid #000; width: 150px" | Variable | |
− | + | ! style="border: 1px solid #000; width: 60px" | Type | |
− | + | ! style="border: 1px solid #000" | Description | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | LoadLevelTarget | |
− | + | | style="border: 1px solid #000" | ui1 | |
− | + | | style="border: 1px solid #000" | The target dimming value; it doesn't represent the actual dimming state. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | LoadLevelStatus | |
− | + | | style="border: 1px solid #000" | ui1 | |
− | + | | style="border: 1px solid #000" | Represents the actual dimming state. | |
+ | |- | ||
+ | | style="border: 1px solid #000" | TurnOnBeforeDim | ||
+ | | style="border: 1px solid #000" | boolean | ||
+ | | style="border: 1px solid #000" | Indicates that this device needs to turn on before setting the dimming level. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | AllowZeroLevel | ||
+ | | style="border: 1px solid #000" | boolean | ||
+ | | style="border: 1px solid #000" | This device allows to set 0% level in ON state. | ||
+ | |} | ||
+ | |||
+ | |||
+ | |||
+ | {| style="border: 1px solid #000; border-collapse: collapse" | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 150px" rowspan="2" | Action | ||
+ | ! style="border: 1px solid #000" colspan="2" | Arguments | ||
+ | ! style="border: 1px solid #000" rowspan="2" | Description | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 130px" | Name | ||
+ | ! style="border: 1px solid #000; width: 140px" | Type or Related Variable | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="1" | SetLoadLevelTarget | ||
+ | | style="border: 1px solid #000" | newLoadlevelTarget | ||
+ | | style="border: 1px solid #000" | LoadLevelTarget | ||
+ | | style="border: 1px solid #000" rowspan="1" | Sets the desired dimming level. Used to adjust the dimming level of a device. | ||
+ | |} | ||
+ | |||
Line 1,007: | Line 1,413: | ||
− | {| style="border: 1px solid #000; border-collapse: collapse" | + | |
+ | {| style="border: 1px solid #000; border-collapse: collapse" | ||
|- | |- | ||
− | ! style="border: 1px solid #000; width: 150px" | Variable | + | ! style="border: 1px solid #000; width: 150px" | Variable |
− | ! style="border: 1px solid #000; width: 60px" | Type | + | ! style="border: 1px solid #000; width: 60px" | Type |
− | ! style="border: 1px solid #000" | + | ! style="border: 1px solid #000" | Description |
|- | |- | ||
| style="border: 1px solid #000" | Target | | style="border: 1px solid #000" | Target | ||
Line 1,025: | Line 1,432: | ||
| style="border: 1px solid #000" | The list of PIN codes. | | style="border: 1px solid #000" | The list of PIN codes. | ||
Syntax: | Syntax: | ||
− | <VERSION=2> | + | |
− | + | <VERSION=2>user_code_id,active,PIN_code(encrypted),name(a-z,0-9); | |
− | + | slot,slot_lock,w,[d|s],dow,hour_start,minute_start,hour_stop,minute_stop; | |
+ | slot,slot_lock,t,[d|s],start,stop;\t | ||
+ | |||
+ | <VERSION=3>next_available_user_code_id\t | ||
+ | user_code_id,active,date_added,date_used,PIN_code(encrypted),name(a-z,0-9); | ||
+ | slot,slot_lock,w,[d|s],dow,hour_start,minute_start,hour_stop,minute_stop; | ||
+ | slot,slot_lock,t,[d|s],start,stop;\t | ||
+ | |||
Where: | Where: | ||
− | * <tt>VERSION</tt> is used to track syntax changes. | + | |
− | * <tt>active</tt> can be one of the following values: | + | *<tt>VERSION</tt> is used to track syntax changes. |
− | ** <tt>1</tt> = The code is permanently programmed into the lock, which '''doesn't''' support hardware-based scheduling. | + | *<tt>active</tt> can be one of the following values: |
− | ** <tt>2</tt> = The code is permanently programmed into the lock, which '''does''' support hardware-based scheduling. | + | **<tt>0</tt> = The code isn't programmed. |
− | ** <tt>3</tt> = The code is programmed into the lock and will be removed by software later. | + | **<tt>1</tt> = The code is permanently programmed into the lock, which '''doesn't''' support hardware-based scheduling. |
− | ** <tt>4</tt> = The code is not programmed into the lock, but will be later by the software. | + | **<tt>2</tt> = The code is permanently programmed into the lock, which '''does''' support hardware-based scheduling. |
− | ** <tt>5</tt> = The code is programmed into the lock which supports hardware-based scheduling and will enable/disable it automatically. | + | **<tt>3</tt> = The code is programmed into the lock and will be removed by software later. |
− | * The <tt>slotid</tt> is an auto-incrementing number. | + | **<tt>4</tt> = The code is not programmed into the lock, but it will be programmed later by the software. |
− | * The <tt>slotid_lock</tt> is the ID in the lock. | + | **<tt>5</tt> = The code is programmed into the lock which supports hardware-based scheduling and will enable/disable it automatically. |
− | * The restriction type: '''<tt>w</tt>''' (''weekly'') or '''<tt>d</tt>''' (''daily repeating'') = day of week based, '''<tt>t</tt>''' = time based (''yearly'') | + | *The <tt>slotid</tt> is an auto-incrementing number. |
− | * <tt>[d | + | *The <tt>slotid_lock</tt> is the ID in the lock. |
+ | *The restriction type: '''<tt>w</tt>''' (''weekly'') or '''<tt>d</tt>''' (''daily repeating'') = day of week based, '''<tt>t</tt>''' = time based (''yearly'') | ||
+ | *<tt>[d|s]</tt>: internal stuff. | ||
+ | |||
|- | |- | ||
| style="border: 1px solid #000" | NumSchedules | | style="border: 1px solid #000" | NumSchedules | ||
Line 1,045: | Line 1,462: | ||
| style="border: 1px solid #000" | Maximum number of restrictions supported by the door lock. | | style="border: 1px solid #000" | Maximum number of restrictions supported by the door lock. | ||
Syntax: | Syntax: | ||
+ | |||
max_weekly,max_yearly,max_daily_repeating | max_weekly,max_yearly,max_daily_repeating | ||
+ | |||
Where: | Where: | ||
− | * <tt>max_weekly</tt> is the number of weekly restrictions slots. | + | |
− | * <tt>max_yearly</tt> is the number of yearly restrictions slots. | + | *<tt>max_weekly</tt> is the number of weekly restrictions slots. |
− | * <tt>max_daily_repeating</tt> is the number of daily repeating restrictions slots. | + | *<tt>max_yearly</tt> is the number of yearly restrictions slots. |
+ | *<tt>max_daily_repeating</tt> is the number of daily repeating restrictions slots. | ||
+ | |||
|- | |- | ||
| style="border: 1px solid #000" | MinPinSize ''and'' MaxPinSize | | style="border: 1px solid #000" | MinPinSize ''and'' MaxPinSize | ||
| style="border: 1px solid #000" | ui1 | | style="border: 1px solid #000" | ui1 | ||
| style="border: 1px solid #000" | The minimum and maximum number of digits of the PIN code. | | style="border: 1px solid #000" | The minimum and maximum number of digits of the PIN code. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | AllowedPinChars | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | Which characters are allowed in a PIN code. | ||
+ | The only format which is currently supported is: | ||
+ | |||
+ | <code>D<sub>min</sub>-D<sub>max</sub></code> | ||
+ | |||
+ | where: | ||
+ | * D<sub>min</sub> is the smallest digit allowed; | ||
+ | * D<sub>max</sub> is the largest digit allowed. | ||
+ | Example: <code>2-7</code> : allow only digits >= 2 and <= 7. | ||
|- | |- | ||
| style="border: 1px solid #000" | sl_UserCode | | style="border: 1px solid #000" | sl_UserCode | ||
| style="border: 1px solid #000" | string | | style="border: 1px solid #000" | string | ||
− | | style="border: 1px solid #000" | | + | | style="border: 1px solid #000" | Contains information about the last used PIN code: |
+ | UserID="<pin_slot>" UserName="<pin_code_name>" | ||
+ | |||
|- | |- | ||
| style="border: 1px solid #000" | sl_PinFailed | | style="border: 1px solid #000" | sl_PinFailed | ||
Line 1,090: | Line 1,525: | ||
| style="border: 1px solid #000" | boolean | | style="border: 1px solid #000" | boolean | ||
| style="border: 1px solid #000" | This is "1" when the battery level is very low. | | style="border: 1px solid #000" | This is "1" when the battery level is very low. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | UsesPinCodes | ||
+ | | style="border: 1px solid #000" | boolean | ||
+ | | style="border: 1px solid #000" | If this is "0", this door lock doesn't use PIN codes. (e.g. Danalock) | ||
|} | |} | ||
− | {| style="border: 1px solid #000; border-collapse: collapse" | + | |
+ | {| style="border: 1px solid #000; border-collapse: collapse" | ||
|- | |- | ||
− | ! style="border: 1px solid #000; width: 150px" rowspan="2" | Action | + | ! style="border: 1px solid #000; width: 150px" rowspan="2" | Action |
! style="border: 1px solid #000" colspan="2" | Arguments | ! style="border: 1px solid #000" colspan="2" | Arguments | ||
! style="border: 1px solid #000" rowspan="2" | Description | ! style="border: 1px solid #000" rowspan="2" | Description | ||
|- | |- | ||
− | ! style="border: 1px solid #000; width: 130px" | Name | + | ! style="border: 1px solid #000; width: 130px" | Name |
− | ! style="border: 1px solid #000; width: 140px" | Type or Related Variable | + | ! style="border: 1px solid #000; width: 140px" | Type or Related Variable |
|- | |- | ||
| style="border: 1px solid #000" rowspan="1" | SetTarget | | style="border: 1px solid #000" rowspan="1" | SetTarget | ||
Line 1,107: | Line 1,547: | ||
| style="border: 1px solid #000" rowspan="1" | Sets the target (desired) state of the door. Used to lock and unlock the door. | | style="border: 1px solid #000" rowspan="1" | Sets the target (desired) state of the door. Used to lock and unlock the door. | ||
|- | |- | ||
− | | style="border: 1px solid #000" rowspan=" | + | | style="border: 1px solid #000" rowspan="7" | SetPin |
| style="border: 1px solid #000" | UserCodeName | | style="border: 1px solid #000" | UserCodeName | ||
| style="border: 1px solid #000" | string | | style="border: 1px solid #000" | string | ||
− | | style="border: 1px solid #000" rowspan=" | + | | style="border: 1px solid #000" rowspan="7" | Adds a PIN code. This code will be added to the <code>PinCodes</code> variable and to the door lock. |
− | * < | + | *<code>UserCodeName</code> is the PIN code name. |
− | * < | + | *<code>newPin</code> is the new PIN code. |
− | * < | + | *<code>user</code> is the PIN code slot number. |
− | + | *<code>purge</code>: if this is '''<tt>1</tt>''', all the schedules programmed into the door lock will be removed. | |
− | * < | + | *<code>json</code> is a json that looks like this: |
− | "user_code": { | + | |
− | + | { | |
− | + | "user_code" : { | |
− | + | "slot" : "<pin_slot>", // Used when adding/updating a PIN code. | |
− | + | "name" : "<name>", | |
− | + | "code" : "<pin_code>", | |
− | + | "user" : "<restriction_slot>" // Used when adding/updating restrictions. | |
− | + | }, | |
− | + | "weekly_schedules" : [ | |
− | + | { | |
− | + | "day_of_week" : "136" | |
− | + | "from_time" : "12:34" | |
− | + | "to_time" : "23:45" | |
− | + | }, | |
− | + | { | |
+ | "day_of_week" : "25" | ||
+ | "from_time" : "13:46" | ||
+ | "to_time" : "21:09" | ||
+ | } | ||
+ | ... | ||
+ | ], | ||
+ | "daily_schedules" : [ | ||
+ | { | ||
+ | "start_date" : "YYYY-MM-DD HH:MM:SS" | ||
+ | "stop_date" : "YYYY-MM-DD HH:MM:SS" | ||
+ | }, | ||
+ | { | ||
+ | "start_date" : "YYYY-MM-DD HH:MM:SS" | ||
+ | "stop_date" : "YYYY-MM-DD HH:MM:SS" | ||
+ | } | ||
+ | ... | ||
+ | ] | ||
} | } | ||
− | |||
− | |||
− | |||
− | + | **''<tt>slot</tt>'' in <code>json</code> is equivalent to <code>user</code> | |
+ | **''<tt>name</tt>'' in <code>json</code> is equivalent to <code>UserCodeName</code> | ||
+ | **''<tt>code</tt>'' in <code>json</code> is equivalent to <code>newPin</code> | ||
+ | |||
+ | <br/>If the <code>json</code> parameter is present, <code>user</code>, <code>UserCodeName</code> and <code>newPin</code> are ignored. | ||
+ | |||
+ | <br/><sup>*</sup> The parameters from <code>SetPinValidityDate</code> and <code>SetPinValidityWeekly</code> are also accepted. Internally, this action calls the implementation functions of those actions if <code>StartDate</code>, respectively <code>DayOfWeek</code> parameters are given. The parameters in the <code>json</code> take precedence over the other parameters. | ||
− | |||
|- | |- | ||
| style="border: 1px solid #000" | newPin | | style="border: 1px solid #000" | newPin | ||
Line 1,145: | Line 1,604: | ||
| style="border: 1px solid #000" | user | | style="border: 1px solid #000" | user | ||
| style="border: 1px solid #000" | ui1 | | style="border: 1px solid #000" | ui1 | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | purge | ||
+ | | style="border: 1px solid #000" | boolean | ||
|- | |- | ||
| style="border: 1px solid #000" | json | | style="border: 1px solid #000" | json | ||
Line 1,157: | Line 1,619: | ||
| style="border: 1px solid #000" | ui1 | | style="border: 1px solid #000" | ui1 | ||
| style="border: 1px solid #000" rowspan="4" | Sets the daily time interval in which a PIN code is valid. | | style="border: 1px solid #000" rowspan="4" | Sets the daily time interval in which a PIN code is valid. | ||
− | * <tt>UserCode</tt> is the PIN code | + | *<tt>UserCode</tt> is the PIN code slot number. The starting slot number is 1. |
− | * <tt>StartDate</tt> and <tt>StopDate</tt> are strings representing the dates, formatted like this: <tt>YYYY-MM-DD HH:MM:SS</tt> (SQL DATETIME) | + | *<tt>StartDate</tt> and <tt>StopDate</tt> are strings representing the dates, formatted like this: <tt>YYYY-MM-DD HH:MM:SS</tt> (SQL DATETIME) |
− | * <tt>Replace</tt>: If this parameter is "1" the current restriction is replaced with the new one. Otherwise a new restriction is added, unless there are no more available restriction slots. | + | *<tt>Replace</tt>: If this parameter is "1" the current restriction is replaced with the new one. Otherwise a new restriction is added, unless there are no more available restriction slots. |
− | Example: | + | |
− | http://192.168.81.1:3480/data_request?id=action&DeviceNum=6&serviceId=urn:micasaverde-com:serviceId:DoorLock1&action=SetPinValidityDate&UserCode=1&StartDate=2012-09-03%2014:00:00&StopDate=2012-09-03%2015:00:00&Replace=1 | + | Example: [http://192.168.81.1:3480/data_request?id=action&DeviceNum=6&serviceId=urn:micasaverde-com:serviceId:DoorLock1&action=SetPinValidityDate&UserCode=1&StartDate=2012-09-03%2014:00:00&StopDate=2012-09-03%2015:00:00&Replace=1 http://192.168.81.1:3480/data_request?id=action&DeviceNum=6&serviceId=urn:micasaverde-com:serviceId:DoorLock1&action=SetPinValidityDate&UserCode=1&StartDate=2012-09-03%2014:00:00&StopDate=2012-09-03%2015:00:00&Replace=1] |
+ | |||
|- | |- | ||
| style="border: 1px solid #000" | StartDate | | style="border: 1px solid #000" | StartDate | ||
Line 1,176: | Line 1,639: | ||
| style="border: 1px solid #000" | ui1 | | style="border: 1px solid #000" | ui1 | ||
| style="border: 1px solid #000" rowspan="7" | Sets the weekly time interval in which a PIN code is valid. | | style="border: 1px solid #000" rowspan="7" | Sets the weekly time interval in which a PIN code is valid. | ||
− | * <tt>UserCode</tt> is the PIN code | + | *<tt>UserCode</tt> is the PIN code slot number. The starting slot number is 1. |
− | * <tt>DayOfWeek</tt> contains the days of week numbers when the PIN code is restricted. Monday is '<tt>1</tt>' and Sunday is '<tt>7</tt>'. | + | *<tt>DayOfWeek</tt> contains the days of week numbers when the PIN code is restricted. Monday is '<tt>1</tt>' and Sunday is '<tt>7</tt>'. |
+ | |||
Example: <tt>1367</tt> means Monday, Wednesday, Saturday and Sunday. | Example: <tt>1367</tt> means Monday, Wednesday, Saturday and Sunday. | ||
− | * <tt>StartHour</tt> is the hour the restriction starts at. | + | |
− | * <tt>StartMinute</tt> is the minute the restriction starts at. | + | *<tt>StartHour</tt> is the hour the restriction starts at. |
− | * <tt>StopHour</tt> is the hour the restriction stops at. | + | *<tt>StartMinute</tt> is the minute the restriction starts at. |
− | * <tt>StopMinute</tt> is the minute the restriction stops at. | + | *<tt>StopHour</tt> is the hour the restriction stops at. |
− | * <tt>Replace</tt>: If this parameter is "1" the current restriction is replaced with the new one. Otherwise a new restriction is added, unless there are no more available restriction slots. | + | *<tt>StopMinute</tt> is the minute the restriction stops at. |
− | Example: | + | *<tt>Replace</tt>: If this parameter is "1" the current restriction is replaced with the new one. Otherwise a new restriction is added, unless there are no more available restriction slots. |
− | http://192.168.81.1:3480/data_request?id=action&DeviceNum=6&serviceId=urn:micasaverde-com:serviceId:DoorLock1&action=SetPinValidityWeekly&UserCode=1&DayOfWeek=1367&StartHour=15&StartMinute=31&StopHour=16&StopMinute=42&Replace=1 | + | |
+ | Example: [http://192.168.81.1:3480/data_request?id=action&DeviceNum=6&serviceId=urn:micasaverde-com:serviceId:DoorLock1&action=SetPinValidityWeekly&UserCode=1&DayOfWeek=1367&StartHour=15&StartMinute=31&StopHour=16&StopMinute=42&Replace=1 http://192.168.81.1:3480/data_request?id=action&DeviceNum=6&serviceId=urn:micasaverde-com:serviceId:DoorLock1&action=SetPinValidityWeekly&UserCode=1&DayOfWeek=1367&StartHour=15&StartMinute=31&StopHour=16&StopMinute=42&Replace=1] | ||
+ | |||
|- | |- | ||
| style="border: 1px solid #000" | DayOfWeek | | style="border: 1px solid #000" | DayOfWeek | ||
Line 1,209: | Line 1,675: | ||
| style="border: 1px solid #000" | ui4 | | style="border: 1px solid #000" | ui4 | ||
| style="border: 1px solid #000" rowspan="2" | Clears the given restriction slot. | | style="border: 1px solid #000" rowspan="2" | Clears the given restriction slot. | ||
− | * <tt>UserCode</tt> is the PIN code | + | *<tt>UserCode</tt> is the PIN code slot number. The starting slot number is 1. |
− | * <tt>slotID</tt> is the slot number. The starting | + | *<tt>slotID</tt> is the restriction slot number. The starting slot number is 1. |
+ | |||
|- | |- | ||
| style="border: 1px solid #000" | slotID | | style="border: 1px solid #000" | slotID | ||
Line 1,218: | Line 1,685: | ||
| style="border: 1px solid #000" | UserCode | | style="border: 1px solid #000" | UserCode | ||
| style="border: 1px solid #000" | ui1 | | style="border: 1px solid #000" | ui1 | ||
− | | style="border: 1px solid #000" rowspan="1" | Removes the PIN code | + | | style="border: 1px solid #000" rowspan="1" | Removes the PIN code from slot <tt>UserCode</tt>. |
|} | |} | ||
− | |||
== HVAC_UserOperatingMode1 == | == HVAC_UserOperatingMode1 == | ||
− | |||
− | |||
+ | *'''Service ID''': urn:upnp-org:serviceId:HVAC_UserOperatingMode1 | ||
+ | *'''File''': S_HVAC_UserOperatingMode1.xml | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | {| style="border: 1px solid #000; border-collapse: collapse" | + | {| style="border: 1px solid #000; border-collapse: collapse" |
− | ! style="border: 1px solid #000; width: 150px" rowspan="2" | Action | + | |- |
− | + | ! style="border: 1px solid #000; width: 150px" | Variable | |
− | + | ! style="border: 1px solid #000; width: 60px" | Type | |
− | + | ! style="border: 1px solid #000" | Description | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | ModeTarget | |
− | + | | style="border: 1px solid #000" | string | |
− | + | | style="border: 1px solid #000" | The desired operating mode of the HVAC. Currently MiOS supports only: | |
− | + | *Off | |
− | + | *HeatOn | |
− | + | *CoolOn | |
− | + | *AutoChangeOver | |
− | + | ||
− | + | |- | |
− | + | | style="border: 1px solid #000" | ModeStatus | |
− | + | | style="border: 1px solid #000" | string | |
− | + | | style="border: 1px solid #000" | The actual operating mode of the HVAC. | |
+ | |- | ||
+ | | style="border: 1px solid #000" | EnergyModeTarget | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | The desired energy mode. Can be <tt>Normal</tt> or <tt>EnergySavingsMode</tt>. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | EnergyModeStatus | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | The actual energy mode. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | AutoMode | ||
+ | | style="border: 1px solid #000" | boolean | ||
+ | | style="border: 1px solid #000" | If specified, and if 0, the thermostat doesn't support auto mode. | ||
+ | |} | ||
+ | |||
+ | |||
+ | |||
+ | {| style="border: 1px solid #000; border-collapse: collapse" | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 150px" rowspan="2" | Action | ||
+ | ! style="border: 1px solid #000" colspan="2" | Arguments | ||
+ | ! style="border: 1px solid #000" rowspan="2" | Description | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 130px" | Name | ||
+ | ! style="border: 1px solid #000; width: 140px" | Type or Related Variable | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="1" | SetModeTarget | ||
+ | | style="border: 1px solid #000" | NewModeTarget | ||
+ | | style="border: 1px solid #000" | ModeTarget | ||
+ | | style="border: 1px solid #000" rowspan="1" | Sets the desired HVAC operating mode. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="1" | SetEnergyModeTarget | ||
+ | | style="border: 1px solid #000" | NewModeTarget | ||
+ | | style="border: 1px solid #000" | EnergyModeTarget | ||
+ | | style="border: 1px solid #000" rowspan="1" | Sets the desired energy mode. | ||
+ | |} | ||
+ | |||
== HVAC_OperatingState1 == | == HVAC_OperatingState1 == | ||
− | |||
− | |||
+ | *'''Service ID''': urn:micasaverde-com:serviceId:HVAC_OperatingState1 | ||
+ | *'''File''': S_HVAC_OperatingState1.xml | ||
+ | |||
+ | |||
+ | |||
+ | {| style="border: 1px solid #000; border-collapse: collapse" | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 150px" | Variable | ||
+ | ! style="border: 1px solid #000; width: 60px" | Type | ||
+ | ! style="border: 1px solid #000" | Description | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | ModeState | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | Represents what the HVAC is actually doing right now. The most common actions are: | ||
+ | *Idle | ||
+ | *Heating | ||
+ | *Cooling | ||
+ | |||
+ | |} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== HVAC_FanOperatingMode1 == | == HVAC_FanOperatingMode1 == | ||
− | |||
− | |||
+ | *'''Service ID''': urn:upnp-org:serviceId:HVAC_FanOperatingMode1 | ||
+ | *'''File''': S_HVAC_FanOperatingMode1.xml | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | {| style="border: 1px solid #000; border-collapse: collapse" | + | {| style="border: 1px solid #000; border-collapse: collapse" |
− | ! style="border: 1px solid #000; width: 150px" rowspan="2" | Action | + | |- |
− | + | ! style="border: 1px solid #000; width: 150px" | Variable | |
− | + | ! style="border: 1px solid #000; width: 60px" | Type | |
− | + | ! style="border: 1px solid #000" | Description | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | Mode | |
− | + | | style="border: 1px solid #000" | string | |
− | + | | style="border: 1px solid #000" | The fan operation mode. Can be: | |
− | + | *Auto | |
− | + | *ContinuousOn | |
− | + | *PeriodicOn | |
− | + | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | FanStatus | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | Represents the current fan state; can be ''On'' or ''Off''. | ||
+ | |} | ||
+ | |||
+ | |||
+ | |||
+ | {| style="border: 1px solid #000; border-collapse: collapse" | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 150px" rowspan="2" | Action | ||
+ | ! style="border: 1px solid #000" colspan="2" | Arguments | ||
+ | ! style="border: 1px solid #000" rowspan="2" | Description | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 130px" | Name | ||
+ | ! style="border: 1px solid #000; width: 140px" | Type or Related Variable | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="1" | SetMode | ||
+ | | style="border: 1px solid #000" | NewMode | ||
+ | | style="border: 1px solid #000" | Mode | ||
+ | | style="border: 1px solid #000" rowspan="1" | Sets the fan operating mode. Changes the Mode variable. | ||
+ | |} | ||
+ | |||
== TemperatureSetpoint1 == | == TemperatureSetpoint1 == | ||
− | |||
− | |||
+ | *'''Service ID''': urn:upnp-org:serviceId:TemperatureSetpoint1 | ||
+ | *'''File''': S_TemperatureSetpoint1.xml | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | {| style="border: 1px solid #000; border-collapse: collapse" | + | {| style="border: 1px solid #000; border-collapse: collapse" |
− | + | |- | |
− | + | ! style="border: 1px solid #000; width: 150px" | Variable | |
− | + | ! style="border: 1px solid #000; width: 60px" | Type | |
− | + | ! style="border: 1px solid #000" | Description | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | SetpointTarget | |
− | + | | style="border: 1px solid #000" | i4 | |
− | + | | style="border: 1px solid #000" | The target temperature setpoint for the current thermostat mode. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | CurrentSetpoint | |
− | + | | style="border: 1px solid #000" | i4 | |
− | + | | style="border: 1px solid #000" | The actual temperature setpoint for the current thermostat mode. | |
+ | |- | ||
+ | | style="border: 1px solid #000" | AllSetpoints | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | A comma separated list containing the current setpoints for the following thermostat modes: heat, cool, auto. | ||
+ | Format: <code>HEAT,COOL,AUTO</code> | ||
+ | Example: <code>AllSetpoints = 72,74,73</code> | ||
+ | |||
+ | *72 = heating setpoint | ||
+ | *74 = cooling setpoint | ||
+ | *73 = auto mode setpoint | ||
+ | |||
+ | |- | ||
+ | | style="border: 1px solid #000" | AutoMode | ||
+ | | style="border: 1px solid #000" | i4 | ||
+ | | style="border: 1px solid #000" | If specified, the thermostat doesn't support auto setpoint, so set heat+cool this many degrees +/- | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | ReportMode | ||
+ | | style="border: 1px solid #000" | char | ||
+ | | style="border: 1px solid #000" | "M" = The report correspond to the current mode of operation and should update the setpoint in the received mode (default), | ||
+ | "S" = The report correspond to the current operating state and should update the setpoint in the current mode | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | Range | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | Reject setpoint change commands whose setpoint is outside the specified range. | ||
+ | Format: | ||
+ | <code>RANGE<sub>auto</sub>;RANGE<sub>cool</sub>;RANGE<sub>heat</sub></code> | ||
+ | |||
+ | where each range has this format: | ||
+ | |||
+ | <code>C<sub>min</sub>,C<sub>max</sub>/F<sub>min</sub>,F<sub>max</sub></code> | ||
+ | |||
+ | The range limits are inclusive, meaning the new setpoint must be >= X<sub>min</sub> and <= X<sub>max</sub>. | ||
+ | |||
+ | Example: <code>14,34/58,92;16,44/60,112;-1,32/30,90</code> | ||
+ | * RANGE<sub>auto</sub> = 14,34/58,92: this means that the '''auto''' setpoint must be between 14 and 34 if it's in Celsius, and between 58 and 92 if it's in Fahrenheit. | ||
+ | * RANGE<sub>cool</sub> = 16,44/60,112: this means that the '''cool''' setpoint must be between 16 and 44 if it's in Celsius, and between 60 and 112 if it's in Fahrenheit. | ||
+ | * RANGE<sub>heat</sub> = -1,32/30,90: this means that the '''heat''' setpoint must be between -1 and 32 if it's in Celsius, and between 30 and 90 if it's in Fahrenheit. | ||
+ | |} | ||
+ | |||
+ | |||
+ | |||
+ | {| style="border: 1px solid #000; border-collapse: collapse" | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 150px" rowspan="2" | Action | ||
+ | ! style="border: 1px solid #000" colspan="2" | Arguments | ||
+ | ! style="border: 1px solid #000" rowspan="2" | Description | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 130px" | Name | ||
+ | ! style="border: 1px solid #000; width: 140px" | Type or Related Variable | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="1" | SetCurrentSetpoint | ||
+ | | style="border: 1px solid #000" | NewCurrentSetpoint | ||
+ | | style="border: 1px solid #000" | CurrentSetpoint | ||
+ | | style="border: 1px solid #000" rowspan="1" | Sets the target setpoint. | ||
+ | |} | ||
+ | <br/> | ||
== TemperatureSensor1 == | == TemperatureSensor1 == | ||
− | |||
− | |||
+ | *'''Service ID''': urn:upnp-org:serviceId:TemperatureSensor1 | ||
+ | *'''File''': S_TemperatureSensor1.xml | ||
+ | |||
+ | |||
+ | |||
+ | {| style="border: 1px solid #000; border-collapse: collapse" | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 150px" | Variable | ||
+ | ! style="border: 1px solid #000; width: 60px" | Type | ||
+ | ! style="border: 1px solid #000" | Description | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | CurrentTemperature | ||
+ | | style="border: 1px solid #000" | i4 | ||
+ | | style="border: 1px solid #000; text-align: center" | - | ||
+ | |} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== GenericSensor1 == | == GenericSensor1 == | ||
− | |||
− | |||
+ | *'''Service ID''': urn:micasaverde-com:serviceId:GenericSensor1 | ||
+ | *'''File''': S_GenericSensor1.xml | ||
+ | |||
+ | |||
+ | |||
+ | {| style="border: 1px solid #000; border-collapse: collapse" | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 150px" | Variable | ||
+ | ! style="border: 1px solid #000; width: 60px" | Type | ||
+ | ! style="border: 1px solid #000" | Description | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | CurrentLevel | ||
+ | | style="border: 1px solid #000" | i4 | ||
+ | | style="border: 1px solid #000; text-align: center" | - | ||
+ | |} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== LightSensor1 == | == LightSensor1 == | ||
− | |||
− | |||
+ | *'''Service ID''': urn:micasaverde-com:serviceId:LightSensor1 | ||
+ | *'''File''': S_LightSensor1.xml | ||
+ | |||
+ | |||
+ | |||
+ | {| style="border: 1px solid #000; border-collapse: collapse" | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 150px" | Variable | ||
+ | ! style="border: 1px solid #000; width: 60px" | Type | ||
+ | ! style="border: 1px solid #000" | Description | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | CurrentLevel | ||
+ | | style="border: 1px solid #000" | i4 | ||
+ | | style="border: 1px solid #000; text-align: center" | - | ||
+ | |} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== HumiditySensor1 == | == HumiditySensor1 == | ||
− | |||
− | |||
+ | *'''Service ID''': urn:micasaverde-com:serviceId:HumiditySensor1 | ||
+ | *'''File''': S_HumiditySensor1.xml | ||
+ | |||
+ | |||
+ | |||
+ | {| style="border: 1px solid #000; border-collapse: collapse" | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 150px" | Variable | ||
+ | ! style="border: 1px solid #000; width: 60px" | Type | ||
+ | ! style="border: 1px solid #000" | Description | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | CurrentLevel | ||
+ | | style="border: 1px solid #000" | i4 | ||
+ | | style="border: 1px solid #000; text-align: center" | - | ||
+ | |} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== SecuritySensor1 == | == SecuritySensor1 == | ||
− | |||
− | |||
+ | *'''Service ID''': urn:micasaverde-com:serviceId:SecuritySensor1 | ||
+ | *'''File''': S_SecuritySensor1.xml | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | {| style="border: 1px solid #000; border-collapse: collapse" | + | {| style="border: 1px solid #000; border-collapse: collapse" |
− | + | |- | |
− | + | ! style="border: 1px solid #000; width: 150px" | Variable | |
− | + | ! style="border: 1px solid #000; width: 60px" | Type | |
− | + | ! style="border: 1px solid #000" | Description | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | Tripped | |
− | + | | style="border: 1px solid #000" | boolean | |
− | + | | style="border: 1px solid #000; text-align: center" | - | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | Armed | |
− | + | | style="border: 1px solid #000" | boolean | |
− | + | | style="border: 1px solid #000" | This is used by MiOS as a way to disable sending notifications when a sensor is tripped/untripped. | |
+ | |- | ||
+ | | style="border: 1px solid #000" | LastTrip | ||
+ | | style="border: 1px solid #000" | i4 | ||
+ | | style="border: 1px solid #000" | This is the UNIX time when the sensor last reported that it was tripped. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | IgnoreTripTime | ||
+ | | style="border: 1px solid #000" | i4 | ||
+ | | style="border: 1px solid #000" | This is used to filter trip events, the value specify the time in seconds of the filter, internally it will record the last event and after the time has elapsed it will set the variable Tripped to the last known event recorded. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | AutoUntrip | ||
+ | | style="border: 1px solid #000" | i4 | ||
+ | | style="border: 1px solid #000" | This is used for those devices that doesn't send the Untrip command and requires to automatically untrip after certain time. The value correspond to the time in seconds that the controller will set the Tripped variable to 0 after a Trip event. To disable this feature, set the variable to 0 or remove it from the device. | ||
+ | |} | ||
+ | |||
+ | |||
+ | {| style="border: 1px solid #000; border-collapse: collapse" | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 150px" rowspan="2" | Action | ||
+ | ! style="border: 1px solid #000" colspan="2" | Arguments | ||
+ | ! style="border: 1px solid #000" rowspan="2" | Description | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 130px" | Name | ||
+ | ! style="border: 1px solid #000; width: 140px" | Type or Related Variable | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="1" | SetArmed | ||
+ | | style="border: 1px solid #000" | newArmedValue | ||
+ | | style="border: 1px solid #000" | Armed | ||
+ | | style="border: 1px solid #000" rowspan="1" | Arms or disarms the sensor. | ||
+ | |} | ||
== EnergyMetering1 == | == EnergyMetering1 == | ||
− | |||
− | |||
+ | *'''Service ID''': urn:micasaverde-com:serviceId:EnergyMetering1 | ||
+ | *'''File''': S_EnergyMetering1.xml | ||
− | {| style="border: 1px solid #000; border-collapse: collapse" | + | |
− | + | ||
− | + | {| style="border: 1px solid #000; border-collapse: collapse" | |
− | + | |- | |
− | + | ! style="border: 1px solid #000; width: 150px" | Variable | |
− | + | ! style="border: 1px solid #000; width: 60px" | Type | |
− | + | ! style="border: 1px solid #000" | Description | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | Watts | |
− | + | | style="border: 1px solid #000" | ui4 | |
− | + | | style="border: 1px solid #000" | If the device can report its wattage, this is the value reported by the device, otherwise this is the value supplied by the user in <tt>UserSupliedWattage</tt>. | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | Pulse | |
− | + | | style="border: 1px solid #000" | ui4 | |
− | + | | style="border: 1px solid #000; text-align: center" | - | |
− | + | |- | |
+ | | style="border: 1px solid #000" | UserSuppliedWattage | ||
+ | | style="border: 1px solid #000" | ui4 | ||
+ | | style="border: 1px solid #000" | See <tt>Watts</tt>. | ||
'''Note:''' For thermostats, <tt>UserSuppliedWattage</tt> consists of 3 numbers separated by commas. The default is 1500,1500,300. The first number is how many watts are used when the thermostat is in 'heat' mode; the second is how many watts are used when the thermostat is in 'cool' mode; and the third number is for the 'fan only' mode. | '''Note:''' For thermostats, <tt>UserSuppliedWattage</tt> consists of 3 numbers separated by commas. The default is 1500,1500,300. The first number is how many watts are used when the thermostat is in 'heat' mode; the second is how many watts are used when the thermostat is in 'cool' mode; and the third number is for the 'fan only' mode. | ||
− | + | |- | |
− | + | | style="border: 1px solid #000" | KWH | |
− | + | | style="border: 1px solid #000" | float | |
− | + | | style="border: 1px solid #000" | If the device can report its energy consumption, this is the value reported by the device. | |
− | + | |- | |
+ | | style="border: 1px solid #000" | KWHReading | ||
+ | | style="border: 1px solid #000" | i4 | ||
+ | | style="border: 1px solid #000" | The time, in Unix timestamp format, of the last energy consumption report. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | Log | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | Comma separated list of values: | ||
+ | <code>CurrentConsumption,Average,Peak,LastReading,Seconds</code> | ||
+ | *''LastReading'' is the Unix time. | ||
+ | *''Seconds'' is the period of time the ''Average'' value was computed for. | ||
− | + | |} | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
+ | |||
+ | |||
+ | {| style="border: 1px solid #000; border-collapse: collapse" | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 150px" rowspan="2" | Action | ||
+ | ! style="border: 1px solid #000" colspan="2" | Arguments | ||
+ | ! style="border: 1px solid #000" rowspan="2" | Description | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 130px" | Name | ||
+ | ! style="border: 1px solid #000; width: 140px" | Type or Related Variable | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="1" | ResetKWH | ||
+ | | style="border: 1px solid #000; text-align: center" colspan="2" | none | ||
+ | | style="border: 1px solid #000" rowspan="1" | - | ||
+ | |} | ||
== IrTransmitter1 == | == IrTransmitter1 == | ||
− | |||
− | |||
+ | *'''Service ID''': urn:micasaverde-com:serviceId:IrTransmitter1 | ||
+ | *'''File''': S_IrTransmitter1.xml | ||
+ | |||
+ | |||
+ | |||
+ | {| style="border: 1px solid #000; border-collapse: collapse" | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 150px" rowspan="2" | Action | ||
+ | ! style="border: 1px solid #000" colspan="2" | Arguments | ||
+ | ! style="border: 1px solid #000" rowspan="2" | Description | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 130px" | Name | ||
+ | ! style="border: 1px solid #000; width: 140px" | Type or Related Variable | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="1" | SendProntoCode | ||
+ | | style="border: 1px solid #000" | ProntoCode | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" rowspan="1" | Sends the given IR code. | ||
+ | |} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== SerialPort1 == | == SerialPort1 == | ||
− | |||
− | |||
+ | *'''Service ID''': urn:micasaverde-org:serviceId:SerialPort1 | ||
+ | *'''File''': S_SerialPort1.xml | ||
+ | |||
+ | |||
+ | |||
+ | {| style="border: 1px solid #000; border-collapse: collapse" | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 150px" | Variable | ||
+ | ! style="border: 1px solid #000; width: 60px" | Type | ||
+ | ! style="border: 1px solid #000" | Description | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | path | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | The path of the serial port. On Vera Lite it's <tt>/dev/ttyUSB0</tt> | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | baud | ||
+ | | style="border: 1px solid #000" | ui4 | ||
+ | | style="border: 1px solid #000" | The baud rate. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | stopbits | ||
+ | | style="border: 1px solid #000" | ui1 | ||
+ | | style="border: 1px solid #000" | The number of stop bits. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | databits | ||
+ | | style="border: 1px solid #000" | ui1 | ||
+ | | style="border: 1px solid #000" | The number of data bits. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | parity | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | Can be <tt>odd</tt> or <tt>even</tt>. | ||
+ | |} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== SceneController1 == | == SceneController1 == | ||
− | |||
− | |||
+ | *'''Service ID''': urn:micasaverde-com:serviceId:SceneController1 | ||
+ | *'''File''': S_SceneController1.xml | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | |||
+ | {| style="border: 1px solid #000; border-collapse: collapse" | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 150px" | Variable | ||
+ | ! style="border: 1px solid #000; width: 60px" | Type | ||
+ | ! style="border: 1px solid #000" | Description | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | sl_SceneActivated | ||
+ | | style="border: 1px solid #000" | ui2 | ||
+ | | style="border: 1px solid #000" | The number of the activated scene on the scene controller. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | sl_SceneDeactivated | ||
+ | | style="border: 1px solid #000" | ui2 | ||
+ | | style="border: 1px solid #000" | The number of the deactivated scene on the scene controller. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | Scenes | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | ? | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | LastSceneID | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | The scene ID (as reported by the scene controller) of the last activated or deactivated scene. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | LastSceneTime | ||
+ | | style="border: 1px solid #000" | ui4 | ||
+ | | style="border: 1px solid #000" | The UNIX time when the scene was last activated or deactivated. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | ManageLeds | ||
+ | | style="border: 1px solid #000" | boolean | ||
+ | | style="border: 1px solid #000" | If this is "1", automatically turn on/off the scene indicator lights. | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | NumButtons | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | This variable has the following format: | ||
+ | <code>NumberOfButtons[,ButtonNumber-AssociationNumber-SceneNumber=ButtonName[,ButtonNumber-AssociationNumber-SceneNumber=ButtonName[,etc.]]]</code> | ||
+ | |||
+ | Where: | ||
+ | |||
+ | *'''ButtonNumber''' must be from 1 to ''NumberOfButtons''. | ||
+ | *'''AssociationNumber''' is the association group. | ||
+ | *'''SceneNumber''' is an event ID, and it's sent instead of the one we program. | ||
+ | *'''ButtonName''' is the user friendly name of the button. | ||
+ | |||
+ | Example: | ||
+ | |||
+ | <code>2,1-1-1=Tap Button,2-2-2=Hold Button</code> | ||
+ | |||
+ | |- | ||
+ | | style="border: 1px solid #000" | ButtonMapping | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | This variable has the following format: | ||
+ | <code>OldButtonNumber-Attribute-NewButtonNumber[,OldButtonNumber-Attribute-NewButtonNumber[,etc.]]</code> | ||
+ | |||
+ | Where '''Attribute''' has the following meaning: | ||
+ | |||
+ | *0 = Key pressed | ||
+ | *1 = Key is released, sent only as a termination of a Key Held Down sequence | ||
+ | *2 = Key held down | ||
+ | *3 = Key double tapped <sup>1</sup> | ||
+ | *4 = Key triple tapped <sup>1</sup> | ||
+ | |||
+ | <sup>1</sup> These attributes were added in COMMAND_CLASS_CENTRAL_SCENE V2, so it's not available on all the scene controllers. | ||
+ | |||
+ | Example: | ||
+ | |||
+ | <code>1-0-1,1-3-2,2-0-3,2-3-4,3-0-5,3-3-6,4-0-7,4-3-8</code> | ||
+ | |||
+ | |- | ||
+ | | style="border: 1px solid #000" | SceneShortcuts | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | ? | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | FiresOffEvents | ||
+ | | style="border: 1px solid #000" | boolean | ||
+ | | style="border: 1px solid #000" | ? | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | ActivationMethod | ||
+ | | style="border: 1px solid #000" | ui1 | ||
+ | | style="border: 1px solid #000" | Z-Wave stuff. | ||
+ | |} | ||
== SceneControllerLED1 == | == SceneControllerLED1 == | ||
− | |||
− | |||
+ | *'''Service ID''': urn:micasaverde-com:serviceId:SceneControllerLED1 | ||
+ | *'''File''': S_SceneControllerLED1.xml | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | {| style="border: 1px solid #000; border-collapse: collapse" | + | {| style="border: 1px solid #000; border-collapse: collapse" |
− | + | |- | |
− | + | ! style="border: 1px solid #000; width: 150px" | Variable | |
− | + | ! style="border: 1px solid #000; width: 60px" | Type | |
− | + | ! style="border: 1px solid #000" | Description | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | LightSettings | |
− | + | | style="border: 1px solid #000" | ui1 | |
− | + | | style="border: 1px solid #000" | The lights' state. The lower 4 bits of <tt>LightSettings</tt> are the 4 green LEDs, and the upper 4 are the 4 red LEDs. So, 10001 is an orange light, 110010 is an orange light and a red, etc. | |
− | + | |} | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | |||
− | |||
− | |||
+ | {| style="border: 1px solid #000; border-collapse: collapse" | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 150px" rowspan="2" | Action | ||
+ | ! style="border: 1px solid #000" colspan="2" | Arguments | ||
+ | ! style="border: 1px solid #000" rowspan="2" | Description | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 130px" | Name | ||
+ | ! style="border: 1px solid #000; width: 140px" | Type or Related Variable | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="2" | SetLight | ||
+ | | style="border: 1px solid #000" | newValue | ||
+ | | style="border: 1px solid #000" | ui4 | ||
+ | | style="border: 1px solid #000" rowspan="2" | Change a light's state. | ||
+ | *<tt>newValue</tt> is the new light state. The valid values are: | ||
+ | **0 = off | ||
+ | **1 = green | ||
+ | **2 = red | ||
+ | **3 = orange | ||
+ | *<tt>Indicator</tt> is the button number. | ||
− | + | |- | |
− | + | | style="border: 1px solid #000" | Indicator | |
− | + | | style="border: 1px solid #000" | ui4 | |
− | + | |} | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | {| style="border: 1px solid #000; border-collapse: collapse" | + | |
− | ! style="border: 1px solid #000; width: 150px" rowspan="2" | Action | + | == IrDevice1<br/> == |
− | + | ||
− | + | *'''Service ID''': urn:micasaverde-com:serviceId:IrDevice1 | |
− | + | *'''File''': S_IrDevice1.xml | |
− | + | ||
− | + | ||
− | + | ||
− | + | {| style="border: 1px solid #000; border-collapse: collapse" | |
− | + | |- | |
− | + | ! style="border: 1px solid #000; width: 150px" | Variable | |
− | + | ! style="border: 1px solid #000; width: 60px" | Type | |
− | + | ! style="border: 1px solid #000" | Description | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | Codesets | |
− | + | | style="border: 1px solid #000" | string | |
− | + | | style="border: 1px solid #000" | | |
− | + | |- | |
− | + | | style="border: 1px solid #000" | Codeset | |
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | Remote | ||
+ | | style="border: 1px solid #000" | int | ||
+ | | style="border: 1px solid #000" | | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | Scene | ||
+ | | style="border: 1px solid #000" | string | ||
+ | | style="border: 1px solid #000" | | ||
+ | |} | ||
+ | |||
+ | |||
+ | |||
+ | {| style="border: 1px solid #000; border-collapse: collapse" | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 150px" rowspan="2" | Action | ||
+ | ! style="border: 1px solid #000" colspan="2" | Arguments | ||
+ | ! style="border: 1px solid #000" rowspan="2" | Description | ||
+ | |- | ||
+ | ! style="border: 1px solid #000; width: 130px" | Name | ||
+ | ! style="border: 1px solid #000; width: 140px" | Type or Related Variable | ||
+ | |- | ||
+ | | style="border: 1px solid #000" rowspan="3" | SendCode | ||
+ | | style="border: 1px solid #000" | Codeset | ||
+ | | style="border: 1px solid #000" | Codeset | ||
+ | | style="border: 1px solid #000" rowspan="3" | | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | Button | ||
+ | | style="border: 1px solid #000" | Remote | ||
+ | |- | ||
+ | | style="border: 1px solid #000" | Repeat | ||
+ | | style="border: 1px solid #000" | Remote | ||
+ | |} | ||
+ | |||
+ | |||
+ | |||
+ | == Color1 == | ||
+ | |||
+ | *'''Service ID''': urn:micasaverde-com:serviceId:Color1 | ||
+ | *'''File''': S_Color1.xml | ||
+ | |||
+ | |||
+ | {| border="1" style="border-collapse: collapse" cellpadding="3" | ||
+ | |- | ||
+ | ! Variable | ||
+ | ! Type | ||
+ | ! Description | ||
+ | |- | ||
+ | | CurrentColor | ||
+ | | string | ||
+ | | | ||
+ | |- | ||
+ | | TargetColor | ||
+ | | string | ||
+ | | | ||
+ | |- | ||
+ | | ColorMode | ||
+ | | string | ||
+ | | Currently used only for Revogi. | ||
+ | Can have only 2 values: | ||
+ | *0 = Colorful mode | ||
+ | *1 = Color temperature mode | ||
+ | |- | ||
+ | | ColorChannelPriorities | ||
+ | | string | ||
+ | | Specify the color channel priorities like this: | ||
+ | <code>0>1>2,3,4</code> | ||
+ | |||
+ | That value can be interpretted like this: channel 0 has priority over channel 1, which has priority over channels 2, 3 and 4. | ||
+ | |- | ||
+ | | SupportedColors | ||
+ | | string | ||
+ | | | ||
+ | |} |
Latest revision as of 09:16, 6 March 2018
This is a list of all the UPnP actions and variables used by MiOS.
Some actions and variables have self-explanatory names, so there's a dash ('-') instead of the description.
[edit] HomeAutomationGateway1
- Service ID: urn:micasaverde-com:serviceId:HomeAutomationGateway1
- File: S_HomeAutomationGateway1.xml
Variable | Type | Description |
---|---|---|
DataVersion | ui4 | A number that increases each time the data changes. |
UDN | string | The Unique Device Name of the UPnP device. |
Action | Arguments | Description | |
---|---|---|---|
Name | Type or Related Variable | ||
Reload | none | Reload the LuaUPnP engine. | |
ModifyUserData | inUserData | UserData | Make changes to the UserData.
For more information read the ModifyUserData page. |
DataFormat | string | ||
Reload | boolean | ||
SetVariable | DeviceNum | int or string | Create or change the value of a variable.
|
Service | string | ||
Variable | string | ||
Value | string | ||
RunScene | SceneNum | int | Run the given scene. |
SceneOff | SceneNum | int | Turn off all the devices from DEVICE_CATEGORY_DIMMABLE_LIGHT and DEVICE_CATEGORY_SWITCH from the given scene. |
RunLua | DeviceNum | int or string | Run the given Lua code. If DeviceNum is specified, the code is run using that device's interface. |
Code | string | ||
CreateDevice | deviceType | string | Create a device using the given parameters.
|
internalID | string | ||
Description | string | ||
UpnpDevFilename | string | ||
UpnpImplFilename | string | ||
IpAddress | string | ||
MacAddress | string | ||
Username | string | ||
Password | string | ||
DeviceNumParent | int | ||
RoomNum | int | ||
PluginNum | int | ||
StateVariables | string | ||
Reload | boolean | ||
DeleteDevice | DeviceNum | int | Delete the device given either through its number, or through its UDN. |
UDN | string | ||
CreatePlugin | PluginNum | int | Create a plugin with the PluginNum number and Version version. StateVariables are the variables that will be set when the device is created. For more information look at the description of the CreateDevice action above. |
Version | int | ||
StateVariables | string | ||
DeletePlugin | PluginNum | int | Uninstall the given plugin. |
CreatePluginDevice | PluginNum | int | Creates a device for plugin #PluginNum. |
StateVariables | string | ||
ImportUpnpDevice | UDN | UDN | |
RoomNum | DeviceNum | ||
LogIpRequest | IpAddress | UDN | |
MacAddress | UDN | ||
SetHouseMode | Mode | int | Changes the house mode.
Mode can be:
|
[edit] HaDevice1
- Service ID: urn:micasaverde-com:serviceId:HaDevice1
- File: S_HaDevice1.xml
Variable | Type | Description |
---|---|---|
CommFailure | i1 | Contains the communication status with the device:
|
Configured | i1 | The configuration state of the device:
|
AutoConfigure | boolean | If this is "1", MiOS will automatically check the routing info for this every 12 hours. |
BatteryLevel | i1 | The battery level reported by the device. |
BatteryDate | boolean | The UNIX time when the BatteryLevel was reported. |
LastTimeCheck | ui4 | Only for devices that are capable of implementing time, this is when the time was last checked. |
LastTimeOffset | ui1 | For LastTimeCheck, this is the timezone offset from UTC when the time was last checked. |
LastUpdate | ui4 | This is when the device information was last updated. (Mostly used for Z-Wave devices) |
FirstConfigured | ui4 | This is when the device was first configured. (Mostly used for Z-Wave devices) |
IgnoreRoom | boolean | Used only by the MiOS scene controller. Internal stuff. |
Commands | string | This is a comma separated list of ControlCodes for the enabled UI controls. If the ControlCode of an UI control (e.g. button) is not in this list, the button will be disabled (greyed out). If this variable is missing, all controls will be enabled. If this variable is empty, all controls will be disabled. |
IODevice | ui2 | The device number to connect to for IO. (this is on the master device) |
IOPort | ui2 | The port to receive connections on from IODevice. (this is on the serial port) |
ReverseOnOff | boolean | If this is "1", the commands for some devices are reversed (e.g. the On command will turn the device Off, and vice versa). Not all devices support this. |
sl_Alarm | string | Currently used only by the water leak sensor, contains the alarm code. |
ModeSetting | string | Contains the state of the device for each house mode.
The format is: <house mode>:<state>;<house mode>:<state>;...
Example: 1:;2:A;3:A;4:A
|
Children | string | This is a comma separated list of KitDevice numbers.
LuaUPnP will create a child device for every item in the list, with the specified KitDevice properties. Can be used to add children to devices which don't have MultiChannel support. |
PollRatings | double | This is a measure of how well the polls are doing, where 5.0 means that the last 50 polls were successful and 0.0 means that all the last 50 polls were unsuccessful. |
WakeupRatings | double | This is a measure of how well the wakeups are being received, where 5.0 means that the we received the last 50 wakeups when they have suppose to be sent and 0.0 means that we didn't receive any of the 50 last wakeups that the device should have sent |
AlarmTypes | string | See the description of this variable in ZWaveDevice1 section, because it should belong to the service urn:micasaverde-com:serviceId:ZWaveDevice1, but it was kept in urn:micasaverde-com:serviceId:HaDevice1 to maintain backward compatibility. |
CustomModeConfiguration | string | Implementation of custom preset modes for any device.
Format: <mode code>;<mode name>;<upnp_action>[|<mode code>;<mode name>;<upnp_action>] where:
If the value is '?', it means that it's a wildcard and the ModeSettings variable should contain a comma separated list of values in order to substitute this '?' wildcard. If the value is not '?', then the value is fixed and it should be URL encoded. Example: h;h code;urn:upnp-org:serviceId:SwitchPower1/SetTarget/newTargetValue=?&otherParameter=45&another=?|s;s code;urn:upnp-org:serviceId:Dimming1/SetTargetLevel/newLevel=34&other=?&another=4 |
CustomModeControls | string | Used to tell the UI what controls to show in the House modes configuration page for the actions in the CustomModeConfiguration variable.
Format: <mode>:<control info for arg #1>;<control info for arg #2>;..;<control info for arg #N>[|<mode>:<control info for arg #1>] |
Action | Arguments | Description | |
---|---|---|---|
Name | Type or Related Variable | ||
Reconfigure | none | Reconfigure the device. | |
StressTest | none | Stress test the Z-Wave device. | |
Remove | none | Remove the device from the Z-Wave network. | |
Poll | none | Poll the device. | |
ToggleState | none | Toggle the state of the device (e.g. if the device it's Off, turns it On). The device must have a binary state (On/Off, Locked/Unlocked, etc.). |
[edit] ZWaveDevice1
- Service ID: urn:micasaverde-com:serviceId:ZWaveDevice1
- File: S_ZWaveDevice1.xml (nonexistent)
Variable | Type | Description | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
PollSettings | ui4 | This is the polling frequency for a node (i.e. the minimum number of seconds between two poll commands to the same node). If this variable doesn't exist or is blank, the default polling frequency set in the ZWaveNetwork1's PollFrequency variable will be used. If it's 0, polling will be disabled for this node. | |||||||||
PollCommands | string | A comma-separated list of command classes/commands to poll. 'X' means the device won't respond to any poll. | |||||||||
MultiChEndpoint | string | Internal stuff. | |||||||||
MultiChCapabilities | string | Internal stuff. | |||||||||
Neighbors | string | This is a comma-separated list of the neighbor devices' node IDs. '1' is the Vera's node ID. | |||||||||
NeighborsInverse | string | This is a comma-separated list of the neighbors that see us. | |||||||||
Capabilities | string | The first 6 numbers in Capabilities are what is reported by the ZW_GetNodeProtocolInfo function: Capability, Security, Reserved, Basic Device Class [, Generic Device Class, Specific Device Class]. If the Capability is >= 128, then the device listens for commands, otherwise it's a battery operated device that only wakes up occasionally. After the '|' in Capabilities are the command classes supported. More information here: ZWave Command Classes | |||||||||
SecurityFailed | boolean | If this is "1", MiOS won't talk to this node with security even if the node reports it can. | |||||||||
LastReset | ui4 | When we last reset the node association. (UNIX time) | |||||||||
WakeupInterval | ui4 | How often this battery operated device should wake up to report its status. The default value is 1800 seconds. | |||||||||
ConfiguredWakeupInterval | ui4 | The wakeup interval already configured on the device. | |||||||||
LastWakeup | ui4 | When this device last woke up and reported its status. (UNIX time) | |||||||||
LastRouteUpdate | ui4 | When this device's routing information was last checked/updated. (UNIX time) | |||||||||
Health | ui1 | A rating from 0-5. A large number means that MiOS can communicate with it easily. | |||||||||
HealthDate | ui4 | The date the rating was assigned. (UNIX time) | |||||||||
VariablesGet | string | This is a comma-separated list of the configuration settings read from the device.
The format is: variable1_number,variable1_value,variable2_number,variable2_value,... | |||||||||
VariablesSet | string | This is a comma-separated list of the configuration settings set by the user.
The format is: variable1_number-variable1_description,variable1_data_type,variable1_value,variable2_number-variable2_description,variable2_data_type,variable2_value,... | |||||||||
AssociationGet | string | This are the association settings read from the device. | |||||||||
AssociationSet | string | Z-Wave associations for a device are stored in this variable.
The associations are delimited by ';', with the first digit being the group number followed by a comma separated list of nodes to be associated with that group. Note these are Z-Wave node IDs, not device IDs (ie the 'altid' in the UI). If the node ID is 'z', it means the node ID of the device for which the variable is set. For multi-channel there is a '.' following the node ID with the endpoint ID. Example: 1,3.4,7;2,5.1,8 Means group #1 is associated with node #3 endpoint #4 and with node #7, which is non-multi-channel; group #2 is associated with node #5 endpoint #1, and with node #8. | |||||||||
AssociationNum | ui1 | The number of association groups supported by the device. | |||||||||
NonceACK | boolean | Internal stuff. | |||||||||
ManufacturerInfo | string | Device information. Format:
ManufacturerID,ProductType,ProductID | |||||||||
VersionInfo | string | This is what's reported by the COMMAND_CLASS_VERSION command VERSION_REPORT. There are 5 values: Z-Wave Library Type, Z-Wave Protocol Version, Z-Wave Protocol Sub Version, Application Version, Application Sub Version. The Application Version is specific to the device and not defined by Z-Wave. | |||||||||
SetPointInfo | string | A comma-separated list of the supported setpoint types:
| |||||||||
NodeInfo | string | The list of the command classes supported by this device. (hexadecimal numbers) | |||||||||
InitialName | string | The name that was initially set when the node was first added. | |||||||||
ConfiguredName | string | The user-specified name when we configured the node. | |||||||||
ConfiguredVariable | string | The user-specified VariablesSet when we configured the node. | |||||||||
ConfiguredAssoc | string | The user-specified AssociationSet when we configured the node. | |||||||||
Documentation | string | URL of the documentation used on the Device Options page. | |||||||||
MeterType | ui1 | The meter type:
| |||||||||
MeterScale | ui4 | A bit map of the supported meter scales. | |||||||||
AlarmType | string | List of the supported alarm types. | |||||||||
PollOk, PollTxFail, PollNoReply | ui4 | These variables are incremented each time the last poll job has the status they describe. They are reset after each network heal. | |||||||||
ManualRoute | string | A route specified by the end-user. This is a dot-separated list of nodes. | |||||||||
AllRoutesFailed | boolean | This is "1" when all the manual routes have failed. | |||||||||
AutoRoute | string | This contains a list of various routes chosen by profilings.
Format: route1_node1.route1_node2...-route1_score[x],route2_node1.route2_node2...-route2_score[x],... The score is a measure of latency and accuracy, the lower the number, the better. 'x' means that the last attempt to use this route failed, so it won't be used anymore. | |||||||||
IgnoreDirectScene | boolean | Internal stuff. | |||||||||
SwitchMlSettings | string | Internal stuff. | |||||||||
BasicSetCapabilities | string | Allows defining actions for BASIC_SET messages.
Format: <Value>=<Action><Endpoint> where:
Examples:
| |||||||||
SupportedMRTypes | string | Allows defining which meter report types are supported by the device.
Format: <CC Hex>-<Supported Type>,<Supported Type>;<CC Hex>-<Supported Type>,<Supported Type> where:
Examples:
If the variable is empty it will be treated as support anything. If the variable does not contain a command class that command class will be treated as support everything. | |||||||||
NoChildren | boolean | If this variable is 1, delete the child devices, and don't allow the creation of other child devices, to avoid creating ghost devices. | |||||||||
AlarmTypes | string | (NOTE: this is its new service. urn:micasaverde-com:serviceId:HaDevice1 was left unchanged to mantain backward compatibility.)
Allows setting what each Alarm Type does for devices using COMMAND_CLASS_ALARM / COMMAND_CLASS_NOTIFICATION. The format is: AlarmTypes:AlarmLevels:AlarmCode:Action;AlarmTypes:AlarmLevels:AlarmCode:Action where:
Example: 01:FF:SMOKE:1;0C:FF::1;0D:FF:TAMPER_ALARM:0
| |||||||||
AlarmTypesV2 | string | Allows customizing the handling of the COMMAND_CLASS_ALARM / COMMAND_CLASS_NOTIFICATION >= v2 messages.
The format is a ';' separated list of tokens. Format of each token: TypesV1:LevelV1:NotificationStatus:NotificationType:Event:AlarmCode:TripValue Where:
If the TypeV1 or NotificationType are not XX and if there was no match, the function will try the next token. | |||||||||
AssociationGroups | string | If specified, associate ourselves only with these groups, not all groups. The groups should be given as a comma separated list, like this:
1,3,4,255 You could add this variable with a value = 0 if you want to be in NO association groups. | |||||||||
IgnoreCommandClass | string | Allows ignoring specific command classes (CC) for that device.
Format: <CC #1>-<Command #1>,<Command #2>;<CC #2>-*;<CC #3>-<Command #1>
Example: 26-03,05;71-*;20-03 That means: ignore CC 26 commands 03 and 05, all commands from CC 71, and CC 20 command 03. | |||||||||
TemperatureScale | string | Contains information about the thermostat setpoint.
Format:
Where:
|
[edit] ZWaveNetwork1
- Service ID: urn:micasaverde-com:serviceId:ZWaveNetwork1
- File: S_ZWaveNetwork1.xml
Variable | Type | Description |
---|---|---|
NetStatusID | ui1 | The status of the Z-Wave network:
|
NetStatusText | string | Full Z-Wave network status description |
LastError | string | The last Z-Wave error in the network |
LastUpdate | ui4 | The UNIX time when the Z-Wave component of the LuaUPnP engine started. |
LastDongleBackup | ui4 | The UNIX time of the last Z-Wave dongle backup. |
LastHeal | ui4 | The UNIX time of the last Z-Wave network heal. |
VersionInfo | boolean | The Z-Wave version. |
HomeID | boolean | The unique ID of the Z-Wave network. |
Role | boolean | Z-Wave specific stuff. |
TO3066 | boolean | Internal stuff. |
ComPort | string | This is the port where MiOS will search for the Z-Wave dongle. On Vera Lite, this is /dev/ttyS0. |
LockComPort | boolean | If this is "1", MiOS won't search for the Z-Wave dongle on the other available ports if it doesn't find it on ComPort. |
Use45 | boolean | If this is "1", use Z-Wave version 3.20 instead of 2.78. |
UseMR | boolean | If this is "1", use MiOS routing. |
LimitNeighbors | boolean | With MiOS routing: if this is "1", when the routing table is created, consider only Z-Wave's neighbors as valid options. |
PollingEnabled | boolean | If this is "1", MiOS will automatically poll the Z-Wave devices. |
PollDelayInitial | ui1 | Number of seconds after the LuaUPnP engine has (re-)started before the polling loop begins. |
PollDelayDeadTime | ui1 | Number of seconds MiOS must not have transmitted any non-poll command before the next poll command is sent. |
PollMinDelay | ui1 | Number of seconds between poll commands. |
PollFrequency | ui1 | Minimum number of seconds between poll commands to the same node. |
SceneIDs | string | Used for scene controllers. This is a CSV where each item has this format: node#-button#=ZWaveSceneID |
Action | Arguments | Description | |
---|---|---|---|
Name | Type or Related Variable | ||
ResetNetwork | ResetMode | string | Reset the Z-Wave network.
|
HomeID | string | ||
ZeroMemory | boolean | ||
PutByte | StartAddress | string | Used to convert Z-Wave from 2.78 to 3.20 in which case the StartAddress parameter must be "convert502_452" and the rest are ignored. |
StopAddress | string | ||
Value | ui4 | ||
ReconfigureAllNodes | FailedOnly | boolean | Reconfigure the Z-Wave nodes. If FailedOnly is "1", only the devices that failed to configure are reconfigured. |
UpdateNetwork | none | Get network update from SUC/SIS. | |
UpdateNeighbors | Device | ui4 | Update the neighbor nodes of the given device. Device is the device number. |
BackupDongle | Restore | boolean | Backs up the Z-Wave network. The backup is in /etc/cmh/dongle.dump. If Restore is "1", the Z-Wave network is restored from the backup. |
PollAllNodes | none | - | |
RemoveNodes | InclusionMode | string | Puts Vera in exclude mode.
|
NodeType | ui1 | ||
Timeout | ui1 | ||
Multiple | boolean | ||
Reload | boolean | ||
AddNodes | InclusionMode | string | Puts Vera in include mode.
|
NodeType | ui1 | ||
Timeout | ui1 | ||
Multiple | boolean | ||
ControllerShift | boolean | ||
Reload | boolean | ||
PK_KitDevice | ui4 | ||
DownloadNetwork | none | Copy the Z-Wave network from a master controller. | |
HealNetwork | BatteryMinutes | ui1 | Heals/consolidates the Z-Wave network.
|
Node | ui1 | ||
StressCycles | ui1 | ||
Configure | boolean | ||
ManualRoute | boolean | ||
StartStage | ui1 | ||
StopStage | ui1 | ||
SetPolling | IsTemporary | boolean | Set the polling parameters.
|
PollingEnabled | PollingEnabled | ||
PollDelayInitial | PollDelayInitial | ||
PollDelayDeadTime | PollDelayDeadTime | ||
PollMinDelay | PollMinDelay | ||
PollFrequency | PollFrequency | ||
SendData | Node | ui1 | Sends the Z-Wave Data to the Z-Wave Node .
Examples: 1. Set parameter 29 to "3" on node 15:
2. Turn on a light (node 7):
|
Data | string | ||
SimulateIncomingData | Data | string | Calls the Z-Wave message handler for the given data. |
[edit] USBUIRT1
- Service ID: urn:micasaverde-com:serviceId:USBUIRT1
- File: S_USBUIRT.xml
Variable | Type | Description |
---|---|---|
ComPort | string | The path of the USB port the UIRT is connected to. On Vera Lite this is /dev/ttyUSB0 |
[edit] Camera1
- Service ID: urn:micasaverde-com:serviceId:Camera1
- File: S_Camera1.xml
Variable | Type | Description |
---|---|---|
VideoURLs | string | This variable defines the streaming parameters, and without it streaming doesn't work. This variable has this structure:
Info1:URL1:Info2:URL2:
1. The protocol: can be rtsp or http 2. HTTP authentication required: 1 = yes, send the username and password in the request, 0 = no, don't send the username and password 3. Video codec: mpeg4 | mjpeg | etc. 4. Audio codec: blank = no audio 5. Resolution: t = thumbnail, s = small, m = medium, l = large 6. Width: 640 7. Height: 480 8. Players: q|a|i|w, a string of characters indicating known good players. q = Quicktime plugin, a = Android, i = iPhone, w = normal web browser.
Currently only the protocol, HTTP auth, players and URL parameters are used. The rest of the parameters are ignored.
rtsp,0,mpeg4,,m,640,480,qai:img/media.sav:http,0,mjpeg,,m,640,480,w:img/video.mjpeg: |
URL | string | This is the URL to get a snapshot from the camera. |
RingBuffer | string | This variable contains the ring buffer parameters.
The format is:
|
RelatedSensors | string | Comma separated list of device numbers: archive a photo whenever one of the sensors is tripped. |
SensorArchiveSeconds | ui4 | How many seconds to archive the video after the sensor(s) are tripped. |
RelatedLights | string | Comma separated list of device numbers: which lights should be turned on when viewing this camera. |
LightOptions | string | When to turn on the lights:
So VSBA means do them all. |
AutoArchiveSeconds | ui4 | Archives a picture from the camera every this number of seconds. |
AutoArchivePreserveDays | ui4 | How many days to keep the pictures in the archive. |
Streams | string | Contains a list separated by semicolons, where each element in the list has the following format:
The types with the "_low" suffix are the low bandwidth versions, and are used when streaming through the relay servers.
Example:
|
[edit] PanTiltZoom1
- Service ID: urn:micasaverde-com:serviceId:PanTiltZoom1
- File: S_PanTiltZoom1.xml
Action | Arguments | Description | |
---|---|---|---|
Name | Type or Related Variable | ||
MoveLeft | none | - | |
MoveRight | none | - | |
MoveUp | none | - | |
MoveDown | none | - | |
ZoomIn | none | - | |
ZoomOut | none | - | |
GoToPreset | presetNumber | ui1 | Moves the camera to the given preset. |
[edit] SwitchPower1
- Service ID: urn:upnp-org:serviceId:SwitchPower1
- File: S_SwitchPower1.xml
Variable | Type | Description |
---|---|---|
Target | boolean | The target state of the device. |
Status | boolean | The current state of the device. |
Action | Arguments | Description | |
---|---|---|---|
Name | Type or Related Variable | ||
SetTarget | newTargetValue | Target | Sets the target state of the device. Used to turn a device On or Off. |
[edit] WindowCovering1
- Service ID: urn:upnp-org:serviceId:WindowCovering1
- File: S_WindowCovering1.xml
Action | Arguments | Description | |
---|---|---|---|
Name | Type or Related Variable | ||
Up | none | - | |
Down | none | - | |
Stop | none | - |
[edit] Dimming1
- Service ID: urn:upnp-org:serviceId:Dimming1
- File: S_Dimming1.xml
Variable | Type | Description |
---|---|---|
LoadLevelTarget | ui1 | The target dimming value; it doesn't represent the actual dimming state. |
LoadLevelStatus | ui1 | Represents the actual dimming state. |
TurnOnBeforeDim | boolean | Indicates that this device needs to turn on before setting the dimming level. |
AllowZeroLevel | boolean | This device allows to set 0% level in ON state. |
Action | Arguments | Description | |
---|---|---|---|
Name | Type or Related Variable | ||
SetLoadLevelTarget | newLoadlevelTarget | LoadLevelTarget | Sets the desired dimming level. Used to adjust the dimming level of a device. |
[edit] DoorLock1
- Service ID: urn:micasaverde-com:serviceId:DoorLock1
- File: S_DoorLock1.xml
Variable | Type | Description |
---|---|---|
Target | boolean | Represents the target (desired) door state. |
Status | boolean | Represents the current door state. "1" = locked, "0" = unlocked |
PinCodes | string | The list of PIN codes.
Syntax: <VERSION=2>user_code_id,active,PIN_code(encrypted),name(a-z,0-9); slot,slot_lock,w,[d|s],dow,hour_start,minute_start,hour_stop,minute_stop; slot,slot_lock,t,[d|s],start,stop;\t <VERSION=3>next_available_user_code_id\t user_code_id,active,date_added,date_used,PIN_code(encrypted),name(a-z,0-9); slot,slot_lock,w,[d|s],dow,hour_start,minute_start,hour_stop,minute_stop; slot,slot_lock,t,[d|s],start,stop;\t Where:
|
NumSchedules | string | Maximum number of restrictions supported by the door lock.
Syntax: max_weekly,max_yearly,max_daily_repeating Where:
|
MinPinSize and MaxPinSize | ui1 | The minimum and maximum number of digits of the PIN code. |
AllowedPinChars | string | Which characters are allowed in a PIN code.
The only format which is currently supported is:
where:
Example: |
sl_UserCode | string | Contains information about the last used PIN code:
UserID="<pin_slot>" UserName="<pin_code_name>" |
sl_PinFailed | boolean | This becomes "1" when a bad PIN code is entered. |
sl_CodeChanged | ui1 | If a PIN code was changed using the lock keypad, this contains the PIN code index number. |
sl_LockButton | boolean | This is "1" if the Lock button has been pressed on the lock keypad. |
sl_LockFailure | boolean | This is "1" if the lock fails to operate. |
sl_UnauthUser | boolean | This is "1" if the user code was entered outside of a valid date. |
sl_LockChanged | ui1 | If a PIN code was changed using the lock keypad, this contains the PIN code index number. |
sl_LowBattery | boolean | This is "1" when the battery level is low. |
sl_VeryLowBattery | boolean | This is "1" when the battery level is very low. |
UsesPinCodes | boolean | If this is "0", this door lock doesn't use PIN codes. (e.g. Danalock) |
Action | Arguments | Description | |
---|---|---|---|
Name | Type or Related Variable | ||
SetTarget | newTargetValue | Target | Sets the target (desired) state of the door. Used to lock and unlock the door. |
SetPin | UserCodeName | string | Adds a PIN code. This code will be added to the PinCodes variable and to the door lock.
{ "user_code" : { "slot" : "<pin_slot>", // Used when adding/updating a PIN code. "name" : "<name>", "code" : "<pin_code>", "user" : "<restriction_slot>" // Used when adding/updating restrictions. }, "weekly_schedules" : [ { "day_of_week" : "136" "from_time" : "12:34" "to_time" : "23:45" }, { "day_of_week" : "25" "from_time" : "13:46" "to_time" : "21:09" } ... ], "daily_schedules" : [ { "start_date" : "YYYY-MM-DD HH:MM:SS" "stop_date" : "YYYY-MM-DD HH:MM:SS" }, { "start_date" : "YYYY-MM-DD HH:MM:SS" "stop_date" : "YYYY-MM-DD HH:MM:SS" } ... ] }
|
newPin | ui4 | ||
user | ui1 | ||
purge | boolean | ||
json | string | ||
* SetPinValidityDate parameters | |||
* SetPinValidityWeekly parameters | |||
SetPinValidityDate | UserCode | ui1 | Sets the daily time interval in which a PIN code is valid.
|
StartDate | string | ||
StopDate | string | ||
Replace | boolean | ||
SetPinValidityWeekly | UserCode | ui1 | Sets the weekly time interval in which a PIN code is valid.
Example: 1367 means Monday, Wednesday, Saturday and Sunday.
|
DayOfWeek | ui4 | ||
StartHour | ui1 | ||
StartMinute | ui1 | ||
StopHour | ui1 | ||
StopMinute | ui1 | ||
Replace | boolean | ||
ClearPinValidity | UserCode | ui4 | Clears the given restriction slot.
|
slotID | ui4 | ||
ClearPin | UserCode | ui1 | Removes the PIN code from slot UserCode. |
[edit] HVAC_UserOperatingMode1
- Service ID: urn:upnp-org:serviceId:HVAC_UserOperatingMode1
- File: S_HVAC_UserOperatingMode1.xml
Variable | Type | Description |
---|---|---|
ModeTarget | string | The desired operating mode of the HVAC. Currently MiOS supports only:
|
ModeStatus | string | The actual operating mode of the HVAC. |
EnergyModeTarget | string | The desired energy mode. Can be Normal or EnergySavingsMode. |
EnergyModeStatus | string | The actual energy mode. |
AutoMode | boolean | If specified, and if 0, the thermostat doesn't support auto mode. |
Action | Arguments | Description | |
---|---|---|---|
Name | Type or Related Variable | ||
SetModeTarget | NewModeTarget | ModeTarget | Sets the desired HVAC operating mode. |
SetEnergyModeTarget | NewModeTarget | EnergyModeTarget | Sets the desired energy mode. |
[edit] HVAC_OperatingState1
- Service ID: urn:micasaverde-com:serviceId:HVAC_OperatingState1
- File: S_HVAC_OperatingState1.xml
Variable | Type | Description |
---|---|---|
ModeState | string | Represents what the HVAC is actually doing right now. The most common actions are:
|
[edit] HVAC_FanOperatingMode1
- Service ID: urn:upnp-org:serviceId:HVAC_FanOperatingMode1
- File: S_HVAC_FanOperatingMode1.xml
Variable | Type | Description |
---|---|---|
Mode | string | The fan operation mode. Can be:
|
FanStatus | string | Represents the current fan state; can be On or Off. |
Action | Arguments | Description | |
---|---|---|---|
Name | Type or Related Variable | ||
SetMode | NewMode | Mode | Sets the fan operating mode. Changes the Mode variable. |
[edit] TemperatureSetpoint1
- Service ID: urn:upnp-org:serviceId:TemperatureSetpoint1
- File: S_TemperatureSetpoint1.xml
Variable | Type | Description |
---|---|---|
SetpointTarget | i4 | The target temperature setpoint for the current thermostat mode. |
CurrentSetpoint | i4 | The actual temperature setpoint for the current thermostat mode. |
AllSetpoints | string | A comma separated list containing the current setpoints for the following thermostat modes: heat, cool, auto.
Format: Example:
|
AutoMode | i4 | If specified, the thermostat doesn't support auto setpoint, so set heat+cool this many degrees +/- |
ReportMode | char | "M" = The report correspond to the current mode of operation and should update the setpoint in the received mode (default),
"S" = The report correspond to the current operating state and should update the setpoint in the current mode |
Range | string | Reject setpoint change commands whose setpoint is outside the specified range.
Format:
where each range has this format:
The range limits are inclusive, meaning the new setpoint must be >= Xmin and <= Xmax. Example:
|
Action | Arguments | Description | |
---|---|---|---|
Name | Type or Related Variable | ||
SetCurrentSetpoint | NewCurrentSetpoint | CurrentSetpoint | Sets the target setpoint. |
[edit] TemperatureSensor1
- Service ID: urn:upnp-org:serviceId:TemperatureSensor1
- File: S_TemperatureSensor1.xml
Variable | Type | Description |
---|---|---|
CurrentTemperature | i4 | - |
[edit] GenericSensor1
- Service ID: urn:micasaverde-com:serviceId:GenericSensor1
- File: S_GenericSensor1.xml
Variable | Type | Description |
---|---|---|
CurrentLevel | i4 | - |
[edit] LightSensor1
- Service ID: urn:micasaverde-com:serviceId:LightSensor1
- File: S_LightSensor1.xml
Variable | Type | Description |
---|---|---|
CurrentLevel | i4 | - |
[edit] HumiditySensor1
- Service ID: urn:micasaverde-com:serviceId:HumiditySensor1
- File: S_HumiditySensor1.xml
Variable | Type | Description |
---|---|---|
CurrentLevel | i4 | - |
[edit] SecuritySensor1
- Service ID: urn:micasaverde-com:serviceId:SecuritySensor1
- File: S_SecuritySensor1.xml
Variable | Type | Description |
---|---|---|
Tripped | boolean | - |
Armed | boolean | This is used by MiOS as a way to disable sending notifications when a sensor is tripped/untripped. |
LastTrip | i4 | This is the UNIX time when the sensor last reported that it was tripped. |
IgnoreTripTime | i4 | This is used to filter trip events, the value specify the time in seconds of the filter, internally it will record the last event and after the time has elapsed it will set the variable Tripped to the last known event recorded. |
AutoUntrip | i4 | This is used for those devices that doesn't send the Untrip command and requires to automatically untrip after certain time. The value correspond to the time in seconds that the controller will set the Tripped variable to 0 after a Trip event. To disable this feature, set the variable to 0 or remove it from the device. |
Action | Arguments | Description | |
---|---|---|---|
Name | Type or Related Variable | ||
SetArmed | newArmedValue | Armed | Arms or disarms the sensor. |
[edit] EnergyMetering1
- Service ID: urn:micasaverde-com:serviceId:EnergyMetering1
- File: S_EnergyMetering1.xml
Variable | Type | Description |
---|---|---|
Watts | ui4 | If the device can report its wattage, this is the value reported by the device, otherwise this is the value supplied by the user in UserSupliedWattage. |
Pulse | ui4 | - |
UserSuppliedWattage | ui4 | See Watts.
Note: For thermostats, UserSuppliedWattage consists of 3 numbers separated by commas. The default is 1500,1500,300. The first number is how many watts are used when the thermostat is in 'heat' mode; the second is how many watts are used when the thermostat is in 'cool' mode; and the third number is for the 'fan only' mode. |
KWH | float | If the device can report its energy consumption, this is the value reported by the device. |
KWHReading | i4 | The time, in Unix timestamp format, of the last energy consumption report. |
Log | string | Comma separated list of values:
|
Action | Arguments | Description | |
---|---|---|---|
Name | Type or Related Variable | ||
ResetKWH | none | - |
[edit] IrTransmitter1
- Service ID: urn:micasaverde-com:serviceId:IrTransmitter1
- File: S_IrTransmitter1.xml
Action | Arguments | Description | |
---|---|---|---|
Name | Type or Related Variable | ||
SendProntoCode | ProntoCode | string | Sends the given IR code. |
[edit] SerialPort1
- Service ID: urn:micasaverde-org:serviceId:SerialPort1
- File: S_SerialPort1.xml
Variable | Type | Description |
---|---|---|
path | string | The path of the serial port. On Vera Lite it's /dev/ttyUSB0 |
baud | ui4 | The baud rate. |
stopbits | ui1 | The number of stop bits. |
databits | ui1 | The number of data bits. |
parity | string | Can be odd or even. |
[edit] SceneController1
- Service ID: urn:micasaverde-com:serviceId:SceneController1
- File: S_SceneController1.xml
Variable | Type | Description |
---|---|---|
sl_SceneActivated | ui2 | The number of the activated scene on the scene controller. |
sl_SceneDeactivated | ui2 | The number of the deactivated scene on the scene controller. |
Scenes | string | ? |
LastSceneID | string | The scene ID (as reported by the scene controller) of the last activated or deactivated scene. |
LastSceneTime | ui4 | The UNIX time when the scene was last activated or deactivated. |
ManageLeds | boolean | If this is "1", automatically turn on/off the scene indicator lights. |
NumButtons | string | This variable has the following format:
Where:
Example:
|
ButtonMapping | string | This variable has the following format:
Where Attribute has the following meaning:
1 These attributes were added in COMMAND_CLASS_CENTRAL_SCENE V2, so it's not available on all the scene controllers. Example:
|
SceneShortcuts | string | ? |
FiresOffEvents | boolean | ? |
ActivationMethod | ui1 | Z-Wave stuff. |
[edit] SceneControllerLED1
- Service ID: urn:micasaverde-com:serviceId:SceneControllerLED1
- File: S_SceneControllerLED1.xml
Variable | Type | Description |
---|---|---|
LightSettings | ui1 | The lights' state. The lower 4 bits of LightSettings are the 4 green LEDs, and the upper 4 are the 4 red LEDs. So, 10001 is an orange light, 110010 is an orange light and a red, etc. |
Action | Arguments | Description | |
---|---|---|---|
Name | Type or Related Variable | ||
SetLight | newValue | ui4 | Change a light's state.
|
Indicator | ui4 |
[edit] IrDevice1
- Service ID: urn:micasaverde-com:serviceId:IrDevice1
- File: S_IrDevice1.xml
Variable | Type | Description |
---|---|---|
Codesets | string | |
Codeset | string | |
Remote | int | |
Scene | string |
Action | Arguments | Description | |
---|---|---|---|
Name | Type or Related Variable | ||
SendCode | Codeset | Codeset | |
Button | Remote | ||
Repeat | Remote |
[edit] Color1
- Service ID: urn:micasaverde-com:serviceId:Color1
- File: S_Color1.xml
Variable | Type | Description |
---|---|---|
CurrentColor | string | |
TargetColor | string | |
ColorMode | string | Currently used only for Revogi.
Can have only 2 values:
|
ColorChannelPriorities | string | Specify the color channel priorities like this:
That value can be interpretted like this: channel 0 has priority over channel 1, which has priority over channels 2, 3 and 4. |
SupportedColors | string |