Lançamento do Pacote SDK v.29

Veja o que há de novo na versão v.29 no Automation 360 Package SDK.

Novidades

Link para download do SDK: A360-package-sdk-2.8.0.zip
return_Direct attribute

Um novo atributo return_Direct= true foi adicionado no nível da ação. Ele mostrará apenas uma única opção para selecionar a variável Tipo de registro na saída.

Por exemplo:

@BotCommand
@CommandPkg(
        return_label = "[[AddColumn.return_label]]",        
        node_label = "[[AddColumn.node_label]]",
        label = "[[AddColumn.label]]",        
        description = "[[AddColumn.description]]",        
        name = "addColumn",        
        icon = "record.svg",        
        return_type = DataType.RECORD,        
        return_Direct = true,        
        return_required = true,        
        minimum_controlroom_version = "17917",        
        minimum_botagent_version = "21.134",        
        documentation_url = RECORD_ADD_COLUMN_URL,        
        documentation_widget_page = RECORD_ADD_COLUMN_WIDGET,        
        allowed_Agent_Targets = AllowedTarget.HEADLESS)
Atributo OAUTHCONNECTION

Um novo tipo de atributo, OAUTHCONNECTION, foi adicionado para obter um token de acesso do valor pré-configurado da conexão OAuth da Control Room.

Por exemplo:

@Idx(index = "1", type = AttributeType.OAUTHCONNECTION)
@Pkg(label = "[[OAuthConnectionTypeDemo.connection.label]]")
OAuthConnection connection
Uma nova regra VariableMapAllowedDataTypes é adicionada ao VARIABLEMAP

VariableMapAllowedDataTypes permite que você filtre a interface do usuário para um tipo específico de variável. VariableMap é um controle que permite adicionar seleção de variáveis para qualquer ação (na interface do usuário do editor de bots). Com o filtro VariableMapAllowedDataTypes, você pode restringir o tipo de dados das variáveis que podem ser usadas em uma ação. Por exemplo, se você definir VariableMapAllowedDataTypes como String, ele listará apenas as variáveis de string em uma ação.


@Idx(index = "4", type = VARIABLEMAP)
        @Pkg(label = "[[LogVariables.selectVariable.label]]")
        @NotEmpty
        @VariableType(DataType.VARIABLEMAP)
        @VariableMapAllowedDataTypes({
            DataType.STRING,
            DataType.NUMBER,
            DataType.BOOLEAN,
            DataType.DATETIME
        })
        Map<String, Value> variables
@DesktopOperationContext anotação

A nova anotação @DesktopOperationContext é usada para injetar a DesktopOperationContext em DesktopOperation, semelhante a GlobalSessionContext.

Essa anotação é aplicada à propriedade com o método setter para que o arquivo gerado possa definir DesktopOperationContext para o arquivo de destino.

Ao injetar DesktopOperationContext, a seguinte propriedade pode ser acessada em DesktopOperation a partir de GlobalSessionContext:

  1. getUserToken
  2. getCrUrl
  3. resolveResource
  4. getExternalEnvironment
  5. getProxyConfig
  6. botId
  7. getResources

@BotCommand(commandType = BotCommand.CommandType.DESKTOP_OPERATION_BUTTON)
@CommandPkg(name = "RESTRecorder", desktop_operation_name = "RESTRecorder")
public class RecorderOperation {

    private static final Logger LOGGER = LogManager.getLogger(RecorderOperation.class);

    @Request private DesktopOperationButtonRequest request;

    @DesktopOperationContext    private com.automationanywhere.toolchain.runtime.operation.context.DesktopOperationContext context;

    public void setRequest(DesktopOperationButtonRequest request) {
        this.request = request;
    }

    public void setContext(
            com.automationanywhere.toolchain.runtime.operation.context.DesktopOperationContext                    context) {
        this.context = context;
    }