_Warning_: this service provides no authentication mechanism, so anyone could use the API to control your system when accessible from the internet.
Add a secure proxy or use the openHAB Cloud proxy to protect your system ([more information](https://www.openhab.org/docs/installation/security.html)).
Click Next to let ImperiHome validate the URL.
After validation succeeded the system is added and you can continue to configure your Items for use in ImperiHome.
## Device Tagging
This service uses Item tags to determine how to expose your Items to ImperiHome.
All tags are formatted like this:
```
iss:<tagtype>:<value>
```
For example:
```
iss:room:Kitchen
```
If you have defined your Items in _.items_ files, tags can be added using:
```
[ "mytag" ]
```
syntax (after the _(Groups)_ and before the _{channel}_).
### Tag: _type_
Specifies the device type to expose to ImperiHome.
Take a look at [Device types](#deviceTypes) below for the supported device types and how to configure them.
If no type is specified, this service will try to auto-detect the type from the Item, based on supported value types (OnOff for a switch, HSB for color light) and Item name.
_Required_: no<br>
_Default_: auto-detect<br>
Example:
```
iss:type:DevSwitch
```
### Tag: _room_
Specifies the room the device will show up in in ImperiHome.
_Required_: no<br>
_Default_: 'No Room'<br>
_Example_:
```
iss:room:Kitchen
```
### Tag: _label_
Sets the device label in ImperiHome.
If no label is specified, the Item label is used if available.
Otherwise the Item name will be used.
_Required_: no<br>
_Default_: Item label or name<br>
_Example_:
```
iss:label:Kitchen light
```
### Tag: _mapping_
Sets the mapping for an ImperiHome MultiSwitch device, just like an openHAB sitemap mapping does.
In the example below, 'All off', 'Relax' and 'Reading' will be visible in ImperiHome.
Clicking one of the options will send a 0, 1 or 2 value command to the openHAB item.
_Required_: only for MultiSwitch device<br>
_Default_: none<br>
_Example_:
```
iss:mapping:0=All off,1=Relax,2=Reading
```
### Tag: _link_
Links two devices together, using the value from the linked device as an additional value in the device containing the link tag.
See [Device links](#deviceLinks) for details.
_Required_: no<br>
_Default_: none<br>
_Example_:
```
iss:link:energy:Kitchen_Current_Consumption
```
### Tag: _unit_
Sets the unit for devices with a numeric value, such as _DevTemperature_ and _DevGenericSensor_.
The unit is only used to tell ImperiHome what to display; no conversion is performed.
_Required_: no<br>
_Default_: none<br>
_Example_:
```
iss:unit:°C
```
### Tag: _invert_
Inverts the state of on/off devices such as switches and dimmers.
_Required_: no<br>
_Default_: false<br>
_Example_:
```
iss:invert:true
```
### Tag: _icon_
Sets a custom icon to be shown in ImperiHome.
You can use all icon names that are also available for use in your sitemaps, including custom icons.
To use this tag you must set the openHAB root URL in your [configuration](#configuration).
_Required_: no<br>
_Default_: none<br>
_Example_:
```
iss:icon:sofa
```
<aname="deviceTypes"></a>
## Device types
The following table lists the ImperiHome API device types that you can use in a _iss:type_ tag.
Not all device types are currently supported.
For those that are supported, the Item types you can use them on are listed.
<td>Temperature and Hygrometry combined sensor</td>
<td>Yes</td>
<td>Number</td>
<td>hygro, temp</td>
</tr>
<tr>
<td>DevThermostat</td>
<td>Thermostat <sup>(2)</sup></td>
<td>Yes</td>
<td>Number</td>
<td>curmode, curtemp</td>
</tr>
<tr>
<td>DevUV</td>
<td>UV sensor</td>
<td>Yes</td>
<td>Number</td>
<td>-</td>
</tr>
<tr>
<td>DevWind</td>
<td>Wind sensor</td>
<td>Yes</td>
<td>Number</td>
<td>direction</td>
</tr>
</table>
<sup>(1)</sup> When using a String Item for trippable devices, any non-empty value other than 'ok' will set the device to tripped. This makes it compatible with the Nest Protect binding.
<sup>(2)</sup> Thermostat devices require additional tags. See [Thermostat](#thermostat) for details.
<aname="deviceLinks"></a>
## Device links
Some devices can be linked to another device.
This allows you to create combined devices reporting multiple values, or reporting the energy consumption with a switch device.
The _link_ tag refers to the name of the Item it should link to.
The item must be an ImperiHome device itself, so it must have at least one _iss_ tag.
### Switch energy consumption
ImperiHome allows you to show the current energy consumption for a _DevDimmer_, _DevRGBLight_ and _DevSwitch_.
This example links the _MyLightEnergy_ Number Item to the _MyLight_ Switch Item, so the _DevSwitch_ device will also report the energy consumption value to ImperiHome:
```
Switch MyLight "My Light" ["iss:type:DevSwitch", "iss:link:energy:MyLight_Energy"] { channel="zwave:device:1:node14:switch_binary1" }
Number MyLightEnergy "My Light Usage [%.1f W]" ["iss:type:DevElectricity"] { channel="zwave:device:1:node14:meter_watts1" }
```
### Total energy consumption
The _DevElectricity_ devices main value is the current consumption in Watts.
To add the total consumption in KWh, link your electricity device to a generic sensor device containing the total energy consumption value:
```
Number MyLight_Energy "My Light Usage [%.1f W]" ["iss:type:DevElectricity", "iss:link:kwh:MyLight_Total_Energy"] { channel="zwave:device:1:node14:meter_watts1" }
Number MyLight_Total_Energy "My Light Total usage [%.1f KWh]" ["iss:type:DevGenericSensor", "iss:unit:KWh"] { channel="zwave:device:1:node14:sensor_power1" }
```
### TempHygro
ImperiHome recognizes the special _DevTempHygro_ device, combining a temperature and hydrometry sensor.
You can create such a device by linking either from a temperature Item to a hygro Item:
```
Number MyTemp "Temperature [%.1f °C]" ["iss:type:DevTempHygro", "iss:link:hygro:MyHum"] { channel="zwave:device:1:node8:sensor_temperature" }
Number MyHum "Humidity [%d%%]" ["iss:type:DevHygrometry"] { channel="zwave:device:1:node8:sensor_relhumidity" }
```
or vise versa:
```
Number MyTemp "Temperature [%.1f °C]" ["iss:type:DevTemperature"] { channel="zwave:device:1:node8:sensor_temperature" }
Number MyHum "Humidity [%d%%]" ["iss:type:DevTempHygro", "iss:link:temp:MyTemp"] { channel="zwave:device:1:node8:sensor_relhumidity" }
```
### Rain accumulation
The _DevRain_ devices main value is the current instant rain value (default in mm per hour).
To add the total rain accumulation value, link your rain device to a generic sensor device:
```
Number RainCurrent "Rain current [%.1f mm/h]" ["iss:type:DevRain", "iss:link:accum:RainAccumulation"] { channel="..." }