Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Hubotで遊ぶ

3,025 views

Published on

NodeSchool International Day in Tokyo

Published in: Technology
  • Be the first to comment

Hubotで遊ぶ

  1. 1. Hubotで遊ぶ @treby006
  2. 2. About Me ● Hiroaki Ninomiya ○ Twitter: @treby006 ○ GitHub: treby ○ Blog: http://blog.spacemarket.com/author/treby/ ● Railsエンジニア ● マイブーム:botと話すこと
  3. 3. 話す内容 ● node上で動くHubotを使ってbotを作ってみま す。 ○ Hello, World!!程度でコードはほぼ書きません。
  4. 4. Hubot
  5. 5. どんなことができるか ● ソーシャルのウォッチ(サービス名など) ○ 発見したらチャットに流す ● 定期的に何か発言 ● Chat上でbotとやりとり ○ Chat ops ● etc
  6. 6. 仕組み Adapter (I/O) brain (永続化) scripts (botコード) scaffolding (土台生成) APIなど
  7. 7. Hubotの要素 ● script ○ 実際のbotのコード ○ npm用のパッケージ化して再利用とかも ● brain ○ データの永続化用途 ● adapter ○ 実際にチャットとのやりとりをカプセル化
  8. 8. Adapterの種類 ● https://github.com/github/hubot/blob/master/docs/adapters.md ● 公式 ○ Shell ○ Campfire ● サードパーティ ○ Slack ○ Chatwork ○ Twitter ○ etc
  9. 9. ハンズオン
  10. 10. Hubotインストール
  11. 11. Yeomanでscaffolding
  12. 12. 実行!
  13. 13. 遊んでみる デフォルトでいろいろ入っています。
  14. 14. 予め用意されたスクリプト ● external-scripts.jsonで明示的に指定 ○ hubot-diagnotics …… pingとかechoとか ○ hubot-help ○ hubot-pugme …… パグの画像くれる ○ hubot-rules …… ロボット三原則とかApple三原則とか 教えてくれる ● 必要に応じて削ること推奨 ● 自分のスクリプトはscripts/*.coffeeに記述
  15. 15. 簡単なインタラクション
  16. 16. Adapterを変える ● 例えば、twitterのなら以下のように ○ npm install hubot-twitter --save ○ external-scripts.jsonに追記 ■ hubot-twitter ○ もしくはscaffoldingでadapterにtwitterを指定 ● さらにAPI用の環境変数が必要な場合もあり ● → これで様々なチャットサービスにbotを住まわ せることができます!
  17. 17. 作ったもの (1) ● プロ生ちゃんbot ○ @pronama_bot ○ プログラミング生放送勉強会に合わせて作ったもの ○ 定期発言botと化してる…… ○ https://github.com/treby/pronama-bot ● border bot ○ @mlborder (インタラクション部分) ○ ソシャゲーの現在のランキング情報を教えてくれる
  18. 18. 作ったもの (2) ● Twitter検索結果をSlackに流す(社内用途) ○ slack adapter ■ https://github.com/slackhq/hubot-slack ○ twitter search ■ https://github.com/estiens/hubot-twitter-mention-v2 ○ キーワードに引っかかるツイートをSlackでお知らせ ○ 詳しくはWebで! ■ http://blog.spacemarket.com/code/twitter-watch-hubot-for-slack-on-heroku/ ■ https://github.com/spacemarket/twitter-watch-hubot
  19. 19. おしまい ● Happy Hacking!!

×