FASP Controller Plugin



This plugin provides the ability to modify the parameters of a running transfer using Aspera's FASP protocol.

Saved Parameters Description

  • Name: The name used to identify a saved FaspControl configured instance.
  • Comments: The comments of the FaspControl template
  • Command: Choose among available commands - Cancel session, Monitor transfer session, Monitor transfer job
  • Wait until end: Keep the step inprogress as long as the session and job are inprogress
  • Polling frequency: How often the Central server is polled for session and job status. Default is 5 seconds
  • Controlled Aspera node: The remote node to connect to monitor or cancel an Aspera transfer
  • Central address: IP address or hostname to get of the Aspera Transfer server. The host name is entered as lala.com or IP as 10.0.200.202
  • Service URI root: optional input: SOAP URI part of the WSDL url to the Central server. Defaulted to the expected value
  • Node user: The node the user required for authentication
  • Node password: The node user's password required for authentication

Inputs Description

The list of inputs depends on the configuration of the FaspControl action template.

All parameters are available as inputs at runtime if not specified by the template. This plugin does not support value overwrites: if a value is specified in the template it will not be available as input of the step at run time.

Outputs Description

  • Session_file_list: The list of files to be transferred in the session, as an array
  • Transferred_file_list: The list of files transferred in the session, as an array
  • No_of_files_transferred: The number of files transferred in the session
  • Growing_file_list: The list of files that are currently in progress during Orchestrator poll
  • Session_status: Status of the session obtained via API call one of: Complete, Failed, Error, Stopped

Dependencies

None

Operating Instructions

This plugin allows monitoring of a Aspera transfer session. While monitor a session can be checked for files transferred, or cancelled.

Supply the session ID at run time to the plugin and choose a command to perform on that session.

Setting up Aspera Central API

Note: works for Enterprise Server, Connect Server, Faspex Server and Point to Point as they all use Aspera Central to expose their statuses.

Note: reliable API must be enabled on the Aspera Server being polled, and the IP address polling needs to be enabled as shown with <central_server> below.
<address>0.0.0.0</address>
<port>40001</port>
<persistent_store>enable</persistent_store>
</central_server>

Setting up Node API

The remote nodes must be running Aspera Enterprise Server, Connect Server or Point to Point (Linux or Windows) with a valid license as they all use the asperanoded service for Node API calls. The node user name is a Node API account (not an operating system account on the Aspera transfer server). The transfer user (which is an operating system account) associated to the Node API account can be found by running this command on the Aspera server:

# /opt/aspera/bin/asnodeadmin -l 

   List of node user(s): 

                user       system/transfer user                    acls 

   ====================    =======================    ==================== 

           node_user                       xfer       [] 

The path to configure in the watch directory is relative to this transfer user (e.g. xfer) docroot.

The transfer user docroot can be found in /opt/aspera/etc/aspera.conf on the remote server, for example:
                    <user> 

                        <name>xfer</name> 

                        <file_system> 

                            <access> 

                                <paths> 

                                    <path> 

                                        <absolute>/home/xfer/data</absolute> 

                                    </path> 

                                </paths> 

                            </access> 

                        </file_system> 

                        </user> 

For example, a watch directory like /root refers to /home/xfer/data/root on the remote server.

By default, only HTTPS (port 9092) is enabled on the Aspera servers for the Node API. To enable HTTP (port 9091) as well, make sure thathttps://developer.asperasoft.com/ on the remote server, /opt/aspera/etc/aspera.conf contains this section:

 <server>

    <server_name>test.sl.dev.asperacloud.net</server_name>

    <http_port>9091</http_port> 

    <https_port>9092</https_port> 

    <enable_http>true</enable_http> 

    <enable_https>true</enable_https> 

  </server>

Restart asperanoded on the remote server (as root) to enable any change in this aspera.conf port configuration:

service asperanoded restart

More information regarding Aspera Node API can be found on the Aspera Developer Network.