Skip to content

SmartHomeNG Ideen für kommende Releases

bmxp edited this page Oct 3, 2019 · 18 revisions

Ideen für neue Features für das Release 1.7 (und danach)

Es handelt sich hier um Ideen. Es ist nicht garantiert, dass alle diese Features ihren Weg in diese SmartHomeNG Version finden. Einige Features schaffen es vielleicht erst in spätere Releases oder stellen sich als nicht umsetzbar heraus.

Core

  • Core rework: Weitere Methoden von bin/smarthome in die entsprechenden libs (lib.item, lib.plugin, ...) verschieben
  • Prüfung der Python Requirements vor dem Systemstart
  • Neue Netzwerk Library (lib.network), API festlegen und Umstellen von Plugins
  • Items zur Laufzeit erstellbar, umbenennbar und löschbar machen
  • Schreibender Zugriff auf Konfigurationsdateien (yaml) - Bisher ist ein schreibender Zugriff nur für /etc/logic.yaml über das neue Logics-API implementiert.
  • Mac OS + Windows Kompatibilität für SmartHomeNG Dazu Erweiterung der plugin.yaml um bestimmte Plattformen auszuschliessen. Beispiel: Ein Plugin das GPIO des Raspi nutzt, wird nicht auf einem normalen Linux, Mac oder Windows ohne GPIO laufen.
  • Reload Möglichkeit der Logging Konfiguration zur Laufzeit

Module

Admin Interface

  • Items:
    • Items zur Laufzeit erstellen, umbenennen und löschen
    • Items "abonnieren"
  • Logiken:
    • Anzeige- u. Editiermöglichkeit für User-Parameter
  • Plugins:
    • Neues Websocket Plugin, welches nicht nur 1 Anfrage zur Zeit bearbeiten kann
  • Szenen:
    • Reload Möglichkeit für Szenen
    • Editor für Szenen Konfiguration
    • Anlegen und Löschen von Szenen
  • Logging:
    • Weitere Konfiguration des Loggings

Ein Plugin mit dem Proof of concept existiert bereits für das Live Testen von

  • Python eval Ausdrücken und
  • Python Logik Code

Müsste nach Test nur in Admin Interface überführt werden. Wichtig: Sicherheitskritisch weil über einen einfachen Aufruf fast alles mit SmartHomeNG gemacht werden kann.

http

  • Absicherung der Webinterfaces der Plugins um JSON Web Token erweitern (damit man da nicht per Basic Auth nochmal anmelden muss)

mqtt

  • Neues Modul, um die Kernfunktionalität von MQTT für mehrere Plugins zugänglich zu machen; MQTT v5 Kompatibilität

database

  • Neues Modul, um Funktionen für den Zugriff auf Datenbanken bereitzustellen (lib/db.py wird zum Modul, das database-Plugin wird es dann nutzen)
  • Daten ausdünnen aus Datenbanken, automatisiert oder per Webinterface

Plugins

  • SNMP Plugin - Simple Network Management Protocol

    Implementierung z.B. durch pysnmp. Soll das Plugin andere Geräte überwachen wie z.B. Router, Server, Drucker etc. oder selbst Informationen über SHNG bereitstellen?

Ideen für neue Features für das Release 1.x

Core

Ideen für neue Features für das Release 2.0

Version 2.0 wird als Major Release mit einigen Traditionen brechen und wird einige alte Zöpfe abschneiden, die aus Kompatibilitätsgründen noch vorhanden sind.

Es handelt sich hier um Ideen. Es ist nicht garantiert, dass alle diese Features ihren Weg in diese SmartHomeNG Version finden. Einige Features schaffen es vielleicht erst in spätere Releases oder stellen sich als nicht umsetzbar heraus.

Core

  • Konfigurationen im conf-Format werden nicht mehr unterstützt, yaml-Format wird zwingend