Developer Zone

Quick-Start Guide

System Requirements

The Revulytics Usage Intelligence .NET SDK can be used with .NET Framework versions 2.0, 3.0, 3.5, 4.0 and 4.5 including Client Profile editions.

Registering Your Product

Before you can use the Revulytics Usage Intelligence service or integrate the Revulytics Usage Intelligence SDK with your software, you must first register an account by visiting: Once you register a username and create a new product account for tracking your application, you can get your Product ID and CallHome URL from the Developer Zone (within the login area). From here you can also download the latest version of the SDK.

API Overview

When using the Revulytics Usage Intelligence API, there is one main class that you will have to integrate with TBClass. You need to instantiate this class in the application. All Revulytics Usage Intelligence methods use this class.

In order to download the Revulytics Usage Intelligence SDK, please go to the download page at

Importing the SDK Files

Upon downloading the .NET SDK, you find 3 DLL files and an XML file as follows:

  • - The shared library supporting .NET
  • Trackerbird_4.0.7.x64.dll - Native 64-bit DLL imported automatically by the .NET DLL
  • Trackerbird_4.0.7.x86.dll - Native 32-bit DLL imported automatically by the .NET DLL
  • - XML documentation file used by Visual Studio IntelliSense

You do not need to worry if your application will run on x86 or x64 platforms. If you do not target any specific platform, you should include both x64 and x86 DLLs with your application, and the Revulytics Usage Intelligence .NET DLL will import the correct one automatically. If, however, you choose to target a specific platform, you may include only the corresponding native DLL in order to make the installation size smaller.

Basic Integration Steps

The most basic Revulytics Usage Intelligence integration can be accomplished by following the steps below. It is however recommended to read the more advanced documentation as Revulytics Usage Intelligence can do much more than the basic functionality that can be achieved by following these steps.

  1. Download the latest SDK (contact and extract it to your preferred project location.

  2. Add a reference to in your project.

  3. Add the directive using Trackerbird_4_0_7 to the source files where you will be calling the Revulytics .NET SDK.

  4. Create an instance of the TBClass object.

    TBClass tb = new TBClass("<path to Revulytics Usage Intelligence SDK .NET library>");
  5. Set the directory path for the configuration.

    //Set the file path
    tb.SetFilePath("<path name to configuration file directory>");
  6. Initialize the SDK configuration similar to the below example. Your CallHome URL and product ID can be retrieved from the Revulytics Usage Intelligence Developer Zone (inside your login area). “Multiple Sessions Enabled” (multiSessionsEnabled parameter) is a boolean value where you specify whether your application can have multiple user sessions per runtime session. This is normally false for desktop applications. For further details, refer to Single vs. Multiple session modes.

    tb.CreateConfig("<CallHome URL starting with http://>", "<Product ID>", "<Your product's version>",
                          "<Your product's build number>", <Multiple Sessions Enabled>);
  7. Call the method TBClass.Start. You must call this method first, before making any other Revulytics Usage Intelligence API calls. It is recommended that you place this call at the entry point of your application so the Revulytics Usage Intelligence SDK knows exactly at what time your application runtime session was started. If using multi-session mode, you also need to call TBClass.SessionStart when a user session is started, and also provide a unique user session ID which you will then also use for closing the session or for Feature / Event Tracking.

  8. Call TBClass.Stop in the closing event of your application so the Revulytics Usage Intelligence SDK knows when your application runtime session has been closed. If using multi-session mode, when user sessions are closed, you should call TBClass.SessionStop and send the ID of the session that is being closed as a parameter.

  9. Before running your application, copy the DLL files Trackerbird_4.0.7.x64.dll and Trackerbird_4.0.7.x86.dll inside the BinDebug path (or BinRelease if you are compiling for release). These files are required by the Revulytics .NET SDK and must be included with your application. If you are building specifically for x64 or x86, you may then choose to include only the corresponding DLL file.

The following is an example of the basic integration outlined below. This example uses single-session mode.

TBClass tb;

public Form1()
    //Create instance of TBClass
    tb = new TBClass("<path to Revulytics Usage Intelligence SDK .NET library>"):
    //Set the file path
    tb.SetFilePath("<path name to configuration file directory>");
    //Initialize the configuration
    tb.CreateConfig("http://INSERT-YOUR-URL", "INSERT-YOUR-PROD-ID", "", "10", false);

    //Inform Revulytics Usage Intelligence that the application has been started.

    //Your program logic...

private void Form1_FormClosing(object sender, FormClosingEventArgs e)
    //Inform Revulytics Usage Intelligence that this runtime session is closing down.

    //Your program logic...

Next Steps

In the above section, we covered the basic integration steps. While these steps will work for most software products, it is recommended to do some further reading in order to get the most of what Revulytics Usage Intelligence has to offer. Refer to the following sections for more information: SDK Configuration and Basic SDK Control. Once you are familiar with the SDK, you may look at the advanced features.

Advanced Features

By following the Basic Integration Steps above, the Revulytics Usage Intelligence SDK will be able to collect information about how often users run your product, how long they are engaged with your software as well as what versions and builds they are running. The SDK also collects information on what platforms and architectures your software is being run (i.e. OS versions, language, screen resolution, etc.). Once you have implemented the basic features, you may choose to use Revulytics Usage Intelligence for more advanced features that include: