無限ループビルダーズ @ zohyo meetup #3

Post on 17-Jan-2017

1.198 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

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