Important Notice: Upcoming Update to How Riva Handles Microsoft 365 (Exchange Online) Tokens

  • Updated

What’s Changing?

Microsoft has recently made a change to the response headers Riva uses to detect when a connection token (OAuth token) becomes invalid and needs to be refreshed.

Previously, Riva relied on a specific message from Microsoft to trigger a token refresh. However, this message is no longer being sent the same way.

To ensure continued reliable synchronization, Riva is updating its code to recognize the new type of header information from Microsoft. This will allow Riva to detect invalid tokens and automatically refresh them when necessary — helping to keep your data syncing smoothly.

Why Does This Matter?

Because of Microsoft’s change, some users may experience connection errors, such as:
“Unable to connect to the remote Exchange server with the given credentials.”

This type of error prevents synchronization between your systems and Microsoft 365.

What Do You Need to Do?

  • For Riva Cloud Customers: No action is required — this update will be applied automatically.
  • For Riva On-Premises Customers: A version upgrade will be available early next week.  We will post another update when the hotfix is ready for download.

This issue can be resolved solely with the advanced option, however because the option requires Riva to clear the connection cache and request the token it will incur some additional additional API calls being made and potentially a slight decrease in performance.  

The upgrade is the preferred method to address this issue but we understand existing change management requirements may limit your ability to complete and upgrade quickly. Once the upgrade has been completed, this advanced option should be removed.

 

For Riva On-Premises customers who want to implement a temporary workaround.

Determine which version of the sync service you have installed, this will indicate which configuration file requires a change.

  • Start menu search: Type "services" in the Start menu search bar.
  • Locate the Riva service typically called  "Omni Riva Sync Service".
  • From here you can stop the riva sync service. This will allow us to safely make our changes.
  • Once you have selected the service, right-click on it and choose "properties".

Depending on whether you have to 32 or 64-bit service installed, one of the following will meed to be edited.

  • Omni.Riva.CrmAgentEx.exe.config or
  • Omni.Riva.CrmAgentEx64.exe.config

Locate the Riva install folder, in the example above, we can see the "Path to executable". Your path may list something different but it will point you to where Riva is installed on your server. 

Every time Riva is updated and a new version is installed, a new "application" directory is created. This "application" directory contains executables, DLL libraries, and localization resources.

  • Riva\Application\Base\ for a new installation

    Explorer--Riva-Application-Base.png

    – or –

  • Riva\Application\<latest version>\ for an updated installation. (Note: Always select the latest version or the currently running version.)

    Explorer--Riva-Application-VersionSpecific.png

Open either the Base Folder or the latest version numbered folder and look for a file called

  • Omni.Riva.CrmAgentEx.exe.config or
  • Omni.Riva.CrmAgentEx64.exe.config

These files can be opened and edited in Notepad.

Example of an App.Setting File with additional Advanced Settings

You may have additional options in your configuration file, those should remain unaltered. A new line can be added which needs to follow the same format as any other options.

The following advanced option will need to be added to one of the following configuration files.

  • Omni.Riva.CrmAgentEx.exe.config or
  • Omni.Riva.CrmAgentEx64.exe.config

Advanced option:

 <add key="Sync.Crm.ClearCachedConnection.PeriodInHours" value="1" />

In the example below, you can see the configuration file contains other data, that is fine, a new line either at the top or the bottom and paste the option in.

The end result should look something like this. 

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <appSettings>
    <add key="Sync.Crm.ClearCachedConnection.PeriodInHours" value="1" />
    <add key="Web.Proxy.Username" value="administrator" />
    <add key="Web.Proxy.Password" value="mysecret" />
    <add key="Web.Proxy.Domain" value="AD_NT_DOMAIN" />

  </appSettings>
</configuration>

From here you can save the configuration file and restart the sync service. Within the Service Monitor, you should see sync activities resume for users. If you encounter any problems or need additional assistance, you can contact us below.

Questions?

If you have any questions or need assistance applying this option, please contact the Riva Success Team.

Was this article helpful?

/