Blue Flower

Trigger für dieses Update war das anstehende Update auf LoxBerry v2.0 - da wollte ich vorab die Kompatibilität des Plugins sicherstellen.
Dabei habe ich auch gleich das bekannte Problem behoben, dass Umlaute in Bereichsnamen nicht korrekt verarbeitet wurden.
Ansonsten gab es kleinere Optimierungen hinsichtlich Logging und Fehlererkennung.

Vollständiges Changelog:
2019-10-31 Release v0.04

  • Vorbereitung auf LoxBerry v2.0
  • Umlaute in den Bereichsnamen der MIYO-App möglich
  • kleinere Optimierungen hinsichtlich Logging und Fehlererkennung und -behebung
    (Rechte Logfiles, fehlende Python-Module: Reparatur über service.sh repair möglich)
  • miyoplugin.service und andere Files nun ohne x-Rechte
  • Konstante maxdev in index.cgi eingeführt für mehr als 10 Kreise/Ventile/Sensoren
  • postroot.sh: service.sh restart raus; dafür repair rein
  • postupgrade.sh: service.sh restart rein
  • wsconnected=False als default; running=0-Meldung nur noch wenn Websocket offen war
  • Start-/Stopmeldungen des Plugins nun in allen konfigurierten Logfiles
  • Info-Meldungen im Haupt-Logfile (logfile/UDP-Sende-Log) zentralisiert

Nach sechswöchigem Testlauf hier nun also die neue Version v0.03 des MIYOplugin. Vorallem Probleme hinsichtlich der Debugging-Möglichkeiten und des Logging wurden behoben.

Vollständiges Changelog:
2019-07-15 Release v0.03

  • log-Dateien wurden nach Loeschen (etwa durch logrotate) nicht weitergeschrieben?
    vorn: import logging.handlers und in setup_logger statt
    handler = logging.FileHandler(log_file) jetzt handler = logging.handlers.WatchedFileHandler(log_file)
  • max 10 als Konstante maxdev
  • prgname und prgver als Konstante
  • sndPrint und logPrint enthaelt nun "### "
  • Variable "gefunden" ist useless - entfernt
  • nach Neustart des LoxBerry fehlt das systemctl import-environment 
    in miyoplugin.service: EnvironmentFile=/etc/environment eingefuegt
  • nach Neustart des LoxBerry konnten die Log-Files nicht geschrieben werden
    in miyoplugin.service After=loxberry.service eingetragen
    wenn ein Plugin (hier BLE-Scanner) Probleme macht, meldet LoxBerry keinen erfolgreichen Start - somit wird miyoplugin NIE gestartet - finale Loesung ist offenbar: After=multi-user.target

2, 3 kleinere Fehler sind mir nach Veröffentlichung der ersten Version aufgefallen, die nunmehr behoben sind.
So stimmte das Mapping für die Sensoren bei der Erstellung der Loxone-Vorlage nicht - was dafür sorgte das in dieser Vorlage die Sensor-spezifischen virtuellen Eingänge wie moisture, brightness und temperature fehlten. Ärgerlich!
Auch wurde im Config-File unnötigerweise die interne Gerätenummer an die ipv6-Adresse angehängt.
Am Update-Mechanismus habe ich im Zuge des ersten Updates nochmal Hand angelegt, damit etwaige Fehlermeldungen im Apache-Log unterdrückt werden.

Als neue Funktionen gibt es ab v0.02 nun die Möglichkeit, die externe Sperre externBlock remanent zu setzen. Und um einen Neustart des Plugins/Cubes festzustellen, meldet das Plugin nun seinen eigenen Start bzw. Status auch per UDP an das Zielsystem. Dies ist hilfreich, falls man etwa den Status in einem Tracker visualisieren möchte.

Komplettes Changelog:
2019-05-29 Release v0.02
Remanenz des externBlock-Status eingeführt (EXT_REM)
Fehler beim Speichern der ipv6-Adresse im Conf-File behoben
plugin.cfg: LB_MINIMUM auf 1.0.0 angepasst
Plugin meldet nun Start und Stop des Plugins per UDP (SID=MIYOcentral running=1/0)
Fehler in der Loxone-Vorlage bei den Sensor-Eingängen behoben
running, updated, forecast und temperature nun auch Bestandteil der Loxone-Vorlage
Update-Funktion des Plugins modifiziert; daemon-reload sollte nun korrekt funktionieren

Die Web-Seiten sind bzgl. der neuen Funktionen inhaltlich - inkl. Screenshots - aktualisiert.
Viel Spaß mit der neuen Version!

Die erste öffentliche Version ist nun zum Download freigegeben.

Nach knapp vier Monaten Nebenher-Entwicklung und diversen Kämpfen mit Python, Perl, Javascript, Bash und html, Einarbeitung in Joomla, Kennenlernen von Share-X, Nutzung von Wireshark und tPacketCapture, etwas Grafik- und Videobearbeitung und zahlreichen langen Nächten und vielen, vielen Versuchen und Tests und dem Schreiben einer hoffentlich hilfreichen Anleitung traue ich mich nun, eine erste Version des MIYOplugin online zu stellen.
Ich hoffe, ihr habt ähnlich viel Freude daran wie ich an der Entwicklung.

Das LoxBerry-Plugin findet sich zusätzlich im offiziellen Plugin-Archiv:

https://www.loxwiki.eu/display/LOXBERRY/MIYOplugin

Ein Thread zu Fragen, Wünschen, Problemen etc. ist im Loxforum eingerichtet:

https://www.loxforum.com/forum/projektforen/loxberry/plugins/201277

Dort lese ich mit und kann ggf. helfen.

Gruß, Oliver

 

Die Pakete für die LoxBerry- wie auch für die generic-Installation sind fertiggestellt und auch die Dokumentation sollte soweit stimmig sein.

Ein knapp 4-minütiges Video zeigt nun auch die Installation des Plugins für den LoxBerry.

Die Bilder auf der Website wurden nochmals aktualisiert um den letzten Stand zu zeigen.

Wenn ich jetzt nicht noch etwas Unerwartetes finde, gehen die Download-Pakete am Wochenende online.