Skip to content
This repository has been archived by the owner on Nov 26, 2019. It is now read-only.

Channel Slack

Floren Henri edited this page Dec 5, 2016 · 12 revisions

Set up your Slack account

alt text

Start your bot in local

Ngrok

  • Download on your computer the appropriate version of Ngrok
  • Open a new tab in your terminal:
./ngrok http 8080
  • Copy past the https://*******ngrok.io you get, you will need it for the next step
  • Leave your Ngrok serveur running

Start Connector in local

  • Clone and install Connector
$ git clone https://github.com/RecastAI/bot-connector.git
$ cd bot-connector
$ yarn install
$ yarn start-dev
  • Create your bot
$ curl -X POST "http://localhost:8080/bots/" --data "url=YOUR_BOT_URL"
  • Create your channel
$ curl -X  POST \
  --data "slug=YOUR_BOT_SLUG" --data "isActivated=true" --data "type=slack" \
  --data "token=YOUR_SLACK_TOKEN" "http://localhost:8080/bots/:bot_id/channels"

Your bot

  • A small example of bot:
 import express from 'express'
 import bodyParser from 'body-parser'
 import request from 'superagent'
 
 const app = express()
 app.set('port', process.env.PORT || 5000)
 app.use(bodyParser.json())
 
 const config = { url: 'http://localhost:8080', botId: 'yourBotId' }
 
   /* Get the request from the connector */
 
   app.post('/', (req, res) => {
     const conversationId = req.body.message.conversation
       const messages = [{
         type: 'text',
         content: 'my first message',
       }]
 
     /* Send the message back to the connector */
     request.post(`${config.url}/bots/${config.botId}/conversations/${conversationId}/messages`)
       .send({ messages, senderId: req.body.senderId })
       .end((err, res) => {
         if (err) {
           console.log(err)
         } else {
           console.log(res)
         }
       })
   })
 
 app.listen(app.get('port'), () => {
   console.log('Our bot is running on port', app.get('port'))
 })
Clone this wiki locally