Modul: 88_xs1Bridge.pm - EZcontrol xs1

Begonnen von HomeAuto_User, 15 Dezember 2017, 23:28:21

Vorheriges Thema - Nächstes Thema

HomeAuto_User

Hallo,

ich habe mich ans Werk gemacht und mein erstes Modul geschrieben.
Mit diesem Modul kann man alle Aktoren / Sensoren / Timer und Informationen vom xs1 der Firma EZcontrol auslesen.
Sämtliche Daten werden in Readings eingelesen. Somit kann man seine xs1 im FHEM für den Empfang nutzen.

Derzeit werden Daten nur empfangen.
Ein Gedanke ist, das ganze ggf weiter zu bringen, das man auch die xs1 steuern kann.

MfG
"Developer" heißt nicht, das man alles wissen kann!
- FHEM v5.9 | Rasberry PI 3
- radino CC1101 433Mhz (SIGNALduino)| - radino CC1101 868Mhz (CUL) | nano 433Mhz (SIGNALduino) - Sensoren: purer Dschungel querbeet

HomeAuto_User

... hier mal eine Neuerung schon.
Das Modul wurde umbenannnt weil ein 2. welches mit diesem zusammen arbeitet hinzukommt.
"Developer" heißt nicht, das man alles wissen kann!
- FHEM v5.9 | Rasberry PI 3
- radino CC1101 433Mhz (SIGNALduino)| - radino CC1101 868Mhz (CUL) | nano 433Mhz (SIGNALduino) - Sensoren: purer Dschungel querbeet

beowulf123456

#2
Hallo,
Guten Abend, ich hätte da eine Anfängerfrage ;-)
Ist es derzeit schon möglich ein xs1 mit Passwordschutz anzubinden?
Wenn ja wie geht das?

Ich wäre ebenfalls sehr interessiert an einer möglichkeit das xs1 auch über FHEM steuern zu können. Dies ist ja recht einfach über http Befehle möglich. Wenn Sie interesse hätten könnte ihnen eine inoffizielle xs1 http dokumentation zukommen lassen.

Vielen Dank

HomeAuto_User

Guten Abend,

ich werde es mal testen.
Du kannst auf jedenfall ohne Passwort, dies auslesen mit der xs1Bridge. Ich bin soeben in der Umsetzung das auch Schalter angelegt werden unsw.
Welche Firmware nutzt du?

MfG
"Developer" heißt nicht, das man alles wissen kann!
- FHEM v5.9 | Rasberry PI 3
- radino CC1101 433Mhz (SIGNALduino)| - radino CC1101 868Mhz (CUL) | nano 433Mhz (SIGNALduino) - Sensoren: purer Dschungel querbeet

beowulf123456

Aktuell setze ich Version 4.0.0.5326 ein

HomeAuto_User

Das ist auch die Version welche ich nutze.
Da ich gerade nicht meine xs1 umkonfigurieren kann mache mal bitte folgenden Test.

Nutze mal diesen http Befehl
Zitathttp://<ip-von-dir>/control?callback=cname&cmd=get_list_sensors
und schaue was passiert.

Ich habe glaube dunkel in Erinnerung das das mit einem Passwort nicht funktioniert.
Genau an dieser Stelle blieb der Hersteller "stehen".

Also ohne PW geht dies auf jedenfall.

MfG

EDIT: Du kannst gern auch mal dies nach dem Schema probieren. http://username:password@www.deinedomain.tld/
"Developer" heißt nicht, das man alles wissen kann!
- FHEM v5.9 | Rasberry PI 3
- radino CC1101 433Mhz (SIGNALduino)| - radino CC1101 868Mhz (CUL) | nano 433Mhz (SIGNALduino) - Sensoren: purer Dschungel querbeet

beowulf123456

Hallo,

ich habe jetzt auch mal ein paar Experimente gemacht, jedoch werde im in allen fällen immer zuerst nach username und passwort gefragt, egal welche URL Konstellation ich benütze. Hier meine bisherige Auflistung welches nicht geklappt hat:

http://192.168.178.242/control?callback=cname&cmd=get_list_sensors

http://admin:MEINPASSWORT@192.168.178.242/control?callback=cname&cmd=get_list_sensors

http://192.168.178.242/control?user=Administrator&pwd=MEINPASSWORT&callback=cname&cmd=get_list_sensors // Inoffizielle xs1 Dokumentation
http://192.168.178.242/control?user=admin&pwd=MEINPASSWORT&callback=cname&cmd=get_list_sensors

http://Administrator:MEINPASSWORT@192.168.178.242/control?callback=cname&cmd=get_list_sensors

Es scheitert hier anscheinend tatsächlich an der Basic access authentication.

MfG

HomeAuto_User

Hallo,

dann wird dir leider nichts anderes übrig bleiben vielleicht FHEM als Oberfläche von der Ferne freizugeben und die xs1 nur intern ohne Freigabe nach außen einzurichten wo du keine Passwortabfrage erhält.

Das werden wir nicht gelöst bekommen, da wir da in die Firmware von xs1 eingreifen müssten.  Da diese nicht erhältlich ist und nicht weiterentwickelt wird, so kannst du ggf nur dies mit dem Workaround nutzen. Daten vom xs1 in FHEM umsetzen ist machbar.

Derzeit kannst du mit dem Modul alles auslesen und vorerst als Reading weiter verarbeiten.
Eine Entwicklung zumsteuern ist in der Mache.

MfG
"Developer" heißt nicht, das man alles wissen kann!
- FHEM v5.9 | Rasberry PI 3
- radino CC1101 433Mhz (SIGNALduino)| - radino CC1101 868Mhz (CUL) | nano 433Mhz (SIGNALduino) - Sensoren: purer Dschungel querbeet

meergeist

Moin HomeAuto_User,

vielen Dank für das Modul.

Wäre es möglich  bei den Readings statt der id Nummern die Namen auszulesen? so braucht man immer erst einen Übersetzer, zumal die fortlaufende Nummerierung und id Nr nicht identisch sind.

Ciao
Siggi

HomeAuto_User

Hallo Siggi,

Zitat von: meergeist am 05 Februar 2018, 16:23:36
Wäre es möglich  bei den Readings statt der id Nummern die Namen auszulesen? ...

Das ist möglich. Ich habe das ganze schon im Test bei mir laufen und muss nur noch einen Fehler abfangen. Gib mir bitte noch ein paar Tage und ich lade es hoch.
In der neuen Version wird es dann wie folgt aussehen:

Readings:
Aktor_08 | Value
Aktor_08_Name | Name (welcher von Dir im XS1 defineirt wurde)
...

Zitat von: meergeist am 05 Februar 2018, 16:23:36
... zumal die fortlaufende Nummerierung und id Nr nicht identisch sind.

Dem kann ich nicht ganz folgen. Das Gerät hat feste Positionen welche als Aktor_ID wiedergegeben werden. So sollte es auch bisher sein. (bei mir ist es auf jedenfall bisher so. Aktor_ID 17 = Aktor ID 17 im Gerät) Ist es machbar, das du mir dies mal näher erläutern kannst.

Alternativ, mir die Daten von den Aktoren (http://ip/control?callback=cname&cmd=get_list_actuators) ausgeben und daran erläutern wo welche ID´s verschoben sind.
Natürlich sollte es keine Differenzen in der Nummerierung geben und wir finden den Fehler ;-)

Welche Firmware nutzt du im xs1?

MfG Marco
"Developer" heißt nicht, das man alles wissen kann!
- FHEM v5.9 | Rasberry PI 3
- radino CC1101 433Mhz (SIGNALduino)| - radino CC1101 868Mhz (CUL) | nano 433Mhz (SIGNALduino) - Sensoren: purer Dschungel querbeet

meergeist

Moin Marco,

meine firmware 3.0.0.4493.

Die Differenz in der Nummerierung bezieht sich nicht auf dein Modul, sondern die Durchnummerierung Aktor 1...64
auf dem XS1 Webinterface ist nicht identisch mit den ausgelesenen "ID" Nummern, deswegen elende sucherei.
Kann sein das das in der 4er Fw nicht mehr der Fall ist, die brachte mir aber wenige Stunden nach update einen Absturz,
bin deswegen bei der 3.0.0.4493 geblieben.
Schön wären auch Begrenzungsmöglichkeiten für die Events.

Vielen Dank für das Update.

Ciao
Siggi

HomeAuto_User

Zitat von: meergeist am 05 Februar 2018, 17:51:41
Die Differenz in der Nummerierung bezieht sich nicht auf dein Modul, sondern die Durchnummerierung Aktor 1...64
auf dem XS1 Webinterface ist nicht identisch mit den ausgelesenen "ID" Nummern, deswegen elende sucherei.
Kann sein das das in der 4er Fw nicht mehr der Fall ist, die brachte mir aber wenige Stunden nach update einen Absturz,
bin deswegen bei der 3.0.0.4493 geblieben.
Bei mir sind die Zuordnungen eindeutig. ID 1 in FHEM = ID 1 im xs1 Web = ID 1 xs1 Config

Zitat von: meergeist am 05 Februar 2018, 17:51:41
Schön wären auch Begrenzungsmöglichkeiten für die Events.
Was meinst du damit? Möchtest du bei einem Event, also eine Wertänderung verarbeiten? ---> Das Bsp. ist in Entwicklung und da kannst du sogar die xs1 von FHEM schalten  ;) (Dafür kommt aber ein neues Modul) Das ganze harmoniert dann zusammen. Aufgrund der vielen Möglichkeiten ist es nur sehr vielseitig.

DENNOCH gut zu wissen, das du mit der FW 3 ebenso zum "testen" bereitstehen würdest. 8)
"Developer" heißt nicht, das man alles wissen kann!
- FHEM v5.9 | Rasberry PI 3
- radino CC1101 433Mhz (SIGNALduino)| - radino CC1101 868Mhz (CUL) | nano 433Mhz (SIGNALduino) - Sensoren: purer Dschungel querbeet

meergeist

Moin Marco,

die Zuordnung der id Nr ist bei mir auch eindeutig.
Ich versuchs nochmal:
In der XS1 Confg kann man die Reihenfolge der Aktoren/Sensoren mit der Funktion "verschieben" ändern, die "ID" Nr. bleibt dabei aber erhalten.

Wenn ich einen einzelnen Aktor auslese erhalte ich als Antwort: "actuator": {"number": 1, "name": "Rol_Kue",.....
"number 1" ist hierbei der 1.Aktor auf der XS1 Confg Seite, die "id" Nr erscheint hier garnicht.

Wenn ich alle Aktoren gleichzeitig auslese erhalte ich als Antwort: "actuator": [{"name": "Rol_Kue","id": 14,..
"number" erscheint hier nicht.
Man sieht hier das "Rol_Kue" vom ursprünglichen Platz 14 auf Platz 1 der XS1 Confg Liste verschoben wurde.

Wenn in der nächsten Version in den Readings die Namen erscheinen ist doch alles bestens.

Ciao
Siggi

HomeAuto_User

Guten Morgen Siggi,

Ich habe nun verstanden was du meinst. Diesen Fall schaue ich mir an. Danke für den Hinweis. Vielleicht kann man da eine Lösung finden.

Das Update ist eingecheckt. Du kannst nun mit viewDevice_name als Attribut die Orginal Namen vom Gerät auslesen. So erhältst du jeweils 2 Readings pro Aktor / Sensor. (_ID und _name)

MfG
"Developer" heißt nicht, das man alles wissen kann!
- FHEM v5.9 | Rasberry PI 3
- radino CC1101 433Mhz (SIGNALduino)| - radino CC1101 868Mhz (CUL) | nano 433Mhz (SIGNALduino) - Sensoren: purer Dschungel querbeet

meergeist

Moin,

nach dem Update funktioniert das Modul leider garnicht mehr, es finden keine updats der Readings mehr statt, und es gibt keine Events mehr.
Hab das Modul gelöscht und neu definiert, es bleibt im initialisierungs Modus stehen. Im Log keine Meldungen.

Ciao
Siggi