Hallo zusammen,
ich versuche seit zwei Tagen ein einfaches Test-Modul aufzusetzen, stoße aber immer wieder auf das Problem, dass das Modul nicht in der Instanzliste von IP-Symcon erscheint, bzw. sich nicht aktivieren lässt. Vielleicht erkennt jemand sofort, woran es hakt – ich bin für jeden Hinweis dankbar!
Hier die Dateistruktur meines Moduls:
/var/lib/symcon/modules/Test/
├── library.json
└── Test/
├── module.json
└── module.php
library.json
{
"id": "{A7D3708D-955E-ABCF-DF4A-0B9B90FE3C74}",
"author": "Michael F.",
"name": "Test",
"url": "https://www.symcon.de",
"compatibility": {
"version": "4.2",
"date": 1491343200
},
"version": "1.0",
"build": 0,
"date": 0
}
module.json
{
"id": "{442F2F21-2119-1664-8EF0-E11078F30946}",
"name": "Test",
"type": 3,
"vendor": "",
"aliases": [
"Name1UnterstütztesGerät",
"Name2UnterstütztesGerät"
],
"url": "https://www.symcon.de",
"parentRequirements": [],
"childRequirements": [],
"implemented": [],
"prefix": "ABC"
}
module.php
<?php
declare(strict_types=1);
class Test extends IPSModule
{
public function Create()
{
parent::Create();
}
public function ApplyChanges()
{
parent::ApplyChanges();
}
}
Ich habe mir auch das offizielle YouTube-Video von Symcon zur Modulentwicklung angesehen. Dort beginnt die module.php
interessanterweise mit <?
– das ist mir auch in alten Dokumentationen (z. B. von 2019) aufgefallen.
In der aktuellen Doku fehlt das. Ist doch aber eine php Datei, sollte doch da sein, oder?
Vielleicht übersehe ich etwas Grundsätzliches? Ich dachte, ich hätte alle Dateien korrekt aufgebaut – bin gespannt auf euer Feedback!