openHAB install after windows service feature install
This commit is contained in:
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because one or more lines are too long
@@ -0,0 +1,22 @@
|
||||
'use strict';
|
||||
|
||||
scriptExtension.importPreset("RuleSupport");
|
||||
scriptExtension.importPreset("RuleSimple");
|
||||
|
||||
var sRule = new SimpleRule() {
|
||||
execute: function( module, input) {
|
||||
print("This is a 'hello world!' from a Javascript rule.");
|
||||
}
|
||||
};
|
||||
|
||||
sRule.setTriggers([
|
||||
TriggerBuilder.create()
|
||||
.withId("aTimerTrigger")
|
||||
.withTypeUID("timer.GenericCronTrigger")
|
||||
.withConfiguration(
|
||||
new Configuration({
|
||||
"cronExpression": "0 * * * * ?"
|
||||
})).build()
|
||||
]);
|
||||
|
||||
automationManager.addRule(sRule);
|
||||
@@ -0,0 +1,133 @@
|
||||
Group gFF "First Floor" <firstfloor> ["FirstFloor"]
|
||||
Group gGF "Ground Floor" <groundfloor> ["GroundFloor"]
|
||||
Group gC "Cellar" <cellar> ["Basement"]
|
||||
Group Garden "Garden" <garden> ["Garden"]
|
||||
Group Weather "Weather" <sun>
|
||||
|
||||
Group Status
|
||||
Group Shutters
|
||||
|
||||
Group GF_Living "Living Room" <video> (gGF) ["LivingRoom"]
|
||||
Group GF_Kitchen "Kitchen" <kitchen> (gGF) ["Kitchen"]
|
||||
Group GF_Toilet "Toilet" <bath> (gGF) ["Bathroom"] { synonyms="Toilets,WC,Restroom" }
|
||||
Group GF_Corridor "Corridor" <corridor> (gGF) ["Corridor"]
|
||||
|
||||
Group FF_Bath "Bathroom" <bath> (gFF) ["Bathroom"]
|
||||
Group FF_Office "Office" <office> (gFF) ["Room"] { synonyms="Study" }
|
||||
Group FF_Son "Oliver's Room" <boy_1> (gFF) ["Bedroom"] { synonyms="Oli's Room" }
|
||||
Group FF_Daughter "Amelia's Room" <girl_1> (gFF) ["Bedroom"] { synonyms="Amy's Room" }
|
||||
Group FF_Bed "Bedroom" <bedroom> (gFF) ["Bedroom"] { synonyms="Master Bedroom" }
|
||||
Group FF_Corridor "Corridor" <corridor> (gFF) ["Corridor"]
|
||||
|
||||
/* active groups */
|
||||
Group:Switch:OR(ON, OFF) Lights "All Lights [(%d)]"
|
||||
Group:Switch:OR(ON, OFF) Heating "No. of Active Heatings [(%d)]" <heating>
|
||||
Group:Number:AVG Temperature "Avg. Room Temperature [%.1f °C]" <temperature> (Status)
|
||||
Group:Contact:OR(OPEN, CLOSED) Windows "Open windows [(%d)]" <contact>
|
||||
|
||||
/* Lights */
|
||||
Dimmer Light_GF_Living_Table "Table" (GF_Living, Lights) ["Light", "Lighting"]
|
||||
Switch Light_GF_Corridor_Ceiling "Ceiling" (GF_Corridor, Lights) ["Light"]
|
||||
Switch Light_GF_Kitchen_Ceiling "Ceiling" (GF_Kitchen, Lights) ["Light"]
|
||||
Switch Light_GF_Kitchen_Table "Table" (GF_Kitchen, Lights) ["Light"]
|
||||
Switch Light_GF_Corridor_Wardrobe "Wardrobe" (GF_Corridor, Lights) ["Light"]
|
||||
Switch Light_GF_Toilet_Ceiling "Ceiling" (GF_Toilet, Lights) ["Light"]
|
||||
Switch Light_GF_Toilet_Mirror "Mirror" (GF_Toilet, Lights) ["Light"]
|
||||
|
||||
Switch Light_FF_Bath_Ceiling "Ceiling" (FF_Bath, Lights) ["Light"]
|
||||
Switch Light_FF_Bath_Mirror "Mirror" (FF_Bath, Lights) ["Light"]
|
||||
Switch Light_FF_Corridor_Ceiling "Corridor" (FF_Corridor, Lights) ["Light"]
|
||||
Switch Light_FF_Office_Ceiling "Ceiling" (FF_Office, Lights) ["Light"]
|
||||
Switch Light_FF_Son_Ceiling "Ceiling" (FF_Son, Lights) ["Light"]
|
||||
Switch Light_FF_Daughter_Ceiling "Ceiling" (FF_Daughter, Lights) ["Light"]
|
||||
Switch Light_FF_Bed_Ceiling "Ceiling" (FF_Bed, Lights) ["Light"]
|
||||
|
||||
Switch Light_C_Corridor_Ceiling "Ceiling" (gC, Lights) ["Light"]
|
||||
Switch Light_C_Staircase "Staircase" (gC, Lights) ["Light"]
|
||||
Switch Light_C_Washing_Ceiling "Washing" (gC, Lights) ["Light"]
|
||||
Switch Light_C_Workshop "Workshop" (gC, Lights) ["Light", "Lighting"]
|
||||
|
||||
Switch Light_Garden_Garage "Garage" (Garden, Lights) ["Light", "Lighting"]
|
||||
Switch Light_Garden_Terrace "Terrace" (Garden, Lights) ["Light"]
|
||||
|
||||
/* Heating */
|
||||
Switch Heating_GF_Corridor "Corridor" <heating> (GF_Corridor, Heating) ["HVAC"]
|
||||
Switch Heating_GF_Toilet "Toilet" <heating> (GF_Toilet, Heating) ["HVAC"]
|
||||
Switch Heating_GF_Living "Livingroom" <heating> (GF_Living, Heating) ["HVAC"]
|
||||
Switch Heating_GF_Kitchen "Kitchen" <heating> (GF_Kitchen, Heating) ["HVAC"]
|
||||
|
||||
Switch Heating_FF_Bath "Bath" <heating> (FF_Bath, Heating) ["HVAC"]
|
||||
Switch Heating_FF_Office "Office" <heating> (FF_Office, Heating) ["HVAC"]
|
||||
Switch Heating_FF_Son "Oliver's Room" <heating> (FF_Son, Heating) ["HVAC"]
|
||||
Switch Heating_FF_Daughter "Amelia's Room" <heating> (FF_Daughter, Heating) ["HVAC"]
|
||||
Switch Heating_FF_Bed "Bedroom" <heating> (FF_Bed, Heating) ["HVAC"]
|
||||
|
||||
/* Rollershutters */
|
||||
Rollershutter Shutter_GF_Toilet "Toilet" (GF_Toilet, Shutters) ["Blinds"]
|
||||
Rollershutter Shutter_GF_Kitchen "Kitchen" (GF_Kitchen, Shutters) ["Blinds"]
|
||||
Rollershutter Shutter_GF_Living "Livingroom" (GF_Living, Shutters) ["Blinds"]
|
||||
|
||||
Rollershutter Shutter_FF_Bed "Bedroom" (FF_Bed, Shutters) ["Blinds"]
|
||||
Rollershutter Shutter_FF_Bath "Bath" (FF_Bath, Shutters) ["Blinds"]
|
||||
Rollershutter Shutter_FF_Office_Window "Office Window" (FF_Office, Shutters) ["Blinds"]
|
||||
Rollershutter Shutter_FF_Office_Door "Office Door" (FF_Office, Shutters) ["Blinds"]
|
||||
|
||||
Switch Shutter_all
|
||||
|
||||
/* Indoor Temperatures */
|
||||
Number Temperature_GF_Corridor "Corridor [%.1f °C]" <temperature> (Temperature, GF_Corridor) ["Temperature", "Measurement"]
|
||||
Number Temperature_GF_Toilet "Toilet [%.1f °C]" <temperature> (Temperature, GF_Toilet) ["Temperature", "Measurement"]
|
||||
Number Temperature_GF_Living "Living Room [%.1f °C]" <temperature> (Temperature, GF_Living) ["Temperature", "Measurement"]
|
||||
Number Temperature_GF_Kitchen "Kitchen [%.1f °C]" <temperature> (Temperature, GF_Kitchen, Thermostat) ["Temperature", "Measurement", "CurrentTemperature"]
|
||||
Number Temperature_FF_Bath "Bath [%.1f °C]" <temperature> (Temperature, FF_Bath) ["Temperature", "Measurement"]
|
||||
Number Temperature_FF_Office "Office [%.1f °C]" <temperature> (Temperature, FF_Office) ["Temperature", "Measurement"]
|
||||
Number Temperature_FF_Son "Oliver's Room [%.1f °C]" <temperature> (Temperature, FF_Son) ["Temperature", "Measurement"]
|
||||
Number Temperature_FF_Daughter "Amelia's Room [%.1f °C]" <temperature> (Temperature, FF_Daughter) ["Temperature", "Measurement"]
|
||||
Number Temperature_FF_Bed "Bedroom [%.1f °C]" <temperature> (Temperature, FF_Bed) ["Temperature", "Measurement"]
|
||||
|
||||
/* Windows */
|
||||
Contact Window_GF_Frontdoor "Frontdoor [MAP(en.map):%s]" <frontdoor> (GF_Corridor, Windows) ["FrontDoor"]
|
||||
Contact Window_GF_Kitchen "Kitchen [MAP(en.map):%s]" (GF_Kitchen, Windows) ["Window"]
|
||||
Contact Window_GF_Living "Terrace door [MAP(en.map):%s]" <door> (GF_Living, Windows) ["Door"]
|
||||
Contact Window_GF_Toilet "Toilet [MAP(en.map):%s]" (GF_Toilet, Windows) ["Window"]
|
||||
|
||||
Contact Window_FF_Bath "Bath [MAP(en.map):%s]" (FF_Bath, Windows) ["Window"]
|
||||
Contact Window_FF_Bed "Bedroom [MAP(en.map):%s]" (FF_Bed, Windows) ["Window"]
|
||||
Contact Window_FF_Office_Window "Office Window [MAP(en.map):%s]" (FF_Office, Windows) ["Window"]
|
||||
Contact Window_FF_Office_Door "Balcony Door [MAP(en.map):%s]" <door> (FF_Office, Windows) ["Door"]
|
||||
|
||||
Contact Garage_Door "Garage Door [MAP(en.map):%s]" <garagedoor> (Garden, Windows) ["GarageDoor"]
|
||||
|
||||
Group Weather_Chart
|
||||
Number Weather_Temperature "Outside Temperature [%.1f °C]" <temperature> (Weather, Weather_Chart) { channel="yahooweather:weather:berlin:temperature" }
|
||||
Number Weather_Temp_Max "Todays Maximum [%.1f °C]" <temperature> (Weather, Weather_Chart)
|
||||
Number Weather_Temp_Min "Todays Minimum [%.1f °C]" <temperature> (Weather, Weather_Chart)
|
||||
Number Weather_Chart_Period "Chart Period"
|
||||
DateTime Weather_LastUpdate "Last Update [%1$ta %1$tR]" <clock>
|
||||
Number:Angle Sun_Elevation "Sun Elevation" <sun> { channel = "astro:sun:home:position#elevation" }
|
||||
Number:Angle Sun_Azimuth "Sun Azimuth" <sun> { channel = "astro:sun:home:position#azimuth" }
|
||||
DateTime Sunrise_Time "Sunrise [%1$tH:%1$tM]" <sunrise> { channel = "astro:sun:home:rise#start" }
|
||||
DateTime Sunset_Time "Sunset [%1$tH:%1$tM]" <sunset> { channel = "astro:sun:home:set#start" }
|
||||
Number:Angle Moon_Elevation "Moon Elevation" <moon> { channel = "astro:moon:home:position#elevation" }
|
||||
Number:Angle Moon_Azimuth "Moon Azimuth" <moon> { channel = "astro:moon:home:position#azimuth" }
|
||||
String Moon_Phase "Moon Phase" <moon> { channel = "astro:moon:home:phase#name" }
|
||||
|
||||
/* Demo items */
|
||||
DateTime CurrentDate "Date [%1$tA, %1$td.%1$tm.%1$tY]" <calendar> { channel="ntp:ntp:demo:dateTime" }
|
||||
Switch DemoSwitch "Switch"
|
||||
Dimmer DimmedLight "Dimmer [%d %%]" <slider>
|
||||
Color RGBLight "RGB Light" <slider>
|
||||
Rollershutter DemoShutter "Roller Shutter"
|
||||
Dimmer DemoBlinds "Blinds [%d %%]" <rollershutter>
|
||||
Number Scene_General "Scene" <sofa>
|
||||
Number Radio_Station "Radio" <network>
|
||||
Dimmer Volume "Volume [%.1f %%]"
|
||||
Location DemoLocation "Brandenburg Gate Berlin"
|
||||
Number Wifi_Level "Wifi Level [%d/4]" <signal> (FF_Office)
|
||||
String ImageURL "Image URL [%s]"
|
||||
|
||||
Group Thermostat "Thermostat" <temperature> ["Thermostat"]
|
||||
Dimmer Temperature_Setpoint "Temperature [%.1f °C]" <temperature> (Thermostat) ["TargetTemperature", "Setpoint", "Temperature"] { habot="" [ control="knob", min=15, max=35, leftIcon="mdi-thermometer", leftInverted=true ] }
|
||||
String Thermostat_Mode "Thermostat Mode [%s]" <temperature> (Thermostat) ["homekit:HeatingCoolingMode", "Control"]
|
||||
|
||||
// vim: syntax=Xtend
|
||||
@@ -0,0 +1,14 @@
|
||||
// persistence strategies have a name and a definition and are referred to in the "Items" section
|
||||
Strategies {
|
||||
// for rrd charts, we need a cron strategy
|
||||
everyMinute : "0 * * * * ?"
|
||||
}
|
||||
|
||||
Items {
|
||||
DemoSwitch, NoOfLights, Window_GF_Toilet, Heating* : strategy = everyChange, everyMinute, restoreOnStartup
|
||||
|
||||
// let's only store temperature values in rrd
|
||||
Temperature*, Weather_Chart* : strategy = everyMinute, restoreOnStartup
|
||||
}
|
||||
|
||||
// vim: syntax=Xtend
|
||||
@@ -0,0 +1,164 @@
|
||||
import java.util.Random
|
||||
|
||||
var Timer timer = null
|
||||
val resList = newArrayList("640/480", "320/240", "480/360")
|
||||
val urlList = newArrayList("https://www.fillmurray.com", "https://www.fillmurray.com/g",
|
||||
"https://www.placecage.com", "https://www.placecage.com/c", "https://www.placecage.com/g")
|
||||
val Random random = new Random()
|
||||
|
||||
/**
|
||||
* This is a demo rule which simulates a real dimmer by reacting to increase/decrease commands
|
||||
* and posting an updated state on the bus
|
||||
*/
|
||||
rule "Dimmed Light"
|
||||
when
|
||||
Item DimmedLight received command
|
||||
then
|
||||
if ((receivedCommand == INCREASE) || (receivedCommand == DECREASE)) {
|
||||
var Number percent = 0
|
||||
if (DimmedLight.state instanceof DecimalType) percent = DimmedLight.state as DecimalType
|
||||
|
||||
if (receivedCommand == INCREASE) percent = percent + 5
|
||||
if (receivedCommand == DECREASE) percent = percent - 5
|
||||
|
||||
if (percent < 0) percent = 0
|
||||
if (percent > 100) percent = 100
|
||||
postUpdate(DimmedLight, percent);
|
||||
}
|
||||
end
|
||||
|
||||
rule "Timer Demo"
|
||||
when
|
||||
Item Light_GF_Corridor_Ceiling received command
|
||||
then
|
||||
if (receivedCommand == ON) {
|
||||
if (timer === null) {
|
||||
// first ON command, so create a timer to turn the light off again
|
||||
timer = createTimer(now.plusSeconds(10)) [|
|
||||
sendCommand(Light_GF_Corridor_Ceiling, OFF)
|
||||
]
|
||||
} else {
|
||||
// subsequent ON command, so reschedule the existing timer
|
||||
timer.reschedule(now.plusSeconds(10))
|
||||
}
|
||||
} else if (receivedCommand == OFF) {
|
||||
// remove any previously scheduled timer
|
||||
if (timer !== null) {
|
||||
timer.cancel
|
||||
timer = null
|
||||
}
|
||||
}
|
||||
end
|
||||
|
||||
/**
|
||||
* The following rules help initializing the demo items with some helpful states.
|
||||
*/
|
||||
rule "Initialize light states"
|
||||
when
|
||||
System started
|
||||
then
|
||||
Lights?.members.forEach(light|
|
||||
postUpdate(light, if (Math::random > 0.7) ON else OFF)
|
||||
)
|
||||
end
|
||||
|
||||
rule "Initialize heating states"
|
||||
when
|
||||
System started
|
||||
then
|
||||
Heating?.members.forEach(heating|
|
||||
postUpdate(heating, if (Math::random > 0.8) ON else OFF)
|
||||
)
|
||||
postUpdate(Temperature_Setpoint, 22)
|
||||
end
|
||||
|
||||
rule "Initialize contact states"
|
||||
when
|
||||
System started
|
||||
then
|
||||
Windows?.members.forEach(window|
|
||||
postUpdate(window, if (Math::random > 0.5) OPEN else CLOSED)
|
||||
)
|
||||
end
|
||||
|
||||
rule "Initialize Location"
|
||||
when
|
||||
System started
|
||||
then
|
||||
DemoLocation.postUpdate(new PointType("52.5200066,13.4049540"))
|
||||
end
|
||||
|
||||
rule "Set random room temperatures"
|
||||
when
|
||||
System started or
|
||||
Time cron "0 0/5 * * * ?"
|
||||
then
|
||||
Temperature?.members.forEach(temperature|
|
||||
postUpdate(temperature, 20.0 + (25.0 - (Math::random * 50.0).intValue) / 10.0)
|
||||
)
|
||||
end
|
||||
|
||||
rule "Set daily max and min temperature"
|
||||
when
|
||||
Item Weather_Temperature changed or
|
||||
Time cron "0 0 0 * * ?" or
|
||||
System started
|
||||
then
|
||||
val max = Weather_Temperature.maximumSince(now.withTimeAtStartOfDay)
|
||||
val min = Weather_Temperature.minimumSince(now.withTimeAtStartOfDay)
|
||||
if (max !== null && min !== null) {
|
||||
postUpdate(Weather_Temp_Max, max.state)
|
||||
postUpdate(Weather_Temp_Min, min.state)
|
||||
}
|
||||
end
|
||||
|
||||
// Creates an item that stores the last update time of this item
|
||||
rule "Records last weather update time"
|
||||
when
|
||||
Item Weather_Temperature received update
|
||||
then
|
||||
postUpdate(Weather_LastUpdate, new DateTimeType())
|
||||
end
|
||||
|
||||
rule "Set random wifi variations"
|
||||
when
|
||||
System started or
|
||||
Time cron "/20 * * * * ?"
|
||||
then
|
||||
postUpdate(Wifi_Level, (Math::random * 4.0).intValue)
|
||||
end
|
||||
|
||||
rule "Set random image URLs"
|
||||
when
|
||||
Time cron "/10 * * * * ?"
|
||||
then
|
||||
val url = urlList.get(random.nextInt(urlList.length))
|
||||
val res = resList.get(random.nextInt(resList.length))
|
||||
|
||||
postUpdate(ImageURL, url + "/" + res)
|
||||
end
|
||||
|
||||
rule "Volume"
|
||||
when
|
||||
Item Volume received command
|
||||
then
|
||||
if (receivedCommand instanceof PercentType) {
|
||||
setMasterVolume(receivedCommand)
|
||||
} else {
|
||||
if (receivedCommand == INCREASE) increaseMasterVolume(20)
|
||||
if (receivedCommand == DECREASE) decreaseMasterVolume(20)
|
||||
}
|
||||
end
|
||||
|
||||
rule "Select Radio Station"
|
||||
when
|
||||
Item Radio_Station received command
|
||||
then
|
||||
switch(receivedCommand) {
|
||||
case 0 : playStream(null)
|
||||
case 1 : playStream("http://metafiles.gl-systemhaus.de/hr/hr3_2.m3u")
|
||||
case 2 : playStream("http://mp3-live.swr3.de/swr3_m.m3u")
|
||||
}
|
||||
end
|
||||
|
||||
// vim: syntax=Xtend
|
||||
@@ -0,0 +1,3 @@
|
||||
say("Demo script has been called!")
|
||||
|
||||
// vim: syntax=Xtend
|
||||
@@ -0,0 +1,5 @@
|
||||
# Defining the default sitemap to use
|
||||
org.eclipse.smarthome.basicui:defaultSitemap=demo
|
||||
|
||||
# The icon type to use, either png or svg
|
||||
org.eclipse.smarthome.basicui:iconType=svg
|
||||
@@ -0,0 +1,9 @@
|
||||
# Defining the default sitemap to use
|
||||
org.eclipse.smarthome.classicui:defaultSitemap=demo
|
||||
|
||||
# The icon type to use, either png or svg
|
||||
#org.eclipse.smarthome.classicui:iconType=
|
||||
|
||||
# Disable in-memory caching of html fragments
|
||||
# If this is true, on every request the html files are loaded from disk (default is false)
|
||||
#org.eclipse.smarthome.classicui:disableHtmlCache=false
|
||||
@@ -0,0 +1 @@
|
||||
pattern=%date{ISO8601} - %-25logger: %msg%n
|
||||
@@ -0,0 +1,78 @@
|
||||
sitemap demo label="Main Menu"
|
||||
{
|
||||
Frame {
|
||||
Group item=gFF label="First Floor" icon="firstfloor"
|
||||
Group item=gGF label="Ground Floor" icon="groundfloor"
|
||||
Group item=gC label="Cellar" icon="cellar"
|
||||
Group item=Garden icon="garden"
|
||||
}
|
||||
Frame label="Weather" {
|
||||
Text item=Weather_Temperature valuecolor=[Weather_LastUpdate=="NULL"="lightgray",Weather_LastUpdate>90="lightgray",>25="orange",>15="green",>5="orange",<=5="blue"] {
|
||||
Frame {
|
||||
Text item=Weather_Temp_Max valuecolor=[>25="orange",>15="green",>5="orange",<=5="blue"]
|
||||
Text item=Weather_Temp_Min valuecolor=[>25="orange",>15="green",>5="orange",<=5="blue"]
|
||||
Text item=Weather_LastUpdate visibility=[Weather_LastUpdate>30] valuecolor=[Weather_LastUpdate>120="orange", Weather_LastUpdate>300="red"]
|
||||
}
|
||||
Frame {
|
||||
Switch item=Weather_Chart_Period label="Chart Period" icon="chart" mappings=[0="Hour", 1="Day", 2="Week"]
|
||||
Chart item=Weather_Chart period=h refresh=600000 visibility=[Weather_Chart_Period==0, Weather_Chart_Period=="NULL"]
|
||||
Chart item=Weather_Chart period=D refresh=3600000 visibility=[Weather_Chart_Period==1]
|
||||
Chart item=Weather_Chart period=W refresh=3600000 visibility=[Weather_Chart_Period==2]
|
||||
}
|
||||
}
|
||||
Text label="Astronomical Data" icon="sun" {
|
||||
Text item=Sun_Elevation
|
||||
Text item=Sun_Azimuth
|
||||
Text item=Sunrise_Time
|
||||
Text item=Sunset_Time
|
||||
Text item=Moon_Elevation
|
||||
Text item=Moon_Azimuth
|
||||
Text item=Moon_Phase
|
||||
}
|
||||
}
|
||||
Frame label="Demo" {
|
||||
Text item=CurrentDate
|
||||
Text label="Group Demo" icon="firstfloor" {
|
||||
Switch item=Lights mappings=[OFF="All Off"]
|
||||
Group item=Heating
|
||||
Group item=Windows
|
||||
Text item=Temperature
|
||||
}
|
||||
Text label="Widget Overview" icon="chart" {
|
||||
Frame label="Binary Widgets" {
|
||||
Switch item=DemoSwitch label="Toggle Switch"
|
||||
Switch item=DemoSwitch label="Button Switch" mappings=[ON="On"]
|
||||
}
|
||||
Frame label="Discrete Widgets" {
|
||||
Selection item=Scene_General label="Scene Selection" mappings=[0=off, 1=TV, 2=Dinner, 3=Reading]
|
||||
Switch item=Scene_General label="Scene" mappings=[1=TV, 2=Dinner, 3=Reading]
|
||||
Setpoint item=Temperature_Setpoint minValue=16 maxValue=28 step=0.5
|
||||
}
|
||||
Frame label="Percent-based Widgets" {
|
||||
Slider item=DimmedLight switchSupport
|
||||
Colorpicker item=RGBLight icon="slider"
|
||||
Switch item=DemoShutter
|
||||
Slider item=DemoBlinds
|
||||
}
|
||||
Frame label="Map/Location" {
|
||||
Mapview item=DemoLocation icon=movecontrol height=10
|
||||
}
|
||||
}
|
||||
Text label="Multimedia" icon="video" {
|
||||
Frame label="Radio Control" {
|
||||
Selection item=Radio_Station label="Radio" mappings=[0=off, 1=HR3, 2=SWR3]
|
||||
Slider item=Volume icon="soundvolume"
|
||||
}
|
||||
Frame label="Multimedia Widgets" {
|
||||
Image url="https://raw.github.com/wiki/openhab/openhab/images/features.png" label="openHAB" {
|
||||
Text label="https://www.openHAB.org" icon="icon"
|
||||
}
|
||||
Video url="https://www.openhab.org/assets/smarthome.mp4"
|
||||
Webview url="https://en.m.wikipedia.org/w/index.php?title=Main_Page" height=8
|
||||
Image url="http://fpoimg.com/320x240?text=openHAB" item=ImageURL
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// vim: syntax=Xtend
|
||||
@@ -0,0 +1,8 @@
|
||||
yahooweather:weather:berlin [ location=638242 ]
|
||||
|
||||
astro:sun:home [ geolocation="52.5200066,13.4049540", interval=60 ]
|
||||
astro:moon:home [ geolocation="52.5200066,13.4049540", interval=60 ]
|
||||
|
||||
ntp:ntp:demo [ hostname="nl.pool.ntp.org", refreshInterval=60, refreshNtp=30 ]
|
||||
|
||||
// vim: syntax=Xtend
|
||||
@@ -0,0 +1,5 @@
|
||||
OPEN=open
|
||||
CLOSED=closed
|
||||
ON=on
|
||||
OFF=off
|
||||
NULL=unknown
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<features xmlns="http://karaf.apache.org/xmlns/features/v1.5.0" name="overrides-2.4.0">
|
||||
<feature name="openhab-overrides" description="force to bundle packages" hidden="true" version="2.4.0">
|
||||
<bundle dependency="true">mvn:org.apache.karaf.shell/org.apache.karaf.shell.ssh/4.2.1-sp1</bundle>
|
||||
</feature>
|
||||
</features>
|
||||
Binary file not shown.
Reference in New Issue
Block a user