FHEM Wdget (iOS)

Begonnen von HaPeRiebmann, 07 Dezember 2015, 21:46:23

Vorheriges Thema - Nächstes Thema

Depechem

Ich habe nun paar Fragen an das FHEM Widget2.

1. Was genau ist nun noch mal direkt der "Sync Service" ? Nachdem ich mir die Anleitung durchgelesen habe habe ich es so verstanden das die Daten nun SSl erschlüsselt übertragen werden, oder wofür ist dieser Service!?
2. wurde im Widget2 eine Funktion eingebaut, damit man die Farben im Widget ändern kann? Um die Schalter besser zu sehen?
3. wie kann ich im Widget statt einem Alias z.B. ein Telefon Icon hinterlegen?

Vielen Dank im voraus.
Gruß Thomas
RaspberryPi2 / FHEM / 3 Wand-Tablets mit Tablet UI / HM USB / verschiedene HM-Aktoren / JeeLink USB für WS1600 und mehrere LaCrosse Sensoren / HEOS ...

HaPeRiebmann

Hi Thomas,

FHEM Widget 2 ist die Weiterentwicklung des FHEM Widget 1.6 Diese Version ist, im Gegensatz zur 1.6, mit einem Freemium Modell ausgestattet welches es mir erlaubt neue Features zu entwickeln und einen, wenn auch geringen, konstanten finanziellen Inflow zu erhalten um meine Kosten zu decken.

Das ist die Entwicklerseite. Die User Seite ist die, dass in FHEM Widget 2 die neuen Features implementiert werden und 1.6 nur Bugfixes erhält und irgendwann komplett aus dem Store verschwindet. Spätestens mit einer inkompatiblen iOS Version. Im 2er ist jetzt schon der Lock des Widgets implementiert, die Konfigurationsübertragung und der Sync Service. Hier werde ich auch die Feature Requests einbauen und die App wird generell weiter gepflegt und erweitert (Stichwort Watch-Unterstützung).

Zu deinen Fragen:
1: Der Sync Service bietet eine Alternative an um deinen FHEM von extern steuern zu können. Dafür wird ein Client mit FHEM- und Internetzugang installiert, der nur und ausschließlich die Daten abruft die auch das FHEM Widget abruft. Danach schickt er diese Daten an meinen Server (SSL Verschlüsselt). Dort liegen sie und dienen so als Brücke zu deinem FHEM ohne dass du einen Port nach extern freimachen musst. Die Daten werden auf dem Server nicht persistiert und automatisch gelöscht sobald mit deinem Token nicht mehr drauf zugegriffen wird. Außerdem gibt es keine Logs. Ich werde in der nächsten Iteration des Service noch eine E2E Verschlüsselung einbauen. Das brauch aber noch bissl Zeit weil es eine tiefer greifende Änderung wird.

2: Die Farben wurden an iOS 10 angepasst und sind jetzt dunkel gehalten (siehe Screenshots im Store) Eine Möglichkeit die Farben anzupassen wäre ein neues Feature das ich in der 2 implementieren kann falls gewünscht.

3: Das kannst du, derzeit allerdings nur Emoji (versuch mal den Wizard) Ein Feature mit dem man ein FHEM Icon hinterlegen kann hab ich mir auch schon mal angeschaut, ist technisch möglich und steht in meinem Backlog.

Du kannst das 2er auch einfach mal ausprobieren, alles bis auf den Sync Service ist bis 3 Devices frei nutzbar.

VG
Michael
Raspberry Pi | Homematic Komponenten | Brennenstuhl Funksteckdosen | homebridge
http://fhemwidget.de.tasior.de
Slack: fhemwidget.slack.com
https://itunes.apple.com/us/app/fhem-widget-2/id1169530472?l=de&ls=1&mt=8

Depechem

Danke für alle Infos!!!  :)
RaspberryPi2 / FHEM / 3 Wand-Tablets mit Tablet UI / HM USB / verschiedene HM-Aktoren / JeeLink USB für WS1600 und mehrere LaCrosse Sensoren / HEOS ...

Fhemschorsch

Ich hab mir die Version 2 geholt und gleich einen Kaffee an den Entwickler gespendet :-).

Jetzt habe ich aber ein Problem:

Ich will den Sync-Service wieder nutzen, er lief schonmal unter Version 1.x, lag aber jetzt brach, da der Sync-Service zwischendurch ausgeschaltet war.

Ich bin alles noch einmal gemäss Anleitung durchgegangen und habe den Token aktualisiert, aber der Sync will nicht.

Wenn ich den Java Befehl direkt auf der Oberfläche starte:
java -jar FHEM_Sync_Client.jar -v -url=http://192.xxx.xxx.xxx:8083

dann schmeisst er folgenden Fehler:

==============================
FHEM Sync Client Build 17
Verbose on
FHEM URL: http://192.168.178.24:8083
Room:

Getting all Devices using: http://192.1xxx.xxx.xx:8083/fhem?cmd=jsonlist2&XHR=1
Token found: xxxxx

Devices found:
HM_3F69BF: last
HM_4CB9C8: last
MAX_139212: temperature
Hausklingel: last
HM_392187: STATE
MAX_0f4183: STATE
HM_43403B: last
Bewegung: STATE
HM_30E392: STATE
Urlaub: STATE
Garagentorsensor.zu: last
MAX_138eed: temperature
==============================

Loop started with 1000ms loop
Getting Device States
FHEM Device States changed, uploading new ones
Error 21: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
Error 29: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
Error 29: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
Error 29: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target


Brauche ich jetzt auch SSL? Ich dachte, nur der Weg von der App in Richtung Amazon AWS sei SSL-verschlüsselt...

HaPeRiebmann

Hi,

Probier mal den neuesten Sync Client. Ich hab meine Zertifikate auf Letsencrypt umgestellt und die werden von älteren Java Versionen wie zB auf dem Raspi nicht akzeptiert. Dafür gibt es einen Workaround in den späteren Versionen.

Um das zu verhindern kannst du auch das Skript nutzen das ich in die Anleitung geschrieben hab. Dann bekommst du immer die neueste Version des Client ohne Funktionsunterbrechung.

Danke für den Kaffee :)

VG
Raspberry Pi | Homematic Komponenten | Brennenstuhl Funksteckdosen | homebridge
http://fhemwidget.de.tasior.de
Slack: fhemwidget.slack.com
https://itunes.apple.com/us/app/fhem-widget-2/id1169530472?l=de&ls=1&mt=8

HaPeRiebmann

Achja, beide Wege nutzen https
Raspberry Pi | Homematic Komponenten | Brennenstuhl Funksteckdosen | homebridge
http://fhemwidget.de.tasior.de
Slack: fhemwidget.slack.com
https://itunes.apple.com/us/app/fhem-widget-2/id1169530472?l=de&ls=1&mt=8

robman

Die jetzige Version gefällt mir (als stiller Leser) sehr gut!

Fhemschorsch

Zitat von: HaPeRiebmann am 13 November 2016, 19:44:02
Hi,

Probier mal den neuesten Sync Client. Ich hab meine Zertifikate auf Letsencrypt umgestellt und die werden von älteren Java Versionen wie zB auf dem Raspi nicht akzeptiert. Dafür gibt es einen Workaround in den späteren Versionen.

Um das zu verhindern kannst du auch das Skript nutzen das ich in die Anleitung geschrieben hab. Dann bekommst du immer die neueste Version des Client ohne Funktionsunterbrechung.

Danke für den Kaffee :)

VG

OK, danke für die Info.

Ich hab jetzt SSL mit einem selbst signierten Zertifikat installiert sowie die letzte Version des Sync Clients (v21) heruntergeladen. Ich krieg es leider nicht hin. Ich habe schon den Common Name meines Zertifikates benannt (fhem) und meine IP in der /etc/hosts mit dem Namen fhem eingetragen. Aber das Java-Skript meckert immer noch:
pi@raspberrypi:~ $ java -jar FHEM_Sync_Client.jar -v -url=https://fhem:8083
==============================
FHEM Sync Client Build 21
Verbose on
FHEM URL: https://fhem:8083
Room:

Getting all Devices using: https://fhem:8083/fhem?cmd=jsonlist2&XHR=1
Error 13: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target


Nu ists erst einmal zu spät zum Weitermachen...

HaPeRiebmann

OK, jetzt bin ich verwirrt.

Ich habe auf AWS neue Zertifikate installiert und musste deswegen den Client anpassen. Das hat mit deinem FHEM nix zu tun. Der Client unterstützt auch kein ssl zum FHEM weil ich davon ausgehe dass der Client auf der selben Büchse oder zumindest im selben Netz läuft weshalb ich nur http unterstütze.

Du hattest vorher Client Build 17. Da war die Änderung nicht enthalten. Das einzige was du tun musstest ist auf 21 zu gehen.
Wenn du das "s" aus der URL im Aufruf wieder raus nimmst und der Port auf http antwortet dann sollte es funktionieren.

Nochmal zum Überblick:

FHEMWidget2 <==https==> AWS Server <==https==> FHEMSyncClient <==http==> FHEM
Raspberry Pi | Homematic Komponenten | Brennenstuhl Funksteckdosen | homebridge
http://fhemwidget.de.tasior.de
Slack: fhemwidget.slack.com
https://itunes.apple.com/us/app/fhem-widget-2/id1169530472?l=de&ls=1&mt=8

Fhemschorsch

Huch? :-)
Ich habe das so verstanden, dass der Weg bis in meinen FHEM hinein nur noch per SSL funktioniert. Mein Fehler!

Ich check das heute Abend und gebe dann (hoffentlich) Erfolgsmeldung.

Danke für den Support

kvo1

Hallo Zusammen,

hat jemand ein Beispiel für eine Jalousie (Sliderfunktionalität) ?
RPi1: mit CUL: HM-CC-RT-DN,HM-ES-PMSw1-Pl,HM-LC-BL1-FM,HM-LC-Bl1PBU-FM,HM-LC-SW1-PL2,HM-SCI-3-FM,HM-SEC-SC-2,KFM-Sensor
RPi2: Viessmann(optolink) mit 99_VCONTROL.pm,
Cubietruck: Wheezy / Apache / Owncloud
Cubietruck: Armbian(Jessie) / fhem 5.7 / LMS 7.9
RPi3: (Test) mit 7" Touch  &  HM-MOD-RPI-PCB

HaPeRiebmann

Hi,

einen Slider gibt es nicht, horizontales schieben in den Widgets funktioniert nicht so gut.
Es gibt deswegen eine Segmented Control. Die Darstellung passt sich automatisch an die Anzahl der erlaubten Werte an. Also wenn du "oben, unten" definierst dann ist es ein Schalter, wenn du "0,25,50,75,100" definierst dann kommt ein Segmented.

VG
Raspberry Pi | Homematic Komponenten | Brennenstuhl Funksteckdosen | homebridge
http://fhemwidget.de.tasior.de
Slack: fhemwidget.slack.com
https://itunes.apple.com/us/app/fhem-widget-2/id1169530472?l=de&ls=1&mt=8

kvo1

Hallo Michael,
danke / Schade  ;)

Habe das mal so wie von Dir beschrieben umgesetzt. Leider habe ich noch ein kleines Problem.

attr AZ_Rollladen fhem_widget_command {"controlled_attribute":"pct","allowed_values":["0","25","50","75","100"],"order":3}

Damit bekomme ich ein Sgement mit  -  |  100 | +   (100 entspricht ganz offen)

Wenn ich jetzt - drücke fährt das Teil ganz zu, wollte aber (wenn offen) dann nur 75 und beim nächsten - 50  u.s.w.
Habe ich da einen Denkfehler / Konfigfehler

danke

kvo1



alles in Allem aber ne coole App, habe mal die 1.6.x gekauft!
RPi1: mit CUL: HM-CC-RT-DN,HM-ES-PMSw1-Pl,HM-LC-BL1-FM,HM-LC-Bl1PBU-FM,HM-LC-SW1-PL2,HM-SCI-3-FM,HM-SEC-SC-2,KFM-Sensor
RPi2: Viessmann(optolink) mit 99_VCONTROL.pm,
Cubietruck: Wheezy / Apache / Owncloud
Cubietruck: Armbian(Jessie) / fhem 5.7 / LMS 7.9
RPi3: (Test) mit 7" Touch  &  HM-MOD-RPI-PCB

HaPeRiebmann

Hi,

Die 100 in der Mitte sollte eigentlich den aktuellen Stand darstellen wie er ausgelesen wurde. Wenn du dann - drückst sollte der Wert zurückgehen und das Gerät sich bewegen.

Ich hoffe du hast gelesen dass die 1.6 keine neuen Festures erhält
Raspberry Pi | Homematic Komponenten | Brennenstuhl Funksteckdosen | homebridge
http://fhemwidget.de.tasior.de
Slack: fhemwidget.slack.com
https://itunes.apple.com/us/app/fhem-widget-2/id1169530472?l=de&ls=1&mt=8

Fhemschorsch

Zitat von: Fhemschorsch am 15 November 2016, 08:46:40
Huch? :-)
Ich habe das so verstanden, dass der Weg bis in meinen FHEM hinein nur noch per SSL funktioniert. Mein Fehler!

Ich check das heute Abend und gebe dann (hoffentlich) Erfolgsmeldung.

Danke für den Support

Läuft wieder, vielen Dank nochmal für die Aufklärung!