Erstellen von nutzerdefinierten Variablen mit Paket-SDKs
- Zuletzt aktualisiert2022/05/19
Erstellen von nutzerdefinierten Variablen mit Paket-SDKs
Wenn Sie Automation 360 verwenden, können Sie mithilfe des SDK-Pakets nutzerdefinierte Variablen erstellen.
Verwenden von nutzerdefinierten Variablen
Erstellen Sie mit Automation 360 eine nutzerdefinierte Variable. Dies ist eine Systemvariable und wird wie andere Bot-Variablen verwendet, außer dass sie schreibgeschützt ist und der Wert berechnet anstatt zugewiesen wird.
Erforderliche Anmerkungen
Um eine Variable zu erstellen, sind die folgenden Anmerkungen erforderlich:
Anmerkung | Verwendung |
---|---|
BotCommand |
Verwenden Sie die Anmerkung BotCommand mit der Variablen als commandType . Dadurch wird gewährleistet, dass das einfache alte Java-Objekt (POJO) für die Erstellung einer Automation 360-Variable geeignet ist. |
CommandPkg |
Diese Werte werden bei der Erstellung eines Pakets verwendet. Geben Sie einen Namen, eine Bezeichnung und eine Beschreibung für die Anmerkung an. |
Idx |
Versehen Sie alle Parameter und Mitgliedsvariablen, die erforderlich sind und bei der Validierungsprüfung helfen, mit Anmerkungen. Alternativ können sie auch in der Schnittstelle für die Eingabe angezeigt werden. Geben Sie den Index (Idx ) und den Typ an. |
Pkg |
Versehen Sie alle Parameter und Mitgliedsvariablen, die in der Schnittstelle angezeigt werden sollen, mit Anmerkungen. Diese Anmerkung wird ignoriert, wenn sie nicht von Idx begleitet wird. |
VariableExecute |
Die Methode, die aufgerufen werden muss, um den Variablenwert zurückzugeben. Diese Methode akzeptiert keine Eingabeparameter. Sessions und GlobalSessionContext sind über Setter-Injektion verfügbar. |
Anwendungsbeispiel
Im folgenden Anwendungsfall wird gezeigt, wie Sie die aktuelle Zeit für die Standardzone des Systems zurückgeben.
- Erstellen Sie die POJO-Klasse mit der Geschäftslogik:
public class Now { public DateTimeValue now() { Instant instant = Instant.now(); ZonedDateTime now = instant.atZone(ZoneId.systemDefault()); return new DateTimeValue(now); } }
- Versehen Sie die POJO-Klasse mit Anmerkungen, um sie für die Automation 360-Variable zu aktivieren und das Paket zu erstellen:
@BotCommand(commandType = BotCommand.CommandType.Variable) @CommandPkg(description = "The current datetime at system default zone.", name = "Now", label = "", variable_return_type = DataType.DATETIME) public class Now { public DateTimeValue now() { Instant instant = Instant.now(); ZonedDateTime now = instant.atZone(ZoneId.systemDefault()); return new DateTimeValue(now); } }
- Versehen Sie die Methode
now
mit Anmerkungen, um sie als Ausführungsmethode zu kennzeichnen.@VariableExecute public DateTimeValue now() { Instant instant = Instant.now(); ZonedDateTime now = instant.atZone(ZoneId.systemDefault()); return new DateTimeValue(now); }
Jede Variable muss eine Testmethode
VariableExecute
aufweisen.