Developer Zone

SDK Configuration

Before an application can start reporting usage to the Trackerbird SDK, it must first provide some basic information such as the Product ID and the callhome URL.

You should always attempt to fill in as much accurate and specific details as possible since this data will then be used by the Trackerbird Analytics Server to generate the relevant reports. The more (optional) details you fill in about your product and its licensing state, the more filtering and reporting options will be available to you inside the Trackerbird Analytics portal.

Also, if you would like to store the Trackerbird data files in a particular directory, this needs to be specified before initializing the configuration.

Setting the data path

Initializing the configuration

The TBConfig class is used to set some basic information about your product as well as some settings for the Trackerbird SDK.

Before calling any other method other than :cs:func:`SetFilePath`, the :cs:func:`TBConfig.CreateConfig` method must be called in order to initialize the configuration. The method signature is as follows:

Single vs. Multiple session modes

In desktop software, a single application instance would normally have only one single user session. This means that such an application would only show one window (or set of windows) to a single user and interaction is done with that single user. If the user would like to use 2 different sessions, 2 instances of the application would have to be loaded which would not affect each other. In such cases, you should use the single session mode, which handles user sessions automatically and assumes that 1 process (instance) means 1 user session.

The multiple session mode needs to be used in multi-user applications, especially applications that have web interfaces. In such applications, a number of users might be using the same application process simultaneously. In such cases, you need to manually tell Trackerbird SDK when user sessions start and stop, and also how to link events (see Feature / Event Tracking) to user sessions. To do this, when starting or stopping a user session, the methods :cs:func:`TBApp.SessionStart` and :cs:func:`TBApp.SessionStop` should be used, and when tracking events, a session ID needs to be passed as a parameter.

Providing further data

Apart from the four compulsory parameters that must be passed to :cs:func:`TBConfig.CreateConfig`, there are a number of methods meant to provide further data to the SDK which would either help generate better reports such as by providing the product language or edition name, or else set some configuration that might be required on some setups such as the proxy server settings.

Any of these methods can also be called during application runtime such as for changing privacy settings that the user just set or changing the key type after the user enters a new license key.

License Management

Product Details

Privacy Settings

The Trackerbird SDK supports 3 different Privacy settings that give you control on what type of anonymous data should be collected form the end user’s machine, based on whether the user opted in or out of your Customer Experience Improvement Program. By default, this is set to Off (0). To read more about privacy and what data is collected by each privacy level, please refer to this Kbase article:

Environment-specific Settings