Bots are software programs that combine requests, which are typically provided as text, with contextual data, such as geolocation and payment information, to appropriately handle the request and respond. Bots are often also called "chatbots", "assistants" or "agents."
Limbo is an awesome Slack chatbot that provides a base for Python code that otherwise would require boilerplate to handle the Slack API events firehose.
python-rtmbot is the bot framework for building Slack bots with the Real Time Messaging (RTM) API over WebSockets.
The GitHub bots search results and the bots GitHub topic contain tens of thousands of example bots you take analyze to see how they are built.
Errbot can work with multiple backends such as Hipchat, Discord, Slack and Telegram. It's designed to be deployed "as is" except for your credentials but the Python source code can also be customized.
How to Buid an SMS Slack Bot is a tutorial on using SMS text messages to communicate with a Slack bot that can post and receive messages. The bot is a good base for a more complicated Slack bot that could use natural language processing or other more advanced parsing techniques. Either Python 2 or 3 can be used with the code which is also available on GitHub.
Dropbox open sourced their security Slack bot, which is built in Python. The bot converses with a user when backend systems detect strange behavior on one of their accounts to check if there has been a security breach.
Making a Reddit + Facebook Messenger Bot builds a bot for two platforms and shows how to deploy it to Heroku.
Build a Slack Bot that Mimics Your Colleagues with Python is a humorous post that uses the markovify Markov Chains library to generate responses that are similar to ones other Slack users have said.
A Slack bot with Python's asyncio shows how to connect a bot to Slack via the web API using the Python 3 asyncio standard library.
Facebook-Message-Bot is an open source Facebook Messenger bot written in Python.
Build a Reddit bot is a four part tutorial series that starts with reading posts, continues with replying to posts, automating the bot and finally adding behavior and a personality to the bot.
Bots: An introduction for developers explains the technical details of how to create Telegram bots.
Building better bots with AWS Lex: Part 1 and part 2 show how to use Amazon's service offering for better natural language processing in your bots.
Slack bot token leakage exposing business critical information is a detailed look at a search on GitHub for Slack tokens that are used mostly for bots but must be kept secret. Otherwise those tokens expose the entire Slack team's messaging to outside parties.
The Economist wrote a general piece on why bots look like they'll gain adoption in various market segments. The piece doesn't have much technical depth but it's a good overview of how some businesses are looking at the opportunity.
Three challenges you’re going to face when building a chatbot provides insightful thoughts on problems to anticipate based on the author's experience building, deploying and scaling chatbots.
Bots won't replace apps is a fantastic piece by WeChat's product manager on how text-based bots alone typically do not provide a good user experience. Instead, chat apps with automated responses, user data and basic web browser functionality are what has allowed bot concepts to bloom in Asian markets. There's a lot of good information in this post to unpack.
Principles of bot design contains some general, common-sense ideas to keep in mind when building bots such as do not pretend to be a human (because it will be quickly discovered that your bot is not a human) and keep it as simple as possible so people can actually use the damn thing.
6 things I learned creating my own Messenger chatbot contains some solid general advice for building your custom bots.