So, my first chatbot with Google Dialogflow was published, and I just got the credit benefits from Google for this. I am writing this post covering my experience that I had working with Google Dialogflow, as a product, and how I look forward to expanding my usage of the product and where Google Dialogflow stands in terms of my favorite chatbot builder tools and frameworks.

First things first: ChatBot purpose

So it began when me and my brother we used to order something, such as a pizza, and then watch a movie while we ate it. The only problem was that we had to argue which movie to watch, as our tastes usually did not match. I decided to leave it on fate--or as software engineers do, use Random --and try to see if that solves the problem.

I explored The Movie Database (TMDb) and decided to proceed with it as the movies database for the application. Without a doubt, without their service, I would have never been able to develop this bot as other solutions were not much developer-friendly .

Google Dialogflow: 1000ft

I have lately been using Azure Cognitive Services, and LUIS has been a great tool for me to build chatbots, and I remember around 2-3 years ago I participated in a hackathon for chatbot development and that, too, was done using LUIS. Love the product to this day. Google Dialogflow on the other hand is more like a consumer facing product. You, as a customer, can bring in your own data, your own sources, your own concepts and build a chatbot in less than 15 minutes--trust me, I have done that at a bunch of workshops and speaking events in the past months and I was able to have the audience write the basic chatbot in under 15 minutes.

  • No development or programming experience.
  • No setup or SDKs required.
  • Models and entities provided out of box.

This provides a great experience for anyone joining the chatbot world. Similarly, the experience of deployment of the chatbot was smooth. Creating a new intent, adding entities and enabling API communication with the chatbot was right in front of me. You can even utilize other data types, such as Excel sheets to import intents for your chatbot if you want.

As a new user, you can always get started at Dialogflow and get your chatbot developed, deployed and served to users in a suitable amount of time. Although not necessary, but you can easily find a bunch of amazing tutorials and videos that can guide you through your way of building a chatbot using Dialogflow.

Firebase Functions

The integration between Google Dialogflow, and Firebase is also interesting. Since both are Google products, they provide a built-in button that can enable fulfillments (a concept, using which you can have your chatbot communicate with your or third-party APIs to generate responses). Since the development is done using JavaScript and Node.js, it helps authoring API clients.

  • A function for each task!
  • Scalable, and serverless in nature.

I used Visual Studio Code for development purposes as I authored the Firebase Functions, and the Firebase CLI helped me throughout the process. You know, just a firebase deploy can take care of everything for you. I am currently working on the overall design and structure of the project, and once I am done I will share the source code on GitHub.

Moreover, the functions also come with a free quota that can be used for development/testing or for small-scaled businesses to provide services for free! And if you are getting started with the deployment of a bot, you can join the Google Assistant Developers Community Program and get benefits and perks. I recently received 200 USD per month for my Google Cloud Platform, to support the infrastructure costs for my ChatBot.

Now, that the ChatBot is available for us to find the movie. Our pizza gets cold, because we have to agree on the suggestion being made by the ChatBot. Maybe a future plan for the bot .

You can try the ChatBot using Google Assistant or you can find it on Facebook Messenger , as well as Kik. I am currently working on expanding the features of this bot, including a bunch of more options and entities in the phrases that can help filter the movies. Apart from that, I am also planning on taking the fulfillment APIs from Firebase to Microsoft Azure, and see how that works, it can also help me maintain caching the responses to avoid hitting the limitations as much as possible.

So that was the gist of my experience with Google Dialogflow, please do share your feedback on the bot, or this post, let's start a discussion.