4 ms·
How to Build a Slack Bot with Python
- llimllib 10y agoVery nice! I maintain a simple python slack RTM chatbot framework that's desgined to handle the small amount of setup for you and let you build what you want to quickly: https://github.com/llimllib/limbo https://github.com/llimllib/limbo
- makaimc 10y agoVery cool, I hadn't previously seen Limbo. I added a link to it on the otherwise empty Full Stack Python Bots page: https://www.fullstackpython.com/bots.html https://www.fullstackpython.com/bots.html If you're in SF or traveling here sometime soon, you should definitely present this at the SlackDevs meetup where a bunch of us API users get together each month: http://www.meetup.com/SlackDevs/ http://www.meetup.com/SlackDevs/
- llimllib 10y agoThanks! I'm 3000 miles away in Maine, but I'll stop by if I'm in town :)
- dylanbfox 10y agoGood walk through. Have you looked into using platforms like Microsoft's LUIS, API.AI, or Wit.AI to extend the NLP?
- makaimc 10y agoI wanted to keep this blog post as simple as possible so even beginner Python devs could get through it in one short sitting. However, it's definitely possible to integrate the command processing piece with backend APIs. I'd first try using the TextBlob library before an external service though: https://textblob.readthedocs.io/en/dev/ https://textblob.readthedocs.io/en/dev/ My colleague Rob also wrote a post that uses TextBlog with a similar bot-type application over SMS: https://www.twilio.com/blog/2014/06/using-natural-language-processing-for-better-sms-interfaces-using-twilio-and-pythons-textblob.html https://www.twilio.com/blog/2014/06/using-natural-language-p...
- lifeisstillgood 10y agoIs slack actually big enough now to be a platform? Is it a B2B platform ? While this is a nice "how to use Python" my mind tends to wonder back to the old days of "let's make a IRC bot to do X and ... Profit" Just wondering if anything has really changed, (that was not a successful venture) even in a world of hubot and scrums X is something most people don't really need, for any value of X I can think of
- iamdave 10y agoI'd say it is. Just from the world of Unified Communications-where I work daily-I have had conversations with clients and customers who already use Slack in their dev teams and some of those clients even have people internally who forego our conferencing services completely and use UberConference because they have Slack integrations. It's an area I watch very closely, but my company-I'm sad to say is slow to move on.
- nikolay 10y agoI dream from a fully asyncio-compliant stack. So far, even those that claim to be async, still use the sync client [0]. This one [1] is highly underutilized. [0]: https://github.com/jcarbaugh/butterfield/issues/17 https://github.com/jcarbaugh/butterfield/issues/17 [1]: https://github.com/gfreezy/slacker-asyncio/ https://github.com/gfreezy/slacker-asyncio/
- greut 10y agoWith `aiohttp` you don't need to do much to build your bot using `asyncio`. Here, see a sample bot to vote on stuff and one article explaining the gist of it: - https://github.com/HE-Arc/votebot https://github.com/HE-Arc/votebot - https://medium.com/@greut/a-slack-bot-with-pythons-3-5-asyncio-ad766d8b5d8f https://medium.com/@greut/a-slack-bot-with-pythons-3-5-async... This is a sample project for a course on Python, in you find a mix of french/english...
- stuartaxelowen 10y ago`await`replaces most of those `yield from`s in 3.5, right?
- sciurus 10y agoIf you're looking for a full-featured bot framework for python that supports slack, check out http://errbot.io/en/latest/ http://errbot.io/en/latest/