Aktionen | format-string auflösen (ICU-Syntax)

Guten Tag

Ich möchte in meinem eigenen Modul die Aktionen vom Ablaufplan ähnlich darstellen wie im Ablaufplan-Editor.
Ich habe dafür die Aktionen und die Parameter. Wie kann ich nun den format-string mit meinen parametern versehen?
Meine Daten sehen ca. so aus:

{
    "scriptContent": {
        "actions": [
            {
                "parameters": {
                    "DURATION": 3,
                    "UNIT": 1000,
                    "TARGET": -1
                },
                "action": {
                    "format": "Warte {DURATION, number} {UNIT, select, 1 {Millisekunden} 1000 {Sekunden} 60000 {Minuten} 3600000 {Stunden} other {Sekunden}}",
                }
            }
        ]
    }
}

Jetzt möchte ich den „format“ string mit den Parametern auflösen. Geht sowas in einem Modul?
In PHP funktioniert das ja mit dem MessageFormatter, aber diese PHP-Extension wird auf dem SymOS wohl nicht unterstützt.
https://www.php.net/manual/en/messageformatter.formatmessage.php

Oder kann ich die Aktionen eines Ablaufplanes irgendwie anders übersetzen bzw. auflösen?

Ich hoffe ihr könnt mir hier weiter helfen.

Gruss
Dario

Das ist ja nur für die Darstellung in der Konsole.
Entsprechend macht die auch das Einsetzen der Werte.
Michael

Danke für die Antwort.
Also sehe ich das richtig, dass dies im module.php nicht möglich ist wenn ich diesen string weiter verarbeiten und für etwas anderes verwenden möchte?
Gruss
Dario

Keine Ahnung was du damit jetzt meinst?
Eigentlich sollte deine Aktion Code enthalten welcher etwas macht. Und so z.b. eine Funktion von deinem Modul ausführt.
Irgendwie sehen deine Parameter auch ganz anders aus als in der Dokumentation?!

Michael

Ja ich habe für die bessere Übersicht den unnötigen teil rausgelöscht. In dieser Doku ist der Parameter „format“ beschrieben.
Die Aktion selbst ist ja aber eine Art „Klasse“ oder „Gerüst/Definition“. Sie benötigt noch Parameter um spezifisch ausgeführt werden zu können.
Aber dann ist der Logik-Teil mit dem Auflösen der ICU-Syntax wohl im Code der Konsole selbst implementiert und kann so nicht in PHP gemacht werden.
Dann muss ich das wohl etwas anders machen. :slight_smile:
Danke trotzdem für deine Antwort.
Dario

Und die Werte der Parameter Konfigurierst du auch in der Konsole.
Aber dein JSON hat z.B. scriptContent, was Aktionen gar nicht als Feld haben.

Du hast die das JSON des Ablaufplan angeschaut, was mehrere Aktionen haben kann. Dort sind aber nicht die Aktionen selbst, sondern auch nur deren Parameter hinterlegt.

Du musst die Aktionen im ‚actions‘ Ordner anschauen, dort stehen die Übersetzungen und das format.
Michael