Chatbots Magazine Become a Writer Intro to Chatbots

What apps and tools do you use for building bots?


(andrey.korlyuk) #1

I’m quite new with it, so I’d like to know some approaches, you build your bots.
For me now it looks like this:

Database with my data (or external api)
My server which serves bot (I use Java for development)
Wit.ai for conversation flows (has some problems if I’m using branches intensively)
For universal analytics I use google Analytics

how this looks for you?


(Joseph Burchett) #2

Hello @andrey.korlyuk id be happy to share my stack with you!

Database: MongoDB and Redis
Why: I chose MongoDB for it’s flexibility, and ease of use. Also works well at scale. I am using Redis to cache large amounts of user data for faster response time and to hold some temp session data. I am using Compose.io for hosting.

Servers: NodeJS
Why: NodeJS is insanely easy to setup and even easier to get third party modules working with it. It’s very light weight, simple to configure and maintain. I am using Digital Ocean for the hosting.

Converstation Flow: Wit.ai
Why: I am also using Wit.ai with my but at the moment my bots are more rule based then AI. So haven’t had much use for it yet. The main reason I am using it is because it’s free. There is no native nodejs library so I just created a wrapper around their HTTP stuff.

Analytics: https://amplitude.com/
Why: It’s free for sending a ton of events and the tooling is easily customizable with lots of graphs.

NodeJS is proving to be rather popular tool to create bots with simply because it’s so easy to get up and going. I think the lack of Java and Scala tooling is Java is a bit more ridged with stuff and not nearly as easy to get up and going. You can create a web server in NodeJS with just a few lines of code.

But I am sure as we see more bot stuff in 2017 we will see more tooling in more languages :slight_smile:


(andrey.korlyuk) #3

@jburchett Thank you for responding. What platforms do you support?


(Joseph Burchett) #4

Facebook Messenger, Telegram and Kik. Very soon Skype, Discord and IRC.


(Vik Kimyani) #5

My first bot was NodeJS mainly as I could get that deployed petty quickly, in fact doing the Facebook integration took longer! There’s a ton of NodeJS bot projects to choose from, pick any that takes your fancy but a simple rules based one is Bottly.

My second one is going to be a bit more complex and uses Neo4j, MySQL, Python 3, NodeJS and a whole bunch of dependencies to enable polyglot support. All because my colleague said he hates JS and wants to use Python…

My aim is also to integrate Tensorflow or Watson for the AI portion.

For hosting I am lucky in that I have free cloud services from my employer, Oracle (yes we do cloud!)


(swapnalimane31) #6

Hi All

I am a beginner in Chatbot development, Just joined the forum and got my first doubt cleared of which technology to be used to build a chatbot.If anyone have any kind of reference material or link to start with,please share here…It would be of great help.
Thanks
Swapnali Mane


(Vik Kimyani) #7

You can use this to get one up quickly using ngrok and Facebook messenger - http://www.ateam-oracle.com/getting-started-with-chatbots/

Vik


(daiangan) #8

I use Python with Django for the bot main brain and Wit.ai for AI.
For bot analytics I use Dashbot and for hosting I really like PythonAnywhere because they have https by default on their instances and I can use this for the chatbots webhooks.

I am sure NodeJS is a great option but I am more comfortable using Python+Django as my day to day programming language, this is a great tutorial to start: https://abhaykashyap.com/blog/post/tutorial-how-build-facebook-messenger-bot-using-django-ngrok