UPGRADE IP 9 verfügbar!
Timberwolf VISU jetzt mit NEUEM Layout Editor
Freie Anordnung, Reihenfolge und Größe der Widgets - viele weitere Verbesserungen
Infos im Wiki: https://elabnet.atlassian.net/l/cp/06SeuHRJ

NEU! Insider & Leistungsmerkmale FÜR ALLE freigeschaltet
Damit kann nun jeder das Upgrade vornehmen und VISU & IFTTT testen. Alle Info hier: viewtopic.php?f=8&t=5074

[TOP TIPP] [V1.5 RC9] Wie kann man eine Custom Logik aus Standard-Bausteinen erstellen?

Informationen und Diskussionen über Logik-Engine und Logik-Editor
Forumsregeln
  • Denke bitte an aussagekräftige Titel und gebe dort auch die [Firmware] an. Wenn ETS oder CometVisu beteiligt sind, dann auch deren Version
  • Bitte mache vollständige Angaben zu Deinem Server, dessen ID und dem Online-Status in Deiner Signatur. Hilfreich ist oft auch die Beschreibung der angeschlossener Hardware sowie die verwendeten Protokolle
  • Beschreibe Dein Projekt und Dein Problem bitte vollständig. Achte bitte darauf, dass auf Screenshots die Statusleiste sichtbar ist
  • Bitte sei stets freundlich und wohlwollend, bleibe beim Thema und unterschreibe mit deinem Vornamen. Bitte lese alle Regeln, die Du hier findest: https://wiki.timberwolf.io/Forenregeln
Benutzeravatar

Ersteller
bodo
Reactions:
Beiträge: 283
Registriert: So Aug 12, 2018 7:01 am
Hat sich bedankt: 271 Mal
Danksagung erhalten: 106 Mal

[V1.5 RC9] Wie kann man eine Custom Logik aus Standard-Bausteinen erstellen?

#1

Beitrag von bodo »

Hoi

Ich dachte ich könnte von der Astro-Logik den GE-Text generieren und damit eine Custom-Logik bauen. :D
Ich sehe zwei Textblöcke im GE-Text.
Einfach beide aneinander hängen geht nicht:
Bild
Die geschweiften Klammern in der Mitte löschen bringt auch nix:
Bild
Ein Komma ergänzt:
Bild
Nur den zweiten Block nehmen geht auch nicht:
Bild
Wie kann ich vorgehen? :confusion-helpsign:
Zuletzt geändert von StefanW am Mo Nov 04, 2019 12:05 pm, insgesamt 5-mal geändert.
Grüsse Bodo

TWS 2400 ID:64, VPN offen, Reboot möglich * Wiregate * zahlreiche 1-Wire Sensoren * einige BlitzART

Matze76
Reactions:
Beiträge: 314
Registriert: Mo Sep 24, 2018 9:59 am
Hat sich bedankt: 280 Mal
Danksagung erhalten: 195 Mal

#2

Beitrag von Matze76 »

Hallo Bodo,

was möchtest du denn mit dem angepassten Astro-Baustein erreichen?
Gruß
Matthias

TWS 2500 ID:110 + PBM, VPN offen, Reboot nach Rücksprache
Benutzeravatar

Ersteller
bodo
Reactions:
Beiträge: 283
Registriert: So Aug 12, 2018 7:01 am
Hat sich bedankt: 271 Mal
Danksagung erhalten: 106 Mal

#3

Beitrag von bodo »

Hoi Matthias
Ich fange ja gerade erst an.
Ich versuche zu lernen wie das Ganze funktioniert. Wie die Wiederverwertbarkeit des Codes funktioniert und welche Bausteine es gibt.
Und wozu der LE-Code gut ist.
Zuletzt geändert von bodo am Mo Nov 04, 2019 12:33 pm, insgesamt 5-mal geändert.
Grüsse Bodo

TWS 2400 ID:64, VPN offen, Reboot möglich * Wiregate * zahlreiche 1-Wire Sensoren * einige BlitzART

Matze76
Reactions:
Beiträge: 314
Registriert: Mo Sep 24, 2018 9:59 am
Hat sich bedankt: 280 Mal
Danksagung erhalten: 195 Mal

#4

Beitrag von Matze76 »

Ah, ok. Ich dachte es ging speziell um den Astro-Baustein. Gerade den würde ich persönlich nie direkt verbiegen wollen (weiß auch gar nicht, ob das geht), sondern den Output zur Weiterverarbeitung einfach in darauf aufbauenden Logik-Bausteinen verwenden.

Aber allgemein eine interessante Fragestellung. Auch bei Custom-Logiken selbst sieht der generierte Code mit seiner Zweiteilung anders aus als der Code, den man eingegeben oder hineinkopiert hat (dieser wird bei Klick auf den Namen der Logik angezeigt und ist hier auch editierbar).
Gruß
Matthias

TWS 2500 ID:110 + PBM, VPN offen, Reboot nach Rücksprache

Dragonos2000
Reactions:
Beiträge: 2181
Registriert: So Aug 12, 2018 1:38 pm
Wohnort: Karlsruher Raum
Hat sich bedankt: 481 Mal
Danksagung erhalten: 889 Mal

#5

Beitrag von Dragonos2000 »

Aus meinem Verständnis heraus, würde ich den LE-Code mit Java Bytecode vergleichen, also quasi für die Ausführung in der Engine Precompiled (parsed).

Ist aber nur meine Sicht/Interpretation...
Lg
Jochen
____________________________________________________________
TW 2600 #188
VPN offen, Zugriff jederzeit, Experimente jederzeit, Reboot jederzeit
Benutzeravatar

Ersteller
bodo
Reactions:
Beiträge: 283
Registriert: So Aug 12, 2018 7:01 am
Hat sich bedankt: 271 Mal
Danksagung erhalten: 106 Mal

#6

Beitrag von bodo »

Matze76 hat geschrieben: Mo Nov 04, 2019 2:10 pm ... Aber allgemein eine interessante Fragestellung. Auch bei Custom-Logiken selbst sieht der generierte Code mit seiner Zweiteilung anders aus als der Code, den man eingegeben oder hineinkopiert hat (dieser wird bei Klick auf den Namen der Logik angezeigt und ist hier auch editierbar).
Hoi Matthias
Ja ich hätte erwartet/mir gewünscht, auch beim Astro-Baustein den "Code" zu sehen... :dance: :clap:
Wozu ist denn der LE-Code gut? :shhh: :shifty: :think:
Zuletzt geändert von bodo am Mo Nov 04, 2019 5:30 pm, insgesamt 1-mal geändert.
Grüsse Bodo

TWS 2400 ID:64, VPN offen, Reboot möglich * Wiregate * zahlreiche 1-Wire Sensoren * einige BlitzART

Dragonos2000
Reactions:
Beiträge: 2181
Registriert: So Aug 12, 2018 1:38 pm
Wohnort: Karlsruher Raum
Hat sich bedankt: 481 Mal
Danksagung erhalten: 889 Mal

#7

Beitrag von Dragonos2000 »

Genutzt hab' ich ihn schon, um Cron Strings "zu gammeln". Mitunter auch hilfreich bei der Fehlersuche, wenn sich eine Logik nicht richtig speichern lässt: Dann kannst Du sehen, ob evtl. irgendwelche Level o.ä. nicht aufgelöst werden. Inzwischen fängt der Editor aber schon viel mehr Fehler ab als zu Beginn.

Im Normalfall m.E. also eher nicht interessant...
Zuletzt geändert von Dragonos2000 am Mo Nov 04, 2019 6:24 pm, insgesamt 1-mal geändert.
Lg
Jochen
____________________________________________________________
TW 2600 #188
VPN offen, Zugriff jederzeit, Experimente jederzeit, Reboot jederzeit

Robert_Mini
Reactions:
Beiträge: 3741
Registriert: So Aug 12, 2018 8:44 am
Hat sich bedankt: 1164 Mal
Danksagung erhalten: 2058 Mal

#8

Beitrag von Robert_Mini »

Ich würde auch die Finger davon lassen...
Kopieren und nachsehen in Custom-Logiken von anderen Usern :handgestures-thumbupright: , Standardbausteine :handgestures-thumbdown: .

Robert
Timberwolf Server 2500 / #117 (VPN offen + reboot nach Rückfrage) / zusätzlich: 3500M/#935, 3500L/#1297

S. Kolbinger
Elaborated Networks
Reactions:
Beiträge: 588
Registriert: Mi Aug 15, 2018 11:34 am
Hat sich bedankt: 82 Mal
Danksagung erhalten: 558 Mal

#9

Beitrag von S. Kolbinger »

.... wenn's weiter nichts ist ;)

Astro local:

Code: Alles auswählen

{
      "Level": [
        ["$Altitude","float",0],
        ["$Azimute","float",0],
        ["$Transit","integer",0],
        ["$Sunrise","integer",0],
        ["$Sunset","integer",0],
        ["$Civil_dawn","integer",0],
        ["$Civil_dusk","integer",0],
        ["$Naut_dawn","integer",0],
        ["$Naut_dusk","integer",0],
        ["$Astro_dawn","integer",0],
        ["$Astro_dusk","integer",0],
        ["$Alt_moon","float",0],
        ["$Azi_moon","float",0],
        ["$VAR<Inhibit?>", "bool", false]
      ],
      "Module": [
        ["Break", ["$VAR<Inhibit?>"]],
        ["Astro",[0,  0],"$Altitude","$Azimute","$Transit","$Sunrise","$Sunset","$Civil_dawn","$Civil_dusk","$Naut_dawn","$Naut_dusk","$Astro_dawn","$Astro_dusk","$Alt_moon","$Azi_moon"]
      ],
      "Input": [
        ["Inhibit", "INHIBIT", "$VAR<Inhibit?>", "u"]
      ],
      "Output": [
        ["Sonnenhöhe","Sonne: Höhe über Horizont","$Altitude?","c"],
        ["Sonnenrichtung","Sonne: Kompassrichtung","$Azimute?","c"],
        ["Mittag","Wahrer Mittag","$Transit?","c"],
        ["Aufgang","Sonnenaufgang (Horizont)","$Sunrise?","c"],
        ["Untergang","Sonnenuntergang (Horizont)","$Sunset?","c"],
        ["Morgen(ziv)","Zivile Morgendämmerung","$Civil_dawn?","c"],
        ["Abend(ziv)","Zivile Abenddämmerung","$Civil_dusk?","c"],
        ["Morgen(naut)","Nautische Morgendämmerung","$Naut_dawn?","c"],
        ["Abend(naut)","Nautische Abenddämmerung","$Naut_dusk?","c"],
        ["Morgen(astro)","Astronomische Morgendämmerung","$Astro_dawn?","c"],
        ["Abend(astro)","Astronomische Abenddämmerung","$Astro_dusk?","c"],
        ["Mondhöhe","Mond: Höhe über Horizont","$Alt_moon?","c"],
        ["Mondrichtung","Mond: Kompassrichtung","$Azi_moon?","c"]
      ]
}

Astro geo:

Code: Alles auswählen

{
      "Level": [
        ["$Latitude","float",48.1378],
        ["$Longitude","float",11.5799],
        ["$Altitude","float",0],
        ["$Azimute","float",0],
        ["$Transit","integer",0],
        ["$Sunrise","integer",0],
        ["$Sunset","integer",0],
        ["$Civil_dawn","integer",0],
        ["$Civil_dusk","integer",0],
        ["$Naut_dawn","integer",0],
        ["$Naut_dusk","integer",0],
        ["$Astro_dawn","integer",0],
        ["$Astro_dusk","integer",0],
        ["$Alt_moon","float",0],
        ["$Azi_moon","float",0],
        ["$VAR<Inhibit?>", "bool", false]
      ],
      "Module": [
        ["Break", ["$VAR<Inhibit?>"]],
        ["Astro",["$Latitude",  "$Longitude"],"$Altitude","$Azimute","$Transit","$Sunrise","$Sunset","$Civil_dawn","$Civil_dusk","$Naut_dawn","$Naut_dusk","$Astro_dawn","$Astro_dusk","$Alt_moon","$Azi_moon"]
      ],
      "Input": [
        ["Breite","Geographische Breite","$Latitude","c"],
        ["Länge","Geographische Länge","$Longitude","c"],
        ["Inhibit", "INHIBIT", "$VAR<Inhibit?>", "u"]
      ],
      "Output": [
        ["Sonnenhöhe","Sonne: Höhe über Horizont","$Altitude?","c"],
        ["Sonnenrichtung","Sonne: Kompassrichtung","$Azimute?","c"],
        ["Mittag","Wahrer Mittag","$Transit?","c"],
        ["Aufgang","Sonnenaufgang (Horizont)","$Sunrise?","c"],
        ["Untergang","Sonnenuntergang (Horizont)","$Sunset?","c"],
        ["Morgen(ziv)","Zivile Morgendämmerung","$Civil_dawn?","c"],
        ["Abend(ziv)","Zivile Abenddämmerung","$Civil_dusk?","c"],
        ["Morgen(naut)","Nautische Morgendämmerung","$Naut_dawn?","c"],
        ["Abend(naut)","Nautische Abenddämmerung","$Naut_dusk?","c"],
        ["Morgen(astro)","Astronomische Morgendämmerung","$Astro_dawn?","c"],
        ["Abend(astro)","Astronomische Abenddämmerung","$Astro_dusk?","c"],
        ["Mondhöhe","Mond: Höhe über Horizont","$Alt_moon?","c"],
        ["Mondrichtung","Mond: Kompassrichtung","$Azi_moon?","c"]
      ]
}
Gruß,
Stefan K.
Benutzeravatar

Ersteller
bodo
Reactions:
Beiträge: 283
Registriert: So Aug 12, 2018 7:01 am
Hat sich bedankt: 271 Mal
Danksagung erhalten: 106 Mal

#10

Beitrag von bodo »

S. Kolbinger hat geschrieben: Mo Nov 04, 2019 6:58 pm .... wenn's weiter nichts ist ;)
Hoi
Ja, so funktioniert es! :dance: :clap: :clap: :clap: :D :handgestures-thumbupright: :bow-yellow: :happy-wavemulticolor:
:text-goodpost: :bow-blue: :auto-checkeredflag: :occasion-birthday: :handgestures-thumbup: :sci-fi-beamup: :royalty-pharaoh: :occasion-gift: :occasion-cake:
Zuletzt geändert von bodo am Mo Nov 04, 2019 7:42 pm, insgesamt 1-mal geändert.
Grüsse Bodo

TWS 2400 ID:64, VPN offen, Reboot möglich * Wiregate * zahlreiche 1-Wire Sensoren * einige BlitzART
Antworten

Zurück zu „Logikengine & Logik-Editor“