NEWS
(gelöst) Längen- und Breitengrade
-
Hallo zusammen,
Ich spiele gerade mit dem NPM-Modul https://www.npmjs.com/package/suncalc. Bei einigen Befehlen sollen die Längen- und Breitengrade eingegeben werden. Diese sind ja bereits in ioBroker unter Haupteinstellungen verfügbar. (Wo) Kann ich diese unter
Objekte
finden, bzw. gibt es eine Möglichkeit diese um JS direkt zu verwenden? -
@ice987 sagte in Längen- und Breitengrade:
gibt es eine Möglichkeit diese um JS direkt zu verwenden?
ja, indem du in der js-Konfiguration die Checkbox Systemeinstellungen verwenden anhakst.
Die Sache hat nur einen Haken: sie funktioniert nicht
Also in der Konfig nochmals die Geokoordinaten eintragen.
Suncalc ist übrigens bereits in javascript enthalten -
@ice987 sagte: gibt es eine Möglichkeit diese um JS direkt zu verwenden?
const suncalc = require('suncalc'); const jsa = getObject("system.adapter.javascript.0"); const lat = jsa.native.latitude; const long = jsa.native.longitude;
-
@ice987 Hast du diesen Adapter auch schon gesehen? Der benutzt intern suncalc:
https://github.com/walli545/ioBroker.time-switch -
@paul53 sagte in Längen- und Breitengrade:
const suncalc = require('suncalc'); const jsa = getObject("system.adapter.javascript.0"); const lat = jsa.native.latitude; const long = jsa.native.longitude;
genau das habe ich gesucht, vielen Dank. Leider sind diese Werte bei mir leer, obwohl die Längen- und Breitengrade unter Haupteinstellungen in ioBroker korrekt angezeigt werden.
mit
const jsa = getObject("system.adapter.javascript.0"); if (LOG_DEBUG) log("jsa: " + JSON.stringify(jsa));
kriege ich die Ausgabe hin, jedoch sind die beiden Werte leer
(...) {"latitude":"","longitude":"", (...)
. Wie werden diese gefüllt?@UncleSam
Vielen Dank für den Link, den Adapter muss ich mir mal ansehen -
@ice987 sagte in Längen- und Breitengrade:
Leider sind diese Werte bei mir leer, obwohl die Längen- und Breitengrade unter Haupteinstellungen in ioBroker korrekt angezeigt werden.
Stell die im javascript-Adapter nochmal gesondert ein.
-
@thomas-braun
achso, jetzt verstehe ich auch @Homoran :
unter
Haken rausnehmen und die Koordinaten noch einmal reinschreiben -
@ice987
Richtig. -
@thomas-braun
tatsächlich: Funktioniert, Vielen Dank -
-
@thomas-braun Oder einfach die System-Einstellungen nehmen:
'system.config'
-->common.latitude
etc.const config= getObject("system.config"); const lat = config.common.latitude; const long = config.common.longitude;
Sollte auch gehen.
-
@unclesam Keine Ahnung... Bin doch Javascript-Legastheniker.
-
@unclesam sagte in Längen- und Breitengrade:
Oder einfach die System-Einstellungen nehmen:
'system.config'
-->common.latitude
etc.const config= getObject("system.config"); const lat = config.common.latitude; const long = config.common.longitude;
das geht auch! (ist sogar noch etwas eleganter, aber über Eleganz kann man sich natürlich streiten ) Danke!