Beiträge von Yankee

    Das könnte auch an deinem Router und eingestelltem ECO-Mode liegen... Inaktive Verbindungen werden herutergefahren und bis die Leitung wieder steht, ist das Signal vom Shelly in Walhalla.

    Das Problem hatte ich an einer Stelle für ein Temperaturmonitoring, seither "feuere" ich öfters einen request nur damit die Verbindung nicht "einschläft".

    Bei der Kommunikation mit einem externen Webserver wäre vielleicht PHP eine gute Wahl

    Ja sehe ich auch so, deswegen wurde ein IoT-Modul zur Kommunikation mit Sensoren/Aktoren/Steuerungen in eine bestehende SaaS Anwendung eingepflegt.

    Im Gegensatz zu Shelly mit dem eigenwilligen Shelly-Scriptt, lassen sich Komponenten von etablierten Marken in der Haustechnik jedoch wesentlich einfacher einbinden. Im Zweifel haben alle XML im "Gepäck".

    Es muss also eine Schittstelle für die gängigsten Funktionen konzipiert werden, die auch ohne irgendwelche Lizenzplichtigen Protokolle oder zwischen-"Wirte" funktioniert.

    Hallo zusammen,

    ich musste feststellen, dass Javascript (HTML) nicht mit Shelly-Script auf einer Ebene liegen und ich mich nicht wirklich damit auseinander setzen möchte.

    Wäre prima wenn es jemand gibt, der sich damit wirklich sehr gut auskennt und mir hin und wieder eine funktionierende Lösung schreiben könnte.

    Der Schwerpunkt der Scripte wird in der kommunikation mit einem externen Webserver sein. (Keine verwendung der üblichen Smarthome-Protokolle, evtl.json)

    Es wird sich also um jeweils einmalige und abgeschlossene Tätigkeiten handeln.

    Auftrag/Verechnung VB.

    Hallo zusammen,

    zu diesem Thema habe ich einen älteren Beitrag gefunden, der leider nicht ganz passt.

    Ich beabsichtige die Wasserzufuhr bei erkannter Leckage automatisch zu schliessen.

    Bereits in Betrieb habe ich Shelly 1 Plus (12V DC) mit kabelgebundenem Wassersensor (Schliesser bei Kontakt).

    Ergänzen möchte ich das ganze nun mit einem Elektrisch betriebenem Kugelventil, das möglichst wenig Spannung aufnimmt wenn nicht gerade geöffnet/geschlossen wird. Zudem sollte man das Ventil manuell öffnen/schliessen, wenn der Strom ausgefallen oder sonst eine Störung vorliegt.

    Dazu passend gefunden habe ich folgenden Motorkugelhahn (12V DC), der laut Bewertungen jedoch nicht wirklich lange halten wird...

    https://www.amazon.de/U-S-Solid-Motorkugelhahn-Elektrische-Automatische/dp/B083XPGVS2/ref=dp-upsell-widget_d_sccl_3_5/261-5916822-0323051?pd_rd_w=Szncd&content-id=amzn1.sym.8c6607a9-1a7f-44a3-a21e-a216582a20b7&pf_rd_p=8c6607a9-1a7f-44a3-a21e-a216582a20b7&pf_rd_r=60YAAJCXEACA61G8RK7K&pd_rd_wg=MAaMe&pd_rd_r=51073c76-17d1-43ae-a4e1-c7171ac216a7&pd_rd_i=B083XPGVS2&th=1

    Hat schon jemand so etwas umgesetzt oder gibt es Erfahrungen/Empfehlungen welcher Motorkugelhahn sich am besten dafür eignet und für Trinkwasser zugelassen ist?

    Euren Ausführungen zufolge, wird es wohl bald einen neuen Beruf den "IT-Lektriker" geben müssen ;)

    Ich denke die Problematik für Installateure sind die unterschiedlichen Systeme und Protokolle sowie deren neuerungen und System-verändernden Updates, wovon sich vermutlich ein System irgendwann durchsetzen wird. Hier tippe ich auf HTTP, wel überall und in jedem System verfügbar.

    Prima, vielen Dank für deine Zeit und deine Unterstützung.

    Falls jemand so etwas ähnliches benötigt, hier ein funktionierender Lösungsansatz der selbstständig und im intervall die Status der 4 SW-kontakte (Input) von einem Shelly i4 an das eigene Script sendet.

    EDIT: Script geändert, damit im Intervall auch die aktuellen Shelly-Daten abgefragt werden. Davor wurde immer nur das Ergebnis aus der einen Abfrage gesendet... ;)


    // Intervall zum senden der Kontakt-Status via HTTP GET
    let interval = 60000; // Millisekunden - 1000 Millisekunden entsprechen 1 Sekunde
    Timer.set(
     interval,true,function () {
        //
        let input1 = Shelly.getComponentStatus("input", 0);
        let input2 = Shelly.getComponentStatus("input", 1);
        let input3 = Shelly.getComponentStatus("input", 2);
        let input4 = Shelly.getComponentStatus("input", 3);
        //
        if(input1.id === 0 && input1.state === true){
            let sw1 = "on";
        }else if(input1.id === 0 && input1.state === false){
            let sw1 = "off";
        }else{
          let sw1 = "inaktiv";
        }
        //
        if(input2.id === 1 && input2.state === true){
            let sw2 = "on";
        }else if(input2.id === 1 && input2.state === false){
            let sw2 = "off";
        }else{
          let sw2 = "inaktiv";
        }
        //
        if(input3.id === 2 && input3.state === true){
            let sw3 = "on";
        }else if(input3.id === 2 && input3.state === false){
            let sw3 = "off";
        }else{
          let sw3 = "inaktiv";
         }
        //
        if(input4.id === 3 && input4.state === true){
            let sw4 = "on";
        }else if(input4.id === 3 && input4.state === false){
            let sw4 = "off";
        }else{
          let sw4 = "inaktiv";
        }
        //
        let webhost = 'https://domain.de/i4-status.php?sw1=' + sw1 + '&sw2=' + sw2 + '&sw3=' + sw3 + '&sw4=' + sw4;
        Shelly.call("HTTP.GET", {"url": webhost, "timeout": 5})
       //
        //Ausgabe zum testen
        //print(webhost);
     }
    );

    Sorry, mein Fehler für zu wenig Info.

    Ich nutze weder die Shelly-Cloud/App noch Mqtt, alles ausschliesslich über http wofür ich das Webinterface des Shelly nutze.

    Ich verarbeite/verwende die Informationen welche der Shelly über Input/Action/Webhook per GET versendet, mit meinem Script das über eine URL erreichbar ist (Webserver).

    zB. Die im Webhook eingetragene URL: https://domain.de/script?temp=$temperatur wird vom Shelly bei jeder Veränderung der Temperatur aufgerufen. Hier kann ich mit "Repeat when" noch eine Zeit in Sekunden angeben, in der der Shelly den Aufruf der URL unterdrückt. (Sonst würde er vermutlich jede Sekunde die Url aufrufen bei einer Abweichung von 0,01 °C)

    Zu deinen Fragen:

    1.) Der Empfänger ist ein Webserver und erwartet GET Variable

    2.) Beispiel-Script... Das ist genau das was ich ja suche bzw. einen Lösungsansatz benötige. Gibt es die Möglichkeit mit Shelly Script eine Internetadresse aufzurufen in der mir der Status (http ://192.168.xxx.xxx/rpc/Shelly.GetStatus) via POST oder ? weiter gibt?

    Wenn Status nicht möglich, müsste ich so zumindest die Schalterstellung in Erfahrung bringen können.

    Na, ich habe schon gesehen was Du so alles anstellst mit den Shellys und dem Scripting, meinen grössten Respekt dafür 8)

    Doch deine antwort erinnerte mich jedoch an Foren mit Antworten alla: "Da musst Du schon Gog..e bemühen", "Da musst Du schon...", "wir sind nicht da um für dich...", ohne tatsächlichen Lösungsabnsatz...

    Ich denke wenn hier jemand eine Frage stellt, dann weil er einfach nicht weiter kommt, oder? Was helfen dann solche Anworten?

    Entweder ich bin zu diesem Thema blind oder nicht in der Lage Go..le richtig zu befrage, ich kann tatsächlich keinen Lösungsansatz finden ich einen Shelly dazu bringe mir den Geräte-Status an meine URL/Internetadresse zu senden (Zb. Auf welcher Position steht die Schaltung oder was ist aktuell die Temperatur)

    Alle gefundenden GET/json Lösungen/Ansätze zielen auf eine direkte Ansprache des Shelly ab, wie zB. <ip_Adresse>/rpc/Shelly.GetStatus

    Mal eine andere Frage für den Einstieg:

    Wie bringe ich Shelly per Shelly-Script dazu mir die Temperatur zu senden und das alle 10 Minuten. (Das ist eine Funktion wie sie mir analog mit Action an eine URL zur Verfügung steht)

    Sorry, doch ich denke Du hast selbst keine Ahnung dazu oder?

    Ich frage mich wie Du folgende Aussage treffen kannst ausser dann nur Links auf Standard Code-Gefloskel folgen zu lassen?

    Mit einem Script kannst du ins Netz (auch Internet) senden und auch empfangen und hast kaum Limitierungen.

    Ich Code seit über zwanzig Jahren, Du darfst gerne auf die von dir beschriebenen Spezifikationen näher eingehen.

    Zitat

    Script-Lösung, jedoch ist hierzu eine vernünftige Spezifikation notwendig!

    Nun, zur Script-Lösung besteht ja meine Frage...

    Was bedeutet "Spezifikation" konkret? Du hast dazu eine Idee!

    Ich benötige erstmal lediglich einen Ansatz zum auslösen für die Weiterreichnung des Status und den Repeat, per Shelly-Script.


    Ich denke es liegt auf der Hand, dass die allgemein genutzten GET Anweisung ein Sicherheitsrisiko sondergleichen sind!

    Es gleicht einem IT-Suizid auch noch einen Port für Shelly für externe Anfragen zu öffnen... Oder bist Du anderer Meinung?


    Die Gegenseite ist ein Root-(Host)-Server...

    Um zB. die Temperatur zu erhalten habe ich ein "Action" erstellt, der eine URL aufruft wo ich den Wert mit einem Script weiterverwende. (Hierfür bietet Shelly direkt bei der URL Eingabe Platzhalter "$temperatur" an.)

    Etwa so: https://xy-server.de/check&temperatur=$temperatur

    Nun möchte ich gerne den Status mit meinem Script auswerten, wozu leider nicht die Möglichkeit für den üblich beschriebenen GET zugriff auf den Shelly besteht um den aktuellen Status zu erhalten.

    Daher würde ich gerne im Intervall von 30 Minuten (Repeat) automatisch eine interne Statusabfrage (Shelly-Script) starten lassen und das Ergebnis an die URL weiterreichen, habe mich bisher jedoch noch nie mit den Shelly-Script beschäftigt.

    Hier bin ich für jeden Tiip oder Lösungsansatz Dankbar.

    Danke für dein offenes Feedback :thumbup:

    Ich bin in der Branche Haustechnik/Unterhalt tätig und betreibe eine entsprechende Software (SaaS) für das Monitoring der technik inklusive Alarmsystem (Mail/SMS/Voicecall).

    Es gibt einfach zuviel unterschiedliche (aufwendige/komplizierte) Systeme und Protokolle im IoT Segment und es werden immer mehr, mein System läuft ausschliesslich über http was jeder sowieso zur Verfügung hat.

    Für mich sind die Shelly`s durch den integrierten Webserver hauptsächlich als Sensor-Aktor daher eine geniale Lösung, die ich nun seit ca. 6 Monaten absolut ohne Ausfall oder störung am testen bin. Die Shelly`s sind also "lediglich" Zubehör was durch den relativ günstigen EK eine gute Sache wäre.

    Nun bin ich an dem Punkt die Shellys offiziel als Aktor zu integrieren, wozu es noch die rechtlichen Seiten zu betrachten gilt und worauf meine Frage abzielt.