Architecture

BMC Virtual Chat is a BMC Remedy AR System application that helps self-service users solve issues. It provides a virtual agent that converses with self-service users using a natural conversation engine. Self-service users access the system from the Self Service Portal by using any standard browser. When the self-service user asks a question, the virtual agent searches various knowledge repositories for solutions. At any time, the self-service users can escalate their issue and chat with a live agent. Agents access the system through the Support Agent Console, where they participate in live chat sessions with users. Live agents have additional tools available to help provide faster resolution to user issues.

The following diagram shows the BMC Virtual Chat architecture.

BMC Virtual Chat also includes the following components:

BMC Virtual Chat architecture

The following diagram illustrates the architecture for version 9.1.00.

The following diagram illustrates the architecture for version 9.1.01 and later:

If an integration point is configured for BMC Remedy IT Service Management (ITSM), the self-service user can also submit an incident to the help desk. If a new incident is submitted after a chat session, the entire chat history is included in the incident detail for the help desk analyst to review.

BMC Virtual Chat is designed and built on the BMC Remedy AR System foundation. It is packaged as a definition (DEF) file and imported to the BMC Remedy AR System server by using BMC Remedy Developer Studio. Any supported BMC Remedy AR System server can be used to host the application.

Virtual Chat application

The Virtual Chat application is installed on both the Mid Tier and the AR System server. On the Mid Tier, the Virtual Chat application communicates to support agents and to the Virtual Chat application that is on the AR System server. On the AR System server, the Virtual Chat application includes the following components:

  • Master Chat Record (MCR) - This form is central to the Virtual Chat applications.All chat requests are input into this form. Each chat session contains one MCR with a unique session identifier. The MCR is responsible for all actions on the chat text after chat text has been submitted. When chat text is submitted to the MCR, the MCR formats the chat text with required tags. It appends the chat text to the chat log and provides any translation that is required. The MCR updates the Chat Notification Servlet (CNS) for all session participants to indicate that an update is pending for those individual sessions where the pending flag is set.
  • Participant Chat Record
  • Workflow objects
  • AR System workflow integrations to BMC Remedy ITSM, including BMC Knowledge Management.

ESChat servlet

The ESChat servlet is a Java servlet installed on the Mid Tier server that handles all chat application processing. ESChat is packaged as a WAR file and deployed via a Java server, such as Apache Tomcat. ESChat contains a comprehensive configuration properties file that enables you to customize the application for your environment.

Chat Notification Servlet (CNS)

The Chat Notification Servlet (CNS) is a Java servlet that caches update notifications and processes update checks. The CNS is installed on the Mid Tier server. In version 9.1.00 and earlier, the CNS is packaged as a WAR file, but in version 9.1.01 and later, it is included as part of the ESChat WAR file.  In addition, the CNS  plugin is installed on the AR System server as an AR filter plugin. The Master Chat Record (MCR) receives chat text to process. As the final step, the MCR tells the Chat Notification Servlet (CNS) that the chat text is received and performs the required update. Each participant in a chat session, other than the one who submitted the last chat, has their CNS session flag set for this particular session ID.

Along with the update flag for a particular chat session and user ID, the actual chat text is also cached in the CNS. This process eliminates the need for chat client applications to access the BMC Remedy AR System database to retrieve these small bits of data and greatly improves the performance of the chat application.

Each chat client application pings the CNS regularly to check for updates. The CNS returns XML data to the client via Asynchronous JavaScript and XML (Ajax). If an update is waiting for that client, an update flag is set and the chat text update is returned as part of that XML data. After the CNS has notified any client of a pending update, it clears the CNS session update flag and data for that particular client. This process eliminates the need for any clients to poll for updates or send information to the server to indicate that the data has been read.

All data in the CNS is cached data and is already saved in BMC Remedy AR System. At no time does the CNS contain data that is not already stored and saved in BMC Remedy AR System, which prevents data loss in any kind of system failure.

Chat Translation Servlet (CTS)

The Chat Translation Servlet (CTS) is a Java servlet that handles all language translation requests. In version 9.1.00, the CTS is packaged as a WAR file and deployed via a Java server, such as Apache Tomcat. In version 9.1.01 and later, it is included as part of the ESChat WAR file.

Program D

Program D is the virtual agent chat robot (chatbot) technology. It is a Java servlet that is deployed on the Mid Tier server via a Java server, such as Apache Tomcat. Program D accepts requests via a URL and returns results via XML in an Ajax method. Program D uses Artificial Intelligence Markup Language (AIML) to receive, process, and return information in the form of questions and answers to the self-service user. Program D can be configured to use custom AIML files, which you create for your environment.

Supporting files

The BMC Virtual Chat application contains the following supporting application files.

HTTP resource files

BMC Virtual Chat uses Data Visualization Fields (DVFs) to enhance the appearance of the client interfaces. DVFs provide the ability to use HTML and also provide the rich-text chat interface.

The DVFs use HTML resources such as image files and sound files for the user interface. These resources are stored as individual files on the HTTP server. They are contained in the resources folder in the installation package.

Java plug-in and DVF files

BMC Virtual Chat requires four Java plug-in files and two Data Visualization Field (DVF) files. The plug-ins assist with virtual agent processing, chat server updating, and translation functions. The following plug-ins are located in the javaplugins folder in the installation package:

  • SupportBotPlugin.jar
  • ESChatNotificationServerPlugin.jar
  • ESTranslatePlugin.jar
  • ESChatToolsPlugin.jar

The DVF files are used by BMC Remedy AR System. The following DVF files are located in the ESDVFBase folder in the installation package:

  • ESDVFBase.jar
  • details.txt

After the plug-ins are installed and configured, you must restart the AR System service.

Was this page helpful? Yes No Submitting... Thank you

Comments

  1. Shahrizal Nawawi

    Perhaps we can know more about ESChat configuration properties.

    Dec 10, 2018 01:13
    1. Aaditi Lakade

      Hi Shahrizal Nawawi, 

      Thanks for your comment. The following two topics elaborate on the eschat_config.properties file:

      Do let us know if you do not find anything specific that you are looking for, and we'll help you with the details.

      Dec 10, 2018 03:05