JSON Script

Nutzung von XML RPC, Remote Script, JSON RPC, XMLAPI

Moderator: Co-Administratoren

Antworten
surfer01
Beiträge: 8
Registriert: 26.04.2020, 07:27

JSON Script

Beitrag von surfer01 » 29.07.2020, 08:33

Hallo,

ich bin mehr der CCU-Nutzer, als Programmierer, wurschtel mich meist so durch, um diverse Sachen umzusetzen.
Nun habe ich ein Problem, wo ich trotz vielem suchens nicht weiter komme.

Ich möchte mit einem JSON-Script, den momentanen Wert der Solaranlage aus dem Solar.Log 500 auslesen, um damit z.b. einen Verbraucher zu schalten, wenn die Stromerzeugung z.b. >500 W ist.
Die Scripte zum auslesen habe ich in dem Handbuch des Solar Log 500, aber wo müssen sie hin?
Wenn ich eine Variable erstelle, kann ich keinen Code eingeben und im Programm erstellen höchstens bei einer DANN .
Was muss also wohin und welche Schritte sind notwendig, damit es funktioniert?
Brauche ich dazu Hilfsprogramme, wie CUx-Daemon oder ähnliches?
Über eure Hilfe wäre ich sehr dankbar.
LG
JSON.png

MichaelN
Beiträge: 9562
Registriert: 27.04.2020, 10:34
System: CCU
Hat sich bedankt: 696 Mal
Danksagung erhalten: 1608 Mal

Re: JSON Script

Beitrag von MichaelN » 29.07.2020, 09:41

Die CCU kann kein JavaScript. Du wirst die Auswertung also in Homematic-Skript umesetzen müssen.
Prinzip ist so:
WEBUI-Programm, das auf einen Auslöser reagiert oder periodisch per Zeitmodul ausgelöst wird
DANN Skript

Dieses Skript sendet den HTTP Befehl, empfängt die JSON-Daten, zerlegt es und schiebt die Daten in die gewünschten Systemvariablen
LG, Michael.

Wenn du eine App zur Bedienung brauchst, dann hast du kein Smarthome.

Wettervorhersage über AccuWeather oder OpenWeatherMap+++ Rollladensteuerung 2.0 +++ JSON-API-Ausgaben auswerten +++ undokumentierte Skript-Befehle und Debugging-Tipps +++

Fonzo
Beiträge: 6687
Registriert: 22.05.2012, 08:40
System: CCU
Hat sich bedankt: 25 Mal
Danksagung erhalten: 478 Mal

Re: JSON Script

Beitrag von Fonzo » 29.07.2020, 13:23

MichaelN hat geschrieben:
29.07.2020, 09:41
Die CCU kann kein JavaScript.
Hängt von der CCU ab, bei einer CCU3 ist der NEO Server vorinstalliert, da ist Javascript die Standardsprache für Skripte.
Dazu muss man, wenn man das nutzten will, einfach ein

Code: Alles auswählen

var http = require('https');
setzten und dann wenn man die Daten abgeholt hat auf die Daten zugreifen über JSON.parse()

MichaelN
Beiträge: 9562
Registriert: 27.04.2020, 10:34
System: CCU
Hat sich bedankt: 696 Mal
Danksagung erhalten: 1608 Mal

Re: JSON Script

Beitrag von MichaelN » 29.07.2020, 13:26

Das hört sich interessant an, kannte ich auch noch nicht. Kannst Du das mal näher ausführen?
Wenn ich dem schon nicht folgen kann, der TO wahrscheinlich dann auch nicht.
LG, Michael.

Wenn du eine App zur Bedienung brauchst, dann hast du kein Smarthome.

Wettervorhersage über AccuWeather oder OpenWeatherMap+++ Rollladensteuerung 2.0 +++ JSON-API-Ausgaben auswerten +++ undokumentierte Skript-Befehle und Debugging-Tipps +++

Fonzo
Beiträge: 6687
Registriert: 22.05.2012, 08:40
System: CCU
Hat sich bedankt: 25 Mal
Danksagung erhalten: 478 Mal

Re: JSON Script

Beitrag von Fonzo » 29.07.2020, 14:16

MichaelN hat geschrieben:
29.07.2020, 13:26
Das hört sich interessant an, kannte ich auch noch nicht. Kannst Du das mal näher ausführen?
Javascript ist die Standardsprache, die auf der CCU3 für Prozesse benutzt wird, die durch den vorinstallierten NEO Server ausgeführt werden.
Macht aber nur Sinn wenn man z.B. NEO bzw. den NEO Server nutzt, dann kann man auf die Skript Console aus dem NEO Creator zugreifen und da normal mit Javascript auf der CCU3 arbeiten.

Da Skripte sich aber an fortgeschrittene Nutzer wendet, und man in der Regel für normale Dinge auch ohne Skripte auskommt, gibt es in der Hinsicht kaum Dokumention. Ein Beispiel wie man Javascript nutzten kann ist z.B. in einem Online Video zu Skripten erläutert.

Wenn es nur um das Auslesen von JSON geht und dem Anzeigen der Werte in NEO kann man das auch mit einem normalen HTTP Request in NEO lösen.

MichaelN hat geschrieben:
29.07.2020, 13:26
Wenn ich dem schon nicht folgen kann, der TO wahrscheinlich dann auch nicht.
Das mag sein, die Dokumention ist in der Hinsicht zu Skripten kaum vorhanden, daher richtet sich das wohl an Nutzer, die wissen was sie im Detail tun, bzw. sich mit Javascript bereits auskennen.

Benutzeravatar
Black
Beiträge: 5463
Registriert: 12.09.2015, 22:31
System: Alternative CCU (auf Basis OCCU)
Wohnort: Wegberg
Hat sich bedankt: 418 Mal
Danksagung erhalten: 1069 Mal
Kontaktdaten:

Re: JSON Script

Beitrag von Black » 31.07.2020, 09:59

gerade für Solarlog gibt es hier im Forum sehr viele Lösungen, die auf einer CCU nativ ohne die wie immer beworbene Zusatzsoftware laufen.

Ein JSON lässt sich, wenn man nur ein paar Werte beötigt, auch über HMScript auswerten, eine raspberrymatik bringt dafür standartmäßig schon jq (https://stedolan.github.io/jq/manual/) mit.

Gruss, Black
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg

Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann

Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W

technical contribution against annoying advertising

surfer01
Beiträge: 8
Registriert: 26.04.2020, 07:27

Re: JSON Script

Beitrag von surfer01 » 01.08.2020, 08:32

Also ich habe eine CCU2 (momentan noch) und habe sehr viel hier das Forum durchforstet, aber es gibt halt immer nur Bruchstücke, die ich nicht in ein Ganzes bekomme.

Antworten

Zurück zu „Softwareentwicklung von externen Applikationen“