Slack

An Introduction To Integrations

What Is Slack?

"Team Communication for the 21st Century"

  • Channels/Private Channels
  • Direct Messages
  • Drag & Drop to share pictures/documents/spreadsheets ect.

What Makes Slack Special?

Custom Integrations

  • Bots
  • Incoming Webhooks
  • Outgoing Webhooks
  • Slash Commands

Cheesebot

Posts gifs of cheese...

Bots

Generate Token and Customize

Botkit

var Botkit = require('Botkit');

var controller = Botkit.slackbot();

var bot = controller.spawn({
  token: my_slack_bot_token
})

bot.startRTM(function(err,bot,payload) {
  if (err) {
    throw new Error('Could not connect to Slack');
  }
});

Starting A Bot

// reply to @bot hello
controller.on('direct_mention',function(bot,message) {

  // reply to _message_ by using the _bot_ object
  bot.reply(message,'I heard you mention me!');

});

// reply to a direct message
controller.on('direct_message',function(bot,message) {

  // reply to _message_ by using the _bot_ object
  bot.reply(message,'You are talking directly to me');

});

Receiving/Responding To Messages

Incoming Webhook

Select Channel

Post To Generated Url



{
    "text": "This is the text of the message.",
    "username": "webhook",
    "icon_emoji": "eyes",
    "channel": "#general"
}

Outgoing Webhook

Data Sent To Url

Slash Command

Choose Command Name

Designate Url To Request

Customize Command

Web Api

Third Party Apps

Go Forth And Be Productive

Made with Slides.com