Ankündigung

Einklappen
Keine Ankündigung bisher.

Home-Connect | 2nd

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • vento66
    antwortet
    Andre alles gut, Du bist jetzt mal irgendwie zwangsläufig mit reingerutscht..... Ich hab mir auch den Thread mit angeschaut, und hab mir sicher einiges an Zeit gespart. Irgendwie ging es mir nur auf den Zeiger, das es auf einmal überall tönt "Ah das läuft doch schjon ewig". Ich hab mit meiner Zeit sicher auch anderes zu tun. Und ja, ich kann jetzt auch schreiben: "Bei mir und ein paar Testern läufts "

    Wie wollen wir da jetzt weiter vorgehen? Ich glaub meine letzten Posts haben hier erst mal einige verschreckt Aber entspannt euch, es wird nicht alles so heiß gegessen wie es gekocht wird!

    Einen Kommentar schreiben:


  • jonofe
    antwortet
    Zitat von vento66 Beitrag anzeigen
    jeder bastelt sich LBS auf Basis bestehender fremder LBS und hält das alles still in seinem dunklen Kämmerlein für sich
    Nur um hier keine Mißverständnisse durch diese Verallgemeinerung entstehen zu lassen: Ich habe im September 2019 schon geschrieben, dass ich einen HomeConnect API LBS entwickelt habe. Und auf Basis fremder LBS ist er natürlich auch nicht entstanden. Eher sind einige meiner Erfahrungen in Dariusz' LBS eingeflossen.

    26.09.2019, 13:27
    Zitat von jonofe Beitrag anzeigen
    Der EXEC Bereich meines HomeConnect API LBS ist gleichzeitig das Callback Skript, welches vom Homeconnect Server aufgerufen wird. Dazu verlinke ich das finale EXEC Skript innerhalb des EDOMI www Pfades:
    Zitat von jonofe Beitrag anzeigen
    Läuft aber bei mir nur als Prototyp und hat noch keine Geräte-spezifische Funktionalität, d.h. ich kann grundsätzlich alle HC API Befehle senden und bekomme alle Events, aber es ist nur ein API LBS. Dazu müsste dann noch diverse Geräte LBS entwickelt werden. Das ist aber noch eine große Baustelle, welche ich vielleicht mal angehe, wenn weitere HC Geräte bei uns Einzug halten.
    Zitat von vento66 Beitrag anzeigen
    jeder bastelt sich LBS auf Basis bestehender fremder LBS
    vento66 Ansonsten bin ich da ganz bei dir ...

    Einen Kommentar schreiben:


  • vento66
    antwortet
    luck789 Irgendwie komisch hier..... jeder bastelt sich LBS auf Basis bestehender fremder LBS und hält das alles still in seinem dunklen Kämmerlein für sich. Soweit ich das beurteilen kann ist der Bedarf für solche LBS da. Kommt mir so vor das "bei mir läufts ja, der rest ist mir Wurscht" immer mehr um sich greift. Im nachhinein tönen dann alle "bei mir läufts eh schon ewig, ich sags euch nur nicht". Ist jetzt nicht gegen Dich persönlich, und als Trotzreaktion die Posts dann zu manipulieren ist halt auch nicht die feine Englische. Und jetzt wieder .

    Und so weit ich das beurteilen kann gabs bis jetzt nur einen LBS für Geschirrspüler, warum ist der LBS in Absprache mit Dariusz (wenn sein Grundgerüst genutzt wurde ) oder auch nicht, wenn Du den selber geschrieben hast, im DL zu finden? Schliesslich profitieren wir hier alle von der Arbeit anderer.

    Einen Kommentar schreiben:


  • luck789
    antwortet
    vento66
    ​​​​​​​Ich hab mich vielleicht missverständlich ausgedrückt, aber es ging mir nur um den Status-LBS.
    Egal, ich find deine Reaktion nicht nett, auch wenn ich nachvollziehen kann wieso und das durchaus respektiere.
    Bist du bitte so nett und löscht die VSE 1006 und VSE 1009 aus dem Download Portal, da hab ich die Idee und das Grundgerüst von jemand anderem verwendet.

    Danke

    Einen Kommentar schreiben:


  • vento66
    antwortet
    Übrigens hatte ich gerade ein Telefonat mit Dariusz. Er ist auch an einer funktionierenden Version eines LBS interessiert. Leider ist er gerade etwas verhindert, um sich selber darum zu kümmern. Was habe ich dabei festgestellt? Fernzugriff auf andere Geräte funktioniert nicht so wie ich es mir gedacht habe. Wenn der andere User eine Applikation einrichtet, und mich als Testuser einträgt, sehe ich genau "Trommelwirbel" meine Geräte . Hat es schon mal jemand geschaft auf die Simulatoren in seinem Account zuzugreifen?

    Einen Kommentar schreiben:


  • vento66
    antwortet
    Also ich für meinen Teil werd da jetzt mal nicht weiter machen, bis sich hier eine Richtung aufzeigt.....
    Ich finds nur interessant, wo jetzt auf einmal die ganzen LBS aus der Versenkung auftauchen.... Vielleicht sollte ich auch mehr LBS für mich behalten!
    Daran das es schon einen fast funktionierenden LBS gab, kann es eigentlich nicht liegen, für andere Funktionen werden ohne Skrupel gefühlte 100 LBS veröffentlicht


    Man hätte ja auch mal mit dariusz in Kontakt treten können... Ich werde auf alle Fälle aus diesem LBS nichts übernehmen, da er Dariusz sein Werk ist, auch wenn Du da drinn rumgefummelt hast.

    Ausserdem, komm ich mit 600 zeilen und ohne diese extra Klasse aus.
    Zuletzt geändert von vento66; 28.12.2021, 11:41.

    Einen Kommentar schreiben:


  • luck789
    antwortet
    gelöscht
    Zuletzt geändert von luck789; 28.12.2021, 18:10.

    Einen Kommentar schreiben:


  • vento66
    antwortet
    Die Werte kommen in Echtzeit, ist die gleiche Schnittstelle wie deine App. Geht ohne pullen.

    Einen Kommentar schreiben:


  • baumhaus123
    antwortet
    Ich habe hier WaMa und Geschirrspüler mit HomeConnect im Einsatz. Wenn ich es mir aussuchen könnte fände ich einen separaten LBS pro Gerät am besten - käme aber auch mit einem generischen LBS und diversen Status-Jsons zurecht. Für mich wäre ohnehin nur der Status interessant. Das funktioniert zwar aktuell auch mit der HomeConnect-App recht zuverlässig, aber schöner wäre es schon alles via Telegram selbst zu implementieren. Würde der LBS dann z.B. beim Fertigstellen des WaMa-Programms getriggert oder müsste der Status regelmäßig gepullt werden?

    Danke euch für eure Engagement!

    Einen Kommentar schreiben:


  • jonofe
    antwortet
    Zitat von vento66 Beitrag anzeigen
    Aber wir können das eigentlich auch ganz einfach machen: Lad den LBS hoch, und ich spar mir den restlichen Aufwand.
    Ich könnte mir vorstellen, dass die meisten hier spezifische LBSe für Einzelgeräte bevorzugen würden, da man dort die Daten direkt mundgerecht serviert bekommt.

    Zitat von vento66 Beitrag anzeigen
    Ist ja nicht so, das ich nicht noch andere Baustellen hätte
    da bist du nicht der einzige

    Aber ich denke die Diskussion macht schon Sinn ... vielleicht gibt es ja noch Feedback von den potentiellen Nutzern.

    Einen Kommentar schreiben:


  • vento66
    antwortet
    Ja beim Kühlschrank etc sicher, beim Saugroboter mag es anders ausschauen, aber wie gesagt, stell deinen in den DL, und fertig. Da wissen wir wenigstens das er funktioniert…

    Einen Kommentar schreiben:


  • jonofe
    antwortet
    Zitat von vento66 Beitrag anzeigen
    Und wie initialisierst du die Geräte? Sind ja je nach Gerätetyp bis zu 6 Anfragen x16 Gerätetypen
    Stimmt. Zuerst wird die Liste der Geräte abgerufen und dann je Gerät die 6 API Calls wie in den "Best practices" der API Doku beschrieben. Die wenigsten werden ja 16 Geräte haben

    Zitat von vento66 Beitrag anzeigen
    da brauchts ja doch wieder einen LBS
    Nicht zwangsläufig. Ich hole mir nur wenige Infos raus und ehrlich gesagt wird ja kaum einer die Geräte wirklich via EDOMI bedienen, den Hauptanwendungsfall würde ich bei der Statusüberwachung/Visualisierung sehen.

    Zitat von vento66 Beitrag anzeigen
    kann dem Befehle senden mittels Json
    bei mir wird nur der Status in ein JSON ausgegeben. Befehle sind im Format haid|command|option1|option2.

    Ich denke insgesamt sind das zwei komplett unterschiedliche Konzepte.

    Einen Kommentar schreiben:


  • vento66
    antwortet
    Aber wir können das eigentlich auch ganz einfach machen: Lad den LBS hoch, und ich spar mir den restlichen Aufwand. Ist ja nicht so, das ich nicht noch andere Baustellen hätte

    Einen Kommentar schreiben:


  • vento66
    antwortet
    Und wie initialisierst du die Geräte? Sind ja je nach Gerätetyp bis zu 6 Anfragen x14 Gerätetypen… Keine Ahnung, aber Du bist da mehr der json Fan, ich kann dem Befehle senden mittels Json im Moment nicht viel abgewinnen, da brauchts ja doch wieder einen LBS, der das Gerätespezifisch zusammenbaut. Bei mir greift jeder LBS, auf den Token zu, und kümmert sich selbstständig asynchron zum SSE und anderen parallel laufenden LBS. Find das irgendwie sympathischer.
    Zuletzt geändert von vento66; 27.12.2021, 23:41.

    Einen Kommentar schreiben:


  • jonofe
    antwortet
    Bei meiner Lösung ist die Anzahl und Art der Geräte egal. Der LBS macht die Kommunikation (API + SSE) für alle Geräte. Und gibt auch alle Daten in je ein JSON pro Gerät aus (hier für max 10 Geräte):

    edomi.png
    A7 ist die Kaffeemaschine
    A8 ist die Waschmaschine

    und ein Beispiel-JSON der Kaffeemaschine sieht so aus:
    Code:
    {
    "name": "Kaffeevollautomat",
    "brand": "Siemens",
    "vib": "TI9575X1DE",
    "connected": true,
    "type": "CoffeeMaker",
    "enumber": "TI9575X1DE/10",
    "haId": "SIEMENS-TI9575X1DE-68A40E2B01A1",
    "states": {
    "BSH.Common.Status.OperationState": {
    "name": "Betriebsstatus",
    "value": "BSH.Common.EnumType.OperationState.Inactive",
    "displayvalue": "Inaktiv"
    },
    "BSH.Common.Status.RemoteControlStartAllowed": {
    "name": "Fernstart",
    "value": true
    },
    "BSH.Common.Status.LocalControlActive": {
    "name": "Lokale Bedienung aktiv",
    "value": false
    },
    "ConsumerProducts.CoffeeMaker.Status.BeverageCount erRistrettoEspresso": {
    "name": "Anzahl Ristretto & Espresso",
    "value": 261
    },
    "ConsumerProducts.CoffeeMaker.Status.BeverageCount erCoffee": {
    "name": "Anzahl Kaffeegetränke",
    "value": 11
    },
    "ConsumerProducts.CoffeeMaker.Status.BeverageCount erCoffeeAndMilk": {
    "name": "Anzahl Kaffee-Milch-Spezialitäten",
    "value": 2656
    },
    "ConsumerProducts.CoffeeMaker.Status.BeverageCount erFrothyMilk": {
    "name": "Anzahl Milchschaum",
    "value": 79
    },
    "ConsumerProducts.CoffeeMaker.Status.BeverageCount erHotMilk": {
    "name": "Anzahl warme Milch",
    "value": 10
    },
    "ConsumerProducts.CoffeeMaker.Status.BeverageCount erHotWater": {
    "name": "Menge Heißwasser",
    "value": 13993
    },
    "ConsumerProducts.CoffeeMaker.Status.BeverageCount erPowderCoffee": {
    "name": "Anzahl Getränke mit Kaffeepulver",
    "value": 1
    },
    "BSH.Common.Status.DoorState": {
    "name": "Tür",
    "value": "BSH.Common.EnumType.DoorState.Closed",
    "displayvalue": "Geschlossen"
    }
    },
    "settings": {
    "BSH.Common.Setting.ChildLock": {
    "name": "Kindersicherung",
    "value": false
    },
    "BSH.Common.Setting.PowerState": {
    "name": "Energiezustand",
    "value": "BSH.Common.EnumType.PowerState.Standby",
    "displayvalue": "Standby"
    }
    },
    "availablePrograms": {
    "ConsumerProducts.CoffeeMaker.Program.Beverage.Ris tretto": {
    "name": "Ristretto"
    },
    "ConsumerProducts.CoffeeMaker.Program.Beverage.Esp ressoDoppio": {
    "name": "Espresso doppio"
    },
    "ConsumerProducts.CoffeeMaker.Program.Beverage.Esp resso": {
    "name": "Espresso"
    },
    "ConsumerProducts.CoffeeMaker.Program.Beverage.Esp ressoMacchiato": {
    "name": "Espresso Macchiato"
    },
    "ConsumerProducts.CoffeeMaker.Program.Beverage.Cof fee": {
    "name": "Caffè Crema"
    },
    "ConsumerProducts.CoffeeMaker.Program.Beverage.Cap puccino": {
    "name": "Cappuccino"
    },
    "ConsumerProducts.CoffeeMaker.Program.Beverage.Lat teMacchiato": {
    "name": "Latte Macchiato"
    },
    "ConsumerProducts.CoffeeMaker.Program.Beverage.Caf feLatte": {
    "name": "Milchkaffee"
    },
    "ConsumerProducts.CoffeeMaker.Program.Beverage.Mil kFroth": {
    "name": "Milchschaum"
    },
    "ConsumerProducts.CoffeeMaker.Program.Beverage.War mMilk": {
    "name": "Warme Milch"
    },
    "ConsumerProducts.CoffeeMaker.Program.Beverage.XLC offee": {
    "name": "Kaffee XL"
    },
    "ConsumerProducts.CoffeeMaker.Program.CoffeeWorld. CafeCortado": {
    "name": "Café cortado"
    },
    "ConsumerProducts.CoffeeMaker.Program.CoffeeWorld. FlatWhite": {
    "name": "Flat White"
    },
    "ConsumerProducts.CoffeeMaker.Program.CoffeeWorld. Americano": {
    "name": "Americano"
    },
    "ConsumerProducts.CoffeeMaker.Program.CoffeeWorld. KleinerBrauner": {
    "name": "Kleiner Brauner"
    },
    "ConsumerProducts.CoffeeMaker.Program.CoffeeWorld. GrosserBrauner": {
    "name": "Großer Brauner"
    },
    "ConsumerProducts.CoffeeMaker.Program.CoffeeWorld. Verlaengerter": {
    "name": "Verlängerter"
    },
    "ConsumerProducts.CoffeeMaker.Program.CoffeeWorld. VerlaengerterBraun": {
    "name": "Verlängerter braun"
    },
    "ConsumerProducts.CoffeeMaker.Program.CoffeeWorld. WienerMelange": {
    "name": "Wiener Melange"
    },
    "ConsumerProducts.CoffeeMaker.Program.CoffeeWorld. Cortado": {
    "name": "Cortado"
    },
    "ConsumerProducts.CoffeeMaker.Program.CoffeeWorld. CafeConLeche": {
    "name": "Café con leche"
    },
    "ConsumerProducts.CoffeeMaker.Program.CoffeeWorld. CafeAuLait": {
    "name": "Café au lait"
    },
    "ConsumerProducts.CoffeeMaker.Program.CoffeeWorld. Kaapi": {
    "name": "Kaapi"
    },
    "ConsumerProducts.CoffeeMaker.Program.CoffeeWorld. KoffieVerkeerd": {
    "name": "Koffie verkeerd"
    },
    "ConsumerProducts.CoffeeMaker.Program.CoffeeWorld. Galao": {
    "name": "Galão"
    },
    "ConsumerProducts.CoffeeMaker.Program.CoffeeWorld. Garoto": {
    "name": "Garoto"
    },
    "ConsumerProducts.CoffeeMaker.Program.CoffeeWorld. RedEye": {
    "name": "Red Eye"
    },
    "ConsumerProducts.CoffeeMaker.Program.CoffeeWorld. BlackEye": {
    "name": "Black Eye"
    },
    "ConsumerProducts.CoffeeMaker.Program.CoffeeWorld. DeadEye": {
    "name": "Dead Eye"
    }
    },
    "lastError": {
    "key": "SDK.Error.UnsupportedOperation",
    "error": "Operation not supported for HomeAppliance type CoffeeMaker",
    "timestamp": "27.12.2021 - 23:10:28"
    }
    }
    Damit kommt man relativ einfach per JSON Extractor an alle Daten ran. Man kann sich vorstellen Gerätespezifische LBS zu haben, welche auf der Inputseite das JSON annehmen und auf Gerätespezifische Ausgänge geben und zusätzliche Ausgänge haben, welche wieder den zentralen LBS mit gerätespezifischen Commands und Settings versorgen. Da ich bislang aber nicht viele Anwendungsfälle habe, habe ich da noch nichts gemacht.

    Einen Kommentar schreiben:

Lädt...
X