Knowledgebase
Revulytics > Revulytics - Support Help Desk > Knowledgebase

Search help:


How is Revulytics Usage Intelligence affected by proxy or firewall environments?

Solution

Revulytics Usage Intelligence uses HTTP for all communication so traffic can pass through proxies and routers just like any other HTTP traffic without affecting the callhome system. If users had to analyse their proxy or router logs, they would simply see HTTP requests similar to when a user is browsing the internet through a web browser.

Firewalls and Web Filters

Users having a regular desktop firewall with default security settings should not encounter problems calling home to the Revulytics servers. However in stricter security environments such as corporate firewalls with more advanced firewall policies or web filtering software that blocks HTTP access to unknown sites, your application could be blocked from connecting to the internet altogether. In such cases your software may be blocked from connecting with the Revulytics server, so these clients will not be tracked.

The Usage Intelligence SDK is designed to fail silently whenever it is not able to communicate with the Revulytics Server, so your application and User Experience should not be affected in any way if you follow our implementation guidelines as specified in the documentation.

Windows Proxy Environments

In Windows environments where a proxy is present, Usage Intelligence will by default attempt to detect the proxy settings being used by Internet Explorer.

If your software does not require an internet connection and it is unaware of the user’s proxy settings, then it is best to allow Usage Intelligence to handle automatic proxy detection. However if you want to ask the user to specify proxy settings or your application already handles proxy detection, you may configure Usage Intelligence to use the same settings.

Specifying Proxy Settings Manually

tbSetProxy

Use this method to specify proxy settings which will be used to submit callhome data to the Revulytics servers. Example usage:

tbSetProxy("MyTbInstance", "192.168.1.250:8080", "MyUser", "MyPassword");

tbSetDefaultProxyCredentials

Use this method to specify the credentials which will be used by Usage Intelligence when proxy settings are defined on the Internet Explorer settings. Example usage:

tbSetDefaultProxyCredentials("MyTbInstance", "MyUser", "MyPassword")

For info on how to do this based on your platform, check the respective API documentation:

Testing Connectivity

tbConnectionCheck

Use this method to confirm that your application can callhome to the Revulytics servers. This is typically used in conjunction with tbSetProxy() and tbSetDefaultProxyCredentials(). Example usage:

tbConnectionCheck("MyTbInstance", "MyCallHomeURL", "MyProductID");

This method will return one of the following status constants:

  • TB_CONNCHECK_OK (1)
  • TB_CONNCHECK_MISMATCH (-1)
  • TB_CONN_ERROR (-2)
  • TB_AUTH_FAILURE (-3)
  • TB_SERVER_ERROR (-4)

The SDK will attempt to use cached credentials from Internet Explorer to log onto the proxy, however in case this function reports an authentication failure, it means your application cannot make use of cached credentials so you will need to specify credentials using tbSetDefaultProxyCredentials().

More information can be found in the respective API documentation:

Linux Proxy Environments

In Linux environments Usage Intelligence does not support automatic detection of proxy settings. The ability to configure proxy settings manually may be added in a future release.

Mac OS X Proxy Environments

On Mac OS, proxy settings are configured as a system setting and applications do not have control over which settings to use. Therefore in your application you do not have to cater for proxy detection or authentication, as this is handled by the operating system.

 
Was this article helpful? yes / no
Related articles Why is data not showing up inside the dashboard or reports?
Differences between Revulytics SDK version 3 and version 4
How does the Revulytics call home protocol work?
Article details
Article ID: 57
Category: SDK integration and Technical queries
Date added: 2016-02-11 11:17:27
Views: 140
Rating (Votes): Article rated 3.0/5.0 (2)

 
« Go back