Reading two temperature sensors from shelly addon

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.

  • I want to read the temperature of sensor ID100 and sensorID101.

    tried to use the following script but I'm getting Syntax error

    // Configuration
    let tempSensor1ID = 100;
    let tempSensor2ID = 101;
    let logInterval = 5000; // Logging interval in milliseconds (5 seconds)

    // Function to get the temperature value of a sensor
    function getTemperature(sensorID) {
    let status = Shelly.getDeviceStatus({
    id: sensorID,
    component: "temperature",
    });
    return status.value;
    }

    // Function to log temperatures
    function logTemperatures() {
    // Read temperatures
    let temp1 = getTemperature(tempSensor1ID);
    let temp2 = getTemperature(tempSensor2ID);

    // Log the temperatures to the console
    print(`Sensor 1 Temperature: ${temp1}°C`);
    print(`Sensor 2 Temperature: ${temp2}°C`);
    }

    // Set up a timer to log temperatures periodically
    Timer.set(logInterval, true, logTemperatures);

    what am I doing wrong ?

    2 Mal editiert, zuletzt von ilansch (29. November 2024 um 23:03)

  • The script runs on the Shelly with the IP 192.168.178.150 and accesses the Shelly with the IP 192.168.178.155 to which the temperature sensor is connected via the AddOn.

    If you want to query the script on the Shelly with AddOn and temperature sensor you have to change the line:

    Code
    { url: "http://192.168.178.155/rpc/Temperature.GetStatus?id=" + id },

    to line.

    Code
    { url: "http://127.0.0.1/rpc/Temperature.GetStatus?id=" + id },

    Einmal editiert, zuletzt von Viedotraum (30. November 2024 um 19:16)