openhab: config perms shared between docker / host
This commit is contained in:
parent
a24a3e1694
commit
e880a09ba8
24 changed files with 283 additions and 469 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -1,3 +1,4 @@
|
|||
openhab/openhab_userdata/cache
|
||||
openhab/openhab_userdata/logs
|
||||
openhab/openhab_userdata/tmp
|
||||
NOTES.md
|
||||
|
|
11
Makefile
11
Makefile
|
@ -1,7 +1,12 @@
|
|||
.PHONY: all test clean build
|
||||
|
||||
ID := $(shell id -u)
|
||||
GID := $(shell id -g)
|
||||
ID := $(shell id -u)
|
||||
|
||||
all:
|
||||
ID=$(ID) GID=$(GID) docker compose up -d
|
||||
up:
|
||||
ID=$(ID) GID=$(GID) docker compose up -d --build
|
||||
down:
|
||||
docker compose down
|
||||
|
||||
init:
|
||||
docker network create ift713 --subnet "172.69.0.0/16" --gateway="172.69.1.0"
|
||||
|
|
|
@ -4,7 +4,9 @@ This is the folder for the "main" server, doing all the processing and gathering
|
|||
data.
|
||||
It hosts an openhab instance and mqtt (rumqtt) courier.
|
||||
|
||||
To launch it, just `make` in the root, it'll set docker w/ the correct
|
||||
To init the docker network, `make init` in the root
|
||||
|
||||
To launch it, just `make` in the root, it'll run docker compose w/ the correct
|
||||
permissions.
|
||||
|
||||
## TODO
|
||||
|
|
|
@ -4,20 +4,33 @@ services:
|
|||
ports:
|
||||
- 1883:1883
|
||||
- 1884:1884
|
||||
volumes:
|
||||
- "./mqtt/rumqttd.toml:/rumqttd.toml"
|
||||
entrypoint: rumqttd -c /rumqttd.toml
|
||||
networks:
|
||||
ift713:
|
||||
ipv4_address: 172.69.1.2
|
||||
|
||||
openhab:
|
||||
image: "openhab/openhab:4.0.3"
|
||||
build:
|
||||
dockerfile: openhab/Dockerfile
|
||||
restart: always
|
||||
network_mode: host
|
||||
user: "${UID}:${GID}"
|
||||
volumes:
|
||||
- "/etc/localtime:/etc/localtime:ro"
|
||||
- "./openhab/openhab_addons:/openhab/addons"
|
||||
- "./openhab/openhab_conf:/openhab/conf"
|
||||
- "./openhab/openhab_userdata:/openhab/userdata"
|
||||
|
||||
environment:
|
||||
CRYPTO_POLICY: "unlimited"
|
||||
EXTRA_JAVA_OPTS: "-Duser.timezone=Canada/Eastern"
|
||||
OPENHAB_HTTP_PORT: "8080"
|
||||
OPENHAB_HTTPS_PORT: "8043"
|
||||
USER_ID: ${ID}
|
||||
network_mode: host
|
||||
|
||||
volumes:
|
||||
- "/etc/localtime:/etc/localtime:ro"
|
||||
- "./openhab/openhab_addons:/openhab/addons"
|
||||
- "./openhab/openhab_conf:/openhab/conf"
|
||||
- "./openhab/openhab_userdata:/openhab/userdata"
|
||||
|
||||
|
||||
networks:
|
||||
ift713:
|
||||
external: true
|
||||
|
|
6
openhab/Dockerfile
Normal file
6
openhab/Dockerfile
Normal file
|
@ -0,0 +1,6 @@
|
|||
FROM openhab/openhab:4.0.4
|
||||
|
||||
ARG ID=1000
|
||||
|
||||
RUN echo $ID
|
||||
RUN chown $ID -R /openhab/conf
|
|
@ -1,38 +0,0 @@
|
|||
|
||||
Group Room
|
||||
Group SmartClothes
|
||||
|
||||
Group Sensors
|
||||
Group:Number:AVG Luminance "average luminosity" (Sensors)
|
||||
Group:Number:AVG Noise "average noise" (Sensors)
|
||||
|
||||
Group Actuators
|
||||
Group Lights (Actuators)
|
||||
|
||||
Group Batteries
|
||||
|
||||
Contact room1 "room 1"
|
||||
|
||||
// Room fixed devices
|
||||
Number rfidReader "RFID reader" (Sensors, Room) {channel="rfidReader:device:reader1"}
|
||||
|
||||
// smart clothes, mobile devices
|
||||
Color stripColor "el-wire" <lightbulb> (Lights, SmartClothes) {channel="elwire:0210:ewbridge:strip1"}
|
||||
Dimmer stripIntensity "el-wire" <lightbulb> (Lights, SmartClothes) {channel="elwire:0210:ewbridge:strip1"}
|
||||
|
||||
Color stripColor2 "el-wire" <lightbulb> (Lights, SmartClothes) {channel="elwire:0210:ewbridge:strip2"}
|
||||
Dimmer stripIntensity2 "el-wire" <lightbulb> (Lights, SmartClothes) {channel="elwire:0210:ewbridge:strip2"}
|
||||
|
||||
Switch vibrationPatch "vibration patch" (Actuators, SmartClothes) {channel="vibrationPatch:device:vibration"}
|
||||
|
||||
Number luminance "luminance level" (Luminance, Sensors, SmartClothes) {channel=zwave:device:luxmeter:node2:sensor_luminance"}
|
||||
Number luxmeterBattery "luxmeter battery level" <battery> (Batteries, SmartClothes) {channel="zwave:device:luxmeter:node2:battery-level"}
|
||||
|
||||
Number noise "noise level" (Noise, Sensors, SmartClothes) {channel="Channel=“zwave:device:noisemeter:node3:sensor_noise”"}
|
||||
Number noiseSensorBattery "noise sensor battery level" <battery> (Batteries, SmartClothes) {channel="zwave:device:noisemeter:node3:battery-level"}
|
||||
|
||||
// optionnel
|
||||
Number luminanceWristBand "luminance level" (Sensors, SmartClothes) {channel="zwave:device:wristband:node4:luminance"}
|
||||
Number noiseWristBand "noise level" (Sensors, SmartClothes) {channel="zwave:device:wristband:node4:luminance"}
|
||||
Contact gsrWristBand "galvanic skin response level" (Sensors, SmartClothes) {channel=“zwave:device:wristband:node4:galvanicSkinResponse"}
|
||||
Switch vibrationWristBand "noise level" (Actuators, SmartClothes) {channel="zwave:device:wristband:node4:vibration"}
|
|
@ -1,175 +0,0 @@
|
|||
import org.eclipse.smarthome.model.script.ScriptServiceUtil
|
||||
// import org.eclipse.smarthome.core.library.items.StringItem
|
||||
import java.util.HashMap
|
||||
import java.util.HashSet
|
||||
|
||||
val TAG_FileName = "IFT605SmartClothes.rules"
|
||||
val smartClothesID = "12345678"
|
||||
|
||||
var Contact currentRoom
|
||||
var MQTTBroker currentMQTTBroker
|
||||
|
||||
// managing context
|
||||
var boolean goodConditions = true // of course, only one of good/bad conditions is required
|
||||
var boolean badConditions = false
|
||||
var badConditionsStartTime = 0 // in milliseconds
|
||||
val URGE_TO_CHANGE_ROOM_TIME_TRIGGER = 300000 // 5 minutes
|
||||
|
||||
// managing people in the room
|
||||
var people = new HashSet<String>()
|
||||
var luminanceMeasures = new HashMap<String, Integer>()
|
||||
var noiseMeasures = new HashMap<String, Integer>()
|
||||
|
||||
// j'entre dans une pièce
|
||||
val iEnter = [ ContactItem room, String smartClothesID, MQTTBroker broker |
|
||||
broker.sendCommand(CONNECT);
|
||||
broker.sendCommand(SUBSCRIBE, "room/1/#");
|
||||
broker.sendCommand(SUBSCRIBE, "smartclothes/#");
|
||||
broker.sendCommand(SUBSCRIBE, "room/1/tag/+");
|
||||
broker.sendCommand(SUBSCRIBE, "smartclothes/+/sensor/luminance");
|
||||
broker.sendCommand(SUBSCRIBE, "smartclothes/+/sensor/noise");
|
||||
// informer que l'on vient d'entrer dans la pièce
|
||||
broker.sendCommand(PUBLISH, smartClothesID+"/status", "Online")
|
||||
vibrationPatch.sendCommand(OFF)
|
||||
]
|
||||
|
||||
// je sors de une pièce
|
||||
val iQuit = [ ContactItem room, String smartClothesID, MQTTBroker broker |
|
||||
broker.sendCommand(UNSUBSCRIBE, "room/1/#");
|
||||
broker.sendCommand(UNSUBSCRIBE, "smartclothes/#");
|
||||
broker.sendCommand(UNSUBSCRIBE, "room/1/tag/+");
|
||||
broker.sendCommand(UNSUBSCRIBE, "smartclothes/+/sensor/luminance");
|
||||
broker.sendCommand(UNSUBSCRIBE, "smartclothes/+/sensor/noise");
|
||||
// informer que l'on vient d'entrer dans la pièce
|
||||
broker.sendCommand(PUBLISH, smartClothesID+"/status", "Offline")
|
||||
]
|
||||
// le vêtement entre dans une pièce
|
||||
val someoneEnterInRoom = [ String smartClothesID |
|
||||
people.add(smartClothesID)
|
||||
]
|
||||
|
||||
val someoneQuitRoom = [ String smartClothesID |
|
||||
people.remove(smartClothesID)
|
||||
noiseMeasures.remove(smartClothesID)
|
||||
luminanceMeasures.remove(smartClothesID)
|
||||
]
|
||||
|
||||
// fonctions utilitaires pour la gestion du contexte
|
||||
// autre solutions pour calculer les moyennes, utiliser les HashMap luminanceMeasures et noiseMeasures
|
||||
val Integer averageLuminance = [ | Luminance.state
|
||||
]
|
||||
|
||||
val Integer averagenoise = [ | Noise.state
|
||||
]
|
||||
|
||||
val boolean checkGoodConditions = [ Integer roomLuminance, Integer roomNoise |
|
||||
return (LUMINOSITE_MIN < roomLuminance || roomLuminance < LUMINOSITE_MAX)
|
||||
&& (NIVEAU_SONORE_MIN < roomNoise || roomNoise < NIVEAU_SONORE_MAX)
|
||||
]
|
||||
|
||||
val reactToNewConditions = [ |
|
||||
goodConditions = checkGoodConditions(averageLuminance(), averageNoise())
|
||||
badConditions = !goodConditions
|
||||
if (goodConditions) {
|
||||
badConditionsStartTime = 0
|
||||
vibrationPatch.sendCommand(OFF)
|
||||
// rapprocher l'éclairage de la valeur optimale
|
||||
if (Luminance.state < LUMOINOSITE_OPTIMALE) {
|
||||
stripIntensity.sendCommand(INCREASE)
|
||||
} else {
|
||||
stripIntensity.sendCommand(DECREASE)
|
||||
}
|
||||
} else {
|
||||
// Éviter de rester trop longtemps dans des conditions défavorables
|
||||
vibrationPatch.sendCommand(ON)
|
||||
if (badConditionsStartTime == 0){
|
||||
badConditionsStartTime = now.getMillis();
|
||||
}
|
||||
if (now.getMillis() - badConditionsStartTime > URGE_TO_CHANGE_ROOM_TIME_TRIGGER) {
|
||||
vibrationPatch.sendCommand(ON)
|
||||
}
|
||||
}
|
||||
]
|
||||
|
||||
|
||||
|
||||
rule "Démarrage de openHAB"
|
||||
when
|
||||
System started
|
||||
then
|
||||
logInfo(TAG_FileName, "Rule : Démarrage de openHAB")
|
||||
currentRoom = room1
|
||||
currentMQTTBroker = room1MQTT
|
||||
iEnter(currentRoom, smartClothesID, currentMQTTBroker)
|
||||
end
|
||||
|
||||
// Diffuser les mesures de ses capteurs aux autres vêtements intelligents
|
||||
rule "lecture d'une mesure de luminosité par le capteur du vêtement"
|
||||
when
|
||||
// Item luminance received update
|
||||
Member of Luminance received update
|
||||
then
|
||||
var sensorName = triggeringItem.name
|
||||
var value = triggeringItem.state
|
||||
currentMQTTBroker.sendCommand(PUBLISH, "smartclothes/"+smartClothesID+"/sensor/luminance", value)
|
||||
|
||||
end
|
||||
|
||||
rule "lecture d'une mesure de bruit par le capteur du vêtement"
|
||||
when
|
||||
// Item noise received update
|
||||
Member of Noise received update
|
||||
then
|
||||
var sensorName = triggeringItem.name
|
||||
var value = triggeringItem.state
|
||||
currentMQTTBroker.sendCommand(PUBLISH, "smartclothes/"+smartClothesID+"/sensor/noise", value)
|
||||
end
|
||||
|
||||
// Gérer son contexte ambiant
|
||||
|
||||
rule "nouvelle mesure de bruit publiée par le courtier MQTT"
|
||||
when currentMQTTBroker "smartclothes/+/sensor/noise" changed
|
||||
then
|
||||
noiseMeasures.put(extractID(triggeringItem.newState.topic), trigerringItem.newState.value)
|
||||
reactToNewConditions()
|
||||
end
|
||||
|
||||
rule "nouvelle mesure de bruit publiée par le courtier MQTT"
|
||||
when currentMQTTBroker "smartclothes/+/sensor/luminance" changed
|
||||
then
|
||||
luminanceMeasures.put(extractID(triggeringItem.newState.topic), trigerringItem.newState.value)
|
||||
reactToNewConditions()
|
||||
end
|
||||
|
||||
// Tenir compte des arrivées et départs de personnes dans la salle
|
||||
rule "arrivée d'une personne"
|
||||
when
|
||||
// si on n'utilise pas le mécanisme des dernières volontés de MQTT,
|
||||
// il faut surveiller les éléments pertinents à la main
|
||||
// currentMQTTBroker "room/+/tag" changed //lecture d'un tag RFID
|
||||
// or currentMQTTBroker "smartclothes/+/sensor/luminance" changed // member of Luminance changed
|
||||
// or currentMQTTBroker "smartclothes/+/sensor/noise" changed
|
||||
currentMQTTBroker "+/status " changed to "Online" //lecture d'un tag RFID
|
||||
|
||||
then
|
||||
String triggeringSmartClothesID = extractID(triggeringItem.newState.topic)
|
||||
someoneEnterInRoom(triggeringSmartClothesID)
|
||||
end
|
||||
|
||||
// Tenir compte des arrivées et départs de personnes dans la salle
|
||||
rule "départ d'une personne"
|
||||
when
|
||||
currentMQTTBroker "+/status " changed to "Offline" //lecture d'un tag RFID
|
||||
then
|
||||
String triggeringSmartClothesID = extractID(triggeringItem.newState.topic)
|
||||
someoneQuitRoom(triggeringSmartClothesID)
|
||||
end
|
||||
|
||||
rule "Arrêt de openHAB"
|
||||
when
|
||||
System shuts down
|
||||
then
|
||||
logInfo(TAG_FileName, " Rule : Arrêt de openHAB")
|
||||
// sauvegarder les états des items et le contexte
|
||||
iQuit(currentRoom, smartClothesID, currentMQTTBroker)
|
||||
end
|
|
@ -1,62 +0,0 @@
|
|||
/**
|
||||
Vêtement intelligent
|
||||
**/
|
||||
|
||||
Bridge elwire:bridge:ewbridge [ ipAddress="192.168.3.123" ] {
|
||||
// gateway el-wire
|
||||
Thing 0210 strip1 [stripId="1"] //référer par elwire:0210:ewbridge:strip1
|
||||
Thing 0220 strip2 [stripId="2"] // référer par elwire:0220:ewbridge:strip2
|
||||
}
|
||||
//vibration patch
|
||||
Thing vibrationPatch:device:vibration "vibration patch" @ "smart clothes"
|
||||
|
||||
|
||||
// voir description à https://www.openhab.org/addons/bindings/zwave/doc/things.html
|
||||
Bridge zwave:serial_zstick:8c582004 "ZWave Controller" [ port="/dev/ttyACM0", controller_softreset="false", controller_master="true", heal_enable="true", security_networkkey="???" ] {
|
||||
// ampèremètres placés sur les interrupteurs du plafonnier
|
||||
Thing luxMeter node2 "luxmeter " @ "smart clothes" [ node_id=2 ] {
|
||||
Channels:
|
||||
// sensors
|
||||
Type number : luminance [ updateInterval=10 ]
|
||||
Type number : battery-level [ updateInterval=10 ]
|
||||
}
|
||||
Thing noiseMeter node3 "noise meter" @ "smart clothes" [ node_id=3 ]
|
||||
Channels:
|
||||
// sensors
|
||||
Type number : noise [ updateInterval=10 ]
|
||||
Type number : battery-level [ updateInterval=10 ]
|
||||
Thing wristband node4 "wristBand" @ "smart clothes" [ node_id=4 ] {
|
||||
Channels:
|
||||
// sensors
|
||||
Type number : luminance [ updateInterval=10 ]
|
||||
Type number : noise [ updateInterval=10 ]
|
||||
Type string : accelerometer [ updateInterval=10 ]
|
||||
Type number : speed [ updateInterval=10 ]
|
||||
Type number : galvanicSkinResponse [ updateInterval=10 ]
|
||||
// effectors
|
||||
Type switch : vibration
|
||||
Type switch : enable
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
Pièce
|
||||
**/
|
||||
|
||||
// https://www.smarthomeblog.net/mqtt-openhab/
|
||||
// https://gist.github.com/davidgraeff/6c00d2ad5e4bc553f5f209118307d8fd
|
||||
// https://community.openhab.org/t/solved-oh-2-4-mqtt-binding-generic-thing-statetopic-working-commandtopic-not-working/63619
|
||||
|
||||
Bridge mqtt:systemBroker:embedded-mqtt-broker [ host="127.0.0.1", secure=false ]
|
||||
{
|
||||
Thing mqtt:topic:room1MQTT {
|
||||
Channels:
|
||||
Type string : room1 "all MQTT room events" @ "room 1"[ stateTopic="room/1/#" ]
|
||||
Type string : smartclothes "all MQTT smart clothes events" @ "room 1"[ stateTopic="smartclothes/#" ]
|
||||
Type switch : tag "RFID MQTT event" @ "room 1" [ stateTopic="room/+/tag"]
|
||||
Type string : noise "noise MQTT event" @ "room 1" [ stateTopic="smartclothes/+/sensor/noise" ]
|
||||
Type string : luminance "luminosity MQTT event" @ "room 1" [ stateTopic="smartclothes/+/sensor/luminance" ]
|
||||
}
|
||||
}
|
||||
|
||||
Thing rfidReader:device:reader1 "rfidReader " @ "room 1"
|
|
@ -3,7 +3,7 @@ autoRefresh="true"
|
|||
configCfgStore="false"
|
||||
featuresBoot="instance/4.4.3,\ package/4.4.3,\ log/4.4.3,\ ssh/4.4.3,\ framework/4.4.3,\ system/4.4.3,\ eventadmin/4.4.3,\ feature/4.4.3,\ shell/4.4.3,\ service/4.4.3,\ jaas/4.4.3,\ openhab-runtime-base,\ openhab-runtime-ui,\ deployer/4.4.3,\ diagnostic/4.4.3,\ bundle/4.4.3,\ config/4.4.3,\ kar/4.4.3"
|
||||
featuresBootAsynchronous="false"
|
||||
featuresRepositories="mvn:org.openhab.distro/distro/4.0.3/xml/features,\ mvn:org.openhab.distro/openhab-addons/4.0.3/xml/features,\ mvn:org.apache.karaf.features/framework/4.4.3/xml/features,\ mvn:org.apache.karaf.features/standard/4.4.3/xml/features"
|
||||
featuresRepositories="mvn:org.openhab.distro/distro/4.0.4/xml/features,\ mvn:org.openhab.distro/openhab-addons/4.0.4/xml/features,\ mvn:org.apache.karaf.features/framework/4.4.3/xml/features,\ mvn:org.apache.karaf.features/standard/4.4.3/xml/features"
|
||||
felix.fileinstall.filename="file:/openhab/userdata/etc/org.apache.karaf.features.cfg"
|
||||
service.bundleLocation="?"
|
||||
service.pid="org.apache.karaf.features"
|
||||
|
|
|
@ -1,3 +1,6 @@
|
|||
:org.apache.felix.configadmin.revision:=L"1"
|
||||
_felix_.cm.newConfiguration=B"true"
|
||||
:org.apache.felix.configadmin.revision:=L"4"
|
||||
automation="jsscripting"
|
||||
binding="mqtt"
|
||||
persistence="rrd4j"
|
||||
service.pid="org.openhab.addons"
|
||||
ui="basic"
|
||||
|
|
|
@ -3,4 +3,4 @@ name="configWatcher"
|
|||
path="/openhab/conf"
|
||||
service.bundleLocation="?"
|
||||
service.factoryPid="org.openhab.core.service.WatchService"
|
||||
service.pid="org.openhab.core.service.WatchService.4c0ca031-fc00-41d8-8c46-4474cc442330"
|
||||
service.pid="org.openhab.core.service.WatchService.06daff3c-f0c3-4776-a340-a6b0173ed9a1"
|
6
openhab/openhab_userdata/config/org/openhab/i18n.config
Normal file
6
openhab/openhab_userdata/config/org/openhab/i18n.config
Normal file
|
@ -0,0 +1,6 @@
|
|||
:org.apache.felix.configadmin.revision:=L"2"
|
||||
language="en"
|
||||
location="45.378331973407505,-71.92963600158693"
|
||||
region="US"
|
||||
service.pid="org.openhab.i18n"
|
||||
timezone="America/Toronto"
|
|
@ -1 +1,2 @@
|
|||
org.openhab.addons="mvn:org.openhab.core.bundles/org.openhab.core.karaf/4.0.3"
|
||||
org.apache.karaf.http="mvn:org.apache.karaf.http/org.apache.karaf.http.core/4.4.3"
|
||||
org.openhab.addons="mvn:org.openhab.core.bundles/org.openhab.core.karaf/4.0.4"
|
||||
|
|
|
@ -5,8 +5,8 @@ feature.bundle="bundle"
|
|||
feature.config="config"
|
||||
feature.deployer="deployer"
|
||||
feature.diagnostic="diagnostic"
|
||||
feature.distro-kar/4.0.3="distro-kar/4.0.3"
|
||||
feature.distro/4.0.3="distro/4.0.3"
|
||||
feature.distro-kar/4.0.4="distro-kar/4.0.4"
|
||||
feature.distro/4.0.4="distro/4.0.4"
|
||||
feature.eventadmin="eventadmin"
|
||||
feature.feature="feature"
|
||||
feature.framework="framework"
|
||||
|
@ -14,87 +14,87 @@ feature.instance="instance"
|
|||
feature.jaas="jaas"
|
||||
feature.kar="kar"
|
||||
feature.log="log"
|
||||
feature.openhab-core-addon-marketplace/4.0.3="openhab-core-addon-marketplace/4.0.3"
|
||||
feature.openhab-core-auth-jaas/4.0.3="openhab-core-auth-jaas/4.0.3"
|
||||
feature.openhab-core-auth-oauth2client/4.0.3="openhab-core-auth-oauth2client/4.0.3"
|
||||
feature.openhab-core-automation-module-media/4.0.3="openhab-core-automation-module-media/4.0.3"
|
||||
feature.openhab-core-automation-module-script-rulesupport/4.0.3="openhab-core-automation-module-script-rulesupport/4.0.3"
|
||||
feature.openhab-core-automation-module-script/4.0.3="openhab-core-automation-module-script/4.0.3"
|
||||
feature.openhab-core-automation-rest/4.0.3="openhab-core-automation-rest/4.0.3"
|
||||
feature.openhab-core-base/4.0.3="openhab-core-base/4.0.3"
|
||||
feature.openhab-core-io-bin2json/4.0.3="openhab-core-io-bin2json/4.0.3"
|
||||
feature.openhab-core-io-console-karaf/4.0.3="openhab-core-io-console-karaf/4.0.3"
|
||||
feature.openhab-core-io-http-auth/4.0.3="openhab-core-io-http-auth/4.0.3"
|
||||
feature.openhab-core-io-rest-audio/4.0.3="openhab-core-io-rest-audio/4.0.3"
|
||||
feature.openhab-core-io-rest-auth/4.0.3="openhab-core-io-rest-auth/4.0.3"
|
||||
feature.openhab-core-io-rest-log/4.0.3="openhab-core-io-rest-log/4.0.3"
|
||||
feature.openhab-core-io-rest-mdns/4.0.3="openhab-core-io-rest-mdns/4.0.3"
|
||||
feature.openhab-core-io-rest-sitemap/4.0.3="openhab-core-io-rest-sitemap/4.0.3"
|
||||
feature.openhab-core-io-rest-swagger/4.0.3="openhab-core-io-rest-swagger/4.0.3"
|
||||
feature.openhab-core-io-rest-transform/4.0.3="openhab-core-io-rest-transform/4.0.3"
|
||||
feature.openhab-core-io-rest-voice/4.0.3="openhab-core-io-rest-voice/4.0.3"
|
||||
feature.openhab-core-io-transport-coap/4.0.3="openhab-core-io-transport-coap/4.0.3"
|
||||
feature.openhab-core-io-transport-http/4.0.3="openhab-core-io-transport-http/4.0.3"
|
||||
feature.openhab-core-io-transport-mdns/4.0.3="openhab-core-io-transport-mdns/4.0.3"
|
||||
feature.openhab-core-io-transport-modbus/4.0.3="openhab-core-io-transport-modbus/4.0.3"
|
||||
feature.openhab-core-io-transport-mqtt/4.0.3="openhab-core-io-transport-mqtt/4.0.3"
|
||||
feature.openhab-core-io-transport-serial-javacomm/4.0.3="openhab-core-io-transport-serial-javacomm/4.0.3"
|
||||
feature.openhab-core-io-transport-upnp/4.0.3="openhab-core-io-transport-upnp/4.0.3"
|
||||
feature.openhab-core-io-websocket/4.0.3="openhab-core-io-websocket/4.0.3"
|
||||
feature.openhab-core-model-item-ide/4.0.3="openhab-core-model-item-ide/4.0.3"
|
||||
feature.openhab-core-model-item/4.0.3="openhab-core-model-item/4.0.3"
|
||||
feature.openhab-core-model-lsp/4.0.3="openhab-core-model-lsp/4.0.3"
|
||||
feature.openhab-core-model-persistence-ide/4.0.3="openhab-core-model-persistence-ide/4.0.3"
|
||||
feature.openhab-core-model-persistence/4.0.3="openhab-core-model-persistence/4.0.3"
|
||||
feature.openhab-core-model-rule-ide/4.0.3="openhab-core-model-rule-ide/4.0.3"
|
||||
feature.openhab-core-model-rule/4.0.3="openhab-core-model-rule/4.0.3"
|
||||
feature.openhab-core-model-script-ide/4.0.3="openhab-core-model-script-ide/4.0.3"
|
||||
feature.openhab-core-model-script/4.0.3="openhab-core-model-script/4.0.3"
|
||||
feature.openhab-core-model-sitemap-ide/4.0.3="openhab-core-model-sitemap-ide/4.0.3"
|
||||
feature.openhab-core-model-sitemap/4.0.3="openhab-core-model-sitemap/4.0.3"
|
||||
feature.openhab-core-model-thing-ide/4.0.3="openhab-core-model-thing-ide/4.0.3"
|
||||
feature.openhab-core-model-thing/4.0.3="openhab-core-model-thing/4.0.3"
|
||||
feature.openhab-core-storage-json/4.0.3="openhab-core-storage-json/4.0.3"
|
||||
feature.openhab-core-ui-icon/4.0.3="openhab-core-ui-icon/4.0.3"
|
||||
feature.openhab-core-ui/4.0.3="openhab-core-ui/4.0.3"
|
||||
feature.openhab-core-addon-marketplace/4.0.4="openhab-core-addon-marketplace/4.0.4"
|
||||
feature.openhab-core-auth-jaas/4.0.4="openhab-core-auth-jaas/4.0.4"
|
||||
feature.openhab-core-auth-oauth2client/4.0.4="openhab-core-auth-oauth2client/4.0.4"
|
||||
feature.openhab-core-automation-module-media/4.0.4="openhab-core-automation-module-media/4.0.4"
|
||||
feature.openhab-core-automation-module-script-rulesupport/4.0.4="openhab-core-automation-module-script-rulesupport/4.0.4"
|
||||
feature.openhab-core-automation-module-script/4.0.4="openhab-core-automation-module-script/4.0.4"
|
||||
feature.openhab-core-automation-rest/4.0.4="openhab-core-automation-rest/4.0.4"
|
||||
feature.openhab-core-base/4.0.4="openhab-core-base/4.0.4"
|
||||
feature.openhab-core-io-bin2json/4.0.4="openhab-core-io-bin2json/4.0.4"
|
||||
feature.openhab-core-io-console-karaf/4.0.4="openhab-core-io-console-karaf/4.0.4"
|
||||
feature.openhab-core-io-http-auth/4.0.4="openhab-core-io-http-auth/4.0.4"
|
||||
feature.openhab-core-io-rest-audio/4.0.4="openhab-core-io-rest-audio/4.0.4"
|
||||
feature.openhab-core-io-rest-auth/4.0.4="openhab-core-io-rest-auth/4.0.4"
|
||||
feature.openhab-core-io-rest-log/4.0.4="openhab-core-io-rest-log/4.0.4"
|
||||
feature.openhab-core-io-rest-mdns/4.0.4="openhab-core-io-rest-mdns/4.0.4"
|
||||
feature.openhab-core-io-rest-sitemap/4.0.4="openhab-core-io-rest-sitemap/4.0.4"
|
||||
feature.openhab-core-io-rest-swagger/4.0.4="openhab-core-io-rest-swagger/4.0.4"
|
||||
feature.openhab-core-io-rest-transform/4.0.4="openhab-core-io-rest-transform/4.0.4"
|
||||
feature.openhab-core-io-rest-voice/4.0.4="openhab-core-io-rest-voice/4.0.4"
|
||||
feature.openhab-core-io-transport-coap/4.0.4="openhab-core-io-transport-coap/4.0.4"
|
||||
feature.openhab-core-io-transport-http/4.0.4="openhab-core-io-transport-http/4.0.4"
|
||||
feature.openhab-core-io-transport-mdns/4.0.4="openhab-core-io-transport-mdns/4.0.4"
|
||||
feature.openhab-core-io-transport-modbus/4.0.4="openhab-core-io-transport-modbus/4.0.4"
|
||||
feature.openhab-core-io-transport-mqtt/4.0.4="openhab-core-io-transport-mqtt/4.0.4"
|
||||
feature.openhab-core-io-transport-serial-javacomm/4.0.4="openhab-core-io-transport-serial-javacomm/4.0.4"
|
||||
feature.openhab-core-io-transport-upnp/4.0.4="openhab-core-io-transport-upnp/4.0.4"
|
||||
feature.openhab-core-io-websocket/4.0.4="openhab-core-io-websocket/4.0.4"
|
||||
feature.openhab-core-model-item-ide/4.0.4="openhab-core-model-item-ide/4.0.4"
|
||||
feature.openhab-core-model-item/4.0.4="openhab-core-model-item/4.0.4"
|
||||
feature.openhab-core-model-lsp/4.0.4="openhab-core-model-lsp/4.0.4"
|
||||
feature.openhab-core-model-persistence-ide/4.0.4="openhab-core-model-persistence-ide/4.0.4"
|
||||
feature.openhab-core-model-persistence/4.0.4="openhab-core-model-persistence/4.0.4"
|
||||
feature.openhab-core-model-rule-ide/4.0.4="openhab-core-model-rule-ide/4.0.4"
|
||||
feature.openhab-core-model-rule/4.0.4="openhab-core-model-rule/4.0.4"
|
||||
feature.openhab-core-model-script-ide/4.0.4="openhab-core-model-script-ide/4.0.4"
|
||||
feature.openhab-core-model-script/4.0.4="openhab-core-model-script/4.0.4"
|
||||
feature.openhab-core-model-sitemap-ide/4.0.4="openhab-core-model-sitemap-ide/4.0.4"
|
||||
feature.openhab-core-model-sitemap/4.0.4="openhab-core-model-sitemap/4.0.4"
|
||||
feature.openhab-core-model-thing-ide/4.0.4="openhab-core-model-thing-ide/4.0.4"
|
||||
feature.openhab-core-model-thing/4.0.4="openhab-core-model-thing/4.0.4"
|
||||
feature.openhab-core-storage-json/4.0.4="openhab-core-storage-json/4.0.4"
|
||||
feature.openhab-core-ui-icon/4.0.4="openhab-core-ui-icon/4.0.4"
|
||||
feature.openhab-core-ui/4.0.4="openhab-core-ui/4.0.4"
|
||||
feature.openhab-runtime-base="openhab-runtime-base"
|
||||
feature.openhab-runtime-base/4.0.3="openhab-runtime-base/4.0.3"
|
||||
feature.openhab-runtime-certificate/4.0.3="openhab-runtime-certificate/4.0.3"
|
||||
feature.openhab-runtime-base/4.0.4="openhab-runtime-base/4.0.4"
|
||||
feature.openhab-runtime-certificate/4.0.4="openhab-runtime-certificate/4.0.4"
|
||||
feature.openhab-runtime-ui="openhab-runtime-ui"
|
||||
feature.openhab-runtime-ui/4.0.3="openhab-runtime-ui/4.0.3"
|
||||
feature.openhab-transport-coap/4.0.3="openhab-transport-coap/4.0.3"
|
||||
feature.openhab-transport-http/4.0.3="openhab-transport-http/4.0.3"
|
||||
feature.openhab-transport-mdns/4.0.3="openhab-transport-mdns/4.0.3"
|
||||
feature.openhab-transport-modbus/4.0.3="openhab-transport-modbus/4.0.3"
|
||||
feature.openhab-transport-mqtt/4.0.3="openhab-transport-mqtt/4.0.3"
|
||||
feature.openhab-transport-serial/4.0.3="openhab-transport-serial/4.0.3"
|
||||
feature.openhab-transport-upnp/4.0.3="openhab-transport-upnp/4.0.3"
|
||||
feature.openhab.inc-model-core/4.0.3="openhab.inc-model-core/4.0.3"
|
||||
feature.openhab.tp-asm/4.0.3="openhab.tp-asm/4.0.3"
|
||||
feature.openhab.tp-base/4.0.3="openhab.tp-base/4.0.3"
|
||||
feature.openhab.tp-coap/4.0.3="openhab.tp-coap/4.0.3"
|
||||
feature.openhab.tp-commons-net/4.0.3="openhab.tp-commons-net/4.0.3"
|
||||
feature.openhab.tp-cxf/4.0.3="openhab.tp-cxf/4.0.3"
|
||||
feature.openhab.tp-gson/4.0.3="openhab.tp-gson/4.0.3"
|
||||
feature.openhab.tp-hivemqclient/4.0.3="openhab.tp-hivemqclient/4.0.3"
|
||||
feature.openhab.tp-httpclient/4.0.3="openhab.tp-httpclient/4.0.3"
|
||||
feature.openhab.tp-jackson/4.0.3="openhab.tp-jackson/4.0.3"
|
||||
feature.openhab.tp-jax-rs-whiteboard/4.0.3="openhab.tp-jax-rs-whiteboard/4.0.3"
|
||||
feature.openhab.tp-jaxb/4.0.3="openhab.tp-jaxb/4.0.3"
|
||||
feature.openhab.tp-jaxws/4.0.3="openhab.tp-jaxws/4.0.3"
|
||||
feature.openhab.tp-jbbp/4.0.3="openhab.tp-jbbp/4.0.3"
|
||||
feature.openhab.tp-jmdns/4.0.3="openhab.tp-jmdns/4.0.3"
|
||||
feature.openhab.tp-jna/4.0.3="openhab.tp-jna/4.0.3"
|
||||
feature.openhab.tp-jollyday/4.0.3="openhab.tp-jollyday/4.0.3"
|
||||
feature.openhab.tp-jose4j/4.0.3="openhab.tp-jose4j/4.0.3"
|
||||
feature.openhab.tp-jupnp/4.0.3="openhab.tp-jupnp/4.0.3"
|
||||
feature.openhab.tp-lsp4j/4.0.3="openhab.tp-lsp4j/4.0.3"
|
||||
feature.openhab.tp-netty/4.0.3="openhab.tp-netty/4.0.3"
|
||||
feature.openhab.tp-serial-javacomm/4.0.3="openhab.tp-serial-javacomm/4.0.3"
|
||||
feature.openhab.tp-serial-rxtx/4.0.3="openhab.tp-serial-rxtx/4.0.3"
|
||||
feature.openhab.tp-swagger-jaxrs/4.0.3="openhab.tp-swagger-jaxrs/4.0.3"
|
||||
feature.openhab.tp-xtext-ide/4.0.3="openhab.tp-xtext-ide/4.0.3"
|
||||
feature.openhab.tp-xtext/4.0.3="openhab.tp-xtext/4.0.3"
|
||||
feature.openhab-runtime-ui/4.0.4="openhab-runtime-ui/4.0.4"
|
||||
feature.openhab-transport-coap/4.0.4="openhab-transport-coap/4.0.4"
|
||||
feature.openhab-transport-http/4.0.4="openhab-transport-http/4.0.4"
|
||||
feature.openhab-transport-mdns/4.0.4="openhab-transport-mdns/4.0.4"
|
||||
feature.openhab-transport-modbus/4.0.4="openhab-transport-modbus/4.0.4"
|
||||
feature.openhab-transport-mqtt/4.0.4="openhab-transport-mqtt/4.0.4"
|
||||
feature.openhab-transport-serial/4.0.4="openhab-transport-serial/4.0.4"
|
||||
feature.openhab-transport-upnp/4.0.4="openhab-transport-upnp/4.0.4"
|
||||
feature.openhab.inc-model-core/4.0.4="openhab.inc-model-core/4.0.4"
|
||||
feature.openhab.tp-asm/4.0.4="openhab.tp-asm/4.0.4"
|
||||
feature.openhab.tp-base/4.0.4="openhab.tp-base/4.0.4"
|
||||
feature.openhab.tp-coap/4.0.4="openhab.tp-coap/4.0.4"
|
||||
feature.openhab.tp-commons-net/4.0.4="openhab.tp-commons-net/4.0.4"
|
||||
feature.openhab.tp-cxf/4.0.4="openhab.tp-cxf/4.0.4"
|
||||
feature.openhab.tp-gson/4.0.4="openhab.tp-gson/4.0.4"
|
||||
feature.openhab.tp-hivemqclient/4.0.4="openhab.tp-hivemqclient/4.0.4"
|
||||
feature.openhab.tp-httpclient/4.0.4="openhab.tp-httpclient/4.0.4"
|
||||
feature.openhab.tp-jackson/4.0.4="openhab.tp-jackson/4.0.4"
|
||||
feature.openhab.tp-jax-rs-whiteboard/4.0.4="openhab.tp-jax-rs-whiteboard/4.0.4"
|
||||
feature.openhab.tp-jaxb/4.0.4="openhab.tp-jaxb/4.0.4"
|
||||
feature.openhab.tp-jaxws/4.0.4="openhab.tp-jaxws/4.0.4"
|
||||
feature.openhab.tp-jbbp/4.0.4="openhab.tp-jbbp/4.0.4"
|
||||
feature.openhab.tp-jmdns/4.0.4="openhab.tp-jmdns/4.0.4"
|
||||
feature.openhab.tp-jna/4.0.4="openhab.tp-jna/4.0.4"
|
||||
feature.openhab.tp-jollyday/4.0.4="openhab.tp-jollyday/4.0.4"
|
||||
feature.openhab.tp-jose4j/4.0.4="openhab.tp-jose4j/4.0.4"
|
||||
feature.openhab.tp-jupnp/4.0.4="openhab.tp-jupnp/4.0.4"
|
||||
feature.openhab.tp-lsp4j/4.0.4="openhab.tp-lsp4j/4.0.4"
|
||||
feature.openhab.tp-netty/4.0.4="openhab.tp-netty/4.0.4"
|
||||
feature.openhab.tp-serial-javacomm/4.0.4="openhab.tp-serial-javacomm/4.0.4"
|
||||
feature.openhab.tp-serial-rxtx/4.0.4="openhab.tp-serial-rxtx/4.0.4"
|
||||
feature.openhab.tp-swagger-jaxrs/4.0.4="openhab.tp-swagger-jaxrs/4.0.4"
|
||||
feature.openhab.tp-xtext-ide/4.0.4="openhab.tp-xtext-ide/4.0.4"
|
||||
feature.openhab.tp-xtext/4.0.4="openhab.tp-xtext/4.0.4"
|
||||
feature.package="package"
|
||||
feature.service="service"
|
||||
feature.shell="shell"
|
||||
|
@ -105,8 +105,8 @@ feature.wrapper="wrapper"
|
|||
felix.fileinstall.filename="file:/openhab/userdata/etc/profile.cfg"
|
||||
repository.mvn:org.apache.karaf.features/framework/4.4.3/xml/features="mvn:org.apache.karaf.features/framework/4.4.3/xml/features"
|
||||
repository.mvn:org.apache.karaf.features/standard/4.4.3/xml/features="mvn:org.apache.karaf.features/standard/4.4.3/xml/features"
|
||||
repository.mvn:org.openhab.distro/distro-kar/4.0.3/xml/features="mvn:org.openhab.distro/distro-kar/4.0.3/xml/features"
|
||||
repository.mvn:org.openhab.distro/distro/4.0.3/xml/features="mvn:org.openhab.distro/distro/4.0.3/xml/features"
|
||||
repository.mvn:org.openhab.distro/openhab-addons/4.0.3/xml/features="mvn:org.openhab.distro/openhab-addons/4.0.3/xml/features"
|
||||
repository.mvn:org.openhab.distro/distro-kar/4.0.4/xml/features="mvn:org.openhab.distro/distro-kar/4.0.4/xml/features"
|
||||
repository.mvn:org.openhab.distro/distro/4.0.4/xml/features="mvn:org.openhab.distro/distro/4.0.4/xml/features"
|
||||
repository.mvn:org.openhab.distro/openhab-addons/4.0.4/xml/features="mvn:org.openhab.distro/openhab-addons/4.0.4/xml/features"
|
||||
service.bundleLocation="?"
|
||||
service.pid="profile"
|
||||
|
|
|
@ -4,7 +4,7 @@ welcome = \r\n\
|
|||
\u001B[91m / _ \\ / _ \\ / _ \\ / _ \\ \u001B[97m| |_| | / _ \\ | _ \\ \u001B[0m\r\n\
|
||||
\u001B[91m | (_) | (_) | __/| | | |\u001B[97m| _ | / ___ \\ | |_) )\u001B[0m\r\n\
|
||||
\u001B[91m \\___/| __/ \\___/|_| |_|\u001B[97m|_| |_|/_/ \\_\\|____/ \u001B[0m\r\n\
|
||||
\u001B[91m |_| \u001B[0m 4.0.3 - Release Build\u001B[0m\r\n\
|
||||
\u001B[91m |_| \u001B[0m 4.0.4 - Release Build\u001B[0m\r\n\
|
||||
\r\n\
|
||||
Use '\u001B[1m<tab>\u001B[0m' for a list of available commands\r\n\
|
||||
and '\u001B[1m[cmd] --help\u001B[0m' for help on a specific command.\r\n\
|
||||
|
|
|
@ -4,7 +4,7 @@ welcome = \r\n\
|
|||
\u001B[91m / _ \\ / _ \\ / _ \\ / _ \\ \u001B[97m| |_| | / _ \\ | _ \\ \u001B[0m\r\n\
|
||||
\u001B[91m | (_) | (_) | __/| | | |\u001B[97m| _ | / ___ \\ | |_) )\u001B[0m\r\n\
|
||||
\u001B[91m \\___/| __/ \\___/|_| |_|\u001B[97m|_| |_|/_/ \\_\\|____/ \u001B[0m\r\n\
|
||||
\u001B[91m |_| \u001B[0m 4.0.3 - Release Build\u001B[0m\r\n\
|
||||
\u001B[91m |_| \u001B[0m 4.0.4 - Release Build\u001B[0m\r\n\
|
||||
\r\n\
|
||||
Use '\u001B[1m<tab>\u001B[0m' for a list of available commands\r\n\
|
||||
and '\u001B[1m[cmd] --help\u001B[0m' for help on a specific command.\r\n\
|
||||
|
|
|
@ -304,7 +304,7 @@ karaf.delay.console=false
|
|||
#
|
||||
# Generated command shutdown
|
||||
#
|
||||
karaf.shutdown.command = 3671966a-c132-484c-b14d-9dfe27d34b1b
|
||||
karaf.shutdown.command = 1930c756-b498-48ea-b592-94f2b4e26135
|
||||
|
||||
#
|
||||
# Enable native Karaf support for systemd's watchdog.
|
||||
|
|
Binary file not shown.
|
@ -21,8 +21,8 @@
|
|||
# Comma separated list of features repositories to register by default
|
||||
#
|
||||
featuresRepositories = \
|
||||
mvn:org.openhab.distro/distro/4.0.3/xml/features, \
|
||||
mvn:org.openhab.distro/openhab-addons/4.0.3/xml/features, \
|
||||
mvn:org.openhab.distro/distro/4.0.4/xml/features, \
|
||||
mvn:org.openhab.distro/openhab-addons/4.0.4/xml/features, \
|
||||
mvn:org.apache.karaf.features/framework/4.4.3/xml/features, \
|
||||
mvn:org.apache.karaf.features/standard/4.4.3/xml/features
|
||||
|
||||
|
|
|
@ -11,9 +11,9 @@ attribute.overlay = true
|
|||
# Feature XML repositories
|
||||
repository.mvn\:org.apache.karaf.features/standard/4.4.3/xml/features = mvn:org.apache.karaf.features/standard/4.4.3/xml/features
|
||||
repository.mvn\:org.apache.karaf.features/framework/4.4.3/xml/features = mvn:org.apache.karaf.features/framework/4.4.3/xml/features
|
||||
repository.mvn\:org.openhab.distro/distro/4.0.3/xml/features = mvn:org.openhab.distro/distro/4.0.3/xml/features
|
||||
repository.mvn\:org.openhab.distro/openhab-addons/4.0.3/xml/features = mvn:org.openhab.distro/openhab-addons/4.0.3/xml/features
|
||||
repository.mvn\:org.openhab.distro/distro-kar/4.0.3/xml/features = mvn:org.openhab.distro/distro-kar/4.0.3/xml/features
|
||||
repository.mvn\:org.openhab.distro/distro/4.0.4/xml/features = mvn:org.openhab.distro/distro/4.0.4/xml/features
|
||||
repository.mvn\:org.openhab.distro/openhab-addons/4.0.4/xml/features = mvn:org.openhab.distro/openhab-addons/4.0.4/xml/features
|
||||
repository.mvn\:org.openhab.distro/distro-kar/4.0.4/xml/features = mvn:org.openhab.distro/distro-kar/4.0.4/xml/features
|
||||
|
||||
# Features
|
||||
feature.framework = framework
|
||||
|
@ -36,84 +36,84 @@ feature.openhab-runtime-base = openhab-runtime-base
|
|||
feature.openhab-runtime-ui = openhab-runtime-ui
|
||||
feature.wrapper = wrapper
|
||||
feature.wrap = wrap
|
||||
feature.openhab-runtime-ui/4.0.3 = openhab-runtime-ui/4.0.3
|
||||
feature.openhab-core-base/4.0.3 = openhab-core-base/4.0.3
|
||||
feature.openhab-core-addon-marketplace/4.0.3 = openhab-core-addon-marketplace/4.0.3
|
||||
feature.openhab-core-auth-jaas/4.0.3 = openhab-core-auth-jaas/4.0.3
|
||||
feature.openhab-core-auth-oauth2client/4.0.3 = openhab-core-auth-oauth2client/4.0.3
|
||||
feature.openhab-core-automation-module-script/4.0.3 = openhab-core-automation-module-script/4.0.3
|
||||
feature.openhab-core-automation-module-script-rulesupport/4.0.3 = openhab-core-automation-module-script-rulesupport/4.0.3
|
||||
feature.openhab-core-automation-module-media/4.0.3 = openhab-core-automation-module-media/4.0.3
|
||||
feature.openhab-core-automation-rest/4.0.3 = openhab-core-automation-rest/4.0.3
|
||||
feature.openhab-core-io-bin2json/4.0.3 = openhab-core-io-bin2json/4.0.3
|
||||
feature.openhab-core-io-console-karaf/4.0.3 = openhab-core-io-console-karaf/4.0.3
|
||||
feature.openhab-core-io-http-auth/4.0.3 = openhab-core-io-http-auth/4.0.3
|
||||
feature.openhab-core-io-rest-auth/4.0.3 = openhab-core-io-rest-auth/4.0.3
|
||||
feature.openhab-core-io-rest-log/4.0.3 = openhab-core-io-rest-log/4.0.3
|
||||
feature.openhab-core-io-rest-sitemap/4.0.3 = openhab-core-io-rest-sitemap/4.0.3
|
||||
feature.openhab-core-io-rest-swagger/4.0.3 = openhab-core-io-rest-swagger/4.0.3
|
||||
feature.openhab-core-io-rest-audio/4.0.3 = openhab-core-io-rest-audio/4.0.3
|
||||
feature.openhab-core-io-rest-transform/4.0.3 = openhab-core-io-rest-transform/4.0.3
|
||||
feature.openhab-core-io-rest-voice/4.0.3 = openhab-core-io-rest-voice/4.0.3
|
||||
feature.openhab-core-io-rest-mdns/4.0.3 = openhab-core-io-rest-mdns/4.0.3
|
||||
feature.openhab-core-io-websocket/4.0.3 = openhab-core-io-websocket/4.0.3
|
||||
feature.openhab-core-io-transport-coap/4.0.3 = openhab-core-io-transport-coap/4.0.3
|
||||
feature.openhab-core-io-transport-http/4.0.3 = openhab-core-io-transport-http/4.0.3
|
||||
feature.openhab-core-io-transport-mdns/4.0.3 = openhab-core-io-transport-mdns/4.0.3
|
||||
feature.openhab-core-io-transport-modbus/4.0.3 = openhab-core-io-transport-modbus/4.0.3
|
||||
feature.openhab-core-io-transport-mqtt/4.0.3 = openhab-core-io-transport-mqtt/4.0.3
|
||||
feature.openhab-core-io-transport-serial-javacomm/4.0.3 = openhab-core-io-transport-serial-javacomm/4.0.3
|
||||
feature.openhab-core-io-transport-upnp/4.0.3 = openhab-core-io-transport-upnp/4.0.3
|
||||
feature.openhab.inc-model-core/4.0.3 = openhab.inc-model-core/4.0.3
|
||||
feature.openhab-core-model-item/4.0.3 = openhab-core-model-item/4.0.3
|
||||
feature.openhab-core-model-item-ide/4.0.3 = openhab-core-model-item-ide/4.0.3
|
||||
feature.openhab-core-model-persistence/4.0.3 = openhab-core-model-persistence/4.0.3
|
||||
feature.openhab-core-model-persistence-ide/4.0.3 = openhab-core-model-persistence-ide/4.0.3
|
||||
feature.openhab-core-model-rule/4.0.3 = openhab-core-model-rule/4.0.3
|
||||
feature.openhab-core-model-rule-ide/4.0.3 = openhab-core-model-rule-ide/4.0.3
|
||||
feature.openhab-core-model-script/4.0.3 = openhab-core-model-script/4.0.3
|
||||
feature.openhab-core-model-script-ide/4.0.3 = openhab-core-model-script-ide/4.0.3
|
||||
feature.openhab-core-model-sitemap/4.0.3 = openhab-core-model-sitemap/4.0.3
|
||||
feature.openhab-core-model-sitemap-ide/4.0.3 = openhab-core-model-sitemap-ide/4.0.3
|
||||
feature.openhab-core-model-thing/4.0.3 = openhab-core-model-thing/4.0.3
|
||||
feature.openhab-core-model-thing-ide/4.0.3 = openhab-core-model-thing-ide/4.0.3
|
||||
feature.openhab-core-model-lsp/4.0.3 = openhab-core-model-lsp/4.0.3
|
||||
feature.openhab-core-storage-json/4.0.3 = openhab-core-storage-json/4.0.3
|
||||
feature.openhab-core-ui/4.0.3 = openhab-core-ui/4.0.3
|
||||
feature.openhab-core-ui-icon/4.0.3 = openhab-core-ui-icon/4.0.3
|
||||
feature.openhab-runtime-base/4.0.3 = openhab-runtime-base/4.0.3
|
||||
feature.openhab-runtime-certificate/4.0.3 = openhab-runtime-certificate/4.0.3
|
||||
feature.openhab-transport-coap/4.0.3 = openhab-transport-coap/4.0.3
|
||||
feature.openhab-transport-http/4.0.3 = openhab-transport-http/4.0.3
|
||||
feature.openhab-transport-mdns/4.0.3 = openhab-transport-mdns/4.0.3
|
||||
feature.openhab-transport-modbus/4.0.3 = openhab-transport-modbus/4.0.3
|
||||
feature.openhab-transport-mqtt/4.0.3 = openhab-transport-mqtt/4.0.3
|
||||
feature.openhab-transport-serial/4.0.3 = openhab-transport-serial/4.0.3
|
||||
feature.openhab-transport-upnp/4.0.3 = openhab-transport-upnp/4.0.3
|
||||
feature.openhab.tp-base/4.0.3 = openhab.tp-base/4.0.3
|
||||
feature.openhab.tp-coap/4.0.3 = openhab.tp-coap/4.0.3
|
||||
feature.openhab.tp-commons-net/4.0.3 = openhab.tp-commons-net/4.0.3
|
||||
feature.openhab.tp-gson/4.0.3 = openhab.tp-gson/4.0.3
|
||||
feature.openhab.tp-hivemqclient/4.0.3 = openhab.tp-hivemqclient/4.0.3
|
||||
feature.openhab.tp-httpclient/4.0.3 = openhab.tp-httpclient/4.0.3
|
||||
feature.openhab.tp-jackson/4.0.3 = openhab.tp-jackson/4.0.3
|
||||
feature.openhab.tp-asm/4.0.3 = openhab.tp-asm/4.0.3
|
||||
feature.openhab.tp-jax-rs-whiteboard/4.0.3 = openhab.tp-jax-rs-whiteboard/4.0.3
|
||||
feature.openhab.tp-jna/4.0.3 = openhab.tp-jna/4.0.3
|
||||
feature.openhab.tp-cxf/4.0.3 = openhab.tp-cxf/4.0.3
|
||||
feature.openhab.tp-jbbp/4.0.3 = openhab.tp-jbbp/4.0.3
|
||||
feature.openhab.tp-netty/4.0.3 = openhab.tp-netty/4.0.3
|
||||
feature.openhab.tp-jaxb/4.0.3 = openhab.tp-jaxb/4.0.3
|
||||
feature.openhab.tp-jaxws/4.0.3 = openhab.tp-jaxws/4.0.3
|
||||
feature.openhab.tp-jollyday/4.0.3 = openhab.tp-jollyday/4.0.3
|
||||
feature.openhab.tp-jmdns/4.0.3 = openhab.tp-jmdns/4.0.3
|
||||
feature.openhab.tp-jose4j/4.0.3 = openhab.tp-jose4j/4.0.3
|
||||
feature.openhab.tp-jupnp/4.0.3 = openhab.tp-jupnp/4.0.3
|
||||
feature.openhab.tp-lsp4j/4.0.3 = openhab.tp-lsp4j/4.0.3
|
||||
feature.openhab.tp-serial-javacomm/4.0.3 = openhab.tp-serial-javacomm/4.0.3
|
||||
feature.openhab.tp-serial-rxtx/4.0.3 = openhab.tp-serial-rxtx/4.0.3
|
||||
feature.openhab.tp-xtext/4.0.3 = openhab.tp-xtext/4.0.3
|
||||
feature.openhab.tp-xtext-ide/4.0.3 = openhab.tp-xtext-ide/4.0.3
|
||||
feature.openhab.tp-swagger-jaxrs/4.0.3 = openhab.tp-swagger-jaxrs/4.0.3
|
||||
feature.distro/4.0.3 = distro/4.0.3
|
||||
feature.distro-kar/4.0.3 = distro-kar/4.0.3
|
||||
feature.openhab-runtime-ui/4.0.4 = openhab-runtime-ui/4.0.4
|
||||
feature.openhab-core-base/4.0.4 = openhab-core-base/4.0.4
|
||||
feature.openhab-core-addon-marketplace/4.0.4 = openhab-core-addon-marketplace/4.0.4
|
||||
feature.openhab-core-auth-jaas/4.0.4 = openhab-core-auth-jaas/4.0.4
|
||||
feature.openhab-core-auth-oauth2client/4.0.4 = openhab-core-auth-oauth2client/4.0.4
|
||||
feature.openhab-core-automation-module-script/4.0.4 = openhab-core-automation-module-script/4.0.4
|
||||
feature.openhab-core-automation-module-script-rulesupport/4.0.4 = openhab-core-automation-module-script-rulesupport/4.0.4
|
||||
feature.openhab-core-automation-module-media/4.0.4 = openhab-core-automation-module-media/4.0.4
|
||||
feature.openhab-core-automation-rest/4.0.4 = openhab-core-automation-rest/4.0.4
|
||||
feature.openhab-core-io-bin2json/4.0.4 = openhab-core-io-bin2json/4.0.4
|
||||
feature.openhab-core-io-console-karaf/4.0.4 = openhab-core-io-console-karaf/4.0.4
|
||||
feature.openhab-core-io-http-auth/4.0.4 = openhab-core-io-http-auth/4.0.4
|
||||
feature.openhab-core-io-rest-auth/4.0.4 = openhab-core-io-rest-auth/4.0.4
|
||||
feature.openhab-core-io-rest-log/4.0.4 = openhab-core-io-rest-log/4.0.4
|
||||
feature.openhab-core-io-rest-sitemap/4.0.4 = openhab-core-io-rest-sitemap/4.0.4
|
||||
feature.openhab-core-io-rest-swagger/4.0.4 = openhab-core-io-rest-swagger/4.0.4
|
||||
feature.openhab-core-io-rest-audio/4.0.4 = openhab-core-io-rest-audio/4.0.4
|
||||
feature.openhab-core-io-rest-transform/4.0.4 = openhab-core-io-rest-transform/4.0.4
|
||||
feature.openhab-core-io-rest-voice/4.0.4 = openhab-core-io-rest-voice/4.0.4
|
||||
feature.openhab-core-io-rest-mdns/4.0.4 = openhab-core-io-rest-mdns/4.0.4
|
||||
feature.openhab-core-io-websocket/4.0.4 = openhab-core-io-websocket/4.0.4
|
||||
feature.openhab-core-io-transport-coap/4.0.4 = openhab-core-io-transport-coap/4.0.4
|
||||
feature.openhab-core-io-transport-http/4.0.4 = openhab-core-io-transport-http/4.0.4
|
||||
feature.openhab-core-io-transport-mdns/4.0.4 = openhab-core-io-transport-mdns/4.0.4
|
||||
feature.openhab-core-io-transport-modbus/4.0.4 = openhab-core-io-transport-modbus/4.0.4
|
||||
feature.openhab-core-io-transport-mqtt/4.0.4 = openhab-core-io-transport-mqtt/4.0.4
|
||||
feature.openhab-core-io-transport-serial-javacomm/4.0.4 = openhab-core-io-transport-serial-javacomm/4.0.4
|
||||
feature.openhab-core-io-transport-upnp/4.0.4 = openhab-core-io-transport-upnp/4.0.4
|
||||
feature.openhab.inc-model-core/4.0.4 = openhab.inc-model-core/4.0.4
|
||||
feature.openhab-core-model-item/4.0.4 = openhab-core-model-item/4.0.4
|
||||
feature.openhab-core-model-item-ide/4.0.4 = openhab-core-model-item-ide/4.0.4
|
||||
feature.openhab-core-model-persistence/4.0.4 = openhab-core-model-persistence/4.0.4
|
||||
feature.openhab-core-model-persistence-ide/4.0.4 = openhab-core-model-persistence-ide/4.0.4
|
||||
feature.openhab-core-model-rule/4.0.4 = openhab-core-model-rule/4.0.4
|
||||
feature.openhab-core-model-rule-ide/4.0.4 = openhab-core-model-rule-ide/4.0.4
|
||||
feature.openhab-core-model-script/4.0.4 = openhab-core-model-script/4.0.4
|
||||
feature.openhab-core-model-script-ide/4.0.4 = openhab-core-model-script-ide/4.0.4
|
||||
feature.openhab-core-model-sitemap/4.0.4 = openhab-core-model-sitemap/4.0.4
|
||||
feature.openhab-core-model-sitemap-ide/4.0.4 = openhab-core-model-sitemap-ide/4.0.4
|
||||
feature.openhab-core-model-thing/4.0.4 = openhab-core-model-thing/4.0.4
|
||||
feature.openhab-core-model-thing-ide/4.0.4 = openhab-core-model-thing-ide/4.0.4
|
||||
feature.openhab-core-model-lsp/4.0.4 = openhab-core-model-lsp/4.0.4
|
||||
feature.openhab-core-storage-json/4.0.4 = openhab-core-storage-json/4.0.4
|
||||
feature.openhab-core-ui/4.0.4 = openhab-core-ui/4.0.4
|
||||
feature.openhab-core-ui-icon/4.0.4 = openhab-core-ui-icon/4.0.4
|
||||
feature.openhab-runtime-base/4.0.4 = openhab-runtime-base/4.0.4
|
||||
feature.openhab-runtime-certificate/4.0.4 = openhab-runtime-certificate/4.0.4
|
||||
feature.openhab-transport-coap/4.0.4 = openhab-transport-coap/4.0.4
|
||||
feature.openhab-transport-http/4.0.4 = openhab-transport-http/4.0.4
|
||||
feature.openhab-transport-mdns/4.0.4 = openhab-transport-mdns/4.0.4
|
||||
feature.openhab-transport-modbus/4.0.4 = openhab-transport-modbus/4.0.4
|
||||
feature.openhab-transport-mqtt/4.0.4 = openhab-transport-mqtt/4.0.4
|
||||
feature.openhab-transport-serial/4.0.4 = openhab-transport-serial/4.0.4
|
||||
feature.openhab-transport-upnp/4.0.4 = openhab-transport-upnp/4.0.4
|
||||
feature.openhab.tp-base/4.0.4 = openhab.tp-base/4.0.4
|
||||
feature.openhab.tp-coap/4.0.4 = openhab.tp-coap/4.0.4
|
||||
feature.openhab.tp-commons-net/4.0.4 = openhab.tp-commons-net/4.0.4
|
||||
feature.openhab.tp-gson/4.0.4 = openhab.tp-gson/4.0.4
|
||||
feature.openhab.tp-hivemqclient/4.0.4 = openhab.tp-hivemqclient/4.0.4
|
||||
feature.openhab.tp-httpclient/4.0.4 = openhab.tp-httpclient/4.0.4
|
||||
feature.openhab.tp-jackson/4.0.4 = openhab.tp-jackson/4.0.4
|
||||
feature.openhab.tp-asm/4.0.4 = openhab.tp-asm/4.0.4
|
||||
feature.openhab.tp-jax-rs-whiteboard/4.0.4 = openhab.tp-jax-rs-whiteboard/4.0.4
|
||||
feature.openhab.tp-jna/4.0.4 = openhab.tp-jna/4.0.4
|
||||
feature.openhab.tp-cxf/4.0.4 = openhab.tp-cxf/4.0.4
|
||||
feature.openhab.tp-jbbp/4.0.4 = openhab.tp-jbbp/4.0.4
|
||||
feature.openhab.tp-netty/4.0.4 = openhab.tp-netty/4.0.4
|
||||
feature.openhab.tp-jaxb/4.0.4 = openhab.tp-jaxb/4.0.4
|
||||
feature.openhab.tp-jaxws/4.0.4 = openhab.tp-jaxws/4.0.4
|
||||
feature.openhab.tp-jollyday/4.0.4 = openhab.tp-jollyday/4.0.4
|
||||
feature.openhab.tp-jmdns/4.0.4 = openhab.tp-jmdns/4.0.4
|
||||
feature.openhab.tp-jose4j/4.0.4 = openhab.tp-jose4j/4.0.4
|
||||
feature.openhab.tp-jupnp/4.0.4 = openhab.tp-jupnp/4.0.4
|
||||
feature.openhab.tp-lsp4j/4.0.4 = openhab.tp-lsp4j/4.0.4
|
||||
feature.openhab.tp-serial-javacomm/4.0.4 = openhab.tp-serial-javacomm/4.0.4
|
||||
feature.openhab.tp-serial-rxtx/4.0.4 = openhab.tp-serial-rxtx/4.0.4
|
||||
feature.openhab.tp-xtext/4.0.4 = openhab.tp-xtext/4.0.4
|
||||
feature.openhab.tp-xtext-ide/4.0.4 = openhab.tp-xtext-ide/4.0.4
|
||||
feature.openhab.tp-swagger-jaxrs/4.0.4 = openhab.tp-swagger-jaxrs/4.0.4
|
||||
feature.distro/4.0.4 = distro/4.0.4
|
||||
feature.distro-kar/4.0.4 = distro-kar/4.0.4
|
||||
|
|
|
@ -5,7 +5,7 @@ online-repo : https://openhab.jfrog.io/openhab/libs-release
|
|||
|
||||
Repository Version
|
||||
----------------------------------------
|
||||
openhab-distro : 4.0.3
|
||||
openhab-core : 4.0.3
|
||||
openhab-addons : 4.0.3
|
||||
openhab-distro : 4.0.4
|
||||
openhab-core : 4.0.4
|
||||
openhab-addons : 4.0.4
|
||||
karaf : 4.4.3
|
||||
|
|
|
@ -0,0 +1,26 @@
|
|||
{
|
||||
"admin": {
|
||||
"class": "org.openhab.core.auth.ManagedUser",
|
||||
"value": {
|
||||
"name": "admin",
|
||||
"passwordHash": "Gy9oNwY2mWCTA/r5Yiv2o/D/Y+V3fHkT0aVMheibVzf14HsCuyHL/wYupza6AFMu+b2ojOOm8TPSbaI5cvNQFA\u003d\u003d",
|
||||
"passwordSalt": "9scUjJ7SDXQ2Zvkfap/DpxbGf/f2ql9A3XaDH5wOmtB3MP2s+X9vgmuWdX8pCFSu08qKWYNL/nDCD3+WyPuE4A\u003d\u003d",
|
||||
"roles": [
|
||||
"administrator"
|
||||
],
|
||||
"sessions": [
|
||||
{
|
||||
"sessionId": "e416ed9f-0319-4ab3-acd8-dc58fc15de56",
|
||||
"refreshToken": "f1971ef03ff04d7fbb620ea1b33dbe4d",
|
||||
"createdTime": "Dec 17, 2023, 8:34:12 PM",
|
||||
"lastRefreshTime": "Dec 17, 2023, 8:34:12 PM",
|
||||
"clientId": "http://localhost:8080",
|
||||
"redirectUri": "http://localhost:8080",
|
||||
"scope": "admin",
|
||||
"sessionCookie": true
|
||||
}
|
||||
],
|
||||
"apiTokens": []
|
||||
}
|
||||
}
|
||||
}
|
26
openhab/openhab_userdata/jsondb/users.json
Normal file
26
openhab/openhab_userdata/jsondb/users.json
Normal file
|
@ -0,0 +1,26 @@
|
|||
{
|
||||
"admin": {
|
||||
"class": "org.openhab.core.auth.ManagedUser",
|
||||
"value": {
|
||||
"name": "admin",
|
||||
"passwordHash": "Gy9oNwY2mWCTA/r5Yiv2o/D/Y+V3fHkT0aVMheibVzf14HsCuyHL/wYupza6AFMu+b2ojOOm8TPSbaI5cvNQFA\u003d\u003d",
|
||||
"passwordSalt": "9scUjJ7SDXQ2Zvkfap/DpxbGf/f2ql9A3XaDH5wOmtB3MP2s+X9vgmuWdX8pCFSu08qKWYNL/nDCD3+WyPuE4A\u003d\u003d",
|
||||
"roles": [
|
||||
"administrator"
|
||||
],
|
||||
"sessions": [
|
||||
{
|
||||
"sessionId": "e416ed9f-0319-4ab3-acd8-dc58fc15de56",
|
||||
"refreshToken": "f1971ef03ff04d7fbb620ea1b33dbe4d",
|
||||
"createdTime": "Dec 17, 2023, 8:34:12 PM",
|
||||
"lastRefreshTime": "Dec 17, 2023, 8:34:12 PM",
|
||||
"clientId": "http://localhost:8080",
|
||||
"redirectUri": "http://localhost:8080",
|
||||
"scope": "admin",
|
||||
"sessionCookie": true
|
||||
}
|
||||
],
|
||||
"apiTokens": []
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1 +1 @@
|
|||
{"kty":"RSA","n":"xtlnpVyPt_L4tCCOovuFn6qNrorwSZ6RVmrMzSCZ4E7-9W6YcgRGWf8Rr2Qghv8wYlMtAc5f7xr0-CVSfM12oHyhxenWU6FcitJGFIYmnpuiwCEUphmIg3OtmsL1LnR3VFAJxLlhWYGBOhaGnz97w7zm1igF8YnxrEpuij9cR_QrSSoBd-bHVhMRJtEov0zNrxR45c0-VSGfucfSr-X-vyzd49ZPkMCeuc8BrVwsN8BfqRdX2MtyiCrulFNp8Q8gSFyUFTk67c20qHdgtJPyazT-lNc9K0TaJD5wEFCZcj5Fh-CVqav9Q1BxMLVaKmg3h78-sMgNYDzRferCCmFkCQ","e":"AQAB","d":"UQ6wVFUN9MMjpHGdE00KZFKm3J6gYrIztpFkmL2QXEJ3Zd7GX7vkXa0_LUrYg48kzv_u2cyhiJtpfnngTSWIFNWZME8o4gBl8-TRUm548bCpwD3759WCs2sFOo_8WAp71i-mO74Bs_W5ks8541KChgDL7EJ2YcaEcGIK-2nmmSFy7HZ0KypXdfqSTYbn2ZbEFJjjSYxmqSKTegvvXAUfIMwPfsdGfsy5S3H99QxX3-0K2XgduDi0d1dPxcuHMkftSG_oB0lAQrY9K9l_wisJvZNuqE0J4kucSbuvtEovHYceD0zRcGAQxFEaYa_oYSA5yJI2byr1pKVfBIpucCrYnQ","p":"x5-EO91jPK1rs__8T4orVJ_Q1T8sS7z9ny67hDhV8avbpLMpji1MwGmfNhnmSbJfm648EIvTZwxJj_-C09UaL7cZtEcmkHFJ26c9Rz0eecF_fKQbyfudr12NG0gm_immNXBBSSiRi_3KwnriUEEegfnXSXXeI6VrXHA9YDYiqAc","q":"_wHwNCcHVcxFqBsoZVRiJjRoI_8ZOhDmEE9pUjvDMTFz7cuoLBwKbggrpF-CmguENr8F3xsAQppOrW0Z-tWF9TYl0ydwF2SyiQ5ZRol0_jq2NHK7rZu2KvvRrY48kRSxNi3iRjxEM8Q-gWy8IEH1tW6Db6KQtck9axuFFl6k728","dp":"R1uTRl8OMUuAu5hfFgO7F4YFfaUWbYCCXNu0tj_5IOmhG0_cI_G3hPR8sDcz5dY4bQssd3G0QRrYVPwuRRDhSns2WgYxF-MXVsiClCuZ8EYmD2UOdfZW2LAlV8JEBgjXXDTjcYZp-NPhHgIVUkDk6etodN8IaE-igCmzFuhjHRM","dq":"6KJRCpLMS0Y2CZz05jPr8iR_GM-gqOs_poN7doyUji0qMDZJbiwKi8SiY6rKD1QQQo1Tguwz-Y6h1e6g88aVFVVXfmENDhpMEWJoqUO-2iqfjAtbEY7qyh2-dBE9SbFR1TZYpXBXW85co1-Z4-eoiuKNv2rTjzNN94c8i2K-Hrs","qi":"Q-LuIxo9bC76PubTswus3u4H9SHk-T95ASfaRHNKCqUG8rvBTC25zXB1KJlnX9KMn8cDwFb7UnuY-bqDWUpXpe4IcZJRv3MnZEKkRk0bgfTlNoX3pVOEfMiNXM1qb-3zyt4DBh1Z-1V49R8P9z_82H_gGZStBCfYQw9gZAcqfTA"}
|
||||
{"kty":"RSA","n":"2QaUe_zVEhrVWZ7THQJzEIhDlYwhheZM6G6Rp4bOl_Fd6k58Xgl3c73DuUlfCnMpD59fZJXcVIFBUdLZiwKw-XvrOYPrLbNmm_vNtiWXCjJHLnzGJvrAO6h52TzHgSpOa-nqxHKGG750xxebHpj_09WdfuDlntzW_ouddNeRrXhr4Zv5wX2YRbJa8--j9vgecImiFFy5fERVLttVA2tSmXRSXyBzdBk99iXmbL5sA8-nc9PQmZn_TMnyyU2Q6EiH5OP8BguH8RFn3f1r4bNiVuuPJZS4IHJUE7DGCujZp9_HvsX_QD53n8A5bd4KZ4DDj5k02_6YOGp4UL5g_KIRsQ","e":"AQAB","d":"NTAJJOfeWj0MS5YCnEn05DjZA2Yf8x5xe8dZWArQR-mmAB3zGeLNDScVOCw0qC14AzWmXdLieC1jUkfP--MRd1s411Qux3j_rTvFex30SdHvowN-VqA-i4BrOGPOayfwpz7hQ_rjRhpjqUVuRU3u6L4iBq3caJYr9J9H3BJWyAHXMSM4Bh23EBBCm-_DTNL1rV6VBSv7bqjhRot5lXM5xNXG6qohLhFyjrcbSJqJ_YqI5wySSje6CimLNm-zM4kKd6C_x15P7ynlYBjRL28uOS_vVuvldAkKH5Y_ys3Vqat8Q3VOw9giAkhRsqMMgvUcbiZlyyqIjVzBjgAvDUZ3hw","p":"5hDRKazLj34sVsExLtMwcUhTfHMAzDwP0de58rOBh5SQN4TwC-A_szs_tsu2XIcUHWoE2KzYdgtWfGkZ0S2W4pX81LJp4adMATo-fjcYYACOLWI_tQHP4WvE625cdm1rqGlAJgD5t_9o_kwMKEIfztLg-bEAavdejeiI_binUm8","q":"8X11Pj55m7rnINxj037lyN6J3fEZvVATO-d1qn_4uWHF9fJ0f1K2zzVQYsfy4FzzSSyefEJxP6cA2181FeoLRvTIKYhGkBX9JWL1soWQ5sX_RW0dnn3WNNXmC9RZDrSEnru4i9KDIIsMoUrJVHNXUqTgx7kAdeN5KTvEfiu4bd8","dp":"r6LHC3nPLYy1bMWwNn8jzFfa5HcndMOlkB2Q56gCiu7v6nKij25zMvFYgsSiQ6EbyhjV-lR6LCQbsn7KJtcXCYRXsElEa_C8JXPBobmN8jx6TktjN1xax0zu2I04KXD_b2JqhpjYC5ABJ6IG5fUVM1_qQLTQDNksZknPy2Lc2iE","dq":"tsi0JnHZUCNu8DOAp8PEH385sTDdv6pNdKkkKfKFC6RS1281-G1eC4aaGrqnPmV8i-Vm7DzKRVid0G3G25h0ArgijTUl28eY_WRi_kYUwGgbaKxHoAA1U3aXklqfMf825oLGE6c6MzasT6UwsGhBLz-3F9US4ShVO_2OI8Xp6dc","qi":"2NjZpOZjRzdxz0478wrdv-218qg0CKphjtjhQZw0l5Ft1o5nYTSYKrz69yfxD6mFLh5YTnGtYcwbIf54nc_EIBHqLrG0trxyo0cRdYfJPriPpRjPenqdeld--5EsQPdudtraJ7OHpDbVKYc-OMXGAQrCuKcnegDWUO7ovrnJU48"}
|
Loading…
Reference in a new issue