License usage data
OpenFin collects a set of information to determine usage of OpenFin software, including hardware (desktop/machine) and software (app config) data points. Additional information is collected for Workspace deployments.
By default, the RVM sends this data to an OpenFin server for analysis. You can define an alternative license relay service (LRS) to collect it via the lrsUrl
setting in Desktop owner settings or the Windows registry.
License data for all deployments
The following data is routed to OpenFin about license usage for all deployments:
-
License key: Unique identifier for your OpenFin license
-
Machine ID: Non-personal, anonymous unique ID for the machine and user account
-
App ID: URL of the application manifest file
-
Startup URL or Platform URL: (in RVM 7.1 and later) Value used for
startup_app.providerUrl
orplatform.providerUrl
in the application manifest file. -
Content URL: (in RVM 7.1/Runtime 26 and later) The URL specified in
window.options
when a window is created via afins:
link. -
App events: Launch and close time of application (UTC)
-
Runtime environment: Runtime, RVM, and operating system versions
-
Adapter type and version: (in RVM 9 or later) If a .NET or Java adapter is used, its type and version
-
Public-facing IP address: Public facing IP address of the network request as seen by OpenFin servers. This is used to estimate the company where the information has been sent from. It is the public IP address attached to the request, or if an LRS is being used, the public IP of the LRS. It is not the end-user desktop IP address.
Unique user API
The objective of license reporting is to identify the number of unique end users of an application in a given month. If an application is regularly used by a single user from multiple machines, there is an extension to the OpenFin API to allow an application owner to map a set of machines to a single logical user. The following method in the JavaScript API allows your applications to map your unique user identifier to a machine ID:
const app = fin.desktop.Application.getCurrent()
app.registerUser(
userName,
appName,
function(){console.log("Success")},
function(err){console.log("Failure")}
)
-
userName(string)
: username to be passed to the RVM. -
appName(string)
: app name to be passed to the RVM. -
@param(Function) [callback]
: called if the method succeeds. -
@param {Function} [errorCallback]
: called if the method fails. The reason for failure is passed as an argument (err
).
This method requires:
-
Runtime 8.56.27.75 or greater
-
RVM 3.8.2.1 or greater
Workspace license data
For deployments of OpenFin Workspace, the RVM collects the following data:
-
UUID of the Workspace platform
-
Manifest URL of the Workspace Platform
-
Version of the Workspace API used
-
Version of the Workspace component used
-
Runtime arguments
-
Hash of user name
-
Operating system version
Reporting license usage
On a monthly basis, OpenFin reviews automated license usage data for each application provider. We review designated application configuration URLs to identify desktops using their apps in a production environment. A desktop computer is counted in any given month if a machine used the OpenFin Runtime for at least one application of an application provider. If customers exceed their monthly license agreement, they are billed quarterly in arrears.
Updated about 2 months ago