Hinzufügen einer Bedingung in einem nutzerdefinierten Paket für eine Wenn-Bedingung

Fügen Sie Bedingungen in einem nutzerdefinierten Paket hinzu.

Erstellen von Bedingungswerten in einer Aktion

  • Um eine Bedingung zu erstellen, setzen Sie die Eigenschaft commandType der BotCommand-Anmerkung auf den Wert Condition.
  • Verwenden Sie die Anmerkung ConditionTest, um die Eingabemethode der Bedingung zu definieren.
@BotCommand(commandType = Condition)
@CommandPkg(label = "File exists", name = "fileExists",
        description = "Checks if the file exists.",
        node_label = "file exists at {{sourceFilePath}}", icon = "")
public class Exist extends AbstractCondition {
    @ConditionTest
    public boolean test(@Idx(index = "1", type = FILE) @LocalFile @Pkg(label = "File path") @NotEmpty String sourceFilePath,
                        @Idx(index = "2", type = NUMBER) @Pkg(label = "How long you would like to wait for this condition 
                        to be true?(Seconds)",
                                default_value = "0", default_value_type = DataType.NUMBER)
                        @GreaterThanEqualTo("0") @LessThanEqualTo("99999") @NotEmpty @NumberInteger Double waitTimeout) {
 
        // Add the logic to check for the condition
    }   
}

Im folgenden Beispiel wird überprüft, ob der angegebene boolesche Wert falsch ist.

Setzen Sie commandType auf Condition.

@BotCommand(commandType = Condition)
@CommandPkg(label = "False condition example", name = "conditionalTypeExample",
        description = "Checks if the boolean value is false.")
public class ConditionalTypeExample {
	
	 @ConditionTest
	    public Boolean validate(
	            @Idx(index = "1", type = AttributeType.BOOLEAN)
	            @VariableType(BOOLEAN)
	            @Pkg(label = "Boolean variable", default_value_type = BOOLEAN) @NotEmpty Boolean variable
	    ) {
	        return variable == null ? false : !variable ;
	    }