Building a COVID-19 Virtual Banking Assistant

Mridul Bhandari
IBM Data Science in Practice
4 min readJul 26, 2020
Photo by Nick Pampoukidis on Unsplash

Introduction

The COVID-19 pandemic has left its impact on every industry, especially on the global economy and financial sector. Bank helplines are receiving a lot of calls with general queries regarding loans, mortgages, bank charges, etc. which keeps the helpline and helpline agents occupied. Therefore, to reduce the workload and save time for customers and helpline agents we have developed a COVID-19 Virtual Banking Assistant using technologies such as Watson Assistant on IBM Cloud.

In this blog, Fawaz Siddiqi, Sidra Ahmed & I will be discussing how we built the Virtual Assistant and key features we have integrated.

Demo

http://covid-19-bank-chatbot.mybluemix.net

Technologies Used

Architecture Diagram

1- Users can interact with the assistant through the web or mobile application.
2- The application calls Watson Assistant that is hosted on IBM Cloud.
3- Watson Assistant makes calls to Cloud Functions to extract the latest information about COVID-19 cases.
4- Cloud Functions makes calls to COVID-19 cases API from Johns Hopkins CSSE.

Sample Inputs

  • Number of Cases
  • Open Shops
  • Testing/Screening Centers
  • Self-screening
  • Banking Services
  • Provides bank names and their services after choosing the bank

Bot Controls

  • Traversing back
  • “Bank Menu” — after a banking service has been viewed
  • “Main Menu” — to go back to the starting of the chatbot after using a particular service

Steps

  1. Set up an instance of Watson Assistant.
  2. Retrieve Intregation ID, Region & Service Instance ID from the Watson Assistant service.
  3. Run the server.

1. Set up an instance of Watson Assistant

Log in to IBM Cloud and provision a Watson Assistant instance.

  1. Provision an instance of Watson Assistant from the IBM Cloud catalog.
  2. Launch the Watson Assistant service.
  3. Create an Assistant.
  4. Add a dialog skill to the Assistant by importing the skill-BankingCOVID.json file.
  5. Go back to All Assistants page, open Settings from the action menu ( ) and click on API Details.
  6. Note the Assistant ID and API Key. From the Assistant URL, make note of the base URL/domain (e.g., https://api.us-south.assistant.watson.cloud.ibm.com or https://api.eu-gb.assistant.watson.cloud.ibm.com) but do not include the directory/path.
  7. Go to Preview Link to get a link to test and verify the dialog skill.
Watson Assistant Service on IBM Cloud
Importing a dialog skill
Chatbot Preview

2. Retrieve Intregation ID, Region & Service Instance ID from the Watson Assistant service

To connect Watson Assistant to Web Application UI Integration ID, Region & Service Instance are required. Go to the Assistant and add Web Chat Integration. Click on Web Chat under saved Integrations and scroll to Add the chat UI to your web page. Copy the Integration ID, Region & Service Instance ID.

Adding Web Chat Integration

3. Run the server

To set up and launch the server application:

  1. Go to the Covid-19 Bank Chatbot/index.html directory of the cloned repo.
  2. Update the integrationID, region, and serviceInstanceIDwith the values from the Web Chat Integration in Watson Assistant.
  3. Edit the name value in the manifest.yml file to your application name (for example, my-app-name).
  4. Deploy:
    - To run locally:
    1. Start the Live Server .
    2. The server can be accessed at http://127.0.0.1:5500/index.html.
    - To deploy to IBM Cloud:
    1. Log in to your IBM Cloud account using the IBM Cloud CLI: ibmcloud login.
    2. Target a Cloud Foundry org and space: ibmcloud target --cf.
    3. Push the app to IBM Cloud: ibmcloud app push.
    4. The server can be accessed at the URL shown in the console (routes) after the app successful uploads and starts (for example,http://covid-19-bank-chatbot.mybluemix.net).

Resources

Working Example

Screenshots

Chatbot Integrated in Web UI

Watson Assistant Dialog Skills

Summary

In this blog, we have documented the steps involved in fabricating a next-gen COVID-19 Banking Virtual Assistant to help customers and agents with their queries regarding banking facilities during this pandemic.

To summarize, we built an assistant in English utilizing Watson Assistant on IBM Cloud.

Sign up for your IBM Cloud Account and get started with fabrication of your assistant and traversing through other cloud services.

GitHub Repository : https://github.com/mridulrb/Bank-Virtual-Assistant

Demo : http://covid-19-bank-chatbot.mybluemix.net/

Sign up for IBM Cloud : https://ibm.biz/BdjViX

--

--

Mridul Bhandari
IBM Data Science in Practice

DevOps Cloud Engineer at 👁️🐝Ⓜ️@IBM. Graduated with B.E (Hons) Computer Science from Birla Institute Of Technology and Science, Pilani Dubai.