About chatbots
Why so much hype about chatbots?
Published in
3 min readMar 21, 2016
- because 2015 was the first year with more chats users than social networks users (3B vs. 2.5B);
- chat users have higher retention rate;
- messengers seem to be a disruptive innovation for social networks;
- If Facebook/Whatsapp opens API access to all developers, then it will open access to 1B+ of existing users (it will be clear at Facebook F8 conference in April 2016). I am convinced that Facebook Messenger/WhatsApp API will be 90% close to Telegram Bot API and Slack Bot API;
- Bots are the new “apps” but with simpler and faster distribution: installing a bot is easier than installing an app! You just mentioning the bot inline like “@calc_bot how much is 2+2” or just adding it to the contact list, not waiting for it to download;
- No need to have a storage space, memory or fast processor on your phone to “install” and to use a bot;
- Bots are running on their servers so no need for developers to spend time testing how it works on different devices and different Android/iOS versions.
What it takes to create a bot?
- Much easier than building a mobile app as you don’t need any special code editor and you need to create a server-side application. A bot in its core is a server side application that responds to incoming requests and sending outgoing requests. There are lot of open sourced bots already at Github, see my Telegram bot for example (spent 2 hours on it);
- Which programming language should you use? You may use almost any server-side programming language but there are lot of bots made with Python and Javascript as they are cheap to host and running fast;
- Should I re-write my existing apps as bots? No, bots are just a new interface to your app. If you have an API and the server-side application then you may just integrate your bot on top of existing API (as in google_sheet_reader_bot that just utilizes Google Sheet API to get spreadsheet data as JSON);
- As bots are running on a server so you may adapt your application to run on a server (on any server OS that fits your application) and just implement a bot interface to connect to your server. You may adapt your application much faster and easier and without rewriting the code by just extending your application to provide a bot API interface;
How much would it cost to run a single bot?
- A simple bot with incoming requests like google_sheet_reader_bot can be run on free Heroku plan and provide less than 1 sec response time to get a response from a table with 50 records. I mean a table which bot downloads from Google Sheets as JSON, parsed, iterated through and filtered and sent back as a response for every new incoming request);
- A single simple bot with inbound and outcoming requests on Heroku it will cost from $7 USD/month. If you run your server on Amazon AWS or Azure, then it could even cost less.
What are the currently available Bot platforms?
Platforms with official bot API available:
Non official (but rumored to have API for partners)
- Facebook with their secret Messenger API
- Whatsapp (unofficial php API)