The Connect SDK enables you to develop a native feel to your web applications while utilizing the Aspera file-transfer capabilities. Through the JavaScript API you can offer a seamless user experience from initial installation of the plugin to use of the web application.

New in Connect: As of 3.9, the Connect SDK makes use of browser extension technology to facilitate the Connect app's communication with the web browser. This enables significant improvements to ease-of-use and security for users of on-premises servers and users of Aspera on Cloud.

Upgrading Connect to version 3.9 is strongly recommended to ensure uninterrupted Connect availability. For this reason, Aspera encourages you to take immediate action:

  • End users should upgrade to Connect 3.9.
  • Administrators should configure Faspex and Shares to use Connect SDK 3.9.
  • Web developers should integrate Connect SDK 3.9 in their web applications.
  • If your web application has a custom installation experience for IBM Aspera Connect, see Implementing Support for Extensions Installation, below.

The Connect SDK contains all of the files that you need to load on your web server. There are two ways to access the Connect SDK for use in your web application:

**We welcome your feedback. Customers interested in providing feedback for preview releases of Connect can register at the IBM Feedback Program (IBMid required for login). You can submit your feedback on the Submit Problem Report page.**

Setting Up Your Web Server To Host the Connect SDK

After you download the Connect SDK, you need to load it onto a web server; we recommend keeping it separate from your other servers. You can use any server setup and any directory, but you must reference the JavaScript from your application.

1. Configure cache-control Headers

To ensure that updates are recognized, configure the following headers on your server:

  • Cache-Control: private, must-revalidate
  • Expires: -1
  • Last-Modified: xxxxxxxxxxxxxxxx

This allows clients to check whether or not files have been modified, while allowing you to take advantage of cache performance.  You can set the configuration on a per-directory basis, if needed.

2. Configure MIME Types

To ensure that web server sends the browser plugin and Connect Installer files from your web server correctly, enable the following MIME types:

  • .crx - application/x-chrome-extension
  • .xpi - application/x-xpinstall
  • .jar - application/java-archive
  • .exe - application/octet-stream
  • .msi - application/octet-stream
  • .dmg - application/octet-stream
  • .sh - application/x-sh
  • .zip - application/zip
  • .cab - vnd.ms-cab-compressed

3. Deploy the SDK

Now that the server is ready, you can deploy the contents of the SDK.  We recommend using a directory on your server, such as /connect/.  Unzip the archive and move the content to the chosen directory on your web server.  Verify that the web server has permission to read the files.

4. Configure Web Applications

The server is now ready to host the Connect SDK. You now need to ensure that any web applications you create point to this location. For example, replace any occurrences of "//d3gcli72yxqn2z.cloudfront.net/connect/" with "//your-website.com/directory/".

 

Using the Standard Connect Install Experience

Installation UI for the Connect SDK

The above installation component ships with the Connect SDK (connectinstaller-4.js). Given that each available browser has a slightly different method for communicating with desktop applications and different method for installation extensions, we recommend using the standard connection process above -- the IBM Aspera components solve the complexity inherent in all possible edge cases. Aspera has optimized the guided installation experience through extensive usability testing. We will continue to make improvements as browser techniques evolve. Please let us know if you have feedback or questions by emailing apk at us.ibm.com.

Status events from the AW4.Connect object are wired up to functions provided by the ConnectInstaller. Integration example:

var CONNECT_INSTALLER =  "//d3gcli72yxqn2z.cloudfront.net/connect/v4";

var initAsperaConnect  = function () {
    this.asperaWeb = new AW4.Connect();
    var asperaInstaller = new AW4.ConnectInstaller({sdkLocation: CONNECT_INSTALLER});
    var statusEventListener = function (eventType, data) {
        if (eventType === AW4.Connect.EVENT.STATUS && data == AW4.Connect.STATUS.INITIALIZING) {
            asperaInstaller.showLaunching();
        } else if (eventType === AW4.Connect.EVENT.STATUS && data == AW4.Connect.STATUS.FAILED) {
            asperaInstaller.showDownload();
        } else if (eventType === AW4.Connect.EVENT.STATUS && data == AW4.Connect.STATUS.OUTDATED) {
            asperaInstaller.showUpdate();
        } else if (eventType === AW4.Connect.EVENT.STATUS && data == AW4.Connect.STATUS.RUNNING) {
            asperaInstaller.connected();
        }
    };
    asperaWeb.addEventListener(AW4.Connect.EVENT.STATUS, statusEventListener);
    asperaWeb.initSession();
};
Video player

Video

×