Beiträge von Ralph

    Hallo zusammen,


    es hat mir natürlich keine Ruhe gelassen - und ich kann Lichtblicke melden.....

    Mein Tool sieht mittlerweile folgendermaßen aus:



    Damit kann man jetzt Szenarien von einer Zentrale auf eine andere Zentrale übertragen.

    Dabei das geht auch von und zu SHC1 oder SHC2.....egal.


    Dabei gelten folgende Rahmenbedingungen:

    1. Die Zielzentrale muss zu Beginn "leer" sein - keine Räume, keine Geräte, nichts....
    2. Man liest die Konfig der Quellzentrale ein.
    3. Man liest die Konfig der Zielzentrale ein
    4. Danach klickt man auf den Button "Standorte wiederherstellen"
      Daraufhin werden alle Standorte (mit den entsprechenden IDs) in der neuen Zentrale angelegt.
    5. Jetzt muss man (leider) alle Geräte der Quellzentrale manuell in der Zielzentrale einbinden
      Dabei müssen diese Geräte genauso benannt werden und in den gleichen Räumen liegen wie bei der Quellzentrale.
    6. Jetzt legt man alle Zustände manuell an - auch hier müssen diese genauso heißen wie in der alten Zentrale
    7. Wenn das alles abgeschlossen ist, liest man die Konfig der Ziel-Zentrale nochmals ein.
    8. Jetzt kann man die gewünschten Szenarien in der Liste markieren und durch einen Klick auf den Knopf "Szenarien wiederherstellen" in die neue Zentrale übertragen.

    Voilà !!


    Warum ist das alles so kompliziert und warum kann man keine Geräte übertragen ?


    Also - Jedes Gerät bekommt beim ersten Mal wenn es bei einer Zentrale eingebunden wird eine eindeutige ID zugeordnet. Diese ID ist innerhalb jeder Zentrale eindeutig und ändert sich später auch nicht mehr - auch dann nicht, wenn das Gerät entfernt und später wieder erneut eingebunden wird - ich nehme an, dass die ID errechnet und nicht gewürfelt wird. Diese Berechnung muss u. a. mit der "Identität" der Zentrale zu tun haben. (darauf komme ich später nochmal zurück)


    Leider ist es aber so, dass das gleiche Gerät wenn es an einer anderen SHC eingebunden wird eine andere interne ID erhält. Das macht es erst einmal unmöglich, Geräte einfach zu kopieren....Soweit so gut...


    Neben den Geräten gibt es auch sogenannte "Capabilities" für jedes Gerät. Das sind sozusagen "Fähigkeiten". Ein RST hat z. B. die Fähigkeit zur Temperaturmessung aber auch zur Feuchtigkeitsmessung. Diese Fähigkeiten erhalten beim Einbinden des Gerätes ebenfalls eindeutige IDs zugeordnet, die leider auch immer verschieden sind, wenn das Gerät in einen andere Zentrale eingebunden wird.


    In den Szenarien schließlich wird für die Auslöser und Aktionen nicht auf die Geräte referenziert, sondern direkt auf die Capabilities. Das heißt, in jedem Szenario sind die IDs der Capabilites enthalten.


    Wenn jetzt also ein Szenario von einer Zentrale auf eine andere übertragen werden soll, dann müssen beim kopieren die ganzen IDs der Capabilities durch ihr Pendant auf der neuen Zentrale ersetzt werden.


    Dazu muss jedoch ein Matching zwischen den alten und den neuen Geräten gemacht werden und darüber dann wiederum ein Matching zwischen den alten und den neuen Capabilities. Somit kommt man dann von einer alten Capability-ID auf die entsprechende neue Capability-ID.


    Genau dieser Vorgang geschieht in meinem Tool.... ;)

    Dieses Matching erfolgt in meinem Tool über die Gleichnamigkeit von Räumen und Gerätenamen. Deshalb muss das auch so sein. Ich habe es absichtlich nicht über die Seriennummer gemacht, denn es könnte ja sein, dass ein Gerät mittlerweile durch ein anderes ersetzt wurde weil es defekt war.



    Wieso kann LIVISI das bei einem Wechsel der Zentrale ohne diesen ganzen Schnick-Schnack ?


    Ganz einfach - ich nehme an, dass LIVISI beim Wechsel der Zentrale und der Übertragung der Infos vom BackEnd auf die neue Zentrale auch die oben erwähnte "Identität" der Zentrale mitkopiert. Damit ergeben sich auf der neuen Zentrale die gleichen IDs wie auf der alten und damit ist alles viel einfacher.


    Ohne das BackEnd und damit ohne die Möglichkeit zum Identitätswechsel geht das halt nicht.


    Jetzt stellt sich die Tausend-Dollar-Frage:

    "Wie verhalten sich "geklonte" Zentralen? Müssten dort die Geräte- und Capability-IDs nicht die gleichen sein wie bei der Quellzentrale, denn wir haben ja lautet gleiche Identitäten...?"


    Die Antwort ist - ich weiß es nicht, denn ich möchte meine geklonten Zentralen vor dem 01.03.2024 nicht anschließen, weil ich Angst habe, dass sie gelöscht werden.


    So - das war jetzt viel Geschwurbel....mein Tool ist noch lange nicht fertig...für Fragen wie "kann ich das mal haben" ist es noch zu früh....


    Was ich schon mal sagen kann ist - es wird nur unter Windows laufen, denn es ist mit VB6 programmiert.

    Alle die jetzt lachen sollen lachen....aber mit VB6 kenne ich mich halt aus...bin leider nicht mehr so jung wie auf dem Bild 8o

    Wie gesagt, das Problem hängt m. E. mit dem sog. VRCC (Virtual Room Climate Control) zusammen, das ist ein virtuelles Device, welches immer dann entsteht, wenn mehere Sensoren und Thermostate in einem Raum sind und gemeinsam geregelt werden müssen....vielleicht ist da bei Dir (intern) etwas durcheinander geraten, deshalb mein Tipp alles mal in einen anderen Raum und wieder zurückzuschieben...


    Aber wenn Du das alles weißt, dann habe ich auch keine Idee mehr.

    Falls es ein Bug ist, wird er eh nicht mehr gefixt....es ist jetzt "Schicht im Schacht"

    ok ....dann leg ich das Zeug jetzt mal weg.


    Wenn die Id's der Geräte aus dem Backup nicht übernommen werden können, sondern zuerst alle Geräte manuell eingebunden werden müssten dann wird das leider nichts.


    Desweiteren habe ich gesehen, dass es logisch keinen direkten Zusammenhang zwischen den Devices und den Szenarien gibt, sondern dazwischen noch die sog. Capabilities stehen. Ebenfalls ein Sammelsurium von eindeutigen Ids, die m. E. auch nicht einfach übernommen werden können.


    In den Szenarien sind dann wiederum die Ids der Capabilities enthalten, die wiederum auf die Geräte verweisen, das heißt, es bringt dann überhaupt nichts, die Szenarien wiederherstellen zu wollen.....


    Sorry - aber das ist mir dann zu komplex und zu zeitaufwändig....

    Das "Kapern" wird über die API denke ich nicht gehen.....es wird schon seinen Grund haben, warum LIVISI das Backup/Restore nicht mehr umgesetzt hat....wenn es so wäre, dass ich das an einem Nachmittag hinbekomme, dann hätten die das wohl auch gemacht ;)

    Also bei den Devices scheint es kompliziert zu sein:


    1) Zwischen SHC1 und SHC2 unterscheidet sich die JSON-Struktur und deren Inhalt

    2) Man kann Devices nur einbinden, wenn das DeviceDiscovery auf der Zentrale läuft....das muss ich momentan noch manuell anstoßen - geht aber bestimmt auch über die API....


    3) Das ist das größte Problem: Man kann Geräte nur mit der ID einbinden, die die Zentrale (irgendie selbst) für das Gerät festlegt und nicht mit einer ID aus einer Sicherung einer anderen Zentrale....momentan habe ich noch nicht rausgefunden, ob und wie man die von der Zentrale beim eigenen Discovery festgelegte ID für das Gerät herausbekommt...

    Also - mittlerweile hole ich auch die Räume und weitere Daten aus der Konfig ab.

    Was ich mittlerweile rausgefunden habe ist, dass man die Räume nicht als ganzes "in einem Rutsch" in einer neuen Zentrale anlegen kann, sondern, dass man diese einzeln an die API schicken muss.


    Ich gehe davon aus, dass das mit Szenarien und Geräten ähnlich ist....


    Ich schaue mal weiter.....

    Schaut mal....ich hab das was gebaut :


    Einfach IP-Adresse und Passwort eintragen und auf das Knöpfchen drücken...




    dann kommt die Konfig aus der Zentrale.



    Jetzt muss ich diese nur noch in zwei Dateien ablegen und dann "nur" noch den umgekehrten Weg abbilden....dann hätten wir doch ein Prima Backup-Restore-Tool oder ?


    Gruß Ralph

    Dieses Thema beginnt auch mich zu interessieren.

    Könnt ihr die von Euch genau verwendeten Befehle mal posten bzw. wo habt ihr denn die API-Beschreibung her ?


    Wenn das mit cURL geht, dann lässt sich das bestimmt auch mit VB oder ähnlichem in ein Tool mit Oberfläche gießen.....

    Ich würde Dir empfehlen, zunächst OpenHAB mal einfach unter Windows (falls Du das hast) laufen zu lassen....da reicht es, wenn Du Dir das runterlädst und einfach in einen Ordner entpackst und die start.bat ausführst....


    Danach kannst Du Dich in aller Ruhe mal mit der OpenHAB-Plattform beschäftigen, bevor Du versuchst, das alles unter einem RASPI zum laufen zu bringen.....


    Wenn Du das später machen willst, kannst Du die Konfiguration immer noch dorthin übertragen.

    Hallo Peter,


    ich kann Dir die genaue Syntax für Deinen Shelly 1 PM nicht sagen.

    Ich nutze bei mir einen Shelly RGB2W wiefolgt:


    Ich habe in LIVISI ein Gerät mit dem Namen "Shelly" vom Typ "HTTP-Anfrage" erstellt:


    - URL: http://192.168.x.x/color/0

    - Benutzername: leer

    - Passwort: leer

    - Methode: Get

    - Parameter: turn=toggle


    Dieses Gerät habe ich dann in einem Szenario als Aktion benutzt:


    - Get-Anfrage senden

    - Parameter: turn=toggle


    Im Prinzip kannst Du in den Szenarien bei Parameter immer das angeben, was hinter der normalen URL steht.....also die GET-Parameter.


    Du kannst das zuvor auch mit einem ganz normalen Browser testen, in dem Du das alles auch einfach in die Adresszeile eingibst.


    Gruß Ralph