How to connect to Azure SQL
Note
Azure Private Link (aka Private Endpoint as described by Microsoft here) is not supported on AnywhereNow Dialogue Cloud.
AnywhereNow Dialogue Cloud needs to directly connect to your Azure SQL database(s) in your Azure tenant A dedicated and trusted instance of Azure AD. The tenant is automatically created when your organization signs up for a Microsoft cloud service subscription, such as Microsoft 365. An Azure tenant represents a single organization. [Taken from Microsoft Docs] for your Call Detail Record (CDR Call Detail Records (CDR) are the meta data of a converstation: who talked to whom, at which time, for how long and with which identity among other things (skill, optional classification, etc) which gets stored in your SQL (analytical) database.) data to be stored and retrieved. If Dialogue Manager is used, an additional Azure SQL database is needed for the transactional (text) message data and history, the CDR data of Dialogue Manager (i.e. text based) conversations will again be stored in the CDR database.
CDR and DialogueManager each require their own database.
Scenarios

After a audio call or text message between a customer and a UCC A Unified Contact Center, or UCC, is a queue of interactions (voice, email, IM, etc.) that are handled by Agents. Each UCC has its own settings, IVR menus and Agents. Agents can belong to one or several UCCs and can have multiple skills (competencies). A UCC can be visualized as a contact center “micro service”. Customers can utilize one UCC (e.g. a global helpdesk), a few UCC’s (e.g. for each department or regional office) or hundreds of UCC’s (e.g. for each bed at a hospital). They are interconnected and can all be managed from one central location. has completely terminated, all interactions controlled by that UCC (timestamps, Agents, transfers, supervisors, recording locations, QM scores, etc.) will be stored as a new record in the SQL CDR database.

An AnywhereNow Manager can leverage the CDR database to extract Dialogue data (i.e. all historic interactions of customers with agents or an Aywhere365 UCC) using PowerBI.

-
UniversalTimeline
AnywhereNow Agents using the WebAgent can see historic dialogues with a customer if they call from same number (or send email from the same address) in the Universal Timeline shown in the WebAgent while they are connected to the customer. The Universal Timeline service will only read from the database and relay information to the agent through an AnywhereNow DialogueCloud UCC.
-
Call Classification (and ScreenRecordings)
AnywhereNow Agents using the WebAgent can add a Classification during, or after, a dialogue with a customer tagging the conversation with a predefined value from a dropdown list, to mark the topic or type of conversation. This will be appended to the CDR record of that specific conversation, even after the dialogue with customer has ended. The CallProperty Service will write/append this Classification to an existing record in the CDR database.
Similarly when using Snapper to enable Screen Recording and if the ScreenRecordings are copied to a SharePoint library, the CallProperty Service will write/append the ScreenRecording filename and location to an existing record in the CDR database.

AnywhereNow Agents using WebAgent for text based dialogues with customers (like e-mails, WebChats, WhatsApps, or various others) will get these messages through a transactional database specifically for the AnywhereNow Dialogue Manager.
One of various Dialogue Providers (coming from an external Dialogue Partner) connected to AnywhereNow Dialogue Manager will relay each message to an Agent and each message back to a customer, stored in the Dialogue Manager database. All message routing to and from agents is consecutively managed by an AnywhereNow Dialogue Cloud UCC to the Agents WebAgent interface.
Prerequistes
- An Azure SQL database per region: recommended at least S1 20DTU during project initiation (and is typically sufficient for Golive to production, but exceptions may apply, see warning below)
- Azure SQL DB is remotely accessible
- SQL user account (for SQL authentication): which is database owner
- For access to the CDR database a Microsoft Entra account (for Microsoft Entra authentication) is also supported.
- Connection string to the database(s): Only the formats provided below are supported (i.e. only connections directly to <server>.database.windows.net and the other parameters are required).
- Firewall allowance for regional Dialogue Cloud IP address: will be provided by your AnywhereNow contact.
Note
After Go-live, maintenance and regular monitoring of the database(s) is the customer's responsibility.

Your database(s) will accrue data for every conversation and will grow with use over time, or your final UCC count and configuration may be heavy on DB processing (many simultaneous dialogues in queue, frequent queries from PowerBI or e-mails with large attachments for example), so your maintenance (like monitoring size, adding additional archiving databases, deleting old data, reclaiming unused space or maybe even upgrade to a higher tier or storage) may be required. For more information on Azure SQL limits, pricing and maintenance tips a good starting point is https://learn.microsoft.com/en-us/azure/azure-sql/database/resource-limits-dtu-single-databases, or consult your SQL DB Administrator.
Creating an account
You can choose between:
-
Option 1 : Azure SQL Account (supported by all AnywhereNow applications)
Note
The Dialogue Manager requires a SQL Account in the Connection string for the DialogueManager database (see below). All other applications (Core, UTL and Classification) support more options.
-
Option 2: Microsoft Entra ID Formerly known as Azure Active Directory (or Azure AD, or AAD) account (Supported by UCC Core, UniversalTimeLine and Classification services)
Note
Supported for the Core UCC Service, Universal Timeline Service and the Call Classification Service which share the same ConnectionString. NOT supported for Dialogue Manager Service.
-
Option 3: Microsoft Entra ID Formerly known as Azure Active Directory (or Azure AD, or AAD) Service Principal (supported by all AnywhereNow applications, via Secure Vault)
-
Note
Planned for DC2025.01
Below a guideline on how to create these accounts (Choose the one that is needed).

-
Connect SQL Server Management Studio (SSMS) to the azure database server with the admin account (see azure).
-
Add login for the user and create to user for the master database, by submitting the following query to the master database: (change username).
Note
When creating a login or a password make sure it does NOT contain the following characters:
# $ [] () , ; ? * ! @ = . % &CopySQLCREATE LOGIN sa_username
WITH PASSWORD = 'Password'
GO
CREATE USER sa_username FROM LOGIN sa_username; -
Create a user for the database and give permissions, by submitting the following query to the CDR database
CopySQLCREATE USER sa_username FROM LOGIN sa_username;
EXEC sp_addrolemember 'db_owner', 'sa_username';
More information on:
https://azure.microsoft.com/nl-nl/blog/adding-users-to-your-sql-azure-database/

-
Set Active Directory Admin from within the Azure Portal
-
Connect to server via SQL Server Management Studio (SSMS) with account set on step 1
Use the ‘Active Directory – Universal with MFA support’ authentication method.
Choose for Connect (and optionally follow the MFA steps to complete the login)
-
Run the following queries
-
Run this query against the Master (instance):
CopySQLCREATE USER "<ME-ID user address>" FROM EXTERNAL PROVIDER;
ALTER ROLE dbmanager ADD MEMBER [ME-ID user address];For example:
CopySQLCREATE USER "user.name@anywhere.now" FROM EXTERNAL PROVIDER;
ALTER ROLE dbmanager ADD MEMBER [user.name@anywhere.now]; -
Run this query against the UCC database:
CopySQLCREATE USER "<ME-ID user address>" FROM EXTERNAL PROVIDER;
EXEC sp_addrolemember 'db_owner', "<ME-ID user address>";For example:
CopySQLCREATE USER "user.name@anywhere.now" FROM EXTERNAL PROVIDER;)
EXEC sp_addrolemember 'db_owner', “user.name@anywhere.now";)
-

Note
Planned for DC2025.01
Step 1: Create an Azure SQL Database
1. Go to Azure Portal.
2. Click Create a resource > search for SQL Database > click Create.
3. Fill in:
-
Subscription and Resource Group
-
Database name (e.g., `MyCdrDb`)
-
Server: Create a new one or select an existing one
-
Provide admin login and password
4. Choose a pricing tier (e.g., Basic, Standard S0)
5. Click Review + create > Create
Step 2: Register a Service Principal in Microsoft Entra ID
1. In the Azure Portal, go to Microsoft Entra ID.
2. Click App registrations > + New registration
3. Fill in:
-
-Name: `AnywhereNowSvCdr`
-
Supported account types: Single tenant (default)
4. Click Register
Step 3: Create a Client Secret
1. In the App Registration for `AnywhereNowSvCdr`, go to Certificates & secrets
2. Click + New client secret
3. Add a description and expiration
4. Click Add and copy the secret value immediately
Next Steps
Proceed to these next steps for where to apply the connection string fro which product.
Note
Upon startup of the service the database is checked for the correct db schema, if not it will be created (or updated in case a schema update is required for a new version of the software). The provided access rights have the proper permissions to perform these actions.

To manually verify the CDR Connection string for UCC Core in SharePoint:
-
Navigate to the UCC Config page
-
Open the Settings list
-
Edit the setting "CDRConnectionString"
-
Enter the connection string with username and password for Azure SQL
Format when using an SQL Account:
CopyConnection stringServer=tcp:<server>.database.windows.net,1433;Initial Catalog=<cdr-database-name>;User ID=<sa_username>;Password=password
Format when using a Microsoft Entra Account:
CopyConnection stringServer=tcp:<server>.database.windows.net;Initial Catalog=<cdr-database-name>;Persist Security Info=False;User ID=<AD_username>;Password=<password>;Encrypt=True;TrustServerCertificate=False;Authentication="Active Directory Password";
Note
When updating the Call Property Service connection string the Authentication="Active Directory Password"
may have to be entered without quotes i.e. Authentication=Active Directory Password
.

For connecting a UCC to the DialogueManager database follow the steps on the Installing DialogueManager page. Install Dialogue Manager