WebAgent Architecture Overview
This article provides an architecture overview of the relationships between the different components that can be part of an Anywhere365 WebAgent. Typically not all components mentioned or written herein are part of your deployment but probably just a selection which varies per customer.
It furthermore contains a checklist of the configuration settings for setting up your Anywhere365 WebAgent as well as a reference list of Anywhere365 components displayed in the diagram.
Note
An additional Anywhere365 WebAgent license is required.
WebAgent Architecture Diagram - All (Possible) Components
ApiPlugin
Enabled: true
Uri: http://<xyz>-01.<ucc-region>.dialoguecloud.local:<port 1>*
CallControlsPlugin
Enabled: true
Uri: http://<xyz>-01.<ucc-region>.dialoguecloud.local:<port 2>*
CrmService
<Connector Specific settings (multiple settings allowed), see GoLive>, Learn More
CustomSessionsPlugin
Enabled: true
Uri: http://<xyz>-01.<ucc-region>.dialoguecloud.local:<port 3>*
DialogueManager
Enabled: true
SqlConnectionString: <SQL-ConnectionString to DialogueManager Database>
Uri: http://<xyz>-01.<region-service>.dialoguecloud.local/dialoguemanager ***
DialogueStudio
HttpsEnabled: false
HttpPort: <port 4>**
EmailDialogueProvider
<Connector Specific settings (multiple settings allowed/required), see GoLive>, Learn More
EventForwarderPlugin
ForwardUri:
http://<xyz>-01.<region-service>.dialoguecloud.local/webagentservice/api/v1/eventshook ***
http://<xyz>-01.<region-service>.dialoguecloud.local/dialoguemanager/api/v1/eventshook ***
ListsPlugin
PollingIntervalMinutes: 15
ListsEndpoints:
http://<xyz>-01.<region-service>.dialoguecloud.local/webagentservice/api/v1/settings ***
http://<xyz>-01.<ucc-region>.dialoguecloud.local/crmservice<name>/api/v1/settings
http://<xyz>-01.<region-service>.dialoguecloud.local/dialoguemanager/api/v1/settings ***
http://<xyz>-01.<ucc-region>.dialoguecloud.local/emaildialogueprovider/api/v1/settings
http://<xyz>-01.<ucc-region>.dialoguecloud.local/webchatdialogueproviderdialogueprovider2<_ucc_name>/api/v1/settings
WebAgentService
DciSkill: DCISkill
AttendantServiceUrl: http://<xyz>-01.<ucc-region>.dialoguecloud.local/attendantservice
CallPropertyServiceUrl: http://<xyz>-01.<ucc-region>.dialoguecloud.local/callpropertyservice
CrmServiceUrl: http://<xyz>-01.<ucc-region>.dialoguecloud.local/crmservice<name>
DashboardServiceUrl: http://<xyz>-01.<ucc-region>.dialoguecloud.local/dashboardservice
TimelineServiceUrl: http://<xyz>-01.<ucc-region>.dialoguecloud.local/universaltimelineservice
Uri: http://<xyz>-01.<region-service>.dialoguecloud.local/webagentservice ***
WebChatDialogueProvider2
<Customer Specific settings (multiple settings allowed/required), see GoLive>, Learn More
ForwardUri:
http://<xyz>-01.<ucc-region>.dialoguecloud.local/WebChatDialogueProviderDialogueProvider2<_ucc_name>/api/v1/Dialogue-manager/ucc/presence
------------------------------------------------------------------------------------------------------------------------------------------
DashboardServiceUrl: http://<xyz>-01.<ucc-region>.dialoguecloud.local/DashboardService
------------------------------------------------------------------------------------------------------------------------------------------
* : unique/available port (on platform/server), multiple UCC's running in the same service must share the same port for this plugin.
** : unique/available port (on platform/server) per service per type (identityprompt or identityplugin), multiple UCC's running in the same service must share the same port for this plugin per type. See GoLive for additional requirements if both types want to be used within same service. Learn More
***: In principle there is one WebAgentService and one DialogueManager per region, each with their own front-end URL. If necessary this can be expanded as custom work to more per region in case additional (localised) database(s) need to be supported.
Attendant Service
The Attendant Service is responsible for handling interactions between the users and the UCC. For example, switching Formal states or Taking a conversation from the queue.
Call Controls Plugin
The Call Controls Plugin are used so Teams Agents can use the call controls in the WebAgent.
CallProperty Services
The CallProperty Services is used for writing additional properties of a conversation into the Anywhere365 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. Database. For example, adding classifications.
CDR Database
The CDR (Call Detail Recording) is used by the Core to store the call details. This information is used by Power BI (Learn More), and to provide information to the clients. For example, the timeline.
CM Dialogue Provider
The CM Dialogue Provider is used to connect to the CM Platform. With CM you can add WhatsApp and SMS as a dialogue type.
Core
The Core is the control center of Anywhere365. It manages all the Dialogues and Dialogue related settings. Learn More
CRM Service
The CRM Customer Relationship Management, or CRM, is (usually) a software-based, data management method to deal with interactions with customers and potential customers. Service is used to retrieve contact and case information from your CRM back-end, this information will then be shown in the WebAgent.
Custom Session Plugin
The Custom Session Plugin is used to create Custom Session into the UCC. A custom session is used for any other dialogue not using Audio or Skype Chat. For example, WhatsApp, WebChat, or Emails.
Dashboard Service
The Dashboard Service is responsible for sharing dashboard information between the UCC and the clients. For example present Queue information in the WebAgent.
Dialogue Manager
The Dialogue Manager handles text-based dialogues. It is the central component that communicates between the UCC and the various Dialogue Providers.
Dialogue Manager Database
The Dialogue Manager Database is used by the Dialogue Manager and the various Dialogue Provider. It stores all content related to the text-based dialogues.
Email Dialogue Provider
The Email Dialogue Provider is used to connect to Microsoft Graph. With Graph you can add Emails as a dialogue type.
Event Forwarder Plugin
The Event Forwarder Plugin subscribes to the EventBus and forwards all events to the WebAgent Service. This way the WebAgent Service is aware of all the events happening in the Core.
Identity Service
The identity Service is a service that will validate if you can log in, where you need to login, which integrations to load, and to what WebAgent Service you need to connect to. This part is managed by Anywhere365.
Lists Plugin
This plugin shares information configured in the SharePoint lists, with various other services like the WebAgent Service. This way you have a central location on where to configure your settings.
Universal Timeline
The UniversalTimelineService is a separate service used to provide a unified timeline based on CRM-information. This timeline information is presented in the WebAgent via the WebAgent Service.
WebAgent
This is the web app the user opens in their browser. This is the FrontEnd of the WebAgent.
WebAgent Service
The WebAgent Service API is used for communication between the WebAgent FrontEnd and Anywhere365 components.
WebChat Dialogue Provider
The WebChat Dialogue Provider is used to connect to WebChat Front End. With WebChatDialogueProvider you can add WebChat as a dialogue type.
WebChat Front End
The WebChat FrontEnd is used to connect to WebChatDialogueProvider. It provides an interface for the customer to start a WebChat dialogue.