Neues Modul für Hyperion Server 98_Hyperion.pm

Begonnen von DeeSPe, 29 Juni 2016, 18:54:18

Vorheriges Thema - Nächstes Thema

Schlimbo

Mann bist du schnell. Vielen dank für den tollen Support und die schnell Umsetzung.
Funktioniert jetzt ohne Probleme.

DeeSPe

Zitat von: Schlimbo am 21 November 2016, 21:26:46
Mann bist du schnell. Vielen dank für den tollen Support und die schnell Umsetzung.
Funktioniert jetzt ohne Probleme.

Ich teste ja selbst auch gerade noch mit der neuen Version und weiß somit auch wie weit ich getestet habe. 8)

Soweit ich das bisher sehe funktioniert das jetzt tadellos mit den Custom-Effects.
Wenn keine "Gegenwehr" kommt, dann riecht das ja schon fast nach Check-in. 8) 8)

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

DeeSPe

Ich habe die Version in diesem Beitrag noch einmal aktualisiert.

Da es selbst mich als Entwickler genervt hat die Custom Effects manuell anzulegen (gerade beim vielen Testen nervt das), habe ich dem Modul noch einen neuen set Befehl hinzugefügt (addEffect).
Mit diesem ist es möglich einen Custom Effect mit den aktuellen Einstellungen und mit dem übergebenen Namen im Attribut hyperionCustomEffects anzulegen. Das entsprechende JSON wird automatisch generiert und dem Attribut hyperionCustomEffects hinzugefügt. Somit brauch man nur noch manuell die args anzupassen und ist fertig.
Damit das funktioniert muss Hyperion im Effekt Modus mit einem nicht-eigenen Effekt sein und der übergebene Name muss ein einmaliger Effektname sein.

Viel Spaß beim Testen.

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

DeeSPe

#363
Habe noch einmal die Version in diesem Beitrag aktualisiert.

Statt Leerzeichen zwischen den einzelnen JSON Srings im Attribut hyperionCustomEffects können nun auch Zeilenumbrüche benutzt werden. Das erhöht die Les- und Editierbarkeit.
Beim Speichern des Attributs hyperionCustomEffects und vor dem Übernehmen der eigenen Effekte werden dann diese Zeilenumbrüche herausgefiltert und gegen Leerzeichen ersetzt. Im Attribut hyperionCustomEffects bleiben die Zeilenumbrüche natürlich erhalten.

Gruß
Dan

EDIT: addEffect fügt vor dem nächsten Effekt auch automatisch einen Zeilenumbruch ein.
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

DeeSPe

Hatte schon jemand die Zeit das Modul zu testen?
M.E. ist es soweit fehlerfrei und könnte eingecheckt werden, hätte nur gern noch vorher von jemand anderes ein möglichst positives Feedback. 8)

Gruß
Dan

P.S. Mir selbst fallen gerade auch keine sinnvollen neuen Features ein die noch in das Modul könnten...
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

Schlimbo

Da die neue Version nur ein mal heruntergeladen wurde, bin ich denke ich der einzige der sie momentan nutzt ;D
Läuft bei mir ohne Probleme!

DeeSPe

Na das ist doch schon mal eine positive Rückmeldung. Danke dafür! ;)

Hab doch eben noch einen kleinen Bug gefunden. Der muss allerdings schon immer im Modul gewesen sein, ist scheinbar nur niemandem aufgefallen! Es lassen sich nämlich keine Effekte mit Bindestrich im Namen setzen, z.B. X-Mas.
Habe es noch gefixt, kommt dann im offiziellen Update.
Schaue jetzt noch einmal den geänderten Code durch und werde das Modul dann einchecken.

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

DeeSPe

Der letzte Qualitätscheck ergab keine Mängel mehr.
Habe das Modul jetzt eingecheckt.
Es ist somit ab sofort via SVN oder ab heute Vormittag im regulären FHEM verfügbar.

Changelog:

  • Fehler mit clear behoben
  • Fehler mit Setzen von Effekten mit Bindestrich im Namen behoben
  • Setzen der Effekte erweitert um als letztes Argument die Effektargumente als JSON String zu übergeben
  • neues Reading effectArgs
  • neues Attribut hyperionCustomEffects um eigene Effekte anzulegen (leerzeichengetrennte Liste von JSON Strings)
  • neuer set Befehl addEffect um einen Custom Effekt mit den aktuellen Einstellungen im Attribut hyperionCustomEffects hinzuzufügen
  • weitere kleine Verbesserungen
  • commandref angepasst

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

Bootscreen

Moin,

ich habe heute meinen Server vom Raspberry PI mit Debian auf mein HP Proliant mit FreeNAS (FreeBSD) umgezogen. Da ich so einiges noch nach installieren und fixen musste ist mir eines im Log aufgefallen:
2016.11.26 14:59:31 1: PERL WARNING: Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/^{"name":"[a-zA-Z0-9_-]+","oname":"[a-zA-Z0-9_-]+","args":{ <-- HERE [a-zA-Z0-9:_\[\]\.",-]+}}([\s(\r\n)]{"name":"[a-zA-Z0-9_-]+","oname":"[a-zA-Z0-9_-]+","args":{[a-zA-Z0-9:_\[\]\.",-]+}}){0,}$/ at ./FHEM/98_Hyperion.pm line 825.
2016.11.26 14:59:31 1: PERL WARNING: Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/^{"name":"[a-zA-Z0-9_-]+","oname":"[a-zA-Z0-9_-]+","args":{[a-zA-Z0-9:_\[\]\.",-]+}}([\s(\r\n)]{"name":"[a-zA-Z0-9_-]+","oname":"[a-zA-Z0-9_-]+","args":{ <-- HERE [a-zA-Z0-9:_\[\]\.",-]+}}){0,}$/ at ./FHEM/98_Hyperion.pm line 825.


vllt kannst du dir das nochmal anschauen? Vllt ist das auch ne komische eigenheit von FreeBSD. Regex auf unterschiedlichen System läuft ja leider meist auch immer unterschiedlich

Gruß
Oliver
Gruß
Oliver

FHEM 5.7 Hardware:
Raspberry PI B+ | HomeMatic USB 2 | 433Mhz Sender (pilight) | nanoCUL (433Mhz)

DeeSPe

#369
Danke für die Rückmeldung.
Sogar die Warnmeldung sagt was ihr nicht passt, bin begeistert!!! ;)

Probiere mal bitte die angehängte Version ob die Warnung da auch noch kommt.

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

Bootscreen

teste ich gleich. bin grad noch an einem andrem Problem. Ich meld mich nach dem Test.
Gruß
Oliver

FHEM 5.7 Hardware:
Raspberry PI B+ | HomeMatic USB 2 | 433Mhz Sender (pilight) | nanoCUL (433Mhz)

Bootscreen

sieht besser aus, zumindest vom Lof. Ob es auch noch funktioniert kann ich aber erst heut abend sagen.

Was mir noch aufgefallen ist. Seitdem ich das Modul IO::Socket::Multicast für fakeRoku installiert hatte, hatte ich es manchmal das sich FHEM beim starten an der stelle wo er hyperion läd aufgehängt hat. Ich musste dann immer in die Datenbank gehn und FHEM dort auf disable=1 setzen damit FHEM wieder gestartet ist. Ich werde mal beobachten ob das jetzt auf dem neuem Server immernoch so ist.
Gruß
Oliver

FHEM 5.7 Hardware:
Raspberry PI B+ | HomeMatic USB 2 | 433Mhz Sender (pilight) | nanoCUL (433Mhz)

DeeSPe

Zitat von: Bootscreen am 26 November 2016, 17:43:00Was mir noch aufgefallen ist. Seitdem ich das Modul IO::Socket::Multicast für fakeRoku installiert hatte, hatte ich es manchmal das sich FHEM beim starten an der stelle wo er hyperion läd aufgehängt hat. Ich musste dann immer in die Datenbank gehn und FHEM dort auf disable=1 setzen damit FHEM wieder gestartet ist. Ich werde mal beobachten ob das jetzt auf dem neuem Server immernoch so ist.

Das klingt merkwürdig.
Das Hyperion Modul benutzt zur Kommunikation mit dem JSON Server ausschließlich DevIo.

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

DeeSPe

Hab das Update welches die RegEx Warnung behebt soeben eingecheckt.

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

Schlimbo

Hallo Dan,
mir ist gerade aufgefallen, dass "mode_before_off" nie auf "clearall" wechselt und somit auch das toggle zwischen "off" und "clearall" nicht funktioniert.
Setze ich "clearall", wechselt der aktuelle Modus auf "off" und nicht, wie erwartet auf "clearall".
Könntest du das bitte noch mal kontrollieren?

Des weiteren ist mir noch etwas unverständliches bei dem Reading "priority" aufgefallen:
Ich habe das Attribut "hyperionDefaultPriority" auf 99 gesetzt, so sollte beim steuern über das Modul ja alles mit priority 99 eingestellt werden, setze ich aber ein "clearall" ab, steht im Reading "122". Woran kann das liegen?

Und noch ein Wunsch:
Wenn ich es richtig verstanden habe werden beim "set Hyperion off" die LEDs einfach auf RGB 000000 gesetzt, oder? Aufgrund das dies auch mit DefaultPriority gesetzt wird, hat dies aber keinen Einfluss auf Einstellungen, die mit einem niedrigeren priority Wert gesetzt wurden. Spricht etwas dagegen "off" immer mit der höchste n Priorität (0) abzusetzen, damit bei "off" wirklich alles aus geht!?

Gruß Schlimbo