Code Sharing zwischen zwei Scripten auf den selben Gerät möglich?

Hinweis zur Nutzung von Skripten (für Nutzer)

Die Verwendung von Skripten erfolgt ausdrücklich auf eigene Gefahr. Weder Shelly noch die jeweiligen Autoren oder Entwickler der Skripte übernehmen irgendeine Form der Haftung für mögliche Schäden, Fehlfunktionen, Datenverluste oder anderweitige Beeinträchtigungen, die durch die Nutzung dieser Skripte entstehen könnten. Bitte stellen Sie vor dem Einsatz sicher, dass Sie den Quellcode verstehen und sich der möglichen Auswirkungen bewusst sind. Die Skripte werden ohne Gewähr bereitgestellt und unterliegen keiner regelmäßigen Wartung oder offiziellen Unterstützung.


Hinweis für Entwickler

Wenn Sie eigene Skripte bereitstellen, achten Sie bitte darauf, eine klare Beschreibung, eventuelle Einschränkungen und Sicherheitsaspekte zu dokumentieren. Beachten Sie zudem, dass Nutzer Ihre Skripte grundsätzlich auf eigenes Risiko verwenden. Eine Haftung für Schäden ist ausgeschlossen, sofern diese nicht vorsätzlich oder grob fahrlässig verursacht wurden oder gesetzlich anderweitig geregelt ist.

VPN/Proxy erkannt

Es scheint, dass Sie einen VPN- oder Proxy-Dienst verwenden. Bitte beachten Sie, dass die Nutzung eines solchen Dienstes die Funktionalität dieser Webseite einschränken kann.

  • Liebe Leuten,

    ich habe zwei Scripten auf einem Plus1, die gleiche bzw. angleichbare Funktionen nutzen. Das hat den Nachteil, dass ich diesen Code doppelt verwalten muss und damit die Fehleranfälligkeit steigt.

    Gibt es die Möglichkeit diese Funktionen auf andere Scripten auszulagern und von den beiden Ursprungsscripten mit Parametern direkt aufruft bzw. die Ergebnisse zurückzuerhalten. Mit 'Script.Set' kann zwar ein Aufruf ausgelöst werden, sieht aber keine Rückgabe vor. 'HTTP.Get' funktioniert nicht vom selben Gerät aus.

    Schöne Grüsse

    Wolfgang

  • nein, sowas wie include(); oder require(); wie man es aus anderen Sprachen kennt gibt es leider aktuell nicht.

    >100 Shellies, darunter so gut wie alles was der Hersteller produziert hat. ;)
    :!: ich beantworte grundsätzlich keine Fragen per persönlicher Nachricht:!:

  • Jein. Man kann über KVS Daten austauschen.

    Den doppelten Code in ein extra Script.

    Im master mit kvm.set die Parameter setzen

    Im slave mit kvm.get auslesen.

    Habe ein Beispiel, ist aber umfangreich. Müsstest du dich einarbeiten und entsprechen umbauen.

    Einmal editiert, zuletzt von ostfriese (23. April 2023 um 00:16)

  • Habe ein Beispiel, ist aber umfangreich. Müsstest du dich einarbeiten und entsprechen umbauen.

    Könntest du das Beispiel mal posten, das hört sich interessant an.

  • Du hast es nicht anders gewollt :)

    Ich benutze KVS um Daten zwischen master und worker auszutauschen. Z.B. in diesem Fall die Config. Das könnte auch das Problem des TE lösen.

    Müsste er dann nur für sein Problem anpassen.

    master:

    worker:

    Einmal editiert, zuletzt von ostfriese (23. April 2023 um 00:17)

  • Dieses Thema enthält 9 weitere Beiträge, die nur für registrierte Benutzer sichtbar sind.