Skip to main content

Posts

Context based Data Driven Dynamic UI / ListView Problem and Solution

All we need is the good dynamic UI with the minimal code and the efficient one. We face several issues when such requirements like dynamically based on the context of what the user see on the screen, I need to get the data handler and network handler or some or all the components in my system or app should respond back with the actions and data with respect to the context. Being said this, setting the context to the reader about the problem in short and would go through on solution to solve the same. Problem: Few problems that comes into picture while developing an UI based applications like Mobile apps or the Web apps etc., we come across following problems, User is free to navigate to any screen. User is free to do any operation that might change the state of the data and if the data change its state the UI may take a state change.  Today the app may have few states what if tomorrow the state are huge. Should I handle all the states manually with switch case or if e...

Complete On-Premise and Fully Customisable Chat Bot - Part 4 - Integrating the Natural Language Processor NLP

Welcome back Folks !! In our part 3 we have seen how to communicate to the bot that we have built. Each and every people would talk the same thing in the different format and on his style. For each response if we start writing the code, Imagine how hard its gonna be. What can we do for that ? Natural Language Processor makes it easy to do. NLP is a component that identifies the user conversation and identifies the meaningful context from that. What NLP is available ? There are few NLP services like, 1. Dialog flow 2. Luie 3. IBM Voice etc. But all these are the cloud services and we need to go internet for this. As we speaking about the on premise chat bot we will go for the RASA solution. What is RASA ? RASA is a Chatbot server and RASA NLU is the NLP server that comes handy and is built on the python tech stack. Its is a open source and backed by a strong community. Lets get started with RASA ... 1. Installing the python environment :  Si...

Complete On-Premise and Fully Customisable Chat Bot - Part 3 - Communicating to the Agent that has been built

Welcome back Folks !! In our part 2 we created the Bot Kit server/ Agent that will respond to the hello message with a fallback. Here we will be looking on how to communicate to the bot on the port 3000 using the web socket client. Communcation With Bot On 3000 in Websocket. To test the communication with the bot, temporarily we will use the web socket client plugin that comes as a extension in the Chrome / Firefox  plugin. Follow the procedure as follows , 1. Install the Chrome / Firefox from the below links Chrome -  https://www.google.co.in/chrome/ Firefox -  https://www.mozilla.org/en-US/firefox/new/ 2. After installing the chrome or Firefox. Google for "Simple Websocket Client for Chrome / Firefox". 3. Open the first link and click on add to chrome. 4. Once if the extension has been added you can see it on the chrome like below 5. click on the simple web socket icon and the client opens as follows. 6. Now in the URL en...

Complete On-Premise and Fully Customisable Chat Bot - Part 1 - Overview

Hey Folks !! Welcome back! For long time I was searching for the solution to make a in-house chatbot that operates with in the organisation and no compromise on the data security using the NLP cloud services or the Bot agents. Luckily I got to know about the combination of the BOTKIT and the RASA NLU can make this solution. I went on searching and searching for the solution for the long time and I could find the pieces here and there and completed the solution. I write this to help other folks to make this solution easier rather than searching a lot. The solution goes on as follows. Components are as follows : Front-End UI Botkit server / Agent server RASA NLU server  Business Logic Server DataSource  External Api if any Now seeing in detail what these components will do. Front-end UI : This is the component where the user interacts with. This can be on any technology like the Angular webapp or android app ...etc Borkit Server / Agent S...

Complete On-Premise and Fully Customisable Chat Bot - Part 2 - Agent Building Using Botkit

Welcome back Folks !! In our part 1 we are reading about the overview of building the chat bot using botkit and the RASA NLU that runs in the premise without having dependency on the cloud services. Here we will be looking at developing our Chat Bot Agent server using the botkit framework. Building the Agent Preparing the environment We will start with setting up the environment for setting up the agent. Install the Node.  You can get the installer from here . Install the node after it gets downloaded.  Once it gets succesfuly installed, open the command prompt and type. If the output shows some version number means the installation is success. Installing the botkit using NPM (Node Package Manager) Choose some directory and make the following directory structure as follows. This is going to be the initial directory structure.  Execute the following commands to move into the Botkit folder cd Botkit Initialise the npm pa...

GrowingListView - growing list view inside the scroll view

GrowingList View Introduction: The growing list view is a kind of list view that resembles the recycler view with the same style of the recycler view adapter. This library grows in the height as the height of the items inside dynamically. Problem Statement: The recycler view or the list view doesn't grow in size dynamically while being inside the scroll view. Also setting the height dynamically to the items height is programmatically achievable but it behaves differently on different devices. The growing list view is built to resolve this issue. Include the view provided by the library and include the adapter class in the project and set it to the list and see the magic that the list will be growing in size dynamically with the height of the height. How to include in your project: Just download the .aar file from the following link : https://github.com/PranavKAndro/GrowingListView . Include the .aar file into the project by new-->module-->import .aar mo...

Concept of Google Cloud Messaging / Cloud 2 Device Messaging

Concept of Google Cloud Messaging / Cloud 2 Device Messaging. By H.M.Pranav Kumar, Concept of Google Cloud Messaging. The Google cloud messaging is the concept introduced with the purpose of,       1) Asynchronous messaging from the application server.       2) To avoid polling of the client to save the battery power.       3) To make handling and routing of messages to different devices easier. Parties in GCM / C2DM GCM / C2DM is a concept in which three parties are involved. The parties are,      1) Application server.      2) Google cloud server.      3) Android app / Client. Application Server:     Application server is the business server in which the actual logic and the data is stored and to which the client interacts for the new data and requests for data and other processing needs. Google Cloud Server:      Google cloud server i...