ich bins mal wieder

Heute habe ich umgestellt von self-made Shelly-based Aufputz-Gurtwicklern auf Rademacher DuoFern Gurtwickler, deren Zentrale (Home Pilot) mittels HTTP Binding angebunden werden kann. Die Steuerung funktioniert auch einwandfrei, wie bspw. via CURL nachstellbar ist. Ich habe das HTTP-Binding auch korrekt eingebunden und sämtliche GET-Zugriffe (states) funktionieren, soweit ich das sagen kann, auch zuverlässig, zumindest schlägt es nicht fehl und wenn ich die http Binding logs aktiviere, sehe ich die GET-Requests raus und responses eingehen.
Was aber nicht funktioniert sind sämtliche commands, sprich:
Ich erstelle einen sitemap Eintrag für mein Rollershutter Item. Wenn ich auf die Knöpfe drücke, sehe ich eine Änderung im Log, aber es wird vom HTTP Binding kein Request veranlasst, jedenfalls taucht nichts in den Logs auf.
Ich verwende noch die "alte" Konfiguration via config files, weil ich blind bin und die neue OH3-Oberfläche nicht gerade zu den barrierefreisten zählt. Soweit ich das sagen kann, sind die Config Files aber soweit richtig bis 1:1 von einem englischen Forum-Post kopiert, der das selbe Problem zu lösen versucht wie ich, nur sämtliche Sachen, die Anfragen an den Home Pilot senden, scheinen gar nicht erst das Binding zu triggern. Ich bin auf OpenHAB 3.2.M5 (3.2 hat ein großes iCloud-Problem gefixt, daher laufe ich aktuell auf Testing).
Hier meine Config Files:
Code: Alles auswählen
homepilot.things:
Thing http:url:shutter [
baseURL="http://192.168.170.20",
refresh=5,
commandMode="PUT",
stateMethod="GET",
contentType="application/json"
] {
Channels:
Type rollershutter : workroom [
mode="WRITEONLY",
commandExtension="/devices/4",
stopValue="{\"name\":\"STOP_CMD\"}",
downValue="{\"name\":\"POS_DOWN_CMD\"}",
upValue="{\"name\":\"POS_UP_CMD\"}"
]
Type number : workroom#position [
stateExtension="/v4/devices/4",
stateTransformation="JSONPATH:$.device.statusesMap.Position",
commandTransformation="JS:RollerShutterPositionJSON.js",
commandExtension="/devices/4"
]
}
Code: Alles auswählen
homepilot.items:
Rollershutter workroomRollershutter
{
channel="http:url:shutter:workroom"
}
Number workroomRollershutterPosition
{
channel="http:url:shutter:workroom#position"
}
Code: Alles auswählen
shutter.sitemap:
sitemap shutter label="Rollläden"
{
Frame label="Arbeitszimmer"
{
Switch item=workroomRollershutter icon="rollershutter_rev"
Setpoint item=workroomRollershutterPosition minValue=0 maxValue=100
}
}
Code: Alles auswählen
transform/RollerShutterPositionJSON.js:
(function(position){
try{
var obj = {name: "GOTO_POS_CMD", value: parseInt(position)};
return (JSON.stringify(obj));
} catch(e) {
return null;
}
})(input)
Habt ihr eine Idee?
MfG.
Timtam