無限ループビルダーズ @ zohyo meetup #3
Post on 17-Jan-2017
1.198 Views
Preview:
TRANSCRIPT
無限ループビルダーズ@ara_ta3
わたし• 新卒2年目が終わりそう・・・
• あどてく系のえんじにゃー
• Scala, JavaScript, PHP, その他色々
• Twitter : @ara_ta3
• Darkっていうだいたい新卒コミュニティやってます
• 最近ドラクエビルダーズ #DQB にはまってます。
• イケニエと雪のセツナ買いました。
わたし ドラクエビルダーズ #DQB
https://twitter.com/ara_ta3/status/698835396780666880
_人人人人人_ > hadoop < ‾Y^Y^Y^Y‾
伝説のビルダーはhadoopも作れる。 だから無限ループも作れる
わたし - Dark?
• だいたい新卒の闇(?)コミュニティ
• だいたいの定義はない
• botで色んな機能作って遊んでます
• ChatOps的なこと?
わたし - Dark?
• 色々あって、Slack上で無限ループできたので
• 今日はその方法と有用性について紹介します!!()
背景• Darkのbotについて
• 2体います
• dark - hubot製
• 私管理
• ray - ruboty製
• ある参加メンバー管理
背景• Darkのbotについて
• 2体います
• dark - hubot製
• 私管理
• ray - ruboty製 <- このbotの話
• ある参加メンバー管理
ray(ruboty)の紹介
• 彼すごいんです
• 雑談できる!(ruboty-talk)
• rubyコマンドが使える(ruboty-ruby)
ray(ruboty)の紹介
• ruboty-talk plugin
_人人人人人_ > なんかうざい <
‾Y^Y^Y^Y‾
※個人の感覚によります
• ruboty-ruby plugin
ray(ruboty)の紹介
• ruboty-ruby plugin
ray(ruboty)の紹介
_人人人人人人人人人人人人_ > 名前の割に闇感すごい < ‾Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y‾
ray(ruboty)の紹介
• 突然ですが、rubyでシェルを実行する場合
• `でくくるとシェルコマンドになるんですね。
• ruboty-ruby plugin
ray(ruboty)の紹介
( ゜д ゜)
rubotyの特性• hubotと違って、ユーザ扱い
• botメッセージによっても呼び出し可能
• 例
• hubot echo ray echo hoge
• ray echo ray echo hoge
rubotyの特性• hubotと違って、ユーザ扱い
• botメッセージによっても呼び出し可能
• 例
• hubot echo ray echo hoge
• ray echo ray echo hoge
_人人人人人人人人人人人人人人_ > 無限ループ出来そう!!! <
‾Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y‾
実践 - 無限ループ
• 再帰的に処理が出来そうです。
• ただ、再帰処理をするためには処理に名前をつける必要がありますよね
• そこで、ruboty alias というのがあるらしい。
実践 - 無限ループ
• つまらない!!!!!
• もっと壮大な何か愉快な感じに無限ループして欲しいんだ!
• aliasでは一つのことしか出来ない
• 単純なループ処理しか出来ない
そこでincoming webhookですよ
雑な図
script#!/bin/sh
sleep 1 test -f ./loop.sh || curl -o loop.sh -s https://gist.githubusercontent.com/ara-ta3/fa468a312d0098c01ada/raw/loop.sh curl -s https://gist.githubusercontent.com/ara-ta3/fa468a312d0098c01ada/raw/something.sh|sh > /dev/null curl -X POST --data-urlencode 'payload={"channel": "#bot_heaven", "text": "ray ruby `sh ./loop.sh`"}' ${SLACK_WEBHOOK} > /dev/null
https://gist.github.com/ara-ta3/fa468a312d0098c01ada
loop.sh
something.sh
#!/bin/sh
curl -X POST --data-urlencode 'payload={"channel": "#bot_heaven", "text": "ray echo dark poem"}' ${SLACK_WEBHOOK} > /dev/null
DEMO
• dark poemの無限ループ
• dark poem
• -> オサレなポエムを流してくれるbotの機能
まとめ• Slackでrubotyを使うと無限ループが出来る
• (正しくはruboty ruby plugin)
• 何の意味があった?
• 意味はありません。夢があります。
• aliasよりincoming webhookを利用したほうが汎用的にいろんなことが出来る!
• 無限猫画像・無限ポエム
• いかがわしい画像とか出た時のkskに使えそう
• 無課金だと過去のメッセージガンガン減っていくから注意
ご静聴ありがとうございました
top related