Lieber IP-Symcon Entwickler,
 

mittlerweile ist die Version 5.3 erschienen und bietet viele spannende neue Features, welche auch du in deinen Modulen verwenden kannst. Außerdem haben wir ein neues Werkzeug entwickelt, welches die Modulerstellung deutlich beschleunigen kann.

So gibt es auch in diesem Entwickler Newsletter wieder diverse spannende Themen über die wir berichten wollen:

Der Modul Generator

Der Modul Generator ermöglicht es dir mit ein paar Klicks ein Gerüst für dein Modul zu erstellen. Auch der Datenfluss kann hier komfortabel definiert werden. Damit kannst du direkt mit dem spannenden Teil durchstarten und dein Modul direkt mit Leben füllen. Du findest den Modul Generator auf unserer Homepage im Entwicklerbereich.

Entwickler-Webinar am 11.12. - Module automatisiert testen

Am 11.12.2019 um 18:00 Uhr geht es mit unseren Webinaren auf YouTube weiter. Diesmal gibt es wieder ein Entwickler-Webinar. Wir wollen uns mit dir anschauen, wie man Module automatisiert testen kann. Hier werden wir dir zeigen, wie du phpUnit für dein Modul verwenden kannst, Tests erstellst und diese aufrufst. So kannst du die Qualität deiner Module deutlich verbessern und auch zukünftig unkompliziert weiter gewähren.

Discovery/Konfiguratoren in die Gerätesuche einbinden

Mit der 5.3 kommt in der Konsole eine automatisierte Gerätesuche dazu. Diese ist über die “Glocke” oben rechts erreichbar. Hierbei schickt die Konsole regelmäßig Anfragen an alle Discovery- und Konfigurator-Instanzen und ruft dort GetConfigurationForm auf. Wenn ihr also wollt, dass auch eure Instanzen damit funktionieren, haben wir ein paar Tipps für euch vorbereitet:

Validierung von Eingaben

Mit der 5.3 können einige Eingaben der Instanzkonfiguration validiert werden. Soll ein Eingabefeld immer einen vierstelligen Code enthalten oder eine Zahl immer zwischen 5 und 13 liegen? Hierfür gibt es im NumberSpinner nun die Paramter minimum und maximum. Die ValidationTextBox und die PasswordTextBox haben den Parameter validate dazubekommen, welcher den Inhalt der TextBox mit einem regulären Ausdruck überprüft. Sollte eine Eingabe die Bedingungen nicht erfüllen, so wird das entsprechende Formularfeld rot dargestellt und die aktuelle Konfiguration kann nicht übernommen werden.

Neues Formularfeld: OpenObjectButton

Mit dem neuen OpenObjectButton kommt ein neues Formularfeld hinzu mit dem du andere Objekte öffnen kannst. Dies ist insbesondere sinnvoll um auf andere Instanzen zu verweisen. Benötigt dein Modul ein aktives Connect Control, so kannst ein Benutzer durch diesen Button direkt dahin gelangen und das Connect Control wieder aktivieren. Erfordert dein Modul eine eingestellte Position, so kannst du auf das Location Control verweisen. Dies sind nur einige der Möglichkeiten. Schau dir die Dokumentation des OpenObjectButton an um ihn in deinen Modulen zu verwenden.

Erweiterung verschiedener Formularfelder

Zusätzlich wurden einige Formularfelder erweitert und ermöglichen nun neue Funktionalitäten:

Korrekte Bezeichner für Eigenschaften und Attribute

Bei der Benennung von Eigenschaften und Attributen galten schon immer implizit gewisse Restriktionen, die zu Problemen führen konnten. Diese haben wir nun explizit festgesetzt. Die Namen dürfen nur Buchstaben (A-Z und a-z), Zahlen (0-9) und Unterstriche (_) beinhalten. Dabei müssen die Namen mit einem Buchstaben beginnen. Verwendest du in deinen Modulen erfolgreich andere Namenskonventionen? Aktuell wird diese Namensgebung noch nicht von IP-Symcon überprüft, kann aber zu Problemen führen. Wenn du eine andere Namensgebung verwendest und dabei keine Probleme auftreten, dann melde dich gerne bei uns. Dann prüfen wir das gerne und lockern eventuell die Bedingungen noch einmal.

PHP Long Tag im Module Store erforderlich

Da der PHP Short Tag (< ?) mit kommenden PHP Versionen abgeschafft werden soll, wird mittlerweile im Module Store automatisch verifiziert, dass der Long Tag (< ?php) verwendet wird.Verwendet du diesen nicht in deiner module.php, so kannst du dein Modul nicht einreichen. Aktuelle Veröffentlichungen, die noch den Short Tag verwenden, sind hiervon noch nicht betroffen. Wenn deine veröffentlichten Module allerdings den Short Tag verwenden, empfehlen wir dies demnächst einmal zu aktualisieren.

Differenzierung Modulhersteller und -autor

Bei deinen Modulen hast du in der Bibliothek ein Feld für den Autor (author) und in den einzelnen Modulen ein Feld für den Hersteller (vendor). Der Autor deines Modules bist du. Trage hier also gerne deinen Namen ein. Ob du hier deinen realen Namen, einen Firmennamen, einen Benutzernamen oder noch etwas ganz anderes einträgst ist komplett dir überlassen. Hier teilst du Benutzern mit, dass du der Entwickler des Moduls bist. Der Hersteller wiederum ist der Hersteller des Systems für welches du das Modul geschrieben hast. Dies kann der Hardwarehersteller der Geräte sein, die du mit deinem Modul einbindest oder auch der Anbieter des Webdienstes, den dein Modul implementiert. Gibt es zu deinem Modul keinen passenden Hersteller, da beispielsweise dein Modul geräteunabhängig ist, dann lasse das Feld einfach leer.

Reduktion des user-Ordners

Wir möchten die Relevanz des user-Ordners gerne verringern und die Verwendung bei Modulen im Module Store nur noch in Ausnahmefällen erlauben. Der Ordner ist von sich aus unsicher, da er offen zugänglich ist. Daher möchten wir in Zukunft sichere Alternativen anbieten, die alle von dir benötigte Funktionalität bereitstellen. Verwendest du den user-Ordner in deinen Modulen? Melde dich bitte bei uns, wofür der Ordner bei dir erforderlich ist, damit wir gemeinsam erarbeiten können, wie man deine Funktionalität zukünftig auf sichere Alternativen umstellen kann.

Wir freuen uns auf dein Feedback!

Dein IP-Symcon Team

PS: Lob und Kritik kannst du nicht nur über unser Community-Forum oder das Kontaktformular äußern, sondern auch gern in einem persönlichen Telefongespräch.

Wird diese Nachricht nicht richtig dargestellt, klicke bitte hier.
Falls du diese E-Mail nicht mehr empfangen möchtest, kannst du diese hier abbestellen

Symcon GmbH, Willy-Brandt-Allee 31b, 23554 Lübeck, 0451 30500511