Updated external content (Jenkins build 1171)

pull/1969/head
openHAB Build Server 2022-10-16 03:33:59 +00:00
parent 582b7ceb98
commit 6f0a977eb8
10 changed files with 487 additions and 55 deletions

File diff suppressed because one or more lines are too long

View File

@ -56,16 +56,35 @@ Please note that we in general consider it dangerous to enter your credentials i
When using one of such apps, simply copy and paste the received refresh token into the account configuration. When using one of such apps, simply copy and paste the received refresh token into the account configuration.
## Thing Configuration ## Thing Configuration Parameters
The vehicle Thing requires the vehicle's VIN as a configuration parameter `vin`. The vehicle Thing requires the vehicle's VIN as a configuration parameter `vin`.
Additionally, the optional boolean parameter `allowWakeup` can be set. Additionally, the follow optional parameters may be defined.
This determines whether openHAB is allowed to wake up the vehicle in order to retrieve data from it.
| Parameter Name | Label | Default Value | Description |
|------------------------|----------------------------|---------------|------------------------------------------------------------------------------|
| valetpin | Valet PIN | false | PIN to use when enabling Valet Mode |
| allowWakeupForCommands | Allow Wake-Up For Commands | false | Wake up the vehicle to send commands. May cause vehicle to stay awake |
For further flexibility and experimentation, the following advanced parameters may also be set.
| Parameter Name | Label | Default Value | Description |
|-----------------------------|------------------------------------------------|---------------|----------------------------------------------------------------------------------------------------|
| allowWakeup | Allow Wake-Up | false | Allows waking up the vehicle to retrieve data. See caution below |
| enableEvents | Enable Events | false | Enable the event stream for the vehicle. See note below |
| inactivity | Inactivity Interval | 5 | The inactivity period in minutes after which the binding stops for 20 minutes to let the car sleep |
| useDriveState | Use Drive State for Inactivity | false | Use the drive state instead of location to determine vehicle inactivity |
| useAdvancedStatesForPolling | Use Console Modes and Occupancy for Inactivity | false | Use these states to help continue the fast polling of the API |
`allowWakeup` should be used with caution as this determines whether openHAB is allowed to wake up the vehicle in order to retrieve data from it.
This setting is not recommended as it will result in a significant vampire drain (i.e. energy consumption although the vehicle is parking). This setting is not recommended as it will result in a significant vampire drain (i.e. energy consumption although the vehicle is parking).
In addition, the optional boolean parameter `enableEvents` can be set. `enableEvents` captures and processes data in near real-time for key variables by enabling events streamed by the Tesla back-end system.
By doing so, events streamed by the Tesla back-end system will be captured and processed, providing near real-time updates of some key variables generated by the vehicle.
`inactivity` setting is ignored and will always be five minutes if homelink is available (car is at home)
## Channels ## Channels
@ -206,60 +225,186 @@ Bridge tesla:account:myaccount "My Tesla Account" [ refreshToken="xxxx" ] {
demo.items: demo.items:
``` ```
Switch TeslaCharge {channel="tesla:model3:myaccount:mycar:charge"} DateTime TeslaEventstamp {channel="model3:myaccount:mycar:eventstamp"}
Location TeslaLocation {channel="tesla:model3:myaccount:mycar:location"} String TeslaState {channel="model3:myaccount:mycar:state"}
Dimmer TeslaChargeLimit {channel="tesla:model3:myaccount:mycar:chargelimit"} Number TeslaSpeed {channel="model3:myaccount:mycar:speed"}
String TeslaChargeRate {channel="tesla:model3:myaccount:mycar:chargerate"} String TeslaShiftState {channel="model3:myaccount:mycar:shiftstate"}
String TeslaChargingState {channel="tesla:model3:myaccount:mycar:chargingstate"} Number TeslaOdometer {channel="model3:myaccount:mycar:odometer"}
Number TeslaTimeToFullCharge {channel="tesla:model3:myaccount:mycar:timetofullcharge"} Number TeslaRange {channel="model3:myaccount:mycar:range"}
Number TeslaChargerPower {channel="tesla:model3:myaccount:mycar:chargerpower"}
DateTime TeslaScheduledChargingStart {channel="tesla:model3:myaccount:mycar:scheduledchargingstart"} Number TeslaBatteryLevel {channel="model3:myaccount:mycar:batterylevel"}
Dimmer TeslaSoC {channel="tesla:model3:myaccount:mycar:soc"} Number TeslaPower {channel="model3:myaccount:mycar:power"}
Number:Speed TeslaSpeed {channel="tesla:model3:myaccount:mycar:speed"} Number TeslaBatteryCurrent {channel="model3:myaccount:mycar:batterycurrent"}
String TeslaState {channel="tesla:model3:myaccount:mycar:state"} Number TeslaBatteryRange {channel="model3:myaccount:mycar:batteryrange"}
Number TeslaPower {channel="tesla:model3:myaccount:mycar:power"} Number TeslaEstBatteryRange {channel="model3:myaccount:mycar:estimatedbatteryrange"}
Number:Temperature TeslaInsideTemperature {channel="tesla:model3:myaccount:mycar:insidetemp"} Number TeslaIdealBatteryRange {channel="model3:myaccount:mycar:idealbatteryrange"}
Number:Temperature TeslaOutsideTemperature {channel="tesla:model3:myaccount:mycar:outsidetemp"} Number TeslaUsableBatteryLevel {channel="model3:myaccount:mycar:usablebatterylevel"}
Switch TeslaAutoconditioning {channel="tesla:model3:myaccount:mycar:autoconditioning"} Switch TeslaPreconditioning {channel="model3:myaccount:mycar:preconditioning"}
Number:Temperature TeslaTemperature {channel="tesla:model3:myaccount:mycar:temperature"}
String TeslaShiftState {channel="tesla:model3:myaccount:mycar:shiftstate"} Switch TeslaCharge {channel="model3:myaccount:mycar:charge"}
Number TeslaBatteryCurrent {channel="tesla:model3:myaccount:mycar:batterycurrent"} Switch TeslaChargeToMax {channel="model3:myaccount:mycar:chargetomax"}
Number TeslaBatteryLevel {channel="tesla:model3:myaccount:mycar:batterylevel"}
DateTime TeslaEventstamp {channel="tesla:model3:myaccount:mycar:eventstamp"} Dimmer TeslaChargeLimit {channel="model3:myaccount:mycar:chargelimit"}
Number:Length TeslaOdometer {channel="tesla:model3:myaccount:mycar:odometer"} Number TeslaChargeRate {channel="model3:myaccount:mycar:chargerate"}
Number TeslaHeading {channel="tesla:model3:myaccount:mycar:heading"} String TeslaChargingState {channel="model3:myaccount:mycar:chargingstate"}
DateTime TeslaGPSStamp {channel="tesla:model3:myaccount:mycar:gpstimestamp"} Number TeslaChargerPower {channel="model3:myaccount:mycar:chargerpower"}
Number TeslaTimeToFullCharge {channel="model3:myaccount:mycar:timetofullcharge"}
Number TeslaMaxCharges {channel="model3:myaccount:mycar:maxcharges"}
Number TeslaChargerVoltage {channel="model3:myaccount:mycar:chargervoltage"}
Number TeslaChargerPower {channel="model3:myaccount:mycar:chargerpower"}
Number TeslaChargerCurrent {channel="model3:myaccount:mycar:chargercurrent"}
DateTime TeslaScheduledChargingStart {channel="model3:myaccount:mycar:scheduledchargingstart"}
Dimmer TeslaSoC {channel="model3:myaccount:mycar:soc"}
Switch TeslaDoorLock {channel="model3:myaccount:mycar:doorlock"}
Switch TeslaHorn {channel="model3:myaccount:mycar:honkhorn"}
Switch TeslaStart {channel="model3:myaccount:mycar:remotestart"}
Switch TeslaSentry {channel="model3:myaccount:mycar:sentrymode"}
Switch TeslaLights {channel="model3:myaccount:mycar:flashlights"}
Switch TeslaValet {channel="model3:myaccount:mycar:valetmode"}
Switch TeslaWakeup {channel="model3:myaccount:mycar:wakeup"}
Switch TeslaBatteryHeater {channel="model3:myaccount:mycar:batteryheater"}
Switch TeslaFrontDefrost {channel="model3:myaccount:mycar:frontdefroster"}
Switch TeslaRearDefrost {channel="model3:myaccount:mycar:reardefroster"}
Switch TeslaLeftSeatHeater {channel="model3:myaccount:mycar:leftseatheater"}
Switch TeslaRightSeatHeater {channel="model3:myaccount:mycar:rightseatheater"}
Switch TeslaHomelink {channel="model3:myaccount:mycar:homelink"}
Location TeslaLocation {channel="model3:myaccount:mycar:location"}
Number TeslaHeading {channel="model3:myaccount:mycar:heading"}
DateTime TeslaLocationTime {channel="model3:myaccount:mycar:gpstimestamp"}
Switch TeslaAutoconditioning {channel="model3:myaccount:mycar:autoconditioning"}
Number:Temperature TeslaTemperature {channel="model3:myaccount:mycar:temperature"}
Number:Temperature TeslaTemperatureCombined {channel="model3:myaccount:mycar:combinedtemp"}
Number:Temperature TeslaInsideTemperature {channel="model3:myaccount:mycar:insidetemp"}
Number:Temperature TeslaOutsideTemperature {channel="model3:myaccount:mycar:outsidetemp"}
``` ```
demo.sitemap: demo.sitemap:
``` ```
sitemap demo label="Main Menu" sitemap main label="Main"
{ {
Text label="Car" { Text item=TeslaUsableBatteryLevel label="Car" icon="tesla" valuecolor=[<=20="red",>60="green"]
Text label="Drive" { {
Text item=TeslaEventstamp label="Last Event Timestamp [%1$td.%1$tm.%1$tY %1$tT]" Frame
Text item=TeslaState label="State [%s]" {
Text item=TeslaSpeed label="Speed [%.1f]" Text item=TeslaEventstamp icon="time"
Text item=TeslaShiftState label="Shift State [%s]" Text item=TeslaState label="State [%s]" icon=""
Text item=TeslaOdometer label="Odometer [%.1f km]" Text item=TeslaHomelink label="Homelink Available[%s]" icon=""
} Text item=TeslaDistance
Text label="Climate" { Text item=TeslaSpeed label="Speed [%.1f]"
Switch item=TeslaAutoconditioning label="Auto Conditioning" mappings=[ON=ON, OFF=OFF ] Text item=TeslaShiftState label="Shift State [%s]" icon=""
Setpoint item=TeslaTemperature step=0.5 minValue=18 maxValue=34 label="Auto Conditioning Temperature [%.1f °C]" icon="temperature" Text item=nTeslaShiftState
Text item=TeslaInsideTemperature label="Inside Temperature [%.1f]" Text item=TeslaOdometer label="Odometer [%.1f miles]"
} Text item=TeslaRange
Text label="Power" { }
Text item=TeslaBatteryCurrent label="Current [%.1f]" Frame
} {
Text item=TeslaSoC { Switch item=TeslaAutoconditioning label="Enable Heat or AC"
Switch item=TeslaCharge label="Charge" mappings=[ON=ON, OFF=OFF ] Setpoint item=TeslaTemperature step=0.5 minValue=65 maxValue=78 label="Auto Conditioning Temperature [%.1f °F]"
Slider item=TeslaChargeLimit label="Charge Limit [%.1f]" Text item=TeslaInsideTemperature label="Inside Temperature [%.1f °F]" valuecolor=[<=32="blue",>95="red"]
Text item=TeslaChargingState label="Charging State [%s]" Text item=TeslaOutsideTemperature label="Outside Temperature [%.1f °F]" valuecolor=[<=32="blue",>95="red"]
Text item=TeslaChargeRate label="Charge Rate [%s]" }
Text item=TeslaScheduledChargingStart label="Charging Start [%1$td.%1$tm.%1$tY %1$tT]" Frame
Text item=TeslaTimeToFullCharge label="Time To Full Charge [%.1f hours]" {
} Text item=TeslaBatteryLevel
} Text item=TeslaUsableBatteryLevel
Text item=TeslaPower
Text item=TeslaBatteryCurrent label="Current [%.1f]"
Text item=TeslaBatteryRange label="Battery Range [%.1f miles]"
Text item=TeslaEstBatteryRange label="Battery Est Range [%.1f miles]"
Text item=TeslaIdealBatteryRange label="Battery Ideal Range [%.1f miles]"
}
Frame
{
Switch item=TeslaCharge label="Charge"
Slider item=TeslaChargeLimit label="Charge Limit [%.1f]"
Text item=TeslaChargingState label="Charging State [%s]" icon=""
Text item=TeslaTimeToFullCharge label="Time To Full Charge [%.1f hours]"
Text item=TeslaPreconditioning label="Preconditioning [%s]" icon=""
Text item=TeslaChargeRate label="Charge Rate [%d miles/hr]"
Text item=TeslaScheduledChargingStart icon="time"
Text item=TeslaChargerVoltage label="Charge Voltage [%.1f V]"
Text item=TeslaChargerPower label="Charge Power [%.1f kW]"
Text item=TeslaChargerCurrent label="Charge Current [%.1f A]"
Text item=TeslaChargeToMax label="Charge To Max [%s]" icon=""
Text item=TeslaMaxCharges label="Consec Max Charge[%d]"
}
Frame
{
Switch item=TeslaWakeup label="Wakeup the Car"
}
Frame
{
Switch item=TeslaDoorLock label="Doorlock"
Switch item=TeslaHorn label="Horn"
Switch item=TeslaLights label="Lights"
Switch item=TeslaStart label="Remote Start"
Switch item=TeslaValet label="Valet Mode"
Switch item=TeslaSentry label="Sentry Mode"
Switch item=TeslaBatteryHeater label="Battery Heater"
Switch item=TeslaFrontDefrost label="Defrost Front"
Switch item=TeslaRearDefrost label="Defrost Rear"
Switch item=TeslaLeftSeatHeater label="Seat Heat Left"
Switch item=TeslaRightSeatHeater label="Seat Heat Right"
}
Frame
{
Switch label="State" item=nTeslaState_chart icon=line mappings=[0="Hide", 1="Hour", 2="Day", 3="Week", 4="Month"]
Chart item=nTeslaState period=h refresh=30000 visibility=[nTeslaState_chart==1]
Chart item=nTeslaState period=D refresh=30000 visibility=[nTeslaState_chart==2]
Chart item=nTeslaState period=W refresh=30000 visibility=[nTeslaState_chart==3]
Chart item=nTeslaState period=M refresh=30000 visibility=[nTeslaState_chart==4]
}
Frame
{
Switch label="Battery" item=TeslaBatteryLevel_chart icon=line mappings=[0="Hide", 1="Hour", 2="Day", 3="Week", 4="Month"]
Chart item=TeslaUsableBatteryLevel period=h refresh=30000 visibility=[TeslaBatteryLevel_chart==1]
Chart item=TeslaUsableBatteryLevel period=D refresh=30000 visibility=[TeslaBatteryLevel_chart==2]
Chart item=TeslaUsableBatteryLevel period=W refresh=30000 visibility=[TeslaBatteryLevel_chart==3]
Chart item=TeslaUsableBatteryLevel period=M refresh=30000 visibility=[TeslaBatteryLevel_chart==4]
}
Frame
{
Mapview item=TeslaLocation height=10 icon=location
}
}
} }
``` ```
demo.rule (for graphing online status in sitemap above)
```
rule "Tesla State Changed"
when
Item TeslaState changed
then
if (previousState == NULL) return;
switch (TeslaState.state) {
case "online" : {
nTeslaState.postUpdate(1)
}
case "asleep" : {
nTeslaState.postUpdate(0)
}
case "offline" : {
nTeslaState.postUpdate(-0.5)
}
case "waking" : {
nTeslaState.postUpdate(0.5)
}
case "unknown" : {
nTeslaState.postUpdate(-1)
}
}
end
```

View File

@ -0,0 +1,71 @@
---
id: tplinkrouter
label: tplinkrouter
title: tplinkrouter - Bindings
type: binding
description: "The tplinkrouter Binding allows monitoring and controlling TP-Link routers."
since: 3x
install: manual
---
<!-- Attention authors: Do not edit directly. Please add your changes to the appropriate source repository -->
{% include base.html %}
# tplinkrouter Binding
The tplinkrouter Binding allows monitoring and controlling TP-Link routers.
The binding uses a telnet connection to communicate with the router.
At the moment only wifi part is supported and `TD-W9970` is the only model tested.
This binding may work with other TP-Link router provided that they use the same telnet API.
## Supported Things
This binding provides only the `router` Thing.
## Thing Configuration
### `router` Thing Configuration
| Name | Type | Description | Default | Required | Advanced |
|-----------------|---------|-----------------------------------------------|---------|----------|----------|
| hostname | text | Hostname or IP address of the device | N/A | yes | no |
| port | integer | Port for telnet connection | 23 | no | no |
| username | text | Username to access the router (same as WebUI) | N/A | yes | no |
| password | text | Password to access the device (same as WebUI) | N/A | yes | no |
| refreshInterval | integer | Interval the device is polled in sec. | 60 | no | yes |
## Channels
| Channel | Type | Read/Write | Description |
|-----------------------|--------|------------|------------------------------------------|
| `wifi#status` | Switch | RW | State of the wifi |
| `wifi#ssid` | String | R | SSID of the wifi network |
| `wifi#bandwidth` | String | R | Bandwidth of the wifi network |
| `wifi#qss` | Switch | RW | Quick Security Setup of the wifi network |
| `wifi#secMode` | String | R | Security Mode of the wifi network |
| `wifi#authentication` | String | R | Authentication Mode of the wifi network |
| `wifi#encryption` | String | R | Encryption Mode of the wifi network |
| `wifi#key` | String | R | Password of the wifi network |
## Full Example
`.things` configuration file:
```
Thing tplinkrouter:router:myRouter [hostname="192.168.0.1", username="admin", password="myPassword"]
```
`.items` configuration file:
```
Switch Wifi "Wifi" <QualityOfService> {channel="tplinkrouter:router:myRouter:wifi#status", autoupdate="false"}
String WifiSSID "Wifi SSID" <QualityOfService> {channel="tplinkrouter:router:myRouter:wifi#ssid"}
String BandWidth "Wifi Bandwidth" <QualityOfService> {channel="tplinkrouter:router:myRouter:wifi#bandwidth"}
Switch QSS "Wifi QSS" <QualityOfService> {channel="tplinkrouter:router:myRouter:wifi#qss", autoupdate="false"}
String SecMode "Wifi Security Mode" <QualityOfService> {channel="tplinkrouter:router:myRouter:wifi#secMode"}
String Authentication "Wifi Authentication Mode" <QualityOfService> {channel="tplinkrouter:router:myRouter:wifi#authentication"}
String Encryption "Wifi Encryption Mode" <QualityOfService> {channel="tplinkrouter:router:myRouter:wifi#encryption"}
```

View File

@ -66,6 +66,7 @@ Attention: The file-based configuration overrides the UI configuration.
that if you use all default values at minimum you must provide a password or a token. that if you use all default values at minimum you must provide a password or a token.
All item- and event-related configuration is defined in the file `persistence/influxdb.persist`. All item- and event-related configuration is defined in the file `persistence/influxdb.persist`.
Please consider [persistence documentation](https://www.openhab.org/docs/configuration/persistence.html#persistence) for further information.
### Additional configuration for customized storage options in InfluxDB ### Additional configuration for customized storage options in InfluxDB

View File

@ -132,6 +132,7 @@
<parameter name="allowWakeup" type="boolean" required="false"> <parameter name="allowWakeup" type="boolean" required="false">
<default>false</default> <default>false</default>
<label>Allow Wake-Up</label> <label>Allow Wake-Up</label>
<advanced>true</advanced>
<description>Allows waking up the vehicle. Caution: This can result in huge vampire drain!</description> <description>Allows waking up the vehicle. Caution: This can result in huge vampire drain!</description>
</parameter> </parameter>
<parameter name="allowWakeupForCommands" type="boolean" required="false"> <parameter name="allowWakeupForCommands" type="boolean" required="false">
@ -143,8 +144,28 @@
<parameter name="enableEvents" type="boolean" required="false"> <parameter name="enableEvents" type="boolean" required="false">
<default>false</default> <default>false</default>
<label>Enable Events</label> <label>Enable Events</label>
<advanced>true</advanced>
<description>Enable the event stream for the vehicle</description> <description>Enable the event stream for the vehicle</description>
</parameter> </parameter>
<parameter name="inactivity" type="integer" min="5" required="false">
<label>Inactivity Interval</label>
<advanced>true</advanced>
<description>The inactivity period in minutes, after which the binding stops for 20 minutes to let the car sleep.</description>
<default>5</default>
</parameter>
<parameter name="useDriveState" type="boolean" required="false">
<default>false</default>
<label>Use Drive State for Inactivity</label>
<advanced>true</advanced>
<description>Use the drive state instead of location to determine vehicle inactivity.</description>
</parameter>
<parameter name="useAdvancedStatesForPolling" type="boolean" required="false">
<default>false</default>
<label>Use Console Modes and Occupancy for Inactivity</label>
<advanced>true</advanced>
<description>Use these states to help continue the fast polling of the API. Do not back off polling if in these
states.</description>
</parameter>
</config-description> </config-description>
</thing-type> </thing-type>

View File

@ -139,6 +139,7 @@
<parameter name="allowWakeup" type="boolean" required="false"> <parameter name="allowWakeup" type="boolean" required="false">
<default>false</default> <default>false</default>
<label>Allow Wake-Up</label> <label>Allow Wake-Up</label>
<advanced>true</advanced>
<description>Allows waking up the vehicle. Caution: This can result in huge vampire drain!</description> <description>Allows waking up the vehicle. Caution: This can result in huge vampire drain!</description>
</parameter> </parameter>
<parameter name="allowWakeupForCommands" type="boolean" required="false"> <parameter name="allowWakeupForCommands" type="boolean" required="false">
@ -150,8 +151,28 @@
<parameter name="enableEvents" type="boolean" required="false"> <parameter name="enableEvents" type="boolean" required="false">
<default>false</default> <default>false</default>
<label>Enable Events</label> <label>Enable Events</label>
<advanced>true</advanced>
<description>Enable the event stream for the vehicle</description> <description>Enable the event stream for the vehicle</description>
</parameter> </parameter>
<parameter name="inactivity" type="integer" min="5" required="false">
<label>Inactivity Interval</label>
<advanced>true</advanced>
<description>The inactivity period in minutes, after which the binding stops for 20 minutes to let the car sleep.</description>
<default>5</default>
</parameter>
<parameter name="useDriveState" type="boolean" required="false">
<default>false</default>
<label>Use Drive State for Inactivity</label>
<advanced>true</advanced>
<description>Use the drive state instead of location to determine vehicle inactivity.</description>
</parameter>
<parameter name="useAdvancedStatesForPolling" type="boolean" required="false">
<default>false</default>
<label>Use Console Modes and Occupancy for Inactivity</label>
<advanced>true</advanced>
<description>Use these states to help continue the fast polling of the API. Do not back off polling if in these
states.</description>
</parameter>
</config-description> </config-description>
</thing-type> </thing-type>

View File

@ -139,6 +139,7 @@
<parameter name="allowWakeup" type="boolean" required="false"> <parameter name="allowWakeup" type="boolean" required="false">
<default>false</default> <default>false</default>
<label>Allow Wake-Up</label> <label>Allow Wake-Up</label>
<advanced>true</advanced>
<description>Allows waking up the vehicle. Caution: This can result in huge vampire drain!</description> <description>Allows waking up the vehicle. Caution: This can result in huge vampire drain!</description>
</parameter> </parameter>
<parameter name="allowWakeupForCommands" type="boolean" required="false"> <parameter name="allowWakeupForCommands" type="boolean" required="false">
@ -150,8 +151,28 @@
<parameter name="enableEvents" type="boolean" required="false"> <parameter name="enableEvents" type="boolean" required="false">
<default>false</default> <default>false</default>
<label>Enable Events</label> <label>Enable Events</label>
<advanced>true</advanced>
<description>Enable the event stream for the vehicle</description> <description>Enable the event stream for the vehicle</description>
</parameter> </parameter>
<parameter name="inactivity" type="integer" min="5" required="false">
<label>Inactivity Interval</label>
<advanced>true</advanced>
<description>The inactivity period in minutes, after which the binding stops for 20 minutes to let the car sleep.</description>
<default>5</default>
</parameter>
<parameter name="useDriveState" type="boolean" required="false">
<default>false</default>
<label>Use Drive State for Inactivity</label>
<advanced>true</advanced>
<description>Use the drive state instead of location to determine vehicle inactivity.</description>
</parameter>
<parameter name="useAdvancedStatesForPolling" type="boolean" required="false">
<default>false</default>
<label>Use Console Modes and Occupancy for Inactivity</label>
<advanced>true</advanced>
<description>Use these states to help continue the fast polling of the API. Do not back off polling if in these
states.</description>
</parameter>
</config-description> </config-description>
</thing-type> </thing-type>

View File

@ -134,6 +134,7 @@
<parameter name="allowWakeup" type="boolean" required="false"> <parameter name="allowWakeup" type="boolean" required="false">
<default>false</default> <default>false</default>
<label>Allow Wake-Up</label> <label>Allow Wake-Up</label>
<advanced>true</advanced>
<description>Allows waking up the vehicle. Caution: This can result in huge vampire drain!</description> <description>Allows waking up the vehicle. Caution: This can result in huge vampire drain!</description>
</parameter> </parameter>
<parameter name="allowWakeupForCommands" type="boolean" required="false"> <parameter name="allowWakeupForCommands" type="boolean" required="false">
@ -145,8 +146,28 @@
<parameter name="enableEvents" type="boolean" required="false"> <parameter name="enableEvents" type="boolean" required="false">
<default>false</default> <default>false</default>
<label>Enable Events</label> <label>Enable Events</label>
<advanced>true</advanced>
<description>Enable the event stream for the vehicle</description> <description>Enable the event stream for the vehicle</description>
</parameter> </parameter>
<parameter name="inactivity" type="integer" min="5" required="false">
<label>Inactivity Interval</label>
<advanced>true</advanced>
<description>The inactivity period in minutes, after which the binding stops for 20 minutes to let the car sleep.</description>
<default>5</default>
</parameter>
<parameter name="useDriveState" type="boolean" required="false">
<default>false</default>
<label>Use Drive State for Inactivity</label>
<advanced>true</advanced>
<description>Use the drive state instead of location to determine vehicle inactivity.</description>
</parameter>
<parameter name="useAdvancedStatesForPolling" type="boolean" required="false">
<default>false</default>
<label>Use Console Modes and Occupancy for Inactivity</label>
<advanced>true</advanced>
<description>Use these states to help continue the fast polling of the API. Do not back off polling if in these
states.</description>
</parameter>
</config-description> </config-description>
</thing-type> </thing-type>

View File

@ -0,0 +1,86 @@
<?xml version="1.0" encoding="UTF-8"?>
<thing:thing-descriptions bindingId="tplinkrouter"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:thing="https://openhab.org/schemas/thing-description/v1.0.0"
xsi:schemaLocation="https://openhab.org/schemas/thing-description/v1.0.0 https://openhab.org/schemas/thing-description-1.0.0.xsd">
<channel-group-type id="wifiGroupType">
<label>Wifi</label>
<description>Wifi channels</description>
<channels>
<channel id="status" typeId="status"/>
<channel id="ssid" typeId="ssid"/>
<channel id="bandwidth" typeId="bandwidth"/>
<channel id="qss" typeId="qss"/>
<channel id="secMode" typeId="security-mode"/>
<channel id="authentication" typeId="authentication"/>
<channel id="encryption" typeId="encryption"/>
<channel id="key" typeId="key"/>
</channels>
</channel-group-type>
<channel-type id="qss">
<item-type>Switch</item-type>
<label>Wifi QSS</label>
</channel-type>
<channel-type id="status">
<item-type>Switch</item-type>
<label>Wifi Status</label>
</channel-type>
<channel-type id="ssid">
<item-type>String</item-type>
<label>Wifi SSID</label>
<state pattern="%s" readOnly="true"/>
</channel-type>
<channel-type id="key">
<item-type>String</item-type>
<label>Wifi Key</label>
<state pattern="%s" readOnly="true"/>
</channel-type>
<channel-type id="security-mode">
<item-type>String</item-type>
<label>Wifi Security Mode</label>
<state readOnly="true">
<options>
<option value="WEP">WEP</option>
<option value="WPA">PSK</option>
</options>
</state>
</channel-type>
<channel-type id="authentication">
<item-type>String</item-type>
<label>Wifi Authentication Mode</label>
<state readOnly="true">
<options>
<option value="AUTO">AUTO</option>
<option value="OPEN">OPEN</option>
<option value="SHARED">SHARED</option>
<option value="WPA">WPA</option>
<option value="WPA2">WPA2</option>
</options>
</state>
</channel-type>
<channel-type id="encryption">
<item-type>String</item-type>
<label>Wifi Encryption Mode</label>
<description>Wifi Encryption Mode (only for PSK security mode)</description>
<state readOnly="true">
<options>
<option value="AUTO">AUTO</option>
<option value="TKIP">TKIP</option>
<option value="AES">AES</option>
</options>
</state>
</channel-type>
<channel-type id="bandwidth">
<item-type>String</item-type>
<label>Wifi BandWidth</label>
<state readOnly="true">
<options>
<option value="Auto">Auto</option>
<option value="20M">20 MHz</option>
<option value="40M">40 MHz</option>
</options>
</state>
</channel-type>
</thing:thing-descriptions>

View File

@ -0,0 +1,45 @@
<?xml version="1.0" encoding="UTF-8"?>
<thing:thing-descriptions bindingId="tplinkrouter"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:thing="https://openhab.org/schemas/thing-description/v1.0.0"
xsi:schemaLocation="https://openhab.org/schemas/thing-description/v1.0.0 https://openhab.org/schemas/thing-description-1.0.0.xsd">
<thing-type id="router">
<label>Router</label>
<description>Router device monitored and controlled by telnet connection</description>
<channel-groups>
<channel-group id="wifi" typeId="wifiGroupType"/>
</channel-groups>
<config-description>
<parameter name="hostname" type="text" required="true">
<context>network-address</context>
<label>Hostname</label>
<description>Hostname or IP address of the device</description>
</parameter>
<parameter name="port" type="integer">
<label>Port</label>
<description>Port for telnet connection</description>
<default>23</default>
</parameter>
<parameter name="username" type="text" required="true">
<label>Username</label>
<description>User to access the device</description>
</parameter>
<parameter name="password" type="text" required="true">
<context>password</context>
<label>Password</label>
<description>Password to access the device</description>
</parameter>
<parameter name="refreshInterval" type="integer" unit="s" min="1">
<label>Refresh Interval</label>
<description>Interval the device is polled in sec.</description>
<default>60</default>
<advanced>true</advanced>
</parameter>
</config-description>
</thing-type>
</thing:thing-descriptions>