Developer Zone

Common Function Return Values¶

RUI_OK (0)

Function (which may be synchronous or asynchronous), fully successful during synchronous functionality.

RUI_SDK_INTERNAL_ERROR_FATAL (-999)

Irrecoverable internal fatal error. No further API calls should be made.

RUI_SDK_ABORTED (-998)

A required New Registration has failed, and hence the SDK is aborted. stopSDK: and RUISDK destructor are possible.

RUI_INVALID_SDK_OBJECT (-100)

SDK Instance parameter is NULL or invalid. Not used in CPP interface.

RUI_INVALID_PARAMETER_EXPECTED_NON_NULL (-110)

Some API parameter is expected to be non-NULL, and is not.

RUI_INVALID_PARAMETER_EXPECTED_NON_EMPTY (-111)

Some API parameter is expected to be non-empty, and is not.

RUI_INVALID_PARAMETER_EXPECTED_NO_WHITESPACE (-113)

Some API parameter is expected to be free of white space, and is not.

RUI_INVALID_PARAMETER_TOO_LONG (-114)

Some API parameter violates its allowable maximum length.

RUI_INVALID_CONFIG_PATH (-120)

The configFilePath is not a well-formed directory name.

RUI_INVALID_CONFIG_PATH_NONEXISTENT_DIR (-121)

The configFilePath identifies a directory that does not exist.

RUI_INVALID_CONFIG_PATH_NOT_WRITABLE (-122)

The configFilePath identifies a directory that is not writable.

RUI_INVALID_PRODUCT_ID (-130)

The productID is not a well-formed Revulytics Product ID.

RUI_INVALID_SERVER_URL (-140)

The serverURL is not a well-formed URL.

RUI_INVALID_PROTOCOL (-144)

The protocol is not a legal value. Must be one of the following:

* RUI_PROTOCOL_HTTP_PLUS_ENCRYPTION (1) - Protocol to the RUI Server is HTTP + AES-128 Encrypted payload.
* RUI_PROTOCOL_HTTPS_WITH_FALLBACK (2) - Protocol to the RUI Server is HTTPS, unless that doesn't work, falling back to HTTP + Encryption.
* RUI_PROTOCOL_HTTPS (3) - Protocol to the RUI Server is HTTPS with no fall-back.

RUI_INVALID_AES_KEY_EXPECTED_EMPTY (-145)

The AES Key is expected to be NULL/empty, and it is not. This occurs if RUI_PROTOCOL_HTTPS is used at the protocol selection and an AES Key is supplied.

RUI_INVALID_AES_KEY_LENGTH (-146)

The AES Key is not the expected length (32 hex chars). An AES key is required if using RUI_PROTOCOL_HTTP_PLUS_ENCRYPTION or RUI_PROTOCOL_HTTPS_WITH_FALLBACK as the protocol choice.

RUI_INVALID_AES_KEY_FORMAT (-147)

The AES Key is not valid hex encoding. String passed must only include hexadecimal characters.

RUI_INVALID_SESSION_ID_EXPECTED_EMPTY (-150)

The sessionID is expected to be empty, and it was not. This occurs if a session ID is passed to functions that accept a session ID but no startSession is active.

RUI_INVALID_SESSION_ID_EXPECTED_NON_EMPTY (-151)

The sessionID is expected to be non-empty, and it was empty.

RUI_INVALID_SESSION_ID_TOO_SHORT (-152)

The sessionID violates its allowable minimum length. Minimum length is 10.

RUI_INVALID_SESSION_ID_TOO_LONG (-153)

The sessionID violates its allowable maximum length. Maximum length is 64.

RUI_INVALID_SESSION_ID_ALREADY_ACTIVE (-154)

The sessionID is already currently in use.

RUI_INVALID_SESSION_ID_NOT_ACTIVE (-155)

The sessionID is not currently in use.

RUI_INVALID_CUSTOM_PROPERTY_ID (-160)

The 1-based customPropertyID violates its allowable range. By default the range is 1 to 20.

RUI_INVALID_DO_SYNC_VALUE (-170)

The doSync manual sync flag/limit violates its allowable range.

RUI_INVALID_MESSAGE_TYPE (-180)

The messageType is not an allowable value.

RUI_INVALID_PROXY_CREDENTIALS (-190)

The proxy username and password failed proxy authentication.

RUI_INVALID_PROXY_PORT (-191)

The proxy port was not valid.

RUI_CONFIG_NOT_CREATED (-200)

Configuration has not been successfully created. The function createConfig() must be called before performing this operation.

RUI_CONFIG_ALREADY_CREATED (-201)

Configuration has already been successfully created. A previous createConfig() was successful and the subsequent calls to this function are not allowed.

RUI_SDK_NOT_STARTED (-210)

SDK has not been successfully started. The function startSDK must be called before using this function.

RUI_SDK_ALREADY_STARTED (-211)

SDK has already been successfully started. A previous startSDK was successful and subsequent calls to this function are not allowed.

RUI_SDK_ALREADY_STOPPED (-213)

SDK has already been successfully stopped. A previous stopSDK: was successful and subsequent calls to this function are not allowed.

RUI_FUNCTION_NOT_AVAIL (-300)

This indicates that this particular API call is not currently available. Possible causes include:

  • This feature is disabled from the server side. If this is an optional feature you might need to turn it on from the Revulytics Usage Intelligence dashboard.
  • You have called this function too many times in quick succession from the same client. In order to prevent abuse the server might impose a minimum interval (time threshold) before you can call this function again. This interval can vary from seconds to minutes.
  • There has been a time out on this request to the Revulytics Usage Intelligence server.

RUI_SYNC_ALREADY_RUNNING (-310)

A sync with the RUI Server is already running. Only one sync operation may be running at a time.

RUI_TIME_THRESHOLD_NOT_REACHED (-320)

The API call time frequency threshold (set by the RUI Server) has not been reached. In other words, the application is generating too many APIs per time period.

RUI_SDK_SUSPENDED (-330)

The RUI Server has instructed a temporary back-off. No events are logged but future communication with the RUI server is possible if the server allows it.

RUI_SDK_PERMANENTLY_DISABLED (-331)

The RUI Server has instructed a permanent disable. No communication with the server is possible and events will not be logged.

  • RUI_SDK_OPTED_OUT (-332)**

Instance has been instructed by the application to opt-out.

RUI_NETWORK_CONNECTION_ERROR (-400)

Communication attempts were not able to reach the RUI Server. This means there was a problem communicating with the Revulytics Usage Intelligence server due to:

  • network connectivity problems
  • Incorrect proxy settings
  • HTTP or HTTPS traffic is blocked by a gateway or firewall

In some cases, you can use testConnection to help diagnose the issue.

RUI_NETWORK_SERVER_ERROR (-401)

Error while communicating with the RUI Server. Communication with the server was successful but the server response indicates a RUI Server error.

Login to the Usage Intelligence to make sure your account is active and there are no critical warnings. Test using testConnection function.

RUI_NETWORK_RESPONSE_INVALID (-402)

The response from the RUI Server was returned with a message format error.

RUI_TEST_CONNECTION_INVALID_PRODUCT_ID (-420)

The testConnection function had an invalid ProductID supplied. Check the product ID provided to you for accuracy.

RUI_TEST_CONNECTION_MISMATCH (-421)

The testConnection function had a mismatch between URL and ProductID. Check the Product ID and URL provided to you for accuracy.