FHEM Wdget (iOS)

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

Vorheriges Thema - Nächstes Thema

HaPeRiebmann

Nein ich muss die Verschlüsselung noch in die App einbauen. Es kommunizieren derzeit beide in Klartext mit dem Server aber letzterer ist https terminiert. Diese Terminierung läuft über den LB bei AWS. Das ist mir aber zu teuer dafür dass es ein Hobby ist.

Pubnub schau ich mir mal an. Schaut aber auf den ersten Blick so aus als ob ich da die Architektur stark ändern müsste.

Ich werd eher den Weg gehen dass ich den LB und https abschalte und den Inhalt direkt AES verschlüsselt übertrage mit Passworteingabe an beiden Enden.
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

pipp37

Alles klar.
Danke für die ausführlichen Infos.

Wenn du Pubnub  in Zukunft nutzen würdest und  auch Perl magst, könntest du  den Sync-Client gleich in Fhem als Modul machen. Das wäre ein schönes Lernprojekt für die kommenden Schlechtwettertage. ;) ;)

Aber ich bin schon froh, wenn du den Sync-Dienst nicht abstellst.
LG
Vmware-ESX-VM-Ubuntu 16.04 Docker Main-FHEM -> Raspberry Pi-B ser2net
HMLAN mit HomeMatic, Busware SCC433 stacked SCC868 (culfw), Jeelink, MAX Heizkörperthermostate, Enigma2 (Vudo2/DM800SE), Philips 55" Ambilight PHTV - WMBUS EnergyCam+Engelmann FAW, Intertechno-Komponenten, Ubiquiti mPower

Stappsen

Hallo,
ich nutze die App seit einiger Zeit, bin aber erst jetzt dazu gekommen, den Push-Sync zu nutzen.

Kurz gesagt: genial :-)

Auch wenn der Dienst etwas kostet, wäre ich bereit dafür zu bezahlen.
Alternativ: Wird es die Server-Version als download geben, dass man ggf. selbst einen Server betreiben kann?

Freue mich auf jedes weitere Update


Viele Grüße,
Stappsen

oberlon

HTTPS abschalten wird nicht möglich sein. Apple will bald nur noch Apps zulassen die über https kommunizieren.
https://www.heise.de/security/meldung/Apple-erzwingt-HTTPS-in-Apps-3238844.html

HaPeRiebmann

Das Problem hab ich jetzt schon, man muss es derzeit begründen warum man http Verbindungen zulässt. Wenn Apple das wahr macht dann ist auch das FHEM Widget tot, hat ja nicht jeder ssl auf seinem FHEM Server laufen. Ist auch im abgeschlossenen privaten Netz wenig sinnvoll.
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

oberlon

Wer heute kein SSL/TLS nutzt ist selbst schuld.
Spätestens mit dem Start von letsencrypt sollte diese Hürde leicht zu überwinden sein.
Daheim benutze ich teils selfsigned und immer mehr
https://github.com/lukas2511/dehydrated
Sehr einfaches Bash Script, wenig Konfiguration.

HaPeRiebmann

Deswegen ja der ELB...

ich hab mal auf LetsEncrypt umgestellt und damit ist der SyncServer wieder mit ssl erreichbar. Der Client kann jetzt aber die
sun.security.validator.ValidatorException
werfen.

Hier ggf. auf die neueste VM updaten. Manche VMs akzeptieren keine letsencrypt Zertifikate.
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

So, jetzt kann er die auch nicht mehr werfen. App Version 1.5 ist grade in Entwicklung. Es kommen kleine Bugfixes und die iOS 10 Anpassungen.
Der Sync hat die Beta verlassen.
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

pipp37

https://forum.fhem.de/index.php/topic,58199.0.html

Hallo.
Wie versprochen ist nun die Logik des Java-Sync-Client unter dem angeführten Link zu finden.

Das Tool startet den Java Sync Client für das iOS Widget und lädt ggf. eine neue Version vom Server und installiert und startet diese automatisch.
Weiters wird das Laden des Clients nur pro Stunde 1x gemacht um bei etwaigen Fehlern nicht einen hohen Datentransfer durch die ständigen Download zu generieren.
Es wird angenommen, dass sich FHEM am selben Server befindet. Diese Einstellungen können in den Variablen am Anfang des Scripts einfach geändert werden.

Der Client steht dabei unter der Kontrolle des supervisord.

Vmware-ESX-VM-Ubuntu 16.04 Docker Main-FHEM -> Raspberry Pi-B ser2net
HMLAN mit HomeMatic, Busware SCC433 stacked SCC868 (culfw), Jeelink, MAX Heizkörperthermostate, Enigma2 (Vudo2/DM800SE), Philips 55" Ambilight PHTV - WMBUS EnergyCam+Engelmann FAW, Intertechno-Komponenten, Ubiquiti mPower

HaPeRiebmann

Cool, verstehe ich das richtig, dass der den Prozess auch neu startet wenn der Client selbst beendet? Ich habe einen Check eingebaut, dass der Client, wenn er zu alt ist, sich selbst beendet. Das war mit dem Hintergrund, dass das Skript mit dem er gestartet wird, die neueste Version zieht und neu startet.
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

pipp37

#175
Ja genau. Als du vom Java-Client v19 auf v20 upgedated hast, ging das automatisch.

Wenn du den Bash Script mit kill beendest, wird auch der Java Child Process beendet und supervisord startet den Bash Script neu.

Sollte sich der Java Process beenden, wird nach Updates gesucht und ggf. eingespielt.
Und das nur 1x Pro Stunde.
Lg


Gesendet von iPhone mit Tapatalk
Vmware-ESX-VM-Ubuntu 16.04 Docker Main-FHEM -> Raspberry Pi-B ser2net
HMLAN mit HomeMatic, Busware SCC433 stacked SCC868 (culfw), Jeelink, MAX Heizkörperthermostate, Enigma2 (Vudo2/DM800SE), Philips 55" Ambilight PHTV - WMBUS EnergyCam+Engelmann FAW, Intertechno-Komponenten, Ubiquiti mPower

HaPeRiebmann

So, die 1.5 ist raus.
Ich hab auch schon Rückmeldung bekommen, dass bei manchen Geräten nach dem Update die Geräte heiß laufen oder die App abstürzt. Ich kann den Fall bei mir bisher nicht reproduzieren. Wer das hat, einfach mal mir per PN euren jsonlist2 Output schicken. Aber bitte OHNE Usernames und Passwörter.
Da scheint irgendwas mit den JSONs und Swift3 nicht zu passen.
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

Fehler gefunden, App ist in Review. Das sollte die Prozessorlast wieder auf ein Minimum reduzieren
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

Kurt77

Hallo,
ich bekomme im Log den Fehler
The attribute fhem_widget_command was not found anywhere


Der Befehl jsonlist2 NdrInfoEin bringt folgendes Ergebnis:

{
  "Arg":"NdrInfoEin",
  "Results": [
  {
    "Name":"NdrInfoEin",
    "PossibleSets":" ",
    "PossibleAttrs":"verbose:0,1,2,3,4,5 room group comment:textField-long alias eventMap userReadings readingList setList event-on-change-reading event-on-update-reading
event-aggregator event-min-interval stateFormat fhem_widget_command userattr",
    "Internals": {
      "NAME": "NdrInfoEin",
      "NR": "69",
      "STATE": "Sonos_Kueche StartRadio NDR%20Info",
      "TYPE": "dummy"
    },
    "Readings": {      "state": { "Value":"Sonos_Kueche StartRadio NDR%20Info", "Time":"2016-10-02 14:08:10" }    },
    "Attributes": {
      "fhem_widget_command": "{\"allowed_values\": [\"on\"]}",
      "room": "FHEM_Widget"
    }
  }  ],
  "totalResultsReturned":1
}

Kann jemand helfen?
Danke,
Gruß Kurt

HaPeRiebmann

Hi,

Im FHEM Widget kannst du nur den Raum angeben, kein einzelnes Device. Schreib mal den Raum rein und schau dann in das Log.
Vielleicht schaust du auch mal ob dir die App den Akku leersaugt, dann bist du nämlich auch ein Opfer von SwiftyJSONs Endless Loop. Der sorgt dafür dass die Analyse manchmal nicht fertiggestellt werden kann.

Die App sollte heute gereviewed werden.
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