The world of bots who can intelligently converse continues to build momentum. We’ve seen the opening up of the Facebook Messenger and LINE platforms, as well as improvements to the existing Telegram platform. In addition to new and improved platforms, the Kik bot store has opened, and Slack is making submission to their app store a product priority.
While messaging platforms continue to mature, so will the bot community. Enthusiasts now have curated newsletters such as Chatbots Weekly, Slack groups such as botmakers, an ever-growing list of local events and conferences, and Betaworks (the internet startup studio) recently launched botcamp, a program to help build your bot and business.
It’s a really exciting time to build a bot. As their adoption and usage moves from the early adopters to the early majority, big businesses and brands will be forced to consider bots as part of their strategy to remain competitive. If you’re considering building a bot for fun or profit, here’s a quick summary of the infrastructure you might consider building on.
Platforms
There is a range of platforms to build on top of: Facebook’s Messenger, Amazon’s Alexa, Kik, Telegram, Slack, LINE, etc. Before you pick one (or many), consider your target audience and bot use case.
Code
In addition to the SDK provided by your messaging platform of choice, there are several open-source frameworks you might consider.
Botkit, an open-source framework for building Slack and Facebook Bot (Node.js)
Slack APIs in Golang
Slack Ruby Bot, a Ruby bot kit
Kik Interactive, multiple kits for the Kik platform
Conversational intelligence
As users begin conversing with your bot, you’ll need a way to extract data from unstructured text.
Historically, people have used Regular Expressions to pull out key terms. Another way is to use Natural Language Processing (NLP). You might consider one of the follow NLP-as-a-service providers, enabling you to design intelligent conversations:
Wit.ai (owned by Facebook)
Bot analytics
As conversation copy becomes a critical element to remain competitive, you should consider your message analytics. There are not many providers (yet), but consider Botlytics for a simple out-of-the-box place to view your data. At Abe.ai, we use our own by piping our data through Kinesis for realtime analysis.
Custom data and APIs
You also need to think about what other sources and other data your bot will need to leverage. Here are some examples of bots which use third-party APIs.
Meekan: Helps teams organize meetings faster. Their bot integrates with a variety of calendars including Google, Office 365, and iCloud calendars.
Sway Finance: Provides insight about your company finances using the Stripe API.
Abe: My company's bot that manages your personal finances integrates with financial data from the Yodlee API.
I hope this article helps springboard your bot-building efforts, and if you're interested in building a bot for your money, look no further! Send an email to rob@abe.ai.