Dieses Thema enthält 22 Antworten und 4 Teilnehmer. Es wurde zuletzt aktualisiert von  Salve vor 2 Monate, 2 Wochen.

Ansicht von 15 Beiträgen - 1 bis 15 (von insgesamt 23)
  • Autor
    Beiträge
  • #93998

    k.blum
    Teilnehmer

    Da ich noch einige DECT200 Aktoren mein eigen nenne, wollte ich diese gern über mein HC2 schalten. Meine Anwesenheitssteuerung erledige ich über ein Script aus diesem Forum, welches mit meinen iPhones sehr gut funktioniert (https://www.siio.de/board/thema/tr-064-in-lua-script-ansprechen/) Dieses habe ich etwas verändert und kann damit meine DECT200 Aktoren sicher schalten. Das geänderte Script stelle ich hier mit in diesen Beitrag. Es ist eine Lua Scene zu erstellen mit manueller Ausführung, die Scene wird dann über das VD gestartet. Folgende 3 Zeilen müssen Angepasst werden.

    Zeile 15 IP Adresse der Fritzbox
    Zeile 16 Benutzer der FritzBox
    Zeile 17Passwort der Fritzbox

    Hier kommt der Rest des Scripts, es ist sehr lang da für jede Anfrage eine Session ID erstellt werden muss. Nach dem Script erkläre ich die Erstellung des eigentlichen VD.

    • Dieses Thema wurde geändert vor 4 Monate, 1 Woche von  k.blum.
    • Dieses Thema wurde geändert vor 4 Monate, 1 Woche von  k.blum.
    #94004

    k.blum
    Teilnehmer

    Da ich den obigen Beitrag nicht mehr oder vorübergehend nicht bearbeiten kann, mache ich mal hier weiter.
    Pro Aktor muss ein VD mit zwei Schaltflächen angelegt werden, wer mehr Aktoren hat kann dies selbstverständlich auch in einem VD zusammenfassen. Des Weiteren werden zwei Variablen Benötigt. Die erste lautet – aktor – und in dieser wird die Kennung des Aktors hinterlegt. Die zweite lautet – azustand – und in dieser wird der Ein- oder Ausschaltbefehl hinterlegt.

    Code zum Einschalten

    Zeile 1: Die Nummer des Aktors (087610079458) erhaltet Ihr aus Eurer Fritzbox beim Powerline546E wird die MAC Adresse eingetragen.
    Zeile 2: setswitchon ist der Einschaltbefehl und nachfolgen setswitchoff der Ausschaltbefehl
    Zeile 3: Hier ist die Nummer der vorher erstellten Scene zur Steuerung einzutragen.

    Code zum Ausschalten

    Durch betätigen der Schaltflächen werden die Variablen geändert und die Scene ausgelöst, diese arbeitet mit den gerade eingegebenen Variablen das ganze ab. der Schaltvorgang dauert ca. 2 – 3 Sekunden.

    Bei mir läuft das ganze seit ca. 4 Wochen problemlos. das VD kann über Scenen angesprochen oder manuell betätigt werden.

    Viel Spass und bei Fragen versuche ich gern zu helfen.

    #94061

    Salve
    Teilnehmer

    Guten Aben k.blum

    ich habe mich riesig gefreut, dass Du Dich mit den Dect Steckdosen beschäftigt hast und habe natürlich Dein Script gleich umgesetzt.
    Das VD scheint auch die Szene zu auszulösen, jedoch reagiert meine Steckdose nicht So wie ich das DEBUG verstehe, kann sich die Szene mit der Fritzbox verbinden, dann kommt aber ein Error. Könnte es ein Problem mit der Aktornummer geben, da es ein Leerzeichen ent hält? Ich hab mal versucht es zu entfernen, aber ebenfalls ohne Ergebnis.

    Hier der DEBUG der Szene.

    [DEBUG] 19:15:38: Could connect to FritzBox, status 200
    [DEBUG] 19:15:38: Getting challenge key
    [DEBUG] 19:15:38: 64f44aac
    [DEBUG] 19:15:39: MD5Sum: a97681d9ec55f577c94db2cbe11c14fe of string „meinPasswort:-)“
    [DEBUG] 19:15:39: Login and forward successfully: 200
    [DEBUG] 19:15:39: SID: >0000000000000000<
    [DEBUG] 19:15:39: [1;31m2018-06-13 19:15:39.949267 [ fatal] LUA error: /opt/fibaro/scenes/101.lua:534: attempt to concatenate upvalue ‚azu‘ (a nil value)

    Ich wäre Dir sehr dankbar, wenn Du mir helfen könntest.

    #94063

    k.blum
    Teilnehmer

    Hallo Salve,

    Die Variable „azustand“ ist vermutlich nicht oder nicht richtig angelegt worden. Überprüfe das mal und versuche es noch einmal.

    #94099

    Salve
    Teilnehmer

    Es funktioniert, ich hatte die Variable azustand nicht richtig gesetzt und dann hatte ich das mit dem „smarthome“-User in der Fritz-Box mißverstanden, ich hatte einen neuen Benutzer in der Box angelegt, nach nochmaligem genauen Lesen habe ich dann den Fritz-Box Benutzernamen und das Fritzboxkennwort eingegeben, und siehe da, es funktioniert prächtig. Vielen Dank an Dich.
    Eine Frage hätte ich noch, läßt sich die Temperatur am Sensor auslesen und in Fibaro anzeigen oder als Schaltsignal benutzen. Hast Du da auch eine Lösung parat, ich wäre Dir sehr dankbar.
    Ich habe meine Fritz-Dect in meinem Überwinterungsraum für meine Heizung am laufen, bis dahin kommt mein Z-Wave Netz nicht und deshalb freue ich mich, dass ich die Steckdosen jetzt über Fibaro schalten kann, einfach super.
    LG Salve.

    #94101

    k.blum
    Teilnehmer

    Hallo Salve, schön dass es jetzt geht. Das mit der Temperatur geht auch, da werde ich mich demnächst mal damit beschäftigen. VG

    #94120

    k.blum
    Teilnehmer

    Vorsicht beim Update der Fritz Box, mit der aktuellen Beta von Fritz OS 7 läuft das Script nicht!!!!

    #94234

    k.blum
    Teilnehmer

    Kurze Zwischeninfo: das Auslesen der Temperatur, Schaltzustand und Momentanverbrauch funktioniert. Ich versuche jetzt noch ein paar Optimierungen. Sobald ich damit fertig bin, stelle ich es hier online.

    #94321

    k.blum
    Teilnehmer

    Hier die Anleitung zu auslesen der Temperatur der DECT Aktoren:
    Das obige Script wird dazu kopiert und etwas verändert. Folgende Variable wird angelegt um die Temperatur zu speichern – atemperatur -. Wer noch die aktuelle Leistung und den Schaltzustand auslesen möchte benötigt noch die Variablen – apower – und – astatus -. dazu benötigt Ihr dann allerdings 3 Scenen. Sinnvoll wäre eine Scene mit welcher die SID generiert wird und einzelne separate Scenen für die Abfrage, aber da bin ich überfordert. da Generieren der SID und abspeichern in eine Variable habe ich geschaft aber den Rest noch nicht. Doch jetzt zum Thema zurück. Eine änderung ist für alle Scenen gleichermaßen erforderlich. Ziemlich am Ende steht folgendes:

    Diesen Bereich ersetzen durch:

    Für die Abfrage der Temperatur ist der Bereich Check Presence durch folgenden Code zu ersetzen:

    Für die Abfrage des Schaltzustandes, Ausgabe mit 0 oder 1, folgendes ersetzen in Check Presence:

    Für die Leistungsabfrage sieht das ganze dann so aus:

    Das war es dann. Viel Spass beim Umsetzen. Die Scenen können dann nach Intervallen abgefragt werden und die Variablen mit den Werten zur Steuerung verwendet werden.

    #94763
    secundani
    secundani
    Teilnehmer

    Hallo k.blum,
    ich muss sagen, ALLE ACHTUNG für die Scripte. Läuft bei mir alles super und ich habe auch eine Menge verstanden und dazu gelernt.
    Allerdings habe ich ein Verständnisproblem bei folgender Zeile:

    checkPresence(resp.data, „DECT“, ‚Klaus‘, ‚leer‘);

    Was ist bitte Klaus und für was steht das alles? 🤔

    Es wäre schön, wenn Du mir dazu was sagen könntest.

    Nochmals Danke für deine Mühen
    Gruß secundani

    #94774

    k.blum
    Teilnehmer

    Hallo,

    der Inhalt dieser Zeile stammt noch aus der Presence Anfrage der FritzBox. Die Zeile kann gekürzt werden auf:
    checkPresence(resp.data)
    Ohne diese Zeile läuft das Script nicht, mit diesem Befehl wird die Funktion checkPresence am Anfang des Scripts ausgerufen.

    Gruß Klaus Blum

    #95638

    Salve
    Teilnehmer

    Hallo k.blum, leider konnte ich Dein Script zum Auslesen der Temperatur est jetzt ausprobieren. Ich habe wie Du beschrieben hast die Variable angelegt, habe dieser keinen Wert zugewiesen, danach die Szene modifiziert, so wie Du es beschrieben hast. Nach dem Start der Szene kommt aber im Feld unter der Szene keine Anzeige der Temperatur. Kannst Du mir bitte helfen und mir sagen, was ich falsch gemacht habe?

    Dateianhänge:
    You must be logged in to view attached files.
    #95713

    k.blum
    Teilnehmer

    Hallo,

    Hast Du auch die anderen beschriebenen Änderungen weiter oben eingearbeitet es sieht so aus als ob die Variable gar nicht mit dem Wert gefüllt wird.

    Gruß Klaus

    #95775

    Salve
    Teilnehmer

    Hallo Klaus,
    vielen Dank, nachdem ich alles nochmal neu gemacht habe, hat es funktioniert, die Temperatur wird angezeigt.
    Ich hatte den check presence – Teil an falscher Stelle eingetragen, man sollte halt richtig lesen, dann funktioniert es auch.
    Nochmals vielen Dank für Deine Arbeit und die Unterstützung.
    Viele Grüße Salve.

    #95864

    Salve
    Teilnehmer

    Hallo Klaus, ich bin ´s wieder, habe Deine Scripte weiter ausprobiert, wie bisher bin ich wieder an meine Grenzen gekommen und habe natürlich wieder ein Problem. Das Auslesen der Leistung und der Temperatur funkionier hervorragend, die Statusabfrage zeigt mir aber eine Zahlenwert an, obwohl ich die Variable auf die Werte 0 und 1 gesetzt habe. Ich habe für 2 Aktoren die Scripte angepasst und ein VD zum Auslesen der Variablen erstellt, die Bilder dazu habe ich im Anhang beigefügt. Ich hoffe, Du hast wieder eine passende Antwort für das Auslesen des Status für mich parat und bin die dafür vorab schon dankbar.

    Viele Grüße Salve.

    • Diese Antwort wurde geändert vor 2 Monate, 3 Wochen von  Salve. Grund: Falsche Bilddatei gewählt
    Dateianhänge:
    You must be logged in to view attached files.
Ansicht von 15 Beiträgen - 1 bis 15 (von insgesamt 23)

Du musst angemeldet sein, um auf dieses Thema antworten zu können.