ich hatte Hoffnung dass es möglich sein sollte beim Anlegen eines neuen Modules das Feld „Beschreibung“ mit Text zu füllen.
Da dieser Text also bereits beim ersten Erstellen der Instanz erscheinen soll und nicht erst später gehört er normalerweise rein in die Datei module.json.
Hoffte ich, aber es will nicht glücken:
„moduleinfo“: „Beschreibungstextbeispiel“,
„ModuleInfo“: „Beschreibungstextbeispiel“,
und viele weitere Varianten getestet, er mag mich nicht.
IPS_SetInfo klappt zwar im Nachhinein, es sollte aber vorher erscheinen.
Hat jemand einen Tip?
Schön wäre es für jede einzelne Instanz eine URL hinterlegen zu können um so gezielt zu den richtigen Informationen zu gelangen.
In der Datei library.json ist es ja vorgesehen, nur diese URL gilt ja global für alle.
So mal langsam… ich verstehe irgendwie nicht was du möchtest
Ja… mach das doch. Die Methode in der du das machen könntest wäre Create oder u.U. ApplyChanges.
Was hat denn die Beschreibung des PHP-Moduls mit dem nachher in IPS erzeugten ‚IPS-Objekt‘ zu schaffen ?
Ok. IPS-Instanzen sind auch IPS-Objekte. Aber die IPS-Objekt Eigenschaften und die Eigenschaften von der IPS-Instanz haben doch erstmal nichts miteinander zu tun. Lediglich den Namen des neuen Objektes leitet IPS, aus dem ersten Alias oder dem Namen des PHP-Moduls, ab.
Wie vorher ? Create wird beim erzeugen einer IPS-Instanz aus deinem PHP-Modul aufgerufen. Da sollte das schon gehen (ungetestet). Sonst spätestens im ApplyChanges, weil da muss das IPS-Objekt schon existieren.
Was für Informationen
Ich glaube aktuell wird die URL aus der Library noch gar nicht weiter in IPS angezeigt / verwendet.
Selbst der Modul-Loader nutzt die glaube ich nicht.
ich hab das Problem dass meine Leiterplatten i.d.R. als eierlegende Wollmilchsäue generiert werden. Da sitz ein Prozessor drauf, es gibt mehrere Bestückungsvarianten und dann noch die Vielfalt an einsetzbarer, natürlich gravierend unterschiedlicher Firmware.
Es kommt noch schlimmer: die erste Leiterplatte steuert dann weitere an, die eine ebenso grosse Vielfalt an Varianten bieten.
Also war die Idee:
wenn denn schon die neuen IPS-Module nutzen,
dann sollte dort eindeutig klar erkennbar sein,
wie, womit, Firmware und alles weitere sollte sauber erkennbar sein…
… und da bot sich das Feld Beschreibung an.
mfg
BerndJ
PS: könntest Du dir vorstellen zum Thema IPS Modulentwicklung einen Samstagnachmittag Workshop abzuhalten?
Habe Hoffnung dass wir im Hamburger Bereich 10 Interessenten aus unseren Reihen zusammen bekommen könnten.
Yes… und dann wie du ja schon sagtest mit SetInfo.
Mhhh ja. Da kannst du natürlich zig Ideen entwickeln und zig Wege versuchen zu gehen.
Je nachdem wie groß die Unterschiede sind; gerade auch in Bezug auf die eigentliche ‚Funktion‘.
[ul]
[li]Im Einstellungsdialog z.B. die Firmware auswählbar machen
[/li][li]Versuchen bei der Methode ApplyChanges die CPU/Firmware/Funktion auszulesen
[/li][li]Verschiedene Module bauen, welche aber alle von einer eigenen Basis-Klasse abgeleitet werden wo alle Grundfunktionen aller Platten enthalten sind
[/li][li]usw
[/li][/ul]
Hier ist dann auch die Frage der ‚Schnittstellen‘ bzw. wie Diese untereinander kommunizieren.
Du kannst das ‚Ganze‘ ja in IPS mit z.B. einen Splitter für die einzenen Platten umsetzen und dahinter wieder Instanzen für die weiteren Platten. Zumindest theoretisch, kommt auch sehr auf die Nutzdaten bzw, dein Protokoll an.
Du kannst das Feld ja auch dynamisch beschreiben.
Also ich stelle z.B. in der Instanz ein:
Firmware 1.0x
Hardware 2.0
Dann setzt dein Modul in der Methode ApplyChanges die Beschreibung auf dieses Modul und liefert auch gleich den Link mit
Öhhh… nun schmeichelst du mir
Ich bin auch nur Generaldilettant der einfach viel ausprobiert und dafür seine Freizeit opfert.
Aber wenn Interesse besteht, würde ich es machen.
‚Ihr‘ könnt ja auch mal nach Lübeck kommen und wir stürmen das HQ
Wäre das weiter in der Mitte von Deutschland (Raum Frankfurt :D), hätte ich daran auch Interesse Nur bis hoch in den Norden ist es leider doch etwas weit
Edit: Nall chan könnte ja eine Deutschland-Workshop-Tour machen
Es fehlt aber auch einfach noch zu viel in den Modulen bzw. es sind noch ein paar nervige Bugs enthalten.
Bevor da nicht endlich Ruhe eingekehrt ist, wird wohl auch wenig in Richtung Doku passieren.
Aber wirklich… diesen ganzen Michales hier sind echt eine Plage… Einer verknotet was und der andere soll es richten :D:D
Nun wird es aber doch zu sehr OT…
Bin dann auch mal ‚verknoten‘… in den Untiefen meines aktuellen Projekts.
Die Eigenschaft InstanceID enthält immer die zu dieser Instanz gehörigen IPS-ID.
Somit braucht es um auf sich selbst zu zeigen auch keine GetIDForIdent- Methode.
Michael (so nun Sofa, genug die arme Maus gedrückt )
Also im Create geht es nicht.
Weil erst erstellt IPS ja die Instanz und füllt dann das Objekt mit den Werten aus dem, Eingabefeld, welches dir beim anlegen angezeigt wurde. Es wird also sofort überschrieben.
Im Applychanges geht es bei mir aber auch sofort (nachdem ich die Einstellungen einmal übernommen habe, da sonst diese Methode ja nicht aufgerufen wird.
Die Idee ist echt praktisch, in den einen oder anderen Modul werde ich das auch einbauen
Nur überschreibt es dabei natürlich die Eingaben von dem User… immer.
@Paresy
Was mich noch mal an das SetSummary erinnert… diese Funktion fehlt den Modulen noch.