Distributing settings using MDMs

If you have mobile device management (MDM) software or enterprise mobility management (EMM) software (such as Ivanti Neurons for MDM or Avalanche), use it to configure the Client or distribute Velocity deployment files to the Velocity Client. The methods may vary depending on the MDM you are using and the operating systems on your devices.

The managed configuration options are available for Android Enterprise managed devices or iOS devices with managed profiles.

In some cases, you may be able to distribute deployment files directly to the device using an MDM.

ClosedDeploying projects using Ivanti Neurons for MDM (recommended)

Watch a video (5:53)

Use these instructions to make sure the Velocity Client is installed and then the app configuration instructions are applied in the appropriate order. These instructions are for Ivanti Neurons for MDM version 86 or newer. If any profiles already exist on the device (such as the demo profile), the profiles are deleted when the new configuration is downloaded.

1.Create a zipped file that contains all the projects you want to distribute to the devices.

From the Velocity Console, deploy the project or projects you want to distribute. Add all of the deployment files (including .wlvpk and .wlgxp files) to a .zip archive.

The zipped archive should not contain any directories. Any files inside a directory are ignored by the Velocity Client.

2.Create a custom attribute.

In Ivanti Neurons for MDM, navigate to Admin > System > Attributes and create a custom attribute. Make sure the attribute type is Device. Copy the information from the Usage field to use later. We suggest naming the attribute something like VelocityURI.

3.Add Velocity to the App Catalog.

Click Apps > App Catalog > Add to add a new app. On the Configuration page of the Add app wizard, add a Managed Configurations for Android. In the Fetch Configuration > Manifest info field, paste the name of the custom attribute you created. For example, if you named the attribute VelocityURI, paste: ${device.VelocityURI}

4.Create a File Transfer Configuration.

Click Configurations > Add to create a new configuration, and select File Transfer as the configuration type. On the Create settings page of the Add Config wizard, upload the zipped archive from step 1 as the File to transfer. Make sure the Transfer using Android Managed App Config option is selected. Paste in the custom attribute you created in step 2. Then type the name of the Velocity app in the App Names field.

When the device checks in to the MDM, it downloads the zip archive. When the Velocity Client is launched, the Neurons client sends the zip archive to Velocity and the host profiles appear in the list.

For additional information about using Ivanti Neurons for MDM to distribute .wldep files, see the article in the Ivanti Community.

ClosedUsing the managed configuration options

The Velocity app has built-in managed configuration options that allow you to configure the Client using an MDM.

The following options are available for managed configuration for Velocity.

Host profile

Name. A name for a host profile.

Type. The type of the host profile.

Address.The IP address or host name of the host system to which the mobile device will connect.

Port. The TCP port number on which the host system is listening for emulation requests from Clients.

Global settings

Max Sessions. The maximum number of concurrent sessions allowed.

Hide Exit. Hides the Exit button from the menu.

Remove demo profile. Removes the demo profile from the device, so it no longer shows in the list of host profiles.

Configuration password. Provide a custom password that device users must type before they can access the Client settings on the device.

Fetch Configurations

Manifest info. A JSON string that specifies where the manifest file is and, if needed, authentication information for a SHA1 or SHA256 certificate. If you use authentication, include the "trust" and "authorization" attributes. The trust attribute should be prefaced with the type: sha1: or sha256:. The authentication attribute is the information required by the server in the HTTP authorization request header. This can be a bearer (Bearer:) token or basic (Basic:) authentication.

Example:

{"manifest":"https://10.10.10.10:9999/velocity/manifest.wlcfg","trust":"sha1:a69cfdb0580da4eeae9a477524c30b9f5db61c77","authorization":"Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkqIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5cl"}

See the instructions below for information on creating and using a manifest file.

Request timeout (seconds). How long the Client will wait for a response from the server hosting the manifest file before the request fails.

License Server

License server address. The address for the Velocity License Server. If the License Server address and port are configured here, these settings override any License Server settings in a host profile.

Port. The port for the Velocity License Server. If the address and port are configured, these settings override any License Server settings in a host profile.

Site ID. The site ID for the device when it contacts the Velocity License Server.

Secure license delivery. Enable this to require the device to use Secure License Delivery. This requires version 5.1 or newer of the Velocity License Server and it must be configured with a certificate. If the Velocity License Server uses a self-signed certificate, you must distribute the public certificate to the device using a host profile in order to use secure license delivery.

MDM variables. Stores key-value pairs in Velocity's persistent storage so that the Client can access them. You can define the value as a static value or use device variables as the values. Use Storage.getItem() on the Client to retrieve the value. This feature is available in Velocity 2.1.35 or newer, and the device must be Android 6.0 or newer.

Velocity license ID. Sets the ID to use when the device requests a license from the license server. Set this to either the default scheme where the ID is created by the Client, or use the MAC address as the ID. This option only works with Ivanti Neurons for MDM.

You may choose to use the MAC address to make it easier to monitor license usage for the devices in your device inventory. This option works when the MDM can determine the MAC address for the device and pass it to the Velocity Client.

If the Client requests a license and then later the Velocity ID is set to MAC address, the next time the device requests a license the license server will recognize it as a different device. That means the license server will assign it a second license. It does not automatically release the first license. If you plan to use the MAC address as the Velocity ID, you should make sure that option is configured before the Client requests a license from the license server. This will avoid situations where the device consumes two licenses.

To manage Velocity settings and deployment files using managed configuration

1.Create the deployment files (.wldep, .wlxgp, or .wlvpk) from the Velocity Console.

2.Create a manifest file that lists the deployment files each Client should retrieve. The manifest file should be a text file with the extension .wlcfg and use the following format:

{

"files": [

{"name":"profile1.wldep"},

{"name":"profile2.wldep"},

{"name":"global.wlxgp"}

]

}

3.Host the deployment files and manifest file on a web server in the same directory. The web server should be in a location where the devices running Velocity can access it.

4.Log in to your MDM. In the managed configuration settings for the Velocity Client, in the Fetch Configurations > Manifest info field, provide a URL for the manifest and, if needed, authentication information.

5.Deploy the managed configuration to devices.

When the Velocity Client launches on the device, it applies the settings from the MDM, and then connects to the URL in the manifest info and pulls down the manifest file and all the associated deployment files. Any profiles already on the device are removed.

If the manifest file or the deployment files on the server change, the Client will retrieve the new files the next time it launches.

ClosedDistributing deployment files directly to the device

If you have Avalanche, you can deploy a project directly from the Velocity Console to the Avalanche Central File Store. Then from Avalanche, deploy a file payload or a Velocity configuration file to devices.

For Android devices are running a version of Android older than version 10, in most cases the MDM can distribute the deployment files directly to the com.wavelink.velocity directory in the first storage partition and Velocity can read the files there.

For Android devices running Android version 10 or newer, if the device is an Android Enterprise managed device, the MDM client should put the deployment files in the  /Android/data/com.wavelink.velocity/files directory. If the device is not an Android Enterprise managed device and the MDM does not have access to that directory, put the deployment files in the /Download/com.wavelink.velocity directory . Then install the Velocity File Assistant to copy the files from where the MDM puts them to where Velocity can access them. For more information on using Velocity File Assistant, see Velocity File Assistant.

ClosedDeploying projects to devices using Avalanche

To distribute projects to devices using Avalanche, first deploy the projects to the Central File Store. Then, for devices with older versions of Android, you can use a File payload to distribute projects. To distribute projects to devices using Android 10 or newer, make sure the devices are enrolled in Android Enterprise and then create a managed configuration file and a manifest.

You must have Velocity 2.1.8 or newer and Avalanche 6.3 in order to deploy projects ( .wldep or .wlxgp ) directly to Avalanche. (Speakeasy files are not included when you deploy to Avalanche.) First, set up Velocity with Avalanche credentials and the path to the Central File Store. Then, when you do a deployment, the Velocity Console copies the deployment file to the Avalanche Central File Store. Each deployment from the same project overwrites the existing file and is associated with the file payload. Deploying from Velocity does not trigger an Avalanche deployment.

For devices that are running Android 10 or newer: the devices must be Android Enterprise devices, the deployment files must be hosted on a web server, and you must also create a managed configuration and a manifest. Avalanche sends the configuration file to the device, and the Velocity Client reads the file to know where the Central File Store is, how to authenticate, and which manifest file to use. Then the manifest file tells the Client which deployment files to retrieve.