Analytics
- How does JW Analytics work in Applicaster?
- How to enable JW analytics in Applicaster?
- How to access analytics data?
- What data is available from Applicaster?
- How enable user level tracking (App User ID)?
- What is the subject in OAuth?
- Does Applicaster support other analytics systems?
How does JW Analytics work in Applicaster?
Applicaster has a JW Analytics Plugin that feeds events to the JW OTT Ping Interface
The plugin sends ‘pings’ with video and device information to JW Player endpoint when
- Video has been loaded
- While a video is played (every x seconds)
- When an advertisement is shown
JW Player makes this data available throuh the JW Player dashboard, through the API and through export to and S3 bucket. See below.
How to enable JW analytics in Applicaster?
The JW plugin needs to be enabled in Applicaster:
- Retrieve the JW analytics token from the JW account manager or solution engineer.
- Add the JW Analytics plugin from the gallery
- Insert the JW token provided by the JW AM/SE and save
- Optional: Add the
User identity storage key
for tracking user level traffic (see below) - Build the app so the changes will take effect.
*Applicaster uses the same analytics token for all platforms (iOS/Android etc.).
How to access analytics data?
See JW Player OTT App Analytics documentation
What data is available from Applicaster?
The metrics and dimension documented in the OTT App Analytics documentation, except the following:
ott_app_install_instance_id
: App install instance ID. Applicaster doesn’t have an id that remains stable across installations.ott_device_firmware_version
: Firmware version of the OTT device.ott_device_model
: OTT Device Model numberott_os_language
: Version of the OS on the OTT device.custom_parameter_name
custom_parameter_value
Note: The field platform_id
is used to identify the device platform.
How enable user level tracking (App User ID)?
The applicaster plugin can send the App User ID for play session data. This is can be used to analyze traffic per user, instead of per session. The user level data is accessible using the Play Sessions Data Export.
You need to have a proper the User identity storage key
configured on the plugin:
Authentication provider | System | Data | Setting | Example value |
---|---|---|---|---|
Cleeng | All | User Id | quick-brick-login-flow.username | user@mail.com |
OAuth | Mobile | User Session Token | quick-brick-login-flow.access_token | eyJraWQiOiJEa1lUbmhTdkdT… |
OAuth | TV | User Session Token | quick-brick-login-flow.access_token | eyJraWQiOiJEa1lUbmhTdkdT… |
OAuth | Mobile | User Session Subject | quick-brick-login-flow.sub | user@mail.com |
OAuth | TV | User Session Subject | quick-brick-login-flow.sub | user@mail.com |
What is the subject in OAuth?
For Oauth Applicaster shares the OAauth access token with JW Player. The access token is a jwt generated by the OAuth Identity Provider (e.g. Okta) and contains contains ‘claims’ about a user.
To retrieve the user level information, the identity provider should include a user identifying claim in the JWT access token. The JWT can decoded when ingesting the data in the analytics system. For info on decoding JWT token see https://jwt.io/.
Here is an example token containing the user identifying claim subject (sub
):
{
"aud": "ott.ios.app",
"exp": 1650660507,
"scp": [
"offline_access",
"profile",
"device_sso"
],
"sub": "user@mail.com"
}
The subject is not necessarly the same as the user id / user login name. That is something the authentication system determines.
If the JWT token doesn’t contain user identifyable information, then session-user mapping needs to be retrieved from the identity system and combined in an analytics system.
Does Applicaster support other analytics systems?
Yes. See the Applicaster Plugin Directory in your account.