Updated external content (Jenkins build 1735)

pull/2219/head
openHAB Build Server 2023-10-18 05:34:08 +00:00
parent 6f350735a1
commit ebdad2f3f7
6 changed files with 232 additions and 17 deletions

View File

@ -45,7 +45,7 @@ To authorize, please follow these steps:
### `indego` Thing Configuration
| Parameter | Description | Default | Required |
|--------------------|-------------------------------------------------------------------|---------|----------|
| ------------------ | ----------------------------------------------------------------- | ------- | -------- |
| serialNumber | The serial number of the connected Indego mower | | yes |
| refresh | The number of seconds between refreshing device state when idle | 180 | no |
| stateActiveRefresh | The number of seconds between refreshing device state when active | 30 | no |
@ -54,7 +54,7 @@ To authorize, please follow these steps:
## Channels
| Channel | Item Type | Description | Writeable |
|--------------------|--------------------------|-------------------------------------------------------------------------------------------------------------------------------------|-----------|
| ------------------ | ------------------------ | ----------------------------------------------------------------------------------------------------------------------------------- | --------- |
| state | Number | You can send commands to this channel to control the mower and read the simplified state from it (1=mow, 2=return to dock, 3=pause) | Yes |
| errorcode | Number | Error code of the mower (0=no error) | |
| statecode | Number | Detailed state of the mower | |
@ -63,21 +63,24 @@ To authorize, please follow these steps:
| mowed | Dimmer | Cut grass in percent | |
| lastCutting | DateTime | Last cutting time | |
| nextCutting | DateTime | Next scheduled cutting time | |
| batteryVoltage | Number:ElectricPotential | Battery voltage reported by the device<sup>1</sup> | |
| batteryVoltage | Number:ElectricPotential | Battery voltage reported by the device<sup>1,2</sup> | |
| batteryLevel | Number | Battery level as a percentage (0-100%)<sup>1</sup> | |
| lowBattery | Switch | Low battery warning with possible values on (low battery) and off (battery ok)<sup>1</sup> | |
| batteryTemperature | Number:Temperature | Battery temperature reported by the device<sup>1</sup> | |
| gardenSize | Number:Area | Garden size mapped by the device | |
| gardenMap | Image | Garden map created by the device<sup>2</sup> | |
| gardenMap | Image | Garden map created by the device<sup>3</sup> | |
<sup>1)</sup> This will be updated every six hours when the device is idle. It will wake up the device, which can include turning on its display. When the device is active or charging, this will be updated every two minutes.
<sup>2)</sup> This will be updated as often as specified by the `stateActiveRefresh` thing parameter.
<sup>2)</sup> Currently for some models the channel `batteryVoltage` is populated with the same value as `batteryLevel`.
For these models `batteryLevel` should be used instead of `batteryVoltage`.
<sup>3)</sup> This will be updated as often as specified by the `stateActiveRefresh` thing parameter.
### State Codes
| Code | Description |
|-------|---------------------------------------------|
| ----- | ------------------------------------------- |
| 0 | Reading status |
| 257 | Charging |
| 258 | Docked |

View File

@ -28,9 +28,13 @@ The binding supports a single thing type `account`, which corresponds to the Ope
The `account` thing requires a single configuration parameter, which is the API key that allows accessing the account.
API keys can be created and managed under <https://platform.openai.com/account/api-keys>.
| Name | Type | Description | Default | Required | Advanced |
|-----------------|---------|-----------------------------------------|---------|----------|----------|
| apiKey | text | The API key to be used for the requests | N/A | yes | no |
| Name | Type | Description | Default | Required | Advanced |
|-----------------|---------|-----------------------------------------------------------|--------------------------------------------|----------|----------|
| apiKey | text | The API key to be used for the requests | N/A | yes | no |
| apiUrl | text | The server API where to reach the AI service | https://api.openai.com/v1/chat/completions | no | yes |
| modelUrl | text | The model url where to retrieve the available models from | https://api.openai.com/v1/models | no | yes |
The advanced parameters `apiUrl` and `modelUrl` can be used, if any other ChatGPT-compatible service is used, e.g. a local installation of [LocalAI](https://github.com/go-skynet/LocalAI).
## Channels

View File

@ -298,7 +298,8 @@ Currently the miio binding supports more than 360 different models.
| HUIZUO ZIWEI Ceiling Lamp | miio:basic | [huayi.light.zw131](#huayi-light-zw131) | Experimental | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
| MiJia Rice Cooker | miio:unsupported | hunmi.cooker.normal3 | No | |
| Jinxing Smart Air Conditioner | miio:unsupported | idelan.aircondition.v1 | No | |
| Xiaomi Robot Vacuum-Mop 2S | miio:basic | [ijai.vacuum.v19](#ijai-vacuum-v19) | Yes | |
| Mi Robot Vacuum-Mop 2 Pro | miio:basic | [ijai.vacuum.v3](#ijai-vacuum-v3) | Yes | Example command for room cleaning `xiaomi_robot_execute.sendCommand('action{"siid":7,"aiid":3,"in":[{"piid":24,"value":"11,12,etc room ids"},{"piid":25,"value":0},{"piid":26,"value":1}]}')` |
| Xiaomi Robot Vacuum-Mop 2S | miio:basic | [ijai.vacuum.v19](#ijai-vacuum-v19) | Yes | Example command for room cleaning `xiaomi_robot_execute.sendCommand('action{"siid":7,"aiid":3,"in":[{"piid":24,"value":"11,12,etc room ids"},{"piid":25,"value":0},{"piid":26,"value":1}]}')` |
| IKEA E27 white spectrum opal | miio:lumi | [ikea.light.led1545g12](#ikea-light-led1545g12) | Experimental | Needs to have the Xiaomi gateway configured in the binding as bridge.<br />Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
| IKEA E27 white spectrum clear | miio:lumi | [ikea.light.led1546g12](#ikea-light-led1546g12) | Experimental | Needs to have the Xiaomi gateway configured in the binding as bridge.<br />Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
| IKEA E14 white spectrum | miio:lumi | [ikea.light.led1536g5](#ikea-light-led1536g5) | Experimental | Needs to have the Xiaomi gateway configured in the binding as bridge.<br />Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
@ -1856,6 +1857,74 @@ Note, not all the values need to be in the json file, e.g. a subset of the param
| brightness | Dimmer | Light - Brightness | |
| color-temperature | Number:Temperature | Light - Color Temperature | |
### Mi Robot Vacuum-Mop 2 Pro (<a name="ijai-vacuum-v3">ijai.vacuum.v3</a>) Channels
| Channel | Type | Description | Comment |
|----------------------|----------------------|------------------------------------------|------------|
| actions | String | Robot Cleaner - Actions | Value mapping `["vacuum-start-sweep"="Start","vacuum-start-sweep-mop"="Start Sweep+Mop","vacuum-start-only-sweep"="Start Sweep","vacuum-start-only-mop"="Start Only Mop","vacuum-start-mop"="Start Mop","vacuum-start-room-sweep"="Room Sweep","battery-start-charge"="Start Charge"]` |
| advanced_actions | String | Robot Cleaner - Advanced Actions | Value mapping `["sweep-reset-consumable"="Reset Consumable","sweep-set-calibration"="Set Calibration","sweep-set-room-clean"="Set Room Clean","sweep-set-preference-clean"="Set Preference Clean","sweep-get-preference-clean"="Get Preference Clean","sweep-set-preference-type"="Set Preference Type","sweep-set-go-charging"="Set Go Charging","sweep-erase-preference"="Erase Preference","sweep-set-preference-ii"="Set Preference Ii","sweep-get-preference-ii"="Get Preference Ii","order-add"="Order Add","order-del"="Order Del","order-get"="Order Get","order-add-ii"="Order Add Ii","order-get-map-order-count"="Order Get Map Order Count","point-zone-start-point-clean"="Point Zone Start Point Clean","point-zone-pause-point-clean"="Point Zone Pause Point Clean","point-zone-start-zone-clean"="Point Zone Start Zone Clean","point-zone-pause-zone-clean"="Point Zone Pause Zone Clean","point-zone-set-virtual-wall"="Point Zone Set Virtual Wall","point-zone-set-zone-point"="Point Zone Set Zone Point","point-zone-start-point-clean-ii"="Point Zone Start Point Clean Ii","map-get-map-list"="Map Get Map List","map-upload-by-mapid"="Map Upload By Mapid","map-set-cur-map"="Map Set Cur Map","map-del-map"="Map Del Map","map-rename-map"="Map Rename Map","map-upload-by-maptype"="Map Upload By Maptype","map-rename-room"="Map Rename Room","map-arrange-room"="Map Arrange Room","map-split-room"="Map Split Room","map-reset-map"="Map Reset Map","map-build-new-map"="Map Build New Map","map-get-cur-path"="Map Get Cur Path","map-get-map-room-list"="Map Get Map Room List","map-upload-by-mapid-ii"="Map Upload By Mapid Ii","map-upload-by-maptype-ii"="Map Upload By Maptype Ii","map-reset-map-ii"="Map Reset Map Ii","map-build-map-ii"="Map Build Map Ii","map-set-mijia-room-list"="Map Set Mijia Room List","disturb-set-notdisturb"="Disturb Set Notdisturb","language-download-voice"="Language Download Voice","language-get-download-status"="Language Get Download Status"]` |
| status | Number | Robot Cleaner - Status | Value mapping `["0"="Sleep","1"="Idle","2"="Paused","3"="Go Charging","4"="Charging","5"="Sweeping","6"="Sweeping and Mopping","7"="Mopping","8"="Upgrading"]` |
| fault | Number | Robot Cleaner - Device Fault | |
| mode | Number | Robot Cleaner - Mode | Value mapping `["0"="Sweep","1"="Sweep And Mop","2"="Mop"]` |
| sweep_type | Number | Robot Cleaner - Sweep Type | Value mapping `["0"="Global","1"="Mop","2"="Edge","3"="Area","4"="Point","5"="Remote","6"="Explore","7"="Room","8"="Floor"]` |
| on | String | Robot Cleaner - Switch Status | |
| battery_level | Number:Dimensionless | Battery - Battery Level | |
| alarm | Switch | Alarm | |
| volume | Number:Dimensionless | Locating Volume | |
| repeat_state | Switch | Sweep - Repeat State | |
| door_state | Number | Sweep - Door State | Value mapping `["0"="None","1"="DustBox","2"="WaterBox","3"="TwoInOne"]` |
| cloth_state | Contact | Sweep - Cloth State | |
| suction_state | Number | Robot Cleaner - Power | Value mapping `["0"="Slient","1"="Standard","2"="Medium","3"="Turbo"]` |
| water_state | Number | Sweep - Water State | Value mapping `["0"="Low","1"="Mid","2"="High"]` |
| mop_route | Number | Sweep - Mop Route | Value mapping `["0"="S","1"="Y"]` |
| side_brush_life | Number:Dimensionless | Sweep - Side Brush Life | |
| side_brush_hours | Number:Time | Sweep - Side Brush Hours | |
| main_brush_life | Number:Dimensionless | Sweep - Main Brush Life | |
| main_brush_hours | Number:Time | Sweep - Main Brush Hours | |
| hypa_life | Number:Dimensionless | Sweep - Hypa Life | |
| hypa_hours | Number:Time | Sweep - Hypa Hours | |
| mop_life | Number:Dimensionless | Sweep - Mop Life | |
| mop_hours | Number:Time | Sweep - Mop Hours | |
| direction | Number | Sweep - Direction | Value mapping `["1"="Forward","2"="Left","3"="Right","4"="Back","5"="Stop","10"="Exit"]` |
| time_zone | Number | Sweep - Time Zone | |
| cur_lang | String | Sweep - Cur Lang | |
| cleaning_time | Number:Time | Sweep - Cleaning Time | |
| cleaning_area | Number | Sweep - Cleaning Area | |
| multi_prop_vacuum | String | Sweep - Multi Prop Vacuum | |
| tank_shake | Switch | Sweep - Tank Shake | |
| shake_shift | Number | Sweep - Shake Shift | Value mapping `["1"="Low","2"="Mid","3"="High"]` |
| order_id | Number | Order - Order Id | |
| enable | Switch | Order - Enable | |
| day | Number:Time | Order - Day | |
| hour | Number:Time | Order - Hour | |
| minute | Number:Time | Order - Minute | |
| repeat | Switch | Order - Repeat | |
| clean_way | Number | Order - Clean Way | Value mapping `["0"="Sweep","1"="Sweep Mop","2"="Mop"]` |
| suction | Number | Order - Suction | Value mapping `["0"="Slient","1"="Normal","2"="Medium","3"="Turbo"]` |
| water | Number | Order - Water | Value mapping `["0"="Low","1"="Mid","2"="High"]` |
| twice_clean | Switch | Order - Twice Clean | |
| mapid | Number | Order - Mapid | |
| room_count | Number | Order - Room Count | |
| room_data | String | Order - Room Data | |
| time_zone1 | Number | Order - Time Zone | |
| all_enable_count | String | Order - All Enable Count | |
| zone_points | String | Point Zone - Zone Points | |
| restrict_points | String | Point Zone - Restrict Points | |
| target_point | String | Point Zone - Target Point | |
| remember_state | Switch | Map - Remember State | |
| cur_map_id | Number | Map - Cur Map Id | |
| map_num | Number | Map - Map Num | |
| cur_cleaning_path | String | Map - Cur Cleaning Path | |
| build_map | Number | Map - Build Map | Value mapping `["0"="None","1"="Build","2"="Clean"]` |
| has_new_map | Number | Map - Has New Map | Value mapping `["0"="Without Map To Save","1"="Wait To Rename Map"]` |
| map_uploads | Number | Map - Map Uploads | Value mapping `["0"="Upload","1"="Do Not Upload"]` |
| dnd_enable | Contact | Disturb - Dnd Enable | |
| dnd_start_hour | Number:Time | Disturb - Dnd Start Hour | |
| dnd_start_minute | Number:Time | Disturb - Dnd Start Minute | |
| dnd_end_hour | Number:Time | Disturb - Dnd End Hour | |
| dnd_end_minute | Number:Time | Disturb - Dnd End Minute | |
| multi_prop_dnd | String | Disturb - Multi Prop Dnd | |
### Xiaomi Robot Vacuum-Mop 2S (<a name="ijai-vacuum-v19">ijai.vacuum.v19</a>) Channels
| Channel | Type | Description | Comment |
@ -7574,6 +7643,77 @@ Dimmer brightness "Light - Brightness" (G_light) {channel="miio:basic:light:brig
Number:Temperature color_temperature "Light - Color Temperature" (G_light) {channel="miio:basic:light:color-temperature"}
```
### Mi Robot Vacuum-Mop 2 Pro (ijai.vacuum.v3) item file lines
note: Autogenerated example. Replace the id (vacuum) in the channel with your own. Replace `basic` with `generic` in the thing UID depending on how your thing was discovered.
```
Group G_vacuum "Mi Robot Vacuum-Mop 2 Pro" <status>
String actions "Robot Cleaner - Actions" (G_vacuum) {channel="miio:basic:vacuum:actions"}
String advanced_actions "Robot Cleaner - Advanced Actions" (G_vacuum) {channel="miio:basic:vacuum:advanced_actions"}
Number status "Robot Cleaner - Status" (G_vacuum) {channel="miio:basic:vacuum:status"}
Number fault "Robot Cleaner - Device Fault" (G_vacuum) {channel="miio:basic:vacuum:fault"}
Number mode "Robot Cleaner - Mode" (G_vacuum) {channel="miio:basic:vacuum:mode"}
Number sweep_type "Robot Cleaner - Sweep Type" (G_vacuum) {channel="miio:basic:vacuum:sweep_type"}
String on "Robot Cleaner - Switch Status" (G_vacuum) {channel="miio:basic:vacuum:on"}
Number:Dimensionless battery_level "Battery - Battery Level" (G_vacuum) {channel="miio:basic:vacuum:battery_level"}
Switch alarm "Alarm" (G_vacuum) {channel="miio:basic:vacuum:alarm"}
Number:Dimensionless volume "Locating Volume" (G_vacuum) {channel="miio:basic:vacuum:volume"}
Switch repeat_state "Sweep - Repeat State" (G_vacuum) {channel="miio:basic:vacuum:repeat_state"}
Number door_state "Sweep - Door State" (G_vacuum) {channel="miio:basic:vacuum:door_state"}
Contact cloth_state "Sweep - Cloth State" (G_vacuum) {channel="miio:basic:vacuum:cloth_state"}
Number suction_state "Robot Cleaner - Power" (G_vacuum) {channel="miio:basic:vacuum:suction_state"}
Number water_state "Sweep - Water State" (G_vacuum) {channel="miio:basic:vacuum:water_state"}
Number mop_route "Sweep - Mop Route" (G_vacuum) {channel="miio:basic:vacuum:mop_route"}
Number:Dimensionless side_brush_life "Sweep - Side Brush Life" (G_vacuum) {channel="miio:basic:vacuum:side_brush_life"}
Number:Time side_brush_hours "Sweep - Side Brush Hours" (G_vacuum) {channel="miio:basic:vacuum:side_brush_hours"}
Number:Dimensionless main_brush_life "Sweep - Main Brush Life" (G_vacuum) {channel="miio:basic:vacuum:main_brush_life"}
Number:Time main_brush_hours "Sweep - Main Brush Hours" (G_vacuum) {channel="miio:basic:vacuum:main_brush_hours"}
Number:Dimensionless hypa_life "Sweep - Hypa Life" (G_vacuum) {channel="miio:basic:vacuum:hypa_life"}
Number:Time hypa_hours "Sweep - Hypa Hours" (G_vacuum) {channel="miio:basic:vacuum:hypa_hours"}
Number:Dimensionless mop_life "Sweep - Mop Life" (G_vacuum) {channel="miio:basic:vacuum:mop_life"}
Number:Time mop_hours "Sweep - Mop Hours" (G_vacuum) {channel="miio:basic:vacuum:mop_hours"}
Number direction "Sweep - Direction" (G_vacuum) {channel="miio:basic:vacuum:direction"}
Number time_zone "Sweep - Time Zone" (G_vacuum) {channel="miio:basic:vacuum:time_zone"}
String cur_lang "Sweep - Cur Lang" (G_vacuum) {channel="miio:basic:vacuum:cur_lang"}
Number:Time cleaning_time "Sweep - Cleaning Time" (G_vacuum) {channel="miio:basic:vacuum:cleaning_time"}
Number cleaning_area "Sweep - Cleaning Area" (G_vacuum) {channel="miio:basic:vacuum:cleaning_area"}
String multi_prop_vacuum "Sweep - Multi Prop Vacuum" (G_vacuum) {channel="miio:basic:vacuum:multi_prop_vacuum"}
Switch tank_shake "Sweep - Tank Shake" (G_vacuum) {channel="miio:basic:vacuum:tank_shake"}
Number shake_shift "Sweep - Shake Shift" (G_vacuum) {channel="miio:basic:vacuum:shake_shift"}
Number order_id "Order - Order Id" (G_vacuum) {channel="miio:basic:vacuum:order_id"}
Switch enable "Order - Enable" (G_vacuum) {channel="miio:basic:vacuum:enable"}
Number:Time day "Order - Day" (G_vacuum) {channel="miio:basic:vacuum:day"}
Number:Time hour "Order - Hour" (G_vacuum) {channel="miio:basic:vacuum:hour"}
Number:Time minute "Order - Minute" (G_vacuum) {channel="miio:basic:vacuum:minute"}
Switch repeat "Order - Repeat" (G_vacuum) {channel="miio:basic:vacuum:repeat"}
Number clean_way "Order - Clean Way" (G_vacuum) {channel="miio:basic:vacuum:clean_way"}
Number suction "Order - Suction" (G_vacuum) {channel="miio:basic:vacuum:suction"}
Number water "Order - Water" (G_vacuum) {channel="miio:basic:vacuum:water"}
Switch twice_clean "Order - Twice Clean" (G_vacuum) {channel="miio:basic:vacuum:twice_clean"}
Number mapid "Order - Mapid" (G_vacuum) {channel="miio:basic:vacuum:mapid"}
Number room_count "Order - Room Count" (G_vacuum) {channel="miio:basic:vacuum:room_count"}
String room_data "Order - Room Data" (G_vacuum) {channel="miio:basic:vacuum:room_data"}
Number time_zone1 "Order - Time Zone" (G_vacuum) {channel="miio:basic:vacuum:time_zone1"}
String all_enable_count "Order - All Enable Count" (G_vacuum) {channel="miio:basic:vacuum:all_enable_count"}
String zone_points "Point Zone - Zone Points" (G_vacuum) {channel="miio:basic:vacuum:zone_points"}
String restrict_points "Point Zone - Restrict Points" (G_vacuum) {channel="miio:basic:vacuum:restrict_points"}
String target_point "Point Zone - Target Point" (G_vacuum) {channel="miio:basic:vacuum:target_point"}
Switch remember_state "Map - Remember State" (G_vacuum) {channel="miio:basic:vacuum:remember_state"}
Number cur_map_id "Map - Cur Map Id" (G_vacuum) {channel="miio:basic:vacuum:cur_map_id"}
Number map_num "Map - Map Num" (G_vacuum) {channel="miio:basic:vacuum:map_num"}
String cur_cleaning_path "Map - Cur Cleaning Path" (G_vacuum) {channel="miio:basic:vacuum:cur_cleaning_path"}
Number build_map "Map - Build Map" (G_vacuum) {channel="miio:basic:vacuum:build_map"}
Number has_new_map "Map - Has New Map" (G_vacuum) {channel="miio:basic:vacuum:has_new_map"}
Number map_uploads "Map - Map Uploads" (G_vacuum) {channel="miio:basic:vacuum:map_uploads"}
Contact dnd_enable "Disturb - Dnd Enable" (G_vacuum) {channel="miio:basic:vacuum:dnd_enable"}
Number:Time dnd_start_hour "Disturb - Dnd Start Hour" (G_vacuum) {channel="miio:basic:vacuum:dnd_start_hour"}
Number:Time dnd_start_minute "Disturb - Dnd Start Minute" (G_vacuum) {channel="miio:basic:vacuum:dnd_start_minute"}
Number:Time dnd_end_hour "Disturb - Dnd End Hour" (G_vacuum) {channel="miio:basic:vacuum:dnd_end_hour"}
Number:Time dnd_end_minute "Disturb - Dnd End Minute" (G_vacuum) {channel="miio:basic:vacuum:dnd_end_minute"}
String multi_prop_dnd "Disturb - Multi Prop Dnd" (G_vacuum) {channel="miio:basic:vacuum:multi_prop_dnd"}
```
### Xiaomi Robot Vacuum-Mop 2S (ijai.vacuum.v19) item file lines
note: Autogenerated example. Replace the id (vacuum) in the channel with your own. Replace `basic` with `generic` in the thing UID depending on how your thing was discovered.

View File

@ -38,11 +38,11 @@ The binding has no configuration options, all configuration is done at Thing lev
The thing has a few configuration parameters:
| Parameter | Description |
|-----------|------------------------------------------------------------------------------------------------------------|
| hostName | The host name or IP address of the Roku device. Mandatory. |
| port | The port on the Roku that listens for http connections. Default 8060 |
| refresh | Overrides the refresh interval for player status updates. Optional, the default and minimum is 10 seconds. |
| Parameter | Description |
|-----------|--------------------------------------------------------------------------------------------------------------------------|
| hostName | The host name or IP address of the Roku device. Mandatory. |
| port | The port on the Roku that listens for http connections. Default 8060 |
| refresh | Overrides the refresh interval for player status updates. Optional, the default is 10 seconds and minimum is 1 second. |
## Channels
@ -51,7 +51,9 @@ The following channels are available:
| Channel ID | Item Type | Description |
|--------------------|----------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------|
| activeApp | String | A dropdown containing a list of all apps installed on the Roku. The app currently running is automatically selected. The list updates every 10 minutes. |
| activeAppName | String | The name of the current app (ReadOnly). |
| button | String | Sends a remote control command the Roku. See list of available commands below. |
| control | Player | Control Playback e.g. play/pause/next/previous |
| playMode | String | The current playback mode ie: stop, play, pause (ReadOnly). |
| timeElapsed | Number:Time | The total number of seconds of playback time elapsed for the current playing title (ReadOnly). |
| timeTotal | Number:Time | The total length of the current playing title in seconds (ReadOnly). This data is not provided by all streaming apps. |
@ -62,6 +64,8 @@ The following channels are available:
| programTitle | String | The name of the current TV program (ReadOnly). |
| programDescription | String | The description of the current TV program (ReadOnly). |
| programRating | String | The TV parental guideline rating of the current TV program (ReadOnly). |
| power | Switch | Controls the power for the TV. |
| powerState | String | The current power state for the TV. (ReadOnly - ie PowerOn, DisplayOff, Ready, etc.) |
Some Notes:
@ -98,7 +102,7 @@ InputHDMI3
InputHDMI4
InputAV1
PowerOff
PowerOn
POWERON _(NOTE: POWERON needs to be completely capitalized due to a bug with older Roku devices)_
## Full Example
@ -119,7 +123,9 @@ roku:roku_tv:mytv1 "My Roku TV" [ hostName="192.168.10.1", refresh=10 ]
// Roku streaming media player items:
String Player_ActiveApp "Current App: [%s]" { channel="roku:roku_player:myplayer1:activeApp" }
String Player_ActiveAppName "Current App Name: [%s]" { channel="roku:roku_player:myplayer1:activeAppName" }
String Player_Button "Send Command to Roku" { channel="roku:roku_player:myplayer1:button" }
Player Player_Control "Control" { channel="roku:roku_player:myplayer1:control" }
String Player_PlayMode "Status: [%s]" { channel="roku:roku_player:myplayer1:playMode" }
Number:Time Player_TimeElapsed "Elapsed Time: [%d %unit%]" { channel="roku:roku_player:myplayer1:timeElapsed" }
Number:Time Player_TimeTotal "Total Time: [%d %unit%]" { channel="roku:roku_player:myplayer1:timeTotal" }
@ -127,7 +133,9 @@ Number:Time Player_TimeTotal "Total Time: [%d %unit%]" { channel="roku:roku_
// Roku TV items:
String Player_ActiveApp "Current App: [%s]" { channel="roku:roku_tv:mytv1:activeApp" }
String Player_ActiveAppName "Current App Name: [%s]" { channel="roku:roku_tv:mytv1:activeAppName" }
String Player_Button "Send Command to Roku" { channel="roku:roku_tv:mytv1:button" }
Player Player_Control "Control" { channel="roku:roku_tv:mytv1:control" }
String Player_PlayMode "Status: [%s]" { channel="roku:roku_tv:mytv1:playMode" }
Number:Time Player_TimeElapsed "Elapsed Time: [%d %unit%]" { channel="roku:roku_tv:mytv1:timeElapsed" }
Number:Time Player_TimeTotal "Total Time: [%d %unit%]" { channel="roku:roku_tv:mytv1:timeTotal" }
@ -138,6 +146,8 @@ String Player_ChannelName "Channel Name: [%s]" { channel="roku:rok
String Player_ProgramTitle "Program Title: [%s]" { channel="roku:roku_tv:mytv1:programTitle" }
String Player_ProgramDescription "Program Description: [%s]" { channel="roku:roku_tv:mytv1:programDescription" }
String Player_ProgramRating "Program Rating: [%s]" { channel="roku:roku_tv:mytv1:programRating" }
Switch Player_Power "Power: [%s]" { channel="roku:roku_tv:mytv1:power" }
String Player_PowerState "Power State: [%s] { channel="roku:roku_tv:mytv1:powerState" }
```
@ -147,7 +157,9 @@ String Player_ProgramRating "Program Rating: [%s]" { channel="roku:rok
sitemap roku label="Roku" {
Frame label="My Roku" {
Selection item=Player_ActiveApp icon="screen"
Text item=Player_ActiveAppName
Selection item=Player_Button icon="screen"
Default item=Player_Control
Text item=Player_PlayMode
Text item=Player_TimeElapsed icon="time"
Text item=Player_TimeTotal icon="time"
@ -159,6 +171,8 @@ sitemap roku label="Roku" {
Text item=Player_ProgramTitle
Text item=Player_ProgramDescription
Text item=Player_ProgramRating
Switch item=Player_Power
Text item=Player_PowerState
}
}
```

View File

@ -19,6 +19,26 @@
<label>API Key</label>
<description>API key to access the account</description>
</parameter>
<parameter name="apiUrl" type="text" required="false">
<label>API URL</label>
<description>The server API where to reach the AI service.</description>
<default>https://api.openai.com/v1/chat/completions</default>
<advanced>true</advanced>
<options>
<option value="https://api.openai.com/v1/chat/completions">https://api.openai.com/v1/chat/completions</option>
</options>
<limitToOptions>false</limitToOptions>
</parameter>
<parameter name="modelUrl" type="text" required="false">
<label>Model URL</label>
<description>The model url where to retrieve the available models from.</description>
<default>https://api.openai.com/v1/models</default>
<advanced>true</advanced>
<options>
<option value="https://api.openai.com/v1/models">https://api.openai.com/v1/models</option>
</options>
<limitToOptions>false</limitToOptions>
</parameter>
</config-description>
</thing-type>

View File

@ -13,7 +13,9 @@
<channels>
<channel id="activeApp" typeId="activeApp"/>
<channel id="activeAppName" typeId="activeAppName"/>
<channel id="button" typeId="button"/>
<channel id="control" typeId="control"/>
<channel id="playMode" typeId="playMode"/>
<channel id="timeElapsed" typeId="timeElapsed"/>
<channel id="timeTotal" typeId="timeTotal"/>
@ -26,6 +28,7 @@
<property name="Serial Number">unknown</property>
<property name="Device Id">unknown</property>
<property name="Software Version">unknown</property>
<property name="thingTypeVersion">1</property>
</properties>
<representation-property>uuid</representation-property>
@ -41,8 +44,11 @@
</description>
<channels>
<channel id="power" typeId="system.power"/>
<channel id="activeApp" typeId="activeApp"/>
<channel id="activeAppName" typeId="activeAppName"/>
<channel id="button" typeId="buttonTv"/>
<channel id="control" typeId="control"/>
<channel id="playMode" typeId="playMode"/>
<channel id="timeElapsed" typeId="timeElapsed"/>
<channel id="timeTotal" typeId="timeTotal"/>
@ -53,6 +59,7 @@
<channel id="programTitle" typeId="programTitle"/>
<channel id="programDescription" typeId="programDescription"/>
<channel id="programRating" typeId="programRating"/>
<channel id="powerState" typeId="powerState"/>
</channels>
<properties>
@ -62,6 +69,7 @@
<property name="Serial Number">unknown</property>
<property name="Device Id">unknown</property>
<property name="Software Version">unknown</property>
<property name="thingTypeVersion">1</property>
</properties>
<representation-property>uuid</representation-property>
@ -129,17 +137,31 @@
<option value="InputHDMI4">Input HDMI4</option>
<option value="InputAV1">Input AV1</option>
<option value="PowerOff">Power Off</option>
<option value="PowerOn">Power On</option>
<option value="POWERON">Power On</option>
</options>
</state>
</channel-type>
<channel-type id="control">
<item-type>Player</item-type>
<label>Control</label>
<description>Control playback e.g. Play/Pause/Next/Previous</description>
<category>Player</category>
</channel-type>
<channel-type id="activeApp">
<item-type>String</item-type>
<label>Active App</label>
<description>The Currently Running App on the Roku</description>
</channel-type>
<channel-type id="activeAppName">
<item-type>String</item-type>
<label>Active App Name</label>
<description>The Currently Running App on the Roku</description>
<state readOnly="true"/>
</channel-type>
<channel-type id="playMode">
<item-type>String</item-type>
<label>Play Mode</label>
@ -209,4 +231,16 @@
<state readOnly="true"/>
</channel-type>
<channel-type id="powerState" advanced="true">
<item-type>String</item-type>
<label>Power State</label>
<description>Power State of the TV</description>
<state readOnly="true">
<options>
<option value="PowerOn">Power On</option>
<option value="DisplayOff">Display Off</option>
<option value="Ready">Ready</option>
</options>
</state>
</channel-type>
</thing:thing-descriptions>