NEWS
[Aufruf] ioBroker Jung/Gira eNet Adapter testen
-
Hmm, ohne mal einen Aktor hier zum Testen zu haben kommen wir hier wohl nicht weiter. Leider gibts auch scheinbar keine weiteren Tester…
-
So, habe gestern Abend noch etwas "gelauscht"…(Kabelhai..
)
wenn ich vor dem eigentlichen Fahrbefehl folgendes schicke: (alles mit Telnet)
{"CMD":"ITEM_VALUE_SIGN_IN_REQ","TIMESTAMP":"1423493333","ITEMS":[16],"PROTOCOL":"1.8"}
dann kommt 6x eine "Statusmeldung"
danach kann ich den Fahrbefehl ausführen
{"CMD":"ITEM_VALUE_SET","PROTOCOL":"0.03","TIMESTAMP":"1516719696","VALUES":[{"NUMBER":16,"STATE":"VALUE_BLINDS","VALUE":28}]}
und siehe da…. der Rollladen bewegt sich...
wenn jetzt noch die Sonnensensoren auswertbar wären
-
WAHNSINN! DANKE!
Ich glaube ich habe den Fehler jetzt.
Ich bastel mal dran!
-
Nochmal vielen Dank für den Wireshark-Trace und Deine Geduld als "Tester".
Kannst Du den Adapter bitte nochmal komplett deinstallieren und von der GitHub URL neu installieren und erneut Testen, ob Du jetzt die Rolläden steuern kannst?
-
YEPP!!!
jetzt geht's
Glückwunsch an dich!!! tolle Leistung, so ein Adapter…
da die Sonnensensoren im Gateway <size size="150">nicht</size> verwendbar sind, werde ich mir wohl einen eNet Server beschaffen …
könnte ich da nochmal auf dich zurückkommen?
-
Super, das es nun endlich funktioniert!
Ich weiß allerdings nicht, ob der Adapter auch mit dem eNet Server funktioniert.
-
Bin gerade erst auf das Thema aufmerksam geworden.
Werde es mal in Verbindung mit dem Server testen, nachdem ich mich eingelesen habe
-
Toll, dann sind wir schon zu dritt, die sich an eNet versuchen…
Server ist auf dem Weg....
-
Hi,
ich habe den Gira eNet Server mit Firmware 2.0, 14 Rolladenaktoren und einen Sonnensensor. Möchte gerne alles über Alexa bedienen aber ich habe noch nichts passendes gefunden. Wäre ioBroker hier das richtige?
Gruß
XC
-
Leider kann ich - mangels Server zum Testen - nicht sagen, inwiefern der Adapter auch mit dem eNet Server funktioniert.
Der Adapter ist derzeit nur für das eNet Gateway.
-
So,
habe jetzt einen Jung eNet Server,
und eines kann ich jetzt schon sagen, Gateway und Server sind nicht "kompatibel".
Der Server wird über ein Web-Interface konfiguriert/programmiert.
Die Ports des Servers(80,443,4004,8056), die ich gefunden habe, können mit den Gateway-Befehlen nichts anfangen..
Allein über das Webinterface (Port 80) könnte ich mir eine Kommunikation vorstellen…stehe da aber noch ganz am Anfang... ( und bin da ziemlicher Laie...)
"kabel-hai", zeigt eine Kommunikation mit JSON ( ähnlich zum Gateway)
erste Hürde ist aber erst einmal die Authentifizierung :shock:
die scheint notwendig zu sein, um überhaupt mit dem Server zu kommunizieren.
bekomme immer:
{"jsonrpc":"2.0","error":{"code":-29997,"message":"Authentication failed"},"id":"2"}
-
Ohne Authentifizierung werden wir da nicht weiter kommen.
Du kannst ja mal Wireshark laufen lassen und dann mal via eNet-Oberfläche (nicht die Adminoberfläche) versuchen was zu schalten.
Mal schauen was da an JSON Daten läuft.
Kannst Du mir auch mal einen JSON String hier posten, der da so abläuft?
Wäre cool wenn wir den Adapter auch mit dem eNet Server reden lassen könnten.
-
was meinst du mit eNet-Oberfläche?
es gibt die WebOberfläche mit der Konfiguration(da kann man auch - bedingt- mit schalten) und es gibt die eNetApp.
es gibt von Gira ein Windows-Programm, das scheint aber mit Jung Server nicht "zu können",
bleibt bei der Authentifizierung hängen(?)
Mit der SmartPhone-App habe ich noch nichts rausbekommen.
prinzipiell scheint das ganze so zu laufen:
Connect zum eNetServer,
eine Login-Seite wird aufgebaut…
nach User und Password Eingabe werden folgende strings geschickt:
{"jsonrpc":"2.0", "method":"getDigestAuthentificationInfos", "params":null, "id":"1952"}
das kommt als Antwort:
{"jsonrpc":"2.0","result":{"realm":"Insta-NetBox","domain":"","uri":"/jsonrpc//management","nonce":"7475a8d60b52306835283a8f14ab9006e2ef0c2e","opaque":"65683165666a357569696b326d37736d6a6b3935386666346962","algorithm":"sha","qop":"auth"},"id":"1952"}
darauf wird das geschickt:
{"jsonrpc":"2.0", "method":"userLoginDigest", "params":{"userName":"user", "uri":"/jsonrpc//management", "qop":"auth", "cnonce":"ABC750E976373C55B832EC3E96E6C667383C4C81", "nc":"00000001", "response":"519C733EFBD6CA40D394868EE2CCA82C003AE78D", "realm":"Insta-NetBox", "nonce":"7475a8d60b52306835283a8f14ab9006e2ef0c2e", "algorithm":"sha", "opaque":"65683165666a357569696b326d37736d6a6b3935386666346962"}, "id":"1953"}
darauf kommt das zurück:
{"jsonrpc":"2.0","result":{"userName":"user","userRoles":[{"userRole":"UR_VISU"},{"userRole":"UR_CONFIG"}],"sessionID":"1oi9cukw91rbufzd6lepzxqtu"},"id":"1953"}
damit ist man eingeloggt
wenn man jetzt einen Sensor abfragt:
{"jsonrpc":"2.0", "method":"getCurrentValuesFromOutputDeviceFunction", "params":{"deviceFunctionUID":"13db8f9c-4863-44df-b329-b2670000062c"}, "id":"111"}
kommt das zurück:
{"jsonrpc":"2.0","result":{"currentValues":[{"value":12.96,"valueTypeID":"VT_VALUE_LUX_RANGE_0.0_670760.0","valueUID":"13db8f9c-4863-44df-b329-b2670000062b"}]},"id":"111"}
Rollo schalten geht eigentlich genauso…(Protokoll hab ich aus Versehen überschrieben)
Die Funktionalität scheint ähnlich zum Gateway...
aber -wie gesagt- ich scheitere schon am "zweiten" String (oben), da bekomm' ich zurück:
{"jsonrpc":"2.0","error":{"code":-29997,"message":"Authentication failed"},"id":"2"}
da steh' ich momentan…
-
Ja scheint ähnlich zum Gateway zu sein, aber wirklich auch nur ähnlich…
Leider habe ich keinen eNet Server hier zum Testen. Also wenn Du die Authentifizierung hin kriegst, sollte der Rest auch klappen.
-
kurzer Zwischenstand:
Authentifizierung müßte jetzt funktionieren… jedenfalls bekomme ich die gleiche "Response" wie im Webbrowser...
aber ich habe einfach generelle Verständnisprobleme mit Javascript und function->callback...
ich kann da einfach nicht sequentiell ( so bin ich's bisher gewohnt..) Anfragen schicken...
da "überholt" eine Anfrage die von zuvor... und Werte, die ich für die weitere Anfrage brauche sind noch nicht gesetzt...
irgendwie stehe ich auf "Kriegsfuss" mit "node.js"
-
Ich denke Du solltest Dein Problem mal im entsprechenden Scripting-Unterforum posten.
Wenn Du Lust hast, kannst Du Dir den Adapter im GitHub forken und mit dranarbeiten
-
So, ich hatte mal wieder Zeit:
aktueller Stand:
- ich kann das Projekt (die devices) und aktuellen Values lesen (siehe screenshot)
und ich kann values ändern, d.h. Rollos rauf und runter lassen…
eigentlich sieht's gut aus, aber!!!
so wie es jetzt ist, "kann man es machen, aber dann ist es halt SCHEI...."
warum:
ich muß alles "innerhalb der Konfiguration machen"
aktuell klappt das "ausloggen" nicht, d.h. man muß ab und an ( bei Problemen) den Reset Knopf am eNet-Server drücken ( alles bleibt aber erhalten)
Bis zum Adapter ist es aber noch ein weiter Weg... je nach Funktionalität... :oops: (Szenen, etc.., berücksichtigen, etc..)
Upps...
Anhang klappt nicht "Kontingent vollständig ausgenutzt..." was soll denn das?
- ich kann das Projekt (die devices) und aktuellen Values lesen (siehe screenshot)
-
Das klingt doch aber schon mal super.
Wie realisierst Du das Ganze denn? Mit einem Script?
-
aktuell mit mehreren Scripten
-
authentifizieren
-
"Inbetriebnahme" starten
-
Devices lesen (4 Jalousieaktoren und 2 Sonnensensoren)
das eigentlich nur einmal
dann ein Script welches die Zustände liest (Scheduler)
und ein Script zum setzen der Devices (bei mir:Jalousie-Aktoren)
alles sehr kryptisch (ich bin nicht der Profiprogrammierer) und mit Javascript "tu' ich mich auch noch schwer"…
hier mal ein Screenshot:
die Werte ( Values) sind die Zustände ( 100= Rollladen ganz zu, 115,84 lux)
4219_enet4.jpg -
-
Dann liesse sich das ja in einen Adapter packen