NEWS
-
Hallo zusammen,
ich möchte euch meinen neuen Adapter an dem ich aktuell arbeite vorstellen - LinkedDevices.
Die Idee und insperation kommen aus dem Virtual Devices Skript von @Pman.https://github.com/Scrounger/ioBroker.linkeddevices
Funktionsweise:
Ihr könnt euch verlinkte Objekte (Datenpunkte) für all eure verwendeten Objekte (Datenpunkte) anlegen und dafür individuelle IDs vergeben, um Euch eine Struktur anzulegen, wie Ihr sie gerne haben möchtet.
Vorteil ist, dass es nur noch einen Ort gibt, wo alle Objekte die Ihr im vis oder Skripten verwendet, definert sind. Weiterer Vorteil ist, wenn ihr mal die Hardware tauschen müsst, dann müsst ihr nur die verlinkten Objekte auf die neue Hardware anpassen und die Skripte und vis funktionieren sofort wieder.
Später sollen noch Funktionen wie z.B. umrechnungen etc. dazu kommen, wie es im Virtual Devices Skript auch möglich istAktuell findet ihr im Repository einen Arbeitsstand (Alpha version!), deshalb bitte nicht im produktiv einsetzen, weil ich aktuell daran noch arbeite.
Hier mal ein Beispiel wie eine selbstdefinierte Struktur aussehen kann:

Hallo, irgendwo habe ich einen Fehler:
linkeddevices.0 2020-06-07 10:57:11.560 error (1576) [getConvertedValue] there is something wrong with your datetime parser, check your expert settings input for 'linkeddevices.0.Start Abend.startAbend'! linkeddevices.0 2020-06-07 10:57:11.559 error (1576) [getConvertedValue] there is something wrong with your datetime parser, check your expert settings input for 'linkeddevices.0.Start Morgen.startMorgen'!
RAW vom DP:
{ "from": "system.adapter.gartenbewaesserung.0", "user": "system.user.admin", "ts": 1587042880603, "common": { "name": "startAbend", "role": "indicator", "type": "string", "unit": "Uhr", "write": false, "read": true, "custom": { "linkeddevices.0": { "enabled": true, "number_unit": "", "linkedId": "Start Abend.startAbend", "name": "Start Abend", "role": "", "mergeSettingsOnRestart": false, "expertSettings": true, "number_convertTo": "", "number_maxDecimal": "", "number_min": "", "number_max": "", "number_calculation": "", "number_calculation_readOnly": "", "number_to_boolean_condition": "", "number_to_boolean_value_true": "", "number_to_boolean_value_false": "", "number_to_string_condition": "", "number_to_duration_convert_seconds": "", "number_to_duration_format": "", "number_to_datetime_convert_seconds": "", "number_to_datetime_format": "", "number_to_multi_condition": "", "boolean_convertTo": "", "boolean_to_string_value_true": "", "boolean_to_string_value_false": "", "string_convertTo": "datetime", "string_prefix": "", "string_suffix": "", "string_to_boolean_value_true": "", "string_to_boolean_value_false": "", "string_to_number_unit": "", "string_to_number_maxDecimal": "", "string_to_number_calculation": "", "string_to_number_calculation_readOnly": "", "string_to_duration_format": "", "string_to_datetime_parser": "'y[J] d[T] hh[h] mm[m]'", "string_to_datetime_format": "LLLL" } } }, "native": {}, "acl": { "object": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator", "state": 1636 }, "_id": "gartenbewaesserung.0.status.startAbend", "type": "state" } -
Hallo, irgendwo habe ich einen Fehler:
linkeddevices.0 2020-06-07 10:57:11.560 error (1576) [getConvertedValue] there is something wrong with your datetime parser, check your expert settings input for 'linkeddevices.0.Start Abend.startAbend'! linkeddevices.0 2020-06-07 10:57:11.559 error (1576) [getConvertedValue] there is something wrong with your datetime parser, check your expert settings input for 'linkeddevices.0.Start Morgen.startMorgen'!
RAW vom DP:
{ "from": "system.adapter.gartenbewaesserung.0", "user": "system.user.admin", "ts": 1587042880603, "common": { "name": "startAbend", "role": "indicator", "type": "string", "unit": "Uhr", "write": false, "read": true, "custom": { "linkeddevices.0": { "enabled": true, "number_unit": "", "linkedId": "Start Abend.startAbend", "name": "Start Abend", "role": "", "mergeSettingsOnRestart": false, "expertSettings": true, "number_convertTo": "", "number_maxDecimal": "", "number_min": "", "number_max": "", "number_calculation": "", "number_calculation_readOnly": "", "number_to_boolean_condition": "", "number_to_boolean_value_true": "", "number_to_boolean_value_false": "", "number_to_string_condition": "", "number_to_duration_convert_seconds": "", "number_to_duration_format": "", "number_to_datetime_convert_seconds": "", "number_to_datetime_format": "", "number_to_multi_condition": "", "boolean_convertTo": "", "boolean_to_string_value_true": "", "boolean_to_string_value_false": "", "string_convertTo": "datetime", "string_prefix": "", "string_suffix": "", "string_to_boolean_value_true": "", "string_to_boolean_value_false": "", "string_to_number_unit": "", "string_to_number_maxDecimal": "", "string_to_number_calculation": "", "string_to_number_calculation_readOnly": "", "string_to_duration_format": "", "string_to_datetime_parser": "'y[J] d[T] hh[h] mm[m]'", "string_to_datetime_format": "LLLL" } } }, "native": {}, "acl": { "object": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator", "state": 1636 }, "_id": "gartenbewaesserung.0.status.startAbend", "type": "state" } -
@Scrounger sagte in [Neuer Adapter] LinkedDevices:
@sigi234
Zeig Mal den Wert des DatenpunktesSun Jun 07 2020 21:06:25 GMT+0200 -
@Scrounger sagte in [Neuer Adapter] LinkedDevices:
@sigi234
Zeig Mal den Wert des DatenpunktesSun Jun 07 2020 21:06:25 GMT+0200 -
@sigi234 sagte in [Neuer Adapter] LinkedDevices:
Sun Jun 07 2020 21:06:25 GMT+0200
Lass das feld mit parser format leer, dann müsste es gehen.
@Scrounger sagte in [Neuer Adapter] LinkedDevices:
@sigi234 sagte in [Neuer Adapter] LinkedDevices:
Sun Jun 07 2020 21:06:25 GMT+0200
Lass das feld mit parser format leer, dann müsste es gehen.
Leider nein, bekomme dann ja das angezeigt was ich nicht will.
Bei sonnenaufgang funktioniert es:
Original Wert:
05:05:01 GMT+0200 (GMT+02:00)Linkeddevice:
Dienstag, 9. Juni 2020 02:00Ich denke entscheidend ist der Originalwert das Zeitformat:

linkeddevices.0 2020-06-08 11:52:41.865 info (2584) [initialObjects] finished linkeddevices.0 2020-06-08 11:52:41.863 info (2584) [createAllLinkedObjects] count of active linkedObjects: 8 linkeddevices.0 2020-06-08 11:52:41.860 info (2584) [createLinkedObject] linked object 'gartenbewaesserung.0.status.startAbend' to 'linkeddevices.0.Start Abend.startAbend' linkeddevices.0 2020-06-08 11:52:41.856 error (2584) [getCustomDataTypeString] no datetime parser set for parentObject 'gartenbewaesserung.0.status.startAbend' -> check your expertsettings! linkeddevices.0 2020-06-08 11:52:41.854 info (2584) [createLinkedObject] linked object 'gartenbewaesserung.0.status.startMorgen' to 'linkeddevices.0.Start Morgen.startMorgen' linkeddevices.0 2020-06-08 11:52:41.850 error (2584) [getCustomDataTypeString] no datetime parser set for parentObject 'gartenbewaesserung.0.status.startMorgen' -> check your expertsettings! linkeddevices.0 2020-06-08 11:52:41.848 info (2584) [createLinkedObject] linked object 'gartenbewaesserung.0.status.sonnenuntergang' to 'linkeddevices.0.Sonnenuntergang Garten.sonnenuntergang' linkeddevices.0 2020-06-08 11:52:41.842 info (2584) [createLinkedObject] linked object 'gartenbewaesserung.0.status.sonnenaufgang' to 'linkeddevices.0.Sonnenaufgang Garten.sonnenaufgang' linkeddevices.0 2020-06-08 11:52:41.835 info (2584) [createLinkedObject] linked object 'gartenbewaesserung.0.status.restzeit_sek' to 'linkeddevices.0.Restzeit Min.restzeit_sek' linkeddevices.0 2020-06-08 11:52:41.829 info (2584) [createLinkedObject] linked object 'gartenbewaesserung.0.status.lautzeit_gesamt_in_sek' to 'linkeddevices.0.Laufzeit Gesamt.lautzeit_gesamt_in_sek' linkeddevices.0 2020-06-08 11:52:41.819 info (2584) [createLinkedObject] linked object 'gartenbewaesserung.0.status.lautzeit_ende_uhrzeit' to 'linkeddevices.0.Laufzeit Ende Garten.lautzeit_ende_uhrzeit' linkeddevices.0 2020-06-08 11:52:41.817 error (2584) [getConvertedValue] there is something wrong with your datetime parser, check your expert settings input for 'linkeddevices.0.Laufzeit Ende Garten.lautzeit_ende_uhrzeit'! linkeddevices.0 2020-06-08 11:52:41.713 info (2584) [createLinkedObject] linked object 'wifilight.0.192_168_178_28.on' merged to 'linkeddevices.0.Led Wohnzimmer.on' -
@Scrounger sagte in [Neuer Adapter] LinkedDevices:
@sigi234 sagte in [Neuer Adapter] LinkedDevices:
Sun Jun 07 2020 21:06:25 GMT+0200
Lass das feld mit parser format leer, dann müsste es gehen.
Leider nein, bekomme dann ja das angezeigt was ich nicht will.
Bei sonnenaufgang funktioniert es:
Original Wert:
05:05:01 GMT+0200 (GMT+02:00)Linkeddevice:
Dienstag, 9. Juni 2020 02:00Ich denke entscheidend ist der Originalwert das Zeitformat:

linkeddevices.0 2020-06-08 11:52:41.865 info (2584) [initialObjects] finished linkeddevices.0 2020-06-08 11:52:41.863 info (2584) [createAllLinkedObjects] count of active linkedObjects: 8 linkeddevices.0 2020-06-08 11:52:41.860 info (2584) [createLinkedObject] linked object 'gartenbewaesserung.0.status.startAbend' to 'linkeddevices.0.Start Abend.startAbend' linkeddevices.0 2020-06-08 11:52:41.856 error (2584) [getCustomDataTypeString] no datetime parser set for parentObject 'gartenbewaesserung.0.status.startAbend' -> check your expertsettings! linkeddevices.0 2020-06-08 11:52:41.854 info (2584) [createLinkedObject] linked object 'gartenbewaesserung.0.status.startMorgen' to 'linkeddevices.0.Start Morgen.startMorgen' linkeddevices.0 2020-06-08 11:52:41.850 error (2584) [getCustomDataTypeString] no datetime parser set for parentObject 'gartenbewaesserung.0.status.startMorgen' -> check your expertsettings! linkeddevices.0 2020-06-08 11:52:41.848 info (2584) [createLinkedObject] linked object 'gartenbewaesserung.0.status.sonnenuntergang' to 'linkeddevices.0.Sonnenuntergang Garten.sonnenuntergang' linkeddevices.0 2020-06-08 11:52:41.842 info (2584) [createLinkedObject] linked object 'gartenbewaesserung.0.status.sonnenaufgang' to 'linkeddevices.0.Sonnenaufgang Garten.sonnenaufgang' linkeddevices.0 2020-06-08 11:52:41.835 info (2584) [createLinkedObject] linked object 'gartenbewaesserung.0.status.restzeit_sek' to 'linkeddevices.0.Restzeit Min.restzeit_sek' linkeddevices.0 2020-06-08 11:52:41.829 info (2584) [createLinkedObject] linked object 'gartenbewaesserung.0.status.lautzeit_gesamt_in_sek' to 'linkeddevices.0.Laufzeit Gesamt.lautzeit_gesamt_in_sek' linkeddevices.0 2020-06-08 11:52:41.819 info (2584) [createLinkedObject] linked object 'gartenbewaesserung.0.status.lautzeit_ende_uhrzeit' to 'linkeddevices.0.Laufzeit Ende Garten.lautzeit_ende_uhrzeit' linkeddevices.0 2020-06-08 11:52:41.817 error (2584) [getConvertedValue] there is something wrong with your datetime parser, check your expert settings input for 'linkeddevices.0.Laufzeit Ende Garten.lautzeit_ende_uhrzeit'! linkeddevices.0 2020-06-08 11:52:41.713 info (2584) [createLinkedObject] linked object 'wifilight.0.192_168_178_28.on' merged to 'linkeddevices.0.Led Wohnzimmer.on' -
@Scrounger sagte in [Neuer Adapter] LinkedDevices:
@sigi234
trag das bei parser einddd MMM MM YYYY hh:mm:ss.
-
@Scrounger sagte in [Neuer Adapter] LinkedDevices:
@sigi234
trag das bei parser einddd MMM MM YYYY hh:mm:ss.
-
@Scrounger sagte in [Neuer Adapter] LinkedDevices:
ist das die Unit?
Ja
Unit gelöscht, geht auch nicht. Da kommt invalide date
-
@Scrounger sagte in [Neuer Adapter] LinkedDevices:
@sigi234
trag das bei parser einddd MMM MM YYYY hh:mm:ss.Wahrscheinlich blöde Idee, aber "MMM" für den Tag?
Sollte das nicht eher in der Art sein:ddd DD MM YYYY hh:mm:ss -
@Scrounger sagte in [Neuer Adapter] LinkedDevices:
@sigi234
trag das bei parser einddd MMM MM YYYY hh:mm:ss.Wahrscheinlich blöde Idee, aber "MMM" für den Tag?
Sollte das nicht eher in der Art sein:ddd DD MM YYYY hh:mm:ss -
@paul53 sagte in [Neuer Adapter] LinkedDevices:
@sigi234
Versuche mal: ddd MMM DD YYYY HH:mm:ssLeider nein.
Edit:
LÖSUNG:
HH:mm:ss -
@paul53 sagte in [Neuer Adapter] LinkedDevices:
@sigi234
Versuche mal: ddd MMM DD YYYY HH:mm:ssLeider nein.
Edit:
LÖSUNG:
HH:mm:ss -
@sigi234 sagte:
LÖSUNG:
Ja, wenn die Uhrzeit ausreicht. Ich habe mal etwas getestet: Die Wochentags- und Monatsbezeichnung mit 3 Buchstaben funktioniert nicht. Schreibt man den Wochentag und den Monatsnamen aus, funktioniert das Parsen.
@paul53 sagte in [Neuer Adapter] LinkedDevices:
Ja, wenn die Uhrzeit ausreicht
Nö, kommt aber Richtig:

-
@paul53 sagte in [Neuer Adapter] LinkedDevices:
Ja, wenn die Uhrzeit ausreicht
Nö, kommt aber Richtig:

-
@paul53 sagte in [Neuer Adapter] LinkedDevices:
Ja, wenn die Uhrzeit ausreicht
Nö, kommt aber Richtig:

@sigi234
Woher kommen die daten vongartenbewaesserung.0?
Am besten wäre wenn die Datenpunkte timestamps zur Verfügung stellen würden und nicht "so komische" Format. Dann kann man das nämlich super in sein eigenes Format umwandeln - u.a. auch im VIS mit dem Timestamp Widget. -
@sigi234
Woher kommen die daten vongartenbewaesserung.0?
Am besten wäre wenn die Datenpunkte timestamps zur Verfügung stellen würden und nicht "so komische" Format. Dann kann man das nämlich super in sein eigenes Format umwandeln - u.a. auch im VIS mit dem Timestamp Widget.@Scrounger sagte in [Neuer Adapter] LinkedDevices:
Woher kommen die daten von gartenbewaesserung.0 ?
Von einen Adapter:
https://forum.iobroker.net/topic/32213/test-adapter-gartenbewässerung-v0-0-x
-
@Scrounger sagte in [Neuer Adapter] LinkedDevices:
Woher kommen die daten von gartenbewaesserung.0 ?
Von einen Adapter:
https://forum.iobroker.net/topic/32213/test-adapter-gartenbewässerung-v0-0-x
-
Hallo zusammen, darf ich mal rein grätschen?
@Scrounger du bist doch der Entwickler von dem Materialdesign Adapter - richtig?
Hast du ggf. eine Erklärung hierfür - kann das an deinem Adapter / den Widgets liegen?
https://forum.iobroker.net/topic/34195/vis-bilder-remote-unvollständig-verschoben
-
Hi Kann man auch LinkedDevice mit mehreren echten Devices über diesen Adapter verlinken?
Hintergrund, habe 1 Lampe mit 3 Birnen, will nicht die Birnen einzeln steuern sondern die ganze "Gruppe". Überlege ob es mit diesem Adapter machbar ist.
Viele Grüße, David
