Komplexe Plugins müssen externe Prozesse, Datenströme und Versionswechsel beherrschen, ohne Jeedom-Core oder Benutzeroberfläche zu blockieren. Wartbare Schnittstellen, saubere Zustandsmodelle und reproduzierbare Updates sind dafür entscheidend.
Das Seminar erweitert ein vorhandenes Plugin um Hintergrundverarbeitung, sichere Schnittstellen, Migrationen, Tests und einen kontrollierten Releaseprozess.
Inhaltsübersicht
- Zielsetzung
- Zielgruppe
- Voraussetzungen
- Seminarinhalte
- Praxisübungen
- Methodik
Zielsetzung
- Asynchrone Daemons, Abhängigkeiten und Ereignisverarbeitung stabil implementieren
- AJAX-, API- und Benutzereingaben mit klaren Berechtigungen und Validierung absichern
- Konfiguration und Daten über Pluginversionen kontrolliert migrieren
- Qualität, Performance, Verpackung und Release mit automatisierbaren Prüfungen absichern
Zielgruppe
Jeedom-Entwickler, Integrationsentwickler und technische Architekten mit eigener Plugin-Erfahrung.
Voraussetzungen
Erfahrung mit grundlegender Jeedom-Plugin-Entwicklung, PHP, JavaScript, HTML, Linux-Prozessen und Versionsverwaltung. Ein funktionsfähiges Basisplugin wird vorausgesetzt.
Seminarinhalte
- Schritt 1: Pluginarchitektur und Schnittstellenvertrag prüfen
Core-nahe Klassen, externe Bibliotheken, Hintergrundprozess, UI, API und Datenmodell werden getrennt. Verantwortlichkeiten, Datenfluss, Fehlergrenzen und Versionsvertrag werden dokumentiert.
- Schritt 2: Abhängigkeiten reproduzierbar verwalten
System- und Sprachabhängigkeiten werden geprüft, installiert und versioniert. Installation, Update, Fehlerfall und Entfernung erhalten eindeutige Statusmeldungen und Logeinträge.
- Schritt 3: Daemon und Prozessüberwachung implementieren
Start, Stopp, PID, Port, Heartbeat, automatische Wiederaufnahme und geordnete Beendigung werden umgesetzt. Blockierende Aufrufe und Endlosschleifen werden durch kontrollierte Zeitüberschreitungen und Warteschlangen vermieden.
- Schritt 4: Cron, Events und Listener kombinieren
Periodische Aufgaben und ereignisorientierte Verarbeitung werden nach Bedarf getrennt. Doppelausführung, Sperren, Laufzeit, Fehlerwiederholung und Shutdown werden getestet.
- Schritt 5: Eigene Befehlslogik und Darstellung erweitern
Spezialisierte Info- und Aktionsbefehle, Konfigurationsoptionen und optionale Widgets werden entwickelt. Fachlogik bleibt im Backend; Darstellung verarbeitet nur bereits validierte Zustände.
- Schritt 6: AJAX und API sicher gestalten
Authentifizierung, Berechtigung, CSRF-Schutz, Eingabevalidierung, Ausgabeformat und Fehlercodes werden umgesetzt. Geheimnisse und interne Details werden nicht an unberechtigte Aufrufer ausgegeben.
- Schritt 7: Konfigurations- und Datenmigration entwickeln
Versionierte Migrationsschritte passen Konfiguration, Geräte und Befehle an. Idempotenz, Abbruch, Wiederholung und Rückwärtskompatibilität werden an mehreren Ausgangsversionen geprüft.
- Schritt 8: Teststrategie und Diagnose aufbauen
Unit-nahe Prüfungen, Integrationsfälle, Mockdaten, Fehlerpfade, Installation, Update und Deinstallation werden abgedeckt. Strukturierte Logs enthalten Kontext, aber keine Geheimnisse.
- Schritt 9: Performance und Ressourcenverbrauch optimieren
Datenbankzugriffe, Cache, API-Aufrufe, Polling, Schleifen, Speicher und Daemonlast werden gemessen. Ereignisorientierte Updates und gebündelte Verarbeitung ersetzen unnötig häufige Abfragen.
- Schritt 10: Packaging, Lokalisierung und Release abschließen
Metadaten, Abhängigkeiten, Dokumentation, Übersetzungen, Changelog, Versionsnummer und Artefakt werden geprüft. Ein Releasekandidat wird in einer sauberen Instanz installiert, aktualisiert und zurückgebaut.
Praxisübungen
- Vorhandenes Plugin in klar getrennte UI-, Prozess- und Integrationsschichten überführen
- Daemon mit Heartbeat, Wiederanlauf und kontrollierter Fehlerbehandlung implementieren
- Gesicherten AJAX- oder API-Endpunkt mit Validierung und Berechtigungsprüfung erstellen
- Versionierte Migration sowie Installations-, Update- und Performanceprüfung durchführen
Methodik
Vortrag, geführte Demonstrationen und strukturierte Übungen an einer vorbereiteten Jeedom-Umgebung. Jeder Arbeitsschritt wird zunächst fachlich eingeordnet, anschließend am System umgesetzt und danach mit klaren Prüfkriterien kontrolliert. Konfigurationsentscheidungen, Fehlersituationen und betriebliche Auswirkungen werden gemeinsam ausgewertet.
Fachbereichsleitung und Trainerteam
-

Lucas Beich
Telefon: + 49 (221) 74740055
E-Mail: lucas.beich@seminar-experts.de -

Paul Goldschmidt
Telefon: + 49 (221) 74740055
E-Mail: paul.goldschmidt@seminar-experts.de
Seminardetails
| Dauer: | 3 Tage ca. 6 h/Tag, Beginn 1. Tag: 10:00 Uhr, weitere Tage: 09:00 Uhr |
| Preis: |
Öffentlich oder Live Stream: € 1.797 zzgl. MwSt. Inhaus: € 5.100 zzgl. MwSt. |
| Teilnehmeranzahl: | min. 2 - max. 8 |
| Teilnehmer: | Jeedom-Entwickler, Integrationsentwickler und technische Architekten mit eigener Plugin-Erfahrung. |
| Voraussetzungen: | Erfahrung mit grundlegender Jeedom-Plugin-Entwicklung, PHP, JavaScript, HTML, Linux-Prozessen und Versionsverwaltung. Ein funktionsfähiges Basisplugin wird vorausgesetzt. |
| Standorte: | Stream Live, Inhaus/Firmenseminar, Berlin, Bremen, Darmstadt, Dresden, Erfurt, Essen, Flensburg, Frankfurt, Freiburg, Friedrichshafen, Hamburg, Hamm, Hannover, Jena, Kassel, Köln, Konstanz, Leipzig, Luxemburg, Magdeburg, Mainz, München, Münster, Nürnberg, Paderborn, Potsdam, Regensburg, Rostock, Stuttgart, Trier, Ulm, Wuppertal, Würzburg |
| Methoden: | Vortrag, Demonstrationen, praktische Übungen am System |
| Seminararten: | Öffentlich, Webinar, Inhaus, Workshop - Alle Seminare mit Trainer vor Ort, Webinar nur wenn ausdrücklich gewünscht |
| Durchführungsgarantie: | ja, ab 2 Teilnehmern |
| Sprache: | Deutsch - bei Firmenseminaren ist auch Englisch möglich |
| Seminarunterlage: | Dokumentation auf Datenträger oder als Download |
| Teilnahmezertifikat: | ja, selbstverständlich |
| Verpflegung: | Kalt- / Warmgetränke, Mittagessen (wahlweise vegetarisch) |
| Support: | 3 Anrufe im Seminarpreis enthalten |
| Barrierefreier Zugang: | an den meisten Standorten verfügbar |
| Weitere Informationen unter + 49 (221) 74740055 |
Seminartermine
Die Ergebnissliste kann durch Anklicken der Überschrift neu sortiert werden.
