GitHub repository: montshejohn/Chat-bot
Primary language: CSS
Created: 2018-12-19T19:35:33Z
Description: Hi Guys  Here is the brief for the chat bot project. The chat bot project is a chat equivalent to an IVR system. What this means is users interact with the bot in a pre-defined conversation flow. For example:  Bot:  Welcome to the chat bot. Please choose an option below 1. The user cannot login 2. The user has a problem with Java 3. The user doesnt speak english  User: << Clicks 1. as it's a button >>  Bot: The user cannot login This can be due to a number of issues, please select below 1. The users credentials are rejected 2. The login page is down  User: << Types 2 >>  Bot: The login page is down  So you get the idea. Now what is required from you is to create an Angular 7 UI that looks like WhatsApp where users can interact with the bot. I've already written a RESTFUL Java Spring Boot API that you will consume. The API is called as follows:  http://41.86.98.151:8080/tree?name=test  This returns a tree xml:  <tree text="Welcome to the FX-Bot, how can I help?" uuid="221fca10-d57f-42dc-834a-54f8aa366123"> <node option="The user cannot log in" uuid="e363c67d-e9f0-4789-8db5-4f7ba05c075d"/> <node option="The user has problems with Java" uuid="37d2cb93-296c-454c-8f71-d68404834d68"/> <node option="The system is down" uuid="39ed243b-2f0e-45e0-a091-ebab9877797e"/> </tree>  On the UI the text of the tree must be displayed as well as the options of all of the nodes. If for instance node option "The user cannot log in" is clicked then a call is needed to the API to find out what to do next (note the UUID):  http://41.86.98.151:8080/node?uuid=e363c67d-e9f0-4789-8db5-4f7ba05c075d  <node text="There are a number of reasons why a user may not be able to log in, please select as below" uuid="cdbfe989-8170-4e8f-97e3-a12c0721dd2e"> <node option="The system says the users credentials are invalid" uuid="cfa72f45-a4ad-4945-a617-7a470b94fc88"/> <node option="The login page is not available" uuid="cd53f13a-f338-4d79-86b3-206b5d130714"/> </node>  As before show the node text and node options. Then the user selects a node with a specific UUID and the API above is called again. Simple right?