Funktionswünsche des PHP-SDK

[b]FUNKTIONSWÜNSCHE BITTE
>>> HIER <<<

[/b]

Ab IPS 5.0 hat das PHP-SDK alle Funktionen des Delphi-SDK ersetzt !

Und natürlich viele neue tolle Funktionen :slight_smile: :loveips:

Hier mal die offenen ‚Funktionswünsche‘, basierend auf den Möglichkeiten des alten SDKs

[ul]
[li]Timer (RegisterTimer bereits vorhanden, jedoch nur mit Sekunden genauer Präzision)[/li][li]SetSummary (ab 4.1)[/li][li]InstanceStatusChange (ab 4.1 über MessageSink möglich)[/li][li]KernelRunlevelChange (ab 4.1 über MessageSink möglich)[/li][li]LogMessage (z.Z. Workaround über IPS_LogMessage) (ab 5.0 wieder über LogMessage möglich)[/li][li]MessageSink (ab 4.1 vorhanden. Siehe RegisterMessage)[/li][li]HasActiveParent (eigener Workaround möglich.)[/li][li]Konfigurationsformulare mit Listen (z.B. mehrfache Variablenauswahl)[/li][li]Konfigurationsformulare mit Listen und Spalten (z.B. Konfiguratoren) (ab 5.0 Formen für Configurator oder Listen mit Tree Elementen)[/li][/ul]
[HR][/HR]

Michael

Ich würde mir erstmal wünschen, dass sie endlich das alte SDK komplett ersetzen. Da fehlt ja leider auch noch eine ganze Ecke.
Und natürlich die Bugs beseitigt werden :smiley:

So eine Art ‚readonly‘-Feld ?
Glaube das paßt noch nicht mal in das Konzept von IPS.
Aber, du mußt im Konfig-Formular ja nicht alle Eigenschalten auflisten.
Laß das Feld in der Json einfach weg, dann wird es ‚nur‘ nicht angezeigt :slight_smile:

Die Timer sollen laut Paresy demnächst kommen. Ich hoffe sehr, dass diese nicht auf den IPS-Ereignissen basieren und auch mit nicht öffentlichen Funktionen der Module agieren.

Wozu ?
Gibt es doch schon ?


echo IPS_GetInstance($this->InstanceID)['InstanceStatus'];
echo $this->ReadPropertyString('Host');

Michael

Zu Punkt 2
Auch das weis ich das man die Weg lassen kann. Ich möchte aber das die Werte einsehbar sind. Und hierfür eine Variabel zu machen ist auch doof und meiner Meinung nach unnötig.
EDIT: ‚readonly‘ Feld ist verfügbar.

Zu Punkt 3
Ich möchte gerne das man eine Variable wie ein Script anklicken kann es dennoch wie eine Variable ausgegeben wird. Also links der Variablenname und rechts der Inhalt. Und wenn man diese Variable anklickt, kommt halt nicht die Auswahlliste des hinterlegten Profils sondern es wird einfach ein Script ausgelöst.
EDIT: (Möglich mit Integer Variable und nur einer Assozioation, dann kann sowohl ein Wert ausgegeben, als auch ein einziger Button zum anklicken vorhanden sein)

Zu Punkt 4
Ja hat er schon mal erwähnt, daher habe ich meine SymconHUE noch ohne Anlage eines Events umgesetzt und warte auf den internen.
EDIT: Timer und MessageSink sind verfügbar.

Zu Punkt 5
Nein ich hätte gerne das Gegenstück -> $this->WritePropertyString(‚Host‘);
Aktuell gehe ich über dir normale Funktion und gebe die InstanceID mit. Aber wenn ich doch schon eine Read function habe dann doch bitte auch eine Write. Oder beide weglassen.

EDIT: Nicht erlaubt gem. Richtline.

Hi ich habe auch paar Wünsche nachdem ich meine ersten PHP Module gebaut habe.

[ul]
[li]Dynamische Auswahllisten (z.B. Eingänge, Senderliste, Geräteabhänige Auswahlen). Von der Umsetzung würde ich mir das so vorstellen, dass man ein Spezialprofil aber sich intern anders verhält. Ich würde das auch nur für Module vorsehen ähnlich wie RequestAction.[/li][li]Bei den Kofigurationsformularen würde ich gerne eine DisplayFields, da interne Werte gerne auch ausgeben möchte, ohne dass der Benutzer diese direkt ändern kann.[/li][li] EDIT: Feld ‚enabled‘ ist ab IPS 5.2 verfügbar und deaktiviert das bearbeiten durch den Benutzer.[/li][li]Ich brauchte in den Modulen eine Möglichkeit einer Methode einen automatischen Aufruf zu verpassen, welcher auch nicht in Symcon zu sehen ist. Über die Einstellung würde ich den INterval einstellen lassen.[/li][li]EDIT: Workaround: IPS_RequestAction aufrufen. Dann braucht man keine eigene public Funktion und kann die Auswertung in der Methode RequestAction vornehmen.[/li][li]Wenn man mit SetStatus einen Wert setzt, sollte dieser auch mit GetStatus abfragbar sein. Das gilt auch für die Methoden. z.B. ReadProperties[/li][li]EDIT: Verfügbar ab IPS 5.1 https://www.symcon.de/service/dokumentation/entwicklerbereich/sdk-tools/sdk-php/module/getstatus/[/li][/ul]

Hi!

Soweit ich es gesehen habe ist es noch nicht möglich, dass man in einem Modul einen Button drückt und bekommt dann ein „Ergebnis“ (in Textform) direkt im Fenster der „Einstellungs-Modul-Instanz“…oder hab ich da was übersehen?

Ich hoffe ihr könnt meinen wirren Gedanken folgen :smiley: Aber ich hätte da ein paar sehr gute Modul-Ideen, welche dieses Feature brauchen könnten :slight_smile:

Also quasi ein Feld in der form.json, welches man nach Drücken eines Button im Skript generieren und den Text bestimmen kann.

Nachtrag:
Wäre es dann vlt. auch gleich Möglich, dass man z.B. ins Konfigurationsformular (als Endbenutzer) mehrere Dinge einträgt und nach einem Klick auf „Übernehmen“ hat man unter „Testumgebung“ ein Dropdown-Select-Feld mit den eingegebenen Punkten von oben? Das man direkt z.B. „Gerät1“ auswählt und klickt auf „Testen“ und Gerät 1 macht irgendwas und das gleiche dann halt auch mit Gerät2, …, je nachdem was der Benutzer oben eingetragen hat.

Danke und Grüße,
Chris

EDIT: Mit UpdateFormField — IP-Symcon :: Automatisierungssoftware und den entstprechenden Elementen wie PopupAlert — IP-Symcon :: Automatisierungssoftware oder PopupButton — IP-Symcon :: Automatisierungssoftware alles möglich.

Hi!

Noch ein Wunsch :smiley:

Konfigurationsformulare — IP-Symcon :: Automatisierungssoftware

Da hätte ich gerne noch 2 neue Möglichkeiten:
> Trennlinie
> Leerzeile

…jeweils zur besseren optischen Aufteilung der Modul-Instanz-Ansicht :slight_smile:

Denke der Wunsch sollte leichter sein als der andere und ist bestimmt zum nächsten Update mit dabei :wink: :smiley: :stuck_out_tongue:

Danke und Grüße,
Chris

Ja doch. Per echo Ausgeben.
Dann kommt ein Info-Popup :slight_smile:
Wenn dir das recht ist.

EDIT: Besser PopupButton — IP-Symcon :: Automatisierungssoftware

Zum Nachtrag.
Es ist ja eher so gedacht dass du pro Gerät eine Device-Instanz hast.
Somit eher wohl nicht ganz IPS-Konform.
Dennoch sollte es jetzt schon gehen. Habe aber DropDown noch nicht im Bereich der Testumgebung genutzt.
Probier einfach mal aus :slight_smile:

Allerdings wird auch noch darauf gewartet dass man dynamisch (auch per Button) z.B. eine Tabellenansicht ,wie bei den Konfiguratoren hat, befüllen kann.
Michael
PS: Es gibt einen extra Thread für Funktionswünsche bei den PHP-Modulen. Da es ja wohl darum geht.

Das mit „echo“ muss ich mal testen. Eventuell könnte das schon ausreichen :cool:

Aber beim Dropdown geht es mir weniger um „richtige“ Geräte als eher um verschiedene Einträge/Funktionen oben in der Konfiguration, die man dann unten in der Testumgebung per Dropdown auswählen und testen kann :slight_smile: Müsste also dynamisch erzeugt werden (nach drücken auf „Übernehmen“).

Danke und Grüße,
Chris

Hi!

Wir hatten, glaube ich :D, schon irgendwo darüber gesprochen…aber da ich das wirklich dringend benötige, hier nochmal als Funktionswunsch :slight_smile:

Ich bräuchte bitte dringend die Möglichkeit die „Optik“ einer Modul-Instanz, durch setzen eines Haken oder Wahl eines Dropdown, zu ändern. Nach einem Klick auf Übernehmen.

Praktisches Beispiel:
Ich installiere Modul XY und öffne die Instanz. Dann setze ich einen Haken bei „Erw. Informationen“ und beim Klick auf „Übernehmen“ sollen in der Instanz weitere Eingabefelder/Auswahlfelder/Labels eingeblendet werden (klappt zwar vmtl. nur, wenn man die Instanz neu öffnet, aber naja, besser als gar nicht). Entfernt man den Haken bei „Erw. Informationen“ wieder, dann sollen die Felder, beim Klick auf „Übernehmen“, wieder verschwinden. So in der Art von „SetHidden“. Das wäre mir wirklich ziemlich wichtig. So könnte man Felder nu einblenden, wenn ein Device diese Funktionen unterstützt. Sonst verwirrt man die Endanwender unnötig mit Feldern, die sein Device gar nicht unterstützt.

Genau so wichtig oder vlt. sogar noch etwas wichtiger wäre die Möglichkeit über die module.php irgendwas auszulesen und einen Text zu generieren, welcher dann in einem Label oder Feld in der Instanz angezeigt wird (z.B. Einstellungen aus einem Gerät auslesen und in der Instanz darstellen). Ich habe eine ganze Menge solcher Fälle, wo ich das dringend brauchen würde.

Wäre also suuuuper, wenn ihr das irgendwie in nicht all zu ferner Zukunft hinbekommen könntet (wenn IPS stabil läuft ;)).

Vielen Dank!
-Chris-

EDIT: Ab IPS 4.1 mögich über GetConfigurationForm — IP-Symcon :: Automatisierungssoftware

Hi,

ich hätte gern noch die Möglichkeit im Modul-Fenster Rückmeldungen z.B. für Funktionen der Testumgebung einzublenden. Praktisch als Alternative zu einem separaten Debug-Fenster oder dem Meldungsfenster. Für länger andauernde Funktionen, welche aus mehreren Schritten bestehen, hätte man so eine „Überbrückung der Wartezeit“. Eine andere Idee wäre ein „Fortschrittsbalken“.

Nur mal so als Wunsch :smiley:

Ciao
herbertf

EDIT: Ab IPS 5.2 ist die ProgressBar — IP-Symcon :: Automatisierungssoftware verfügbar.

Dieser alter Sammelthread ist jetzt 5 Jahre alt.
Alle zuletzt erledigten Themen habe ich kommentiert.
Offene Themen sind in den ‚neuen‘ Bereich gewandert -> IP-Symcon Community Forum

Neue Funktionswünsche bitte nur noch dort posten.

Dieser Thread dient aktuell nur als Archiv und wird vermutlich zu IPS 6 oder so gelöscht :slight_smile:
Michael