Ankündigung

Einklappen
Keine Ankündigung bisher.

Neues Plugin: UZSU (Universelle Zeitschaltuhr)

Einklappen
Dieses Thema ist geschlossen.
X
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • 2ndsky
    antwortet
    Zitat von WoDeep Beitrag anzeigen
    PS: ich habe gerade festgestellt, dass wenn ich nur

    " sh.EG.Sleeping.Spot.OnOff.uzsu()" eingebe, dann gibt er mir wie es scheint zurück was gerade in der uzsu eingestellt ist.

    Kann das jemand bestätigen??
    Logo, mit leerer Klammer rufst du den Getter des Items auf, was im Fall des UZSU Items eben das ist, was du zuvor reingeschrieben hast.

    Einen Kommentar schreiben:


  • WoDeep
    antwortet
    ich habe übrigens noch etwas gefunden..

    ich habe mal smarthome im debug gestartet...

    hier sieht man, dass das plugin nicht richtig gestartet wird.


    Ich habe es ganz normal von der Seite gedownloaded und in den Ordner "/usr/smarthome/plugins/uzsu" kopiert.

    Name: __init__.py

    Inhalt: (Auszug)

    Code:
    <!DOCTYPE html>
    <html class="   ">
      <head prefix="og: http://ogp.me/ns# fb: http://ogp.me/ns/fb# object: http://ogp.me/ns/object# article: http://ogp.me/ns/article# profile: http://ogp.me/ns/profile#">
        <meta charset='utf-8'>
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        
        
        <title>smarthome/plugins/uzsu/__init__.py at develop · mknx/smarthome · GitHub</title>
        <link rel="search" type="application/opensearchdescription+xml" href="/opensearch.xml" title="GitHub" />
        <link rel="fluid-icon" href="https://github.com/fluidicon.png" title="GitHub" />
        <link rel="apple-touch-icon" sizes="57x57" href="/apple-touch-icon-114.png" />
        <link rel="apple-touch-icon" sizes="114x114" href="/apple-touch-icon-114.png" />
        <link rel="apple-touch-icon" sizes="72x72" href="/apple-touch-icon-144.png" />
        <link rel="apple-touch-icon" sizes="144x144" href="/apple-touch-icon-144.png" />
        <meta property="fb:app_id" content="1401488693436528"/>
    
    
    usw......
    Es kommt folgende Fehlermeldung beim hochfahren im Debug-Modus:

    Code:
    2014-06-16 14:49:36,613 DEBUG    Main         Plugin: uzsu -- plugin.py:__init__:43
    2014-06-16 14:49:36,620 ERROR    Main         Plugin uzsu exception: invalid syntax (__init__.py, line 6) -- plugin.py:__init__:57
    Traceback (most recent call last):
      File "/usr/smarthome/lib/plugin.py", line 53, in __init__
        plugin_thread = Plugin(smarthome, plugin, classname, classpath, args)
      File "/usr/smarthome/lib/plugin.py", line 79, in __init__
        exec("import {0}".format(classpath))
      File "<string>", line 1, in <module>
      File "/usr/smarthome/plugins/uzsu/__init__.py", line 6
        <!DOCTYPE html>
        ^
    SyntaxError: invalid syntax


    Das scheint auch klar zu sein.

    Das ganze ist kein Python-Skript..

    es scheint als hätte bei mir der download nicht das Skript heruntergeladen sondern die homepage?!?! Wie auch immer das geht.

    Habe nun den Inhalt der .py nochmals kopiert... werde es nochmal versuchen!

    Grüße Marc

    Einen Kommentar schreiben:


  • WoDeep
    antwortet
    Zitat von Masterxx Beitrag anzeigen
    Sorry hab kein Plan was du meinst, hilf mir mal bitte auf die Sprüng

    Hi, du hättest meinen post lesen sollen. Da war genau dasselbe..

    du musst smarthome mit "smarthome.py -i" starten. dann hast du die interaktive shell.


    ich bin gerade am testen.

    Danke für das Aufmerksam machen auf meinen Fehler.
    ich schau mal ob es jetzt läuft.

    PS: ich habe gerade festgestellt, dass wenn ich nur

    " sh.EG.Sleeping.Spot.OnOff.uzsu()" eingebe, dann gibt er mir wie es scheint zurück was gerade in der uzsu eingestellt ist.

    Kann das jemand bestätigen??

    Es sah nämlich in der Shell so aus:

    Code:
    >>> sh.EG.Sleeping.Spot.OnOff.uzsu()
    
    {'active': True, 'list': [{'active': True, 'rrule': 'FREQ=DAILY;INTERVAL=2;COUNT=1', 'value': 1, 'time': '19:47'}, {'active': True, 'rrule': 'FREQ=DAILY;INTERVAL=2;COUNT=1', 'value': 0, 'time': '19:50'}]}
    Danke!


    Also... während ich geschrieben habe hätte hier das Licht angehen sollen. Hat leider nicht funktioniert.

    Weiß denn jemand ob ich auslesen kann was die uzsu gerade für eine Zeit annimmt??

    Grüße Marc

    Einen Kommentar schreiben:


  • 2ndsky
    antwortet
    wo gibst du denn den Befehl sh.EG.AZ.... ein?

    Einen Kommentar schreiben:


  • Masterxx
    antwortet
    Zitat von 2ndsky Beitrag anzeigen
    interaktiver Modus? Versuch es mal mit dem CLI Plugin. Vielleicht hat der interaktive Modus Probleme mit bestimmten Zeichen und die sollten eigentlich escaped werden. Ich habe es über das CLI Plugin getestet, da hat es funktioniert.
    Sorry hab kein Plan was du meinst, hilf mir mal bitte auf die Sprüng

    Einen Kommentar schreiben:


  • 2ndsky
    antwortet
    interaktiver Modus? Versuch es mal mit dem CLI Plugin. Vielleicht hat der interaktive Modus Probleme mit bestimmten Zeichen und die sollten eigentlich escaped werden. Ich habe es über das CLI Plugin getestet, da hat es funktioniert.

    Einen Kommentar schreiben:


  • Masterxx
    antwortet
    Uzsu

    Hallo Leute

    ich bekomme immer die selbe Fehlermeldung und finde keinen Lösungsansatz

    sh.EG.AZ.Deckenlicht.uzsu({'active':True, 'list':[{'value':1, 'active':True, 'rrule':'FREQ=DAILY;INTERVAL=2;COUNT=5', 'time': '12:30'},{'value':0, 'active':True, 'rrule':'FREQ=DAILY;INTERVAL=2;COUNT=5', 'time': '12:32'}]})

    Fehler: -bash: syntax error near unexpected token `{'active':True,'

    item:
    [EG]
    [[AZ]]
    [[[Deckenlicht]]]
    type = bool
    visu_acl = rw
    knx_dpt = 1
    knx_cache = 2/0/9
    knx_send = 1/0/9
    [[[[uzsu]]]]
    type = dict
    uzsu_item = EG.AZ.Deckenlicht
    cache = True
    visu_acl = rw
    plugin.conf
    [uzsu]

    class_name = UZSU
    class_path = plugins.uzsu
    kann wer helfen ???

    Gruß Jens

    Einen Kommentar schreiben:


  • 2ndsky
    antwortet
    Zitat von schnagges Beitrag anzeigen
    Kannst Du mir sagen wo ich einen Fehler mache?
    Der erste und größte Fehler ist (zumindest was die Fragestellung anbelangt), dass du das hier nicht gelesen hast: https://knx-user-forum.de/smarthome-...rbehebung.html

    Einen Kommentar schreiben:


  • ratzi82
    antwortet
    Zitat von WoDeep Beitrag anzeigen
    meine Items (also Smartvisu.conf) sieht so aus:

    Code:
    [EG]
        [[Sleeping]]
            [[[Spot]]]
                [[[[OnOff]]]]
                type = bool
                visu_acl = rw
                knx_dpt = 1
                knx_listen = 0/5/0
                knx_send = 0/5/0
                knx_init = 0/5/0
                [[[[[uzsu]]]]]
                        type = dict
                        uzsu_item = EG.Sleeping.Spot
                        cache = True

    Versuch es mal so:
    Code:
                [[[[[uzsu]]]]]
                        type = dict
                        uzsu_item = EG.Sleeping.Spot[B][COLOR=Red].OnOff[/COLOR][/B]
                        cache = True
                        [B][COLOR=Red]visu_acl = rw[/COLOR][/B]
    Du hast nicht das vollständige item angegeben.

    Gruß,
    Henning

    Einen Kommentar schreiben:


  • WoDeep
    antwortet
    Hallo Erik,

    hast du denn eine Information dazu noch bekommen oder das Problem dann selbst gelöst?

    ich habe blöderweise zusätzlich das Problem dass bei mir immer die Fehlermeldung:

    " syntax error near unexpected token `{'active':True,'"
    dazu kommt.

    vielleicht hier noch die Syntax:
    Code:
    sh.EG.Sleeping.Spot.uzsu({'active':True, 'list':[{'value':1, 'active':True, 'rrule':'FREQ=DAILY;INTERVAL=2;COUNT=5', 'time': '16:30'},{'value':0, 'active':True, 'rrule':'FREQ=DAILY;INTERVAL=2;COUNT=5', 'time': '17:30'}]})
    In die Plugin.conf habe ich natürlich :
    Code:
     [uzsu]  class_name = [URL="http://redaktion.knx-user-forum.de/lexikon/UZSU/"]UZSU[/URL]  class_path = plugins.[URL="http://redaktion.knx-user-forum.de/lexikon/uzsu/"]uzsu[/URL]
    eingefügt.

    meine Items (also Smartvisu.conf) sieht so aus:

    Code:
    [EG]
        [[Sleeping]]
            [[[Spot]]]
                [[[[OnOff]]]]
                type = bool
                visu_acl = rw
                knx_dpt = 1
                knx_listen = 0/5/0
                knx_send = 0/5/0
                knx_init = 0/5/0
                [[[[[uzsu]]]]]
                        type = dict
                        uzsu_item = EG.Sleeping.Spot
                        cache = True
    was mache ich falsch??


    ich habe ich die Syntax des Beispiels verwendet.


    Vielen Dank schonmal im Voraus!


    EDIT:


    den Syntaxfehler bekomme ich nun natürlich nicht mehr seit ich auch wirkliuch die Interaktive Shell mit smarthome.py -i verwende :-) Bin noch Neuling... vergebt mir.

    Dennoch passiert leider nichts :-(

    Viele Grüße Marc

    Einen Kommentar schreiben:


  • schnagges
    antwortet
    Hallo Niko,

    ich bin auch neu im Geschäft und habe mich heute an die UZSU gewagt. Klappt allerdings nicht so gut. Ich habe daraufhin mal das Internet durchstöbert und konnte aber nichts hilfreiches finden. Deswegen wende ich mich jetzt mal hoffnungsvoll an dich.
    Folgendes habe ich gemacht:

    1.) Deine Anleitung in Git gelesen
    2.) Plugin Verzeichnis "uzsu" unter /usr/smarthome/plugins erstellt
    3.) Dein Plugin von Git hineinkopiert
    4.) Plugin.conf angepasst:
    Code:
     [uzsu]
     class_name = UZSU
     class_path = plugins.uzsu
    5.) smartvisu.conf angepasst:
    Code:
     [schlafzimmer]
             [[beleuchtung]]
                      [[[decke]]]
                            [[[[schalten]]]]
                                      type = bool
                                      visu_acl = rw
                                      knx_dpt = 1
                                      knx_cache = 0/0/6
                                      knx_listen = 0/1/5
                                      knx_send = 0/0/6
                                      knx_init = 0/0/6
                              [[[[[[FONT=Lucida Console][SIZE=2][FONT=Lucida Console][SIZE=2]uzsu[/SIZE][/FONT][/SIZE][/FONT][SIZE=2]]]]]]
                                       type = dict
                                       uzsu_item = schlafzimmer.beleuchtung.decke.schalten
                                       cache=True
     [/SIZE]
    6.) In die Shell folgendes eingetragen und mit ENTER bestätigt:
    Code:
     sh.schlafzimmer.beleuchtung.decke.schalten.[FONT=Lucida Console][SIZE=2][FONT=Lucida Console][SIZE=2]uzsu[/SIZE][/FONT][/SIZE][/FONT][SIZE=2]({'active':True, 'list':[
     {'value':1, 'active':True, 'rrule':'FREQ=DAILY;INTERVAL=2;COUNT=5', 'time': '21:00'},
     {'value':0, 'active':True, 'rrule':'FREQ=DAILY;INTERVAL=2;COUNT=5', 'time': '22:00'}
     ]})
     [/SIZE]
    Leider tut sich bei mir nichts...
    Kannst Du mir sagen wo ich einen Fehler mache?

    Vorab schonmal vielen Dank!

    Grüße,
    Erik

    Einen Kommentar schreiben:


  • 2ndsky
    antwortet
    Ja, da stimmt der erste Beitrag nicht mehr... bitte für die aktuelle Version immer die Doku des Plugins in Github verwenden: https://github.com/mknx/smarthome/tr...p/plugins/uzsu

    EDIT: hab das nun auch im ersten Beitrag dazu geschrieben. Danke für den Hinweis.

    Einen Kommentar schreiben:


  • knipi
    antwortet
    Ich bitte schon jetzt um Entschuldigung... aber:
    Die UZSU wäre ein Riesenschritt für mich, die Smartvisu mal so langsam wirklich in den produktiven Bereich zu bringen. Ich kriege es nur nicht hin.
    Was mache ich falsch:
    Code:
    [kg]
        [[buero]]
            [[[lichtmitte]]]
                type = bool
                visu_acl = rw
                knx_dpt = 1
                knx_listen = 0/3/4
                knx_send = 0/0/15
                knx_init = 0/3/4
                [[[[uzsu]]]]
                    type=dict
                    uzsu_item=sh.kg.buero.lichtmitte
                    cache=True
                    visu_acl=rw
    und in der interactive shell:
    Code:
    sh.kg.buero.lichtmitte.uzsu([{'dt':datetime.datetime.now() + datetime.timedelta(minutes=2), 'value':1, 'active':True, 'rrule':'FREQ=MINUTELY;INTERVAL=2;COUNT=5'},{'dt':datetime.datetime.now() + datetime.timedelta(minutes=3), 'value':0, 'active':True, 'rrule':'FREQ=MINUTELY;INTERVAL=2;COUNT=5'}])
    Ich verstehe schon nicht, warum ich ein "sh" bei item und Befehl voranstellen muss, ohne kommt aber sofort der Fehler, dass "kg" unbekannt sei. Aber 2ndsky hat doch auch in der geupdateten Version des 1. Beitrags mal ein "sh" drin (beim Befehl) und mal nicht (beim uzsu_item).
    UZSU ist übrigens in der plugin.conf angemeldet.

    Debug:
    Code:
    2014-05-24 17:59:33,041 WARNING  Main         Item kg.buero.lichtmitte.uzsu: value [{'active': True, 'dt': datetime.datetime(2014, 5, 24, 18, 1, 33, 39785), 'rrule': 'FREQ=MINUTELY;INTERVAL=2;COUNT=5', 'value': 1}, {'active': True, 'dt': datetime.datetime(2014, 5, 24, 18, 2, 33, 40018), 'rrule': 'FREQ=MINUTELY;INTERVAL=2;COUNT=5', 'value': 0}] does not match type dict. Via Logic None -- item.py:__update:347

    Einen Kommentar schreiben:


  • 2ndsky
    antwortet
    Hallo Henning,

    Danke für das Lob. Freut mich, wenn es hilfreich ist.

    Zitat von ratzi82 Beitrag anzeigen
    Vielleicht magst du das ja in deinem Eingangspost noch ändern.
    Hab es mal im Eingangspost geändert ohne großartig zu verifizieren, ob der Rest ebenfalls passt. Ansonsten einfach nochmal melden

    Einen Kommentar schreiben:


  • ratzi82
    antwortet
    Hey Niko,

    bin jetzt auch endlich mal dazu gekommen das UZSU Plugin bei mir einzubauen und es ist einfach super praktisch.
    Das einzige worüber ich am Anfang gestolpert bin ist der type bei der Item Definition:

    In deinem Eingangspost schreibst du
    Code:
    type=list
    Dabei heißt es ja inzwischen:

    Code:
    type=[B]dict[/B]
    Habe es dann in der README des plugins gesehen. Vielleicht magst du das ja in deinem Eingangspost noch ändern.

    Vielen Dank für das geniale Plugin.

    Gruß,
    Henning

    Einen Kommentar schreiben:

Lädt...
X