Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/slackapi/build-this-bot-workshop
Learn how to build a bot on Slack using Python
https://github.com/slackapi/build-this-bot-workshop
Last synced: 15 days ago
JSON representation
Learn how to build a bot on Slack using Python
- Host: GitHub
- URL: https://github.com/slackapi/build-this-bot-workshop
- Owner: slackapi
- License: mit
- Created: 2016-12-08T02:03:33.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2020-02-15T05:02:06.000Z (about 5 years ago)
- Last Synced: 2025-01-30T14:22:40.598Z (21 days ago)
- Size: 78.1 KB
- Stars: 128
- Watchers: 15
- Forks: 57
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Code of conduct: .github/CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# Build This Bot
I want you to build a bot. This bot. Build this bot.
## You want me to _what?_
Have you ever wanted an automaton to call your own? The intent of this project is to make that dream a reality by guiding you through the ins and outs of bot building on Slack.
## But _why?_
Once upon a time in a galaxy far far away, a team called Tiny Speck built a tool to communicate with each other as they worked. They felt frustrated by the amount of mindless repetitive tasks that slowed down their communication and productivity. As avid consumers of Sci-Fi and generally against things that made them frustrated, the Tiny Speck team built a special user in their messaging app: a digital user or a bot.
Instead of forcing the intern to do these mindless tasks, they delegated these responsibilities to their new bot user and integrated the other apps they used into their conversations.Eventually this communication tool became known as Slack, and their digital user, Slackbot.
Now you too can build a Slack Bot and free up yourself, your fellow coworkers, and even the customers using your products and services, so we can all get back to what we really should be doing; _~~sleep~~_ **work!**
## Let's get started :tada:
First you'll want to clone this project locally. This project is structured with different branches for different stages of the workshop, so you can add your own code and follow along. If you happen to run into a bug or get stuck and we're moving on you can check out the next branch and you won't be left behind. :fist:
At each step, feel free to ask questions in the _#help_ channel, or ask your neighbor if they can help! :raised_hands:
To get started, check out the first branch
```bash
git checkout chapter-1
```If you'd like to follow along without any of the code, all of the documentation for each chapter is located in the `docs` folder in the `master` branch.
* **[Chapter 1: Setting Things Up](docs/Chapter-1.md)** :point_left:
* [Chapter 2: OMG OAuth](docs/Chapter-2.md)
* [Chapter 3: Handle Hello with Class](docs/Chapter-3.md)
* [Chapter 4: Message Buttons Magic](docs/Chapter-4.md)
* [Chapter 5: ABCs of NLP](docs/Chapter-5.md)## Further Reading and Getting Help
### Documentation
##### Slack Documentation
* [Getting started with Slack apps](https://api.slack.com/slack-apps?utm_source=events&utm_campaign=build-bot-workshop&utm_medium=workshop)
* [Slack Events API documentation](https://api.slack.com/events?utm_source=events&utm_campaign=build-bot-workshop&utm_medium=workshop)
* [Slack Web API documentation](https://api.slack.com/web?utm_source=events&utm_campaign=build-bot-workshop&utm_medium=workshop)##### Documentation for Tools
* [virtualenv](https://virtualenv.pypa.io/en/latest/userguide/)
* [flask](http://flask.pocoo.org/)
* [python-slackclient](http://python-slackclient.readthedocs.io/en/latest/)
* [Slack Events Adapter](https://github.com/slackapi/python-slack-events-api)
* [ngrok](https://ngrok.com/docs)
* [postman](https://www.getpostman.com/docs/)### Where to Find Help
Wondering what to do if you can't get this dang tutorial to work for you?
The Slack Developer community is an awesome place to get help when you're confused
or stuck. We have an excellent 'search first' culture and Slack is committed to
improving our tutorials and documentation based on your feedback. If you've
checked the [Slack API documentation](https://api.slack.com/?utm_source=events&utm_campaign=build-bot-workshop&utm_medium=workshop), reached the end
of your google patience and found [StackOverflow](http://stackoverflow.com/questions/tagged/slack-api)
to be unhelpful, try asking for help in the [Bot Developer Hangout](http://dev4slack.xoxco.com/)
Slack team.### Feedback
I'd love to improve this project, so if you've got some ideas :bulb:, feedback
:raising_hand: or praise :love_letter: please file an issue, submit a PR or
reach out to me through [Github](https://github.com/karishay) or on
[Twitter](https://twitter.com/karishannon)!If you want to keep up with Slack platform updates chat with us on [Twitter](https://twitter.com/slackapi).