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

[Frage] Schnittstelle zur Entwicklung eigener Logik Bausteine

Hier bitte Eure Diskussionen und Feature Requests zu neuen Logikmodulen und Funktionen des Logik-Editors

Ersteller
stonie2oo4
Reactions:
Beiträge: 159
Registriert: Di Okt 23, 2018 9:27 pm
Hat sich bedankt: 30 Mal
Danksagung erhalten: 37 Mal

#11

Beitrag von stonie2oo4 »

StefanW hat geschrieben: Mi Feb 19, 2020 9:19 am Wir haben eine (neue) Regel für FRs (also vor allem komplexe).
Sorry, das wusst ich nicht, werde ich dass nächste mal beachten :).
StefanW hat geschrieben: Mi Feb 19, 2020 9:19 am Wirklich. Hast Du Dir das mal angesehen mit dem GIRA X1 SDK?
Nein, dachte einfach dass es ähnlich leicht ist für den User wie bei Edomi einen LBS zu installieren.
Wollte den Vergleich eben nicht nur zu einem kostenlosen Tool machen ;)

Aber die Umsetzung besser zu machen, liegt ja an euch ;)
Mir ging es hauptsächlich ums darum dass Prinzip dahinter zu beschreiben.
StefanW hat geschrieben: Mi Feb 19, 2020 9:19 am Wie geht das bei ElabNET:
Ihr Wünscht euch einfach einen neuen Logikbaustein und wir stellen das so zur Verfügung. Les Dich mal durch das Forum, bisher hat jeder seinen Baustein bekommen
Es zut mir leid, ich weiß nicht wie ich dass nett formulieren kann, aber ich glaube nicht dass ihr das schafft, bzw. liegen eure Prioritäten wo anderst.

Nur als Beispiel, hätte ich gern meine Viesmann-Heizung als LBS. Aber dass brauchen vielleicht nach meiner Schätzung max. 10 Leute.
Dass würd sich für euch also nicht wirklich rentieren, was ja auch verständlich ist, oder seh ich dass falsch?

Ps: Ich weiß dass es dafür einen Docker gibt, mit Anleitung in der Knowledebase
app.php/kb/viewarticle?a=80
Aber dazu müsste man dann zusätlich noch MQTT im TW einrichten sobald dies verfügbar ist.

Als Vergleich, in Edomi lad ich den LBS runter, importier ihn über die Oberfläche und ausnahmsweiße muss man hier auch noch 4 Dateien mit WinScP übertragen.
Aber dass wars, und schon kann ich die Eingänge und Ausgänge nach belieben im Logikeditor belegen.

Deswegen der Wunsch nach einer solchen Schnittstelle, dass einfach Dinge die bei euch keine Prioritäten haben auch von begabten Usern zu Verfügung gestellt werden können.

StefanW hat geschrieben: Mi Feb 19, 2020 9:19 am Edomi - wie auch OpenHAB oder io:Broker - brauchen gut zehnmal soviele Ressourcen als unsere Software. Wenigstens. Wir wollen uns die großartige Performance nicht ruinieren lassen, indem wir Scriptengines einbauen.
Also ich kann jetzt nur für Edomi sprechen, dies läuft bei mir auf einem APU (glaub noch erste Generation) sollte also mit der Hardware des TW vergleichbar sein ;)
Hier tümpelt die CPU-Last die meiste Zeit so zwischen 12-20%, wenn verschiedene Dinge ausgeführt werden geht sie auch mal hoch auf 80%, aber nur für Sekunden.
Also ich find diesen Resourcenverbrauch vertretbar, vor allem wen man sieht dass ich mittlerweile knapp 2400 LBS in meinem Projekt habe.

Egal, zurück zur Sache, wenn ihr so eine Schnittstelle für eigene LBS bereitstellen würdet, könnt nicht ihr hier die Rahmenbedienungen festlegen?
Also z.B. dass die von Usern geschriebenen LBS eine Qualitätsüberprüfung durchlaufen müssen.
Bzw. dass es ein Bewertungsportal gibt, mit Daumen hoch und Daumen runter, dass andere erkennen ob der LBS Probleme macht oder nicht.

Oder dass solche LBS max. 50% Systemresourcen verwenden können, dass andere Teile des TW nicht beeinflusst werden.

Gibt bestimmt genug Möglichkeiten im Vorfeld Rahmenbedienungen eurerseits festzulegen die einzuhalten sind.
StefanW hat geschrieben: Mi Feb 19, 2020 9:19 am Wir haben das mit den Plugins beim WireGate Server oft genug erlebt. Wir mussten ständig eingreifen und helfen, insbesondere wen der Server "stand" weil das Script die Ressourcen überlastet hat.
Siehe oben, einfach Rahmenbedienungen festlegen die so etwas verhindern.

StefanW hat geschrieben: Mi Feb 19, 2020 9:19 am Wir haben dafür einen anderen Weg gefunden. Einfach etwas Geduld.
Da bin ich mal gespannt.

StefanW hat geschrieben: Mi Feb 19, 2020 11:52 am Folgende Bitte: Wenn immer es heißt "wie XYZ" weil das ist soooo toll und einfach.... bitte vorher die ganze Wahrheit ansehen.
StefanW hat geschrieben: Mi Feb 19, 2020 11:52 am Wir haben Edomi (und andere) auch installiert für uns um das zu testen. Aufgefallen sind hoher Ressourcenverbrauch (allesamt), teils sehr umständliche Konfiguration (besonders die ersten Schritte zur ersten Edomi-Visu war eine Enttäuschung - gegenüber was man in Foren vorher so gelesen hat), die Stabilität ist teils schlecht, Update teils kompliziert und nicht selten mit Datenverlust verbunden, weil sich die Konfig eben geändert hat und ein Open-Source-Programmierer sich eben nicht die Mühe macht, noch ein Modul zur Datenübernahmen beim Update zu schreiben, da fängt man halt von vorne an mit dem Konfigurieren.

Und eine Erkenntnis ist auch, dass man das System leicht lahmlegen kann mit dem ein oder anderen Script. Oder weil ein wildes Backup die Platte vollschreibt. Lesen tut man das nur ganz selten, weil die Maker eben lieber posen als über die Misserfolge zu berichten.
Sorry, aber hier darfst dich auch an der eigenen Nase fassen ;)
Wie oben geschrieben ist der Resourcenverbrauch absolut in Ordnung, die meiste Zeit weiß die Kiste gar nicht was sie machen soll, und ich benutz Edomi jetzt schon seit über 3 Jahren.
Ebenso was die Stabilität angeht ist Edomi auf ganz hohem Niveau. Selten eine Software gesehen die so gut funktioniert.
Updates gehen wie bei euch per Knopfdruck. Backup sollte man wie bei euch eben vorher genauso von Hand anlegen. Hatte aber persönlich noch nie Probleme bei einem Update, ganz zu schweigen von Datenverlust.
Bei euch kam es allerdings schon öfters vor dass ich nach einem Update in den Keller rennen musste, weil der TW nicht mehr von allein startete.
Backup hat noch nie die Platte vollgeschrieben.

Aber gut jetzt, darum solls hier nicht gehen.


Ich werd jetzt einfach mal meine Logiken in Edomi lassen, weil momentan einfach noch zu wenig im TW davon abgebildet werden kann. Hab ja keine Eile ;)
Werde weiterhin gespannt verfolgen wie ihr dass ganze Thema umsetzt, hast ja oben geschrieben dass ihr dafür einen anderen Weg gefunden habt.
Gruß Ben


TWS 960Q ID:359, VPN offen, Reboot erlaubt

gbglace
Reactions:
Beiträge: 3585
Registriert: So Aug 12, 2018 10:20 am
Hat sich bedankt: 1253 Mal
Danksagung erhalten: 1649 Mal

#12

Beitrag von gbglace »

Gerade bei der Viessmann habe ich ja auch brennendes Interesse. An der Stelle denke ich aber wird es irgendwas mit Docker brauchen, es sei denn Elabnet baut wirklich nen eigenes Modul wie den vcontrold mit einer ordentlichen Adminmaske in der man dann die Modellspezifischen Parameter di die XML erfordert pflegen kann. Dann wäre das wieder eine native Schnittstelle mit System Viessmann Objekten die via DOS mit den anderen Systemen verbunden werden können.

Noch schöner wäre es ja wenn man Viessmann dazu überreden könnte das die ggf exclusiv für den TWS ihr Protokoll kundtun. Intern läuft da glaub auch so ein RS485-Derivat. Dann müsste man nichtmal über die Optolink-Schnittstelle gehen.
Grüße
Göran

#1 Timberwolf 2600 Velvet Red TWS #225 / VPN aktiv / Reboot OK
#2 Timberwolf 2600 Organic Silver TWS #438 / VPN aktiv / Reboot OK
#3 PBM 3 Kanäle, #4 Modbus-Extension

Dante
Reactions:
Beiträge: 157
Registriert: So Aug 12, 2018 10:42 am
Hat sich bedankt: 8 Mal
Danksagung erhalten: 78 Mal

#13

Beitrag von Dante »

StefanW hat geschrieben: Mi Feb 19, 2020 9:19 am Wir haben derzeit Probleme mit Kunden, die Docker-Container aufsetzen und unbeaufsichtigt lassen. (...) nach 1420 Backups war dann eben die Platte voll. Wer bezahlt uns diese vier Stunden verschleuderte Entwicklerarbeit.
Der Kunde natürlich, dafür gibt es doch auch den Timberwolf Care Vertrag:
§ 6 Kostentragung bei vergeblicher Entstörung des Servers
Der Timberwolf Server kann auf Kundenseite mit hunderten Geräten verbunden werden. ElabNET kann weder den Support noch die Entstörung dieser anderen Geräte oder der Netzwerke damit übernehmen. Hierfür soll der Kunde einen erfahrenen Integrator heranziehen. Um das Entgelt für solche Supportverträge in einem kalkulierbaren Rahmen zu halten, übernimmt ElabNET Kundendienst nur bei klarer Indikation, dass ein Softwarefehler im vertragsgegenständlichen Server für eine Störung ursächlich ist.
Stellt sich während des Kundendienstes heraus, dass die Störung nicht in der Sphäre des vertragsgegenständlichen Servers liegt, wird ElabNET die Störungssuche abbrechen. Im Falle einer vergeblichen Entstörung des vertragsgegenständlichen Servers ist der Kunde zur Kostentragung verpflichtet. Bei Servern für welche die Supportstufe „Gold“ gebucht wurde, wird nur eine Pauschale von 69.- EUR für vergebliche Entstörung berechnet, unabhängig vom Umfang. In allen anderen Fällen ist ein Entgelt von 43,14 EUR pro viertel Stunde zu entrichten.
Auch wenn die Formulierung rechtlich gesehen vielleicht hinsichtlich Docker-Container und Apps noch Optimierungspotential hat sollte der Kunde hier je nach Supportstufe seine 69 € oder 43,14 € pro Viertelstunde zahlen müssen. Und der Kunde wird seinen Fehler letztlich ja auch einsehen und wird i.d.R. auch bereit sein, das zu zahlen. Wenn meine Waschmaschine nicht mehr läuft weil ich etwas falsch gemacht habe und ein Techniker kommt, verlangt dieser auch sein Geld, da es eben nicht über die Gewährleistung abgedeckt ist. Hier darf sich auch kein Kunde beschweren, denn er war selbst schuld.
StefanW hat geschrieben: Mi Feb 19, 2020 9:19 am Wir haben dafür einen anderen Weg gefunden. Einfach etwas Geduld.
Jetzt machst du mich wieder neugierig!

Vllt. Apps die per URL / JSON / ZIP-Datei installiert werden können und zusätzlich zu einem Docker-Container auch gleich die nötigen IP- oder MQTT-Objekte anlegen? Alles z.B. über eine einfache JSON-Datei konfigurierbar und damit auch mit großem Wachstumspotential?!
Viele Grüße,
Thomas

timberwolf146 / Timberwolf Server 2500 Indian Gold + PBM / Version 1.6.0 IP3 (Wartungs-VPN offen / Reboot jederzeit möglich)

StefanW
Elaborated Networks
Reactions:
Beiträge: 9689
Registriert: So Aug 12, 2018 9:27 am
Wohnort: Frauenneuharting
Hat sich bedankt: 4831 Mal
Danksagung erhalten: 7632 Mal
Kontaktdaten:

#14

Beitrag von StefanW »

stonie2oo4 hat geschrieben: Mi Feb 19, 2020 8:45 pmEs zut mir leid, ich weiß nicht wie ich dass nett formulieren kann, aber ich glaube nicht dass ihr das schafft, bzw. liegen eure Prioritäten wo anderst.
Nur als Beispiel, hätte ich gern meine Viesmann-Heizung als LBS. Aber dass brauchen vielleicht nach meiner Schätzung max. 10 Leute.
Dass würd sich für euch also nicht wirklich rentieren, was ja auch verständlich ist, oder seh ich dass falsch?
Nein, das ist ein Missverständnis. Ich sprach von Logikbausteinen. Du sprichst von der Anbindung externer Systeme, das ist nicht das gleiche.

Dieses Missverständnis kommt sicher davon, dass in anderen Systeme die "Bausteine" sehr universal verwendet werden. Zum einen für Logik, zum anderen auch direkt zur Ansteuerung von Systemen und zum direkten Ausführen von Programmen.

Letzteres macht aus einer hochleistungsfähigen und schnellen Logik aber etwas ausbremsbares, was dann auch passiert. Wer einen Homeserver hat, der kennt womöglich die (uns schon öfters zugetragenen) "Hänger" bei denen zwischendurch auch mal nichts passiert.

==> Das machen wir auf GAR KEINEN FALL.

Wir haben ein System auf Microservices geschaffen. Sehr getreu nach dem (sehr alten) Unix-Motto, "ein Stück Software tut immer nur eine Sache, aber diese Sache tut sie sehr gut". Auf diesem Prinzip basiert die große Stabilität von Unix und auch von GNU ("Linux" ist "nur" der Kernel, das eigentliche Betriebssystem ist GNU, es ist eine Schande dass beides zusammen immer nur als Linux - also dem kleineren Teil davon - bezeichnet wird).

Wir haben den Timberwolf Server auf dem gleichen Prinzip aufgebaut. Kleine Services die sich über eine klare API miteinander unterhalten. Kein Misch-masch und auf gar keinen Fall wird in einem Modul (Logik) hier nun die Möglichkeit geschaffen, einen fremden Programmcode laufen zu lassen. NEVER! Wir werden die Stabilität der Logikengine unter keinen Umständen aufs Spiel setzen.

==> Das ist eine wichtige architekturelle Entscheidung die bitte zu Respektieren ist.


Was Du willst, ist was anderes: Eine Ansteuerung eines externen Systems. Soetwas machen wir in separaten Subsystemen, also einem eigenen Programm der über den Dispatcher mit ALLEN ANDEREN Subsystemen verbunden ist. Die Logik ist übrigens auch nur ein Subsystem in der Architektur.

Wenn dann müssen wir uns also darüber unterhalten, wie man die Vissmannansteuerung in ein Subsystem bringt. Wir denken da auch darüber nach und wenn dann will ich da auch eine Partnerschaft mit Vissmann. Aber das ist etwas für 2021 oder 2022.


lg

Stefan
Zuletzt geändert von StefanW am Do Feb 20, 2020 11:39 am, insgesamt 2-mal geändert.
Stefan Werner
Product Owner für Timberwolf Server, 1-Wire und BlitzART
Bitte WIKI lesen. Allg. Support nur im Forum. Bitte keine PN
Zu Preisen, Lizenzen, Garantie, HW-Defekt an service at elabnet dot de

Link zu Impressum und Datenschutzerklärung oben.

StefanW
Elaborated Networks
Reactions:
Beiträge: 9689
Registriert: So Aug 12, 2018 9:27 am
Wohnort: Frauenneuharting
Hat sich bedankt: 4831 Mal
Danksagung erhalten: 7632 Mal
Kontaktdaten:

#15

Beitrag von StefanW »

Hallo Thomas,
Dante hat geschrieben: Do Feb 20, 2020 9:04 amJetzt machst du mich wieder neugierig!
Ja, sorry. Vor der Messe wollen wir da nicht zuviel rauslassen.


Dante hat geschrieben: Do Feb 20, 2020 9:04 amVllt. Apps die per URL / JSON / ZIP-Datei installiert werden können und zusätzlich zu einem Docker-Container auch gleich die nötigen IP- oder MQTT-Objekte anlegen? Alles z.B. über eine einfache JSON-Datei konfigurierbar und damit auch mit großem Wachstumspotential?!
Schmunzel. Ohne Container. Aber über eine json Datei konfigurierbar ist ein zentrales Element.


lg

Stefan
Stefan Werner
Product Owner für Timberwolf Server, 1-Wire und BlitzART
Bitte WIKI lesen. Allg. Support nur im Forum. Bitte keine PN
Zu Preisen, Lizenzen, Garantie, HW-Defekt an service at elabnet dot de

Link zu Impressum und Datenschutzerklärung oben.

Sun1453
Reactions:
Beiträge: 1849
Registriert: Do Feb 07, 2019 8:08 am
Hat sich bedankt: 1541 Mal
Danksagung erhalten: 788 Mal

#16

Beitrag von Sun1453 »

StefanW hat geschrieben: ↑
Mi Feb 19, 2020 9:19 am
Wir haben dafür einen anderen Weg gefunden. Einfach etwas Geduld.
Klingt interessant. Ich denke wenn die L&B ran rückt werden wir mehr sehen. Jetzt sollten die Entwickler schön fleißig arbeiten können, damit das Ergebniss uns umhauen wird. ;)
Gruß Michael

Timberwolf 950 QL #344 | Mit Internetanbindung | VPN Offen | Reboot nach Absprache | PROD Server
Timberwolf 2500 #602 | VPN offen | TEST Server | Reboot nach Absprache |
Antworten

Zurück zu „Feature Requests & Diskussionen Timberwolf Logik (Module & Editor)“