Build your own robot

Who?

Christoffer Niska

CTO at Nord Software

Full-stack developer

Why build a robot

  • Minimize overhead
  • Adds transparency
  • Automate workflow
  • Because it's fun

What is Hubot?

  • Scriptable chat client
  • Robot framework
  • Written in CoffeeScript
  • Built at GitHub

Architecture

  • Robot
  • Brain
  • Adapters
  • Messages

Adapters

  • Flowdock, HipChat, IRC, Partychat, Talker, Twilio, Twitter, XMPP, GTalk, Yammer, Skype, Jabbr, iMessage, Hall, ChatWork, QQ, AIM, Slack, Lingr, Gitter, Typetalk, Fleep, Let's Chat
  • Custom adapters

Scripts

  • External scripts
  • Hubot scripts

Demo time

  • Bootstrap project with generator-hubot
  • Run Hubot locally
  • Add some scripts
  • Deploy to Heroku

My robot, Acolyte

  • Chat bot for Twitch.tv
  • Does everything from performing searches to remembering things
  • Hosted on Heroku
  • Data persistence via Redis Cloud
  • Available at http://acolyte.io
  • Open-source, code available at http://github.com/crisu83/acolyte

Best practices

  • Project structure
  • Adapters
  • Scripting
  • Routing

Questions?

Thank you.

Email christofferniska@gmail.com

GitHub http://github.com/crisu83

Twitter @Crisu83

Build your own robot

By Christoffer Niska

Build your own robot

  • 572