Hallo an alle Experten
Ich habe einige Fragen bezüglich dieses Themas an die KI gestellt - die Antworten haben mich viele Stunden Lebenszeit gekostet ![]()
Darum hier meine (1.) Frage an euch:
Ich habe im Webinterface folgendes Skript angelegt:
// — Shelly Gen 3 Skript: Webhook an IP-Symcon senden —
// 1. BITTE ANPASSEN:
// Ersetze dies mit der Webhook-URL, die du in IP-Symcon erstellt hast.
let IP_SYMCON_WEBHOOK_URL = „http://192.168.2.2:3777/hook/Shelly-Test“;// 2. Die Nachricht, die wir senden wollen
// (Leerzeichen müssen URL-kodiert werden, z.B. " " wird zu „%20“)
let nachricht = „Hallo%20Welt“;// 3. Die URL für den Aufruf zusammenbauen
// Wir hängen die Nachricht als URL-Parameter ‚text‘ an.
// In IP-Symcon wird dies als $_GET[‚text‘] verfügbar sein.
let targetURL = IP_SYMCON_WEBHOOK_URL + „?message=“ + nachricht;// 4. Den Webhook (HTTP GET) aufrufen
console.log(„Sende Test-Webhook an:“, targetURL);Shelly.call(
„HTTP.GET“,
{
url: targetURL,
timeout: 5 // Timeout von 5 Sekunden
},
function (response, error_code, error_message) {
// Diese Funktion wird aufgerufen, wenn der Aufruf beendet istif (error_code === 0) { // Erfolg! console.log("Webhook erfolgreich gesendet!"); // Optional: Zeige die Antwort vom IP-Symcon Server an // console.log("Server-Antwort:", response.body); } else { // Fehler console.log("Fehler beim Senden des Webhooks:"); console.log("Fehlercode:", error_code); console.log("Fehlermeldung:", error_message); }}
);
Ich Symcon habe ich eine Variable an angelegt und ein Skript für den Webhook:
// 1. Die ID deiner Ziel-Variable hier eintragen
$targetVariableID = 41633; // ← WICHTIG: Ersetze 12345 durch die ID deiner Variable!
// 2. Den Wert aus der URL auslesen (der Teil nach „?value=“)
if (isset($_GET[‚message‘])) {
// Den Wert in eine Kommazahl umwandeln, um sicherzugehen// $meldung = floatval($_GET[‚value‘]);
$meldung = ($_GET[‚message‘]);
// 3. Den ausgelesenen Wert in die Variable schreiben SetValue($targetVariableID, $meldung); // Optional: Eine kurze Bestätigung für den Browser ausgeben echo "Meldung " . $meldung . " wurde erfolgreich gespeichert."; } else { // Fehlermeldung, falls der "value"-Parameter in der URL fehlt echo "Fehler: Der Parameter 'message' wurde nicht übergeben.";}
Alles super - funktioniert:
Wie muss ein Skript aussehen, dass mir den Status der Steckdose bei Änderung sendet?
Schönes Wochenende
Stoner
