On Premises

Install Dialogue Manager

Note: An additional Anywhere365 WebAgent for Omnichannel license is required.
Note: An Enterprise license or higher is required to access these features.

Component overview

Prerequisites

  • WebAgentService deployed and configured per region, Install WebAgent Service

  • DC2023.03 or lower: CustomSessions plugin deployed and configured per region, Install Custom Sessions plugin

    Warning: Please note that as of DC2023.04 or higher, the CustomSession plugin is no longer needed and has been removed. You may safely remove any associated settings or configurations related to this plugin.
  • 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 DB is remotely accessible
  • SQL user account: which is database owner
  • 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 Anywhere365 contact.

Note: After Golive, maintenance and regular monitoring of the database 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 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. 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.

Warning: DialogueManager Deployment Rules:
- Only one DialogueManager is allowed per WebAgentService. Having multiple DialogueManagers in one WebAgentService, will result in missing messages and not receiving updates (see component overview above when and how more regions and DM's can be used).
- Each DialogueManager needs its own database. Having multiple DialogueManagers using one shared database will result in invalid states and missing messages. (see component overview above when and how more regions and DM's can be used).

Installation

Deploy package

  1. Unzip the Anywhere365 Dialogue Manager package

  2. Edit the properties.ps1

    1. Domain = Domain of the install account

    2. UserName = Username of the install account

  3. Run install.ps1 in PowerShell as administrator

Create DialogueManager Database

  1. Create a new database (in SQL Server Management Studio, Learn More - Microsoft).

    Note: The Dialogue Manager service will perform the creation queries. Make sure the account connecting to the database is owner of the database.

Add PluginSettings

  1. Open the UCC Config page on SharePoint

  2. Open the Plugin Settings list

  3. Add the following settings:

    Note: Upon startup of the service the database is checked for having 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 requested access rights have the proper permissions to perform these actions.

    Warning: This Dialogue Manager service depends on consistent-primary settings shared across multiple UCCs, meaning the value should remain consistent across all UCC configurations using it. A consistent-primary setting is initiated only during startup of the UCC. The first UCC to publish its settings (which may not aways be the same UCC) defines the primary setting for all UCCs sharing this service. If values vary or are not entered (correctly) across multiple UCCs, this will lead to unpredictable behavior after a restart. It is extremely important to keep the values consistent and valid if multiple UCCs are configured.

    Setting

    Value

    Scope

    Enabled

    TRUE

    Warning: Setting this value to FALSE when other UCCs are running does not disable the Dialogue Manager service for this particular UCC, but will shut down the Dialogue Manager service for all your UCCs using it!

    DialogueManager

    SqlConnectionString

    Option 1 (with encrypted Password, which will be decrypted by DialogueManager):
    Server=tcp:<server>.database.windows.net,1433;Initial Catalog=<dm-database-name>;User ID=<sa_username>;EncryptedPassword=<encrypted-password>;Persist Security Info=False;MultipleActiveResultSets=True;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;

    Note: When creating a login or a password make sure it does NOT contain the following characters: # $ [] () , ; ? * ! @ = . % &
    Note: The <encrypted-password> value should be encrypted by the A365.PWTool.exe

     

    Option 2 (with plain text password where encryption/decryption is not done):

    Server=tcp:<server>.database.windows.net;Initial Catalog=<dm-databse-name>;User ID=<sa_username>;Password=<password>;Persist Security Info=False;MultipleActiveResultSets=True;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;

    Note: When creating a login or a password make sure it does NOT contain the following characters: # $ [] () , ; ? * ! @ = . % &


    DialogueManager

    Uri

    http://fqdn FDQN stands for Fully Qualified Domain Name and specifies the exact location in the tree hierarchy of the Domain Name System (DNS). An example for [hostname].[domain].[top level domain] is [www].[microsoft].[com]/dialoguemanager

    Note: URL needs to be accessible from the WebAgent Service to the Dialogue Manager service.
    Warning: It is important to configure this setting to one main regional URL when using multiple services in the same region. If this is not done, you may experience unexpected behavior.

    DialogueManager

    Uri

    http://fqdn/webagentservice

    Note: URL needs to be accessible from the UCC Service to the WebAgent API service.
    Warning: It is important to configure this setting to one main regional URL when using multiple services in the same region. If this is not done, you may experience unexpected behavior.

    WebAgentService

Add Settings list

  1. Open the UCC Config page on SharePoint

  2. Open the Settings list

  3. Add the following setting: 

Key Value Scope
DashboardServiceUrl http(s)://fqdn/dashboardservice
Note: URL needs to be accessible from the UCC service to the Dashboard Service.

Warning: Make sure to configure the setting to the ".local" URL when using multiple services in the same region. If this is not done, you may experience unexpected behavior.

Config

Add ListsEndpoints

  1. Open the UCC Config page on SharePoint

  2. Open the Plugin Settings list

  3. Add DialogueManager settings endpoint for ListsPlugin -> ListsEndpoints

    Note: Add to the existing item and separate with "Enter".

    Setting

    Value

    Scope

    ListsEndpoints

    http://FQDN/webagentservice/api/v1/settings (should already exist)

    http://FQDN/DialogueManager/api/v1/settings

    Note: URL needs to be accessible from the UCC Service to the Dialogue Manager.

    ListsPlugin

 

Add ForwardUri

  1. Open the UCC Config page on SharePoint

  2. Open the Plugin Settings list

  3. Add DialogueManager settings endpoint for EventForwarderPlugin -> ForwardUri

    Note: Add to the existing item and separate with "Enter".

    Setting

    Value

    Scope

    ForwardUri

    http://FQDN/webagentservice/api/v1/EventsHook (should already exist)

    http://FQDN/DialogueManager/api/v1/EventsHook

    Note: URL needs to be accessible from the UCC Service to the Dialogue Manager.

    EventForwarderPlugin

 

Restart UCC and validate

  1. Login to the Anywhere365 Application Server

  2. Start Services

  3. Restart "Anywhere365 Unified Contact Center"

  4. See the logs if Dialogue Manager is successfully loaded

UCC Logs

C:\ProgramData\Anywhere365\Core\Service\UnifiedContactCenterService\logs

Copy
Logs
2019-04-18 15:21:43,560 [14] tx INFO  - CustomSessionPlugin Pushing updates to http://FQDN/DialogueManager/
2019-04-18 15:39:30,716 [5] Wsp.Anywhere365.Ucc.Lists.ListsPlugin.ListsRequest DEBUG - ListsPlugin SendRequest Endpoint: http://FQDN/DialogueManager/api/v1/settings - body: {"Version":"1.1.7"...}

 

Dialogue Manager log:

Copy
Logs
2019-04-18 16:11:23.0499 Info Found 72 configuration items
2019-04-18 16:11:23.0955 Info Configuration initialized.