슬랙과 허봇을 협업하기 위해
Hubot 프로젝트 준비(Mac)
Hubot 설치
쉘$ npm install -g yo generator-hubot
Hubot 프로젝트 만들기
쉘$ mkdir mybot(プロジェクト名)
$ cd mybot
$ yo hubot
# 今回は Slack と連携したいので Bot adapter には slack を指定
slack bot 준비
슬랙으로 적절한 팀 준비
$ npm install -g yo generator-hubot
$ mkdir mybot(プロジェクト名)
$ cd mybot
$ yo hubot
# 今回は Slack と連携したいので Bot adapter には slack を指定
슬랙으로 적절한 팀 준비
슬랙에서 hubot을 사용하도록 설정
발견되면 설치하고 이름을 설정 (이번에는 mybot)
Heroku 설정
터미널에서 Heroku를 조작하기 위한 준비
$ heroku login
Heroku에 응용 프로그램 만들기
쉘
$ heroku create app_name
Creating app_name... done, stack is cedar-14
https://app_name.herokuapp.com/ | https://git.heroku.com/app_name.git
Git remote heroku added
# ちなみに heroku 上でユニークな名前じゃないといけないっぽい
$ git remote -v
heroku https://git.heroku.com/app_name.git (fetch)
heroku https://git.heroku.com/app_name.git (push)
Heroku config 추가
쉘
$ heroku config:add HUBOT_SLACK_TOKEN=xxx
# slack の token を設定する(上で発行された API token)
$ heroku config:add HUBOT_CHATWORK_ROOMS="room_id"
# slack で hubot を参加させたい room id を設定
$ heroku config:add TZ=Asia/Tokyo
# タイムゾーンを日本に設定
Heroku가 일어나는 시간을 스케줄러로 설정
keep-alive 설정
쉘
$ npm install hubot-heroku-keepalive --save
$ heroku config:set HUBOT_HEROKU_KEEPALIVE_URL=https://app_name.herokuapp.com/
# Process Scheduler と合わせて wakeup time と sleep time を設定する
$ heroku config:add HUBOT_HEROKU_WAKEUP_TIME=7:00
$ heroku config:add HUBOT_HEROKU_SLEEP_TIME=24:00
Heroku에 배포
bot가 할 일
script/notice.coffee
cronJob = require('cron').CronJob
module.exports = (robot) ->
new cronJob('0 0 * * * *', () =>
date = new Date()
hour = date.getHours()
envelope = room: process.env.HUBOT_CHATWORK_ROOMS
robot.send envelope, "#{hour} 時です。"
).start()
배포
$ git push heroku master
결과
참고
Reference
이 문제에 관하여(슬랙과 허봇을 협업하기 위해), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/kasaharu/items/1ebff41920f7f71583cd텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)