Slack 上でリアクションを操作ボタンとして利用して倉庫番を遊べる、 hubot-slack-soukoban を作りました。 その昔、 Hubot-slack で絵文字でアニメーションする8パズルゲームができるbotを作った という記事を書きました。 この記事では、Slackの編集をbotに叩かせまくり、Slack上で動くパズルゲームを作ったことを紹介しました。 しかしこのパズルゲームには謎のコマンド列をタイプしてbotとやり取りしなければ遊べないという弱点がありました。 そこで今回、Slackのリアクション機能で配置されるボタンを操作ボタンとして利用することで、よりプレイヤーが直感的に遊べるゲームをSlack上に実現しました。 soukoban という文字列に反応してbotがランダムに選ばれた倉庫番のマップと、操作するためのリアクションボタンを表示します。 操作法は上記画像のままです
この記事は、Pepabo Advent Calendar 2015の3日目の記事です。 昨日は私のプロンプトにランダムに絵文字を表示すると楽しい 😄 でした。 現在、 2015年12月3日の25時です!!! hubot-slackでAttachmentsを使う方法を共有します! Attachmentsとは? Attachmentsとは何か? SlackのIntegrationで見られるリッチな表示になっているメッセージです。 例えば、↓のような表示です。 通常、hubot-slackで msg.send すると簡単なテキストしか送信できませんが、 Attachmentsを使うことで↑のようなリッチなテキストを送信することができます! 対象のバージョン hubot-slackのv2系では使えていたようなのですが、v3系になってこの機能は削除されたようです。。 しかし、沢山の要望があったのか
Ansible、Vagrant、Serverspec などを用いた 「インフラのコード化」 手法について、初心者向けに解説します。
僕は妻と二人暮らしをしています。かつてはLINEを使って普段のやり取りをしていたのですが、一年ほど前からSlackを使い始めました。 Slackの良いところはハッカビリティが高いところです。Google Calendarなど他のサービスと連携することができるし、IFTTTを使って多少凝ったこともできます。 IFTTT時代 IFTTTを使えば天気予報をSlackチャンネルに流せます。 英語というのは不本意ですが、一応今日の天気はわかります。英語が読めなくてもアイコンを見れば、雨が降りそうな気がするってくらいはわかります。 しかし、しばらく運用しているうちに疑念が。 天気予報が当たらない。 IFTTTが連携している天気予報は「The Weather Channel」の情報なのですが、これが日本の気象庁の予想と違っていて全然当たらない。 ちなみにiOS8から標準の天気アプリが提供している予報もこ
はじめに こんにちは @kentana20 です。一休.comの中で自動化や開発フローの整備・改善などを担当しています。 本エントリはChatOps Advent Calendar 2015の14日目の記事です。一昨日は @treby さんが 「2015年にプライベートで作ったbotたち」 というタイトルで、趣味で作成されたBotを紹介いただきました。 今日は、 一休.com でのChatOps活用事例をいくつかご紹介したいと思います。 一休で使っているツール 一休では以下のツールを連携してChatOpsを整備しています。 比較的よくある組み合わせだと思います。 カテゴリ ツール Chat Slack Bot Hubot CI Jenkins E2Eテスト Selenium VCS GitHub Enterprise タスク管理 Redmine 一休.com でのChatOps リリース運
Goodpatch Advent Calendar 2015の11日目の記事です。 昨日は@HirokiTerashimaのiOSのUITestについてでした! 私はBot作りが好きで、休日の暇な時間によく作ってます。好きすぎて、弊社のエンジニアイベントでもBotについて話したぐらいです。 そんな私が以下のことをBotを使ってできるようにしたので、今日はその紹介をしたいと思います。 Slackからmasterへのプルリクを作成する GithubでメンションされたらSlackでもメンション付きで通知する どちらもHubotのプラグインででき、コードをほぼ書かないで済むのでプログラミングに不慣れでも簡単に導入できます! Hubotとは? 知らない方もいるかもなんで一応簡単にHubotについて説明しておきます。 HubotはNode.js製のBot実行フレームワークです。以下のように、かなり簡単
Nightmare TL;DR Slack + Hubot + Nightmare + CircleCI を利用してSlackにNewRelicのメトリクスグラフやBIレポートを投げるようにした Slackなどチャットツールとのintegrationが無いツールでもグラフを投稿出来るようにした 会社のKPIやサービスの状態をSlack上からhubotを利用して誰でも簡単に確認が出来るようになった 仕組み Slack上でHubotを呼び出す(hubot-cronで自動で稼働する) HubotがCircleCIのAPIを叩いて、rebuid CircleCI上でNightmareを利用し、NewRelicやBIツールのスクリーンショットを取得し、s3にアップロード SlackのIncoming webhooksを利用してグラフを投稿する NewRelicにログインしてスクリーンショットを取るス
Note: This guide currently works for Hubot versions up to 2.13.2. There are incompatibilities between the testing library and the async module introduced in Hubot version 2.14.0. The Cloud Control Panel team uses a fork of Github’s Hubot for a large variety of tasks. Everything from our deployment pipeline to cross team communication is integrated with with our customized version of the IRC bot. A
はじめに hubot-slack-rainfall-alert という名前でnpmに公開しました。コードはgithubに公開しています。 CoffeeScriptというかjsも殆ど書いたことがないままとりあえず作ったので手続き型っぽくて汚いです。細かいところでも pull request 大歓迎です。よろしくお願いします。→ https://github.com/takashyx/hubot-slack-rainfall-alert/ これは何? YahooのAPIを利用して、hubotに雨が降る前・止む前にSlackの指定したチャンネルに通知をしてくれる機能を追加します。 通知時には現在から60分後までの雨量のグラフ、30分後の雨雲の様子、より詳しい雨雲情報へのリンクを表示します。 cron形式でチェックするインターバルを指定できるので、夜中は動かさない、といった設定も可能です。 そのま
追記(2015/09/26): herokuのdocker-compose対応に伴ってdocker:startコマンドが無くなりました。 hubotについては書いていませんが、最新のheroku+dockerの連携方法についてはこちらの記事を参照してください。 -- 追記ここまで herokuの無料プランが1日18時間になって、どこでhubotを動かすか悩んでいる方も多いのではないでしょうか。 そこで、herokuがdockerに対応したことを利用し、herokuでもその辺のサーバでも動くhubot入りコンテナを準備したいと思います。 前提として、ローカル環境には、以下がインストールされているものとします。 docker hubot generator-hubot heroku-toolbelt 参考: Slack で Hubot を使えるようにする Docker + Yeoman + H
概要 最も気軽な形でAWSの利用料金を確認したかったので、Hubotにそれをやらせた。 HubotにAWSの利用料金を問い合わせが出来るように。 AWS CLI を使えば簡単に実現できます。 AWSの利用料金を取得する の前に、aws cliをインストールしておく必要があります。 第1回 AWS CLIをインストール aws cliを使ってcloudwatchのメトリクスで料金を取得。 jqでタイムスタンプでソートをかけ、最新の1件 だけ取得します。 #!/bin/bash aws cloudwatch --region us-east-1 get-metric-statistics \ --namespace "AWS/Billing" \ --metric-name "EstimatedCharges" \ --dimensions "[{\"Value\":\"AmazonEC2\"
しばらく見ていなかったらバージョンが進んでいたので新しい機能を確認してみた。その際のメモ。 今回確認するのは、ぼくが最後に確認した 2.11.1 から最新の 2.13.2 まで。 コミットを日時順に追いかけたのでマージされたタイミングによって順番が正しくないかもしれない。 総括 ぼくの気になったものを挙げる。 express の警告が修正された。ようやく。 Listener の引数が msg から res に変更された。 Listener に options が追加された。id などを指定できる。テストなどに有用かも。 process.env.EXPRESS_PORT / process.env.EXPRESS_BIND_ADDRESS が追加された。 endpoint URL の prefix を /hubot になるよう規約が追加された。 Hubot 自体のテストコードが増えた。 ドキ
これは Hubot Advent Calendar 2014 の 22 日目の記事です。 また、今回は @bouzuya の Hubot 連載の第 14 回です。目次は、第 1 回の記事にあるので、そちらをどうぞ。 前回まで、そして今回は 前回は いまさらだけど Hubot のドキュメントを読んでみよう ということで、Hubot のドキュメントについて紹介しました。 今回は Hubot スクリプトのテストについて紹介します。とても軽く触れるだけですが。 変にバズってぼくのリポジトリで最も多くスターがついてしまった bouzuya/hubot-twada ライクな Hubot スクリプトをつくりましょう。 ちなみに今回から generator-hubot は 0.2.0 にバージョンアップしています。連載中にどんどんバージョンアップされますね。 とりあえず grunt test いつものよう
問題 Hubot のログやロガー (Robot#logger) についての情報が少ない。 公式 (v2.11.2) のドキュメントには、かろうじて利用例が掲載されているだけで、その他の情報はざっと検索した限りでは存在を確認できない。 唯一のドキュメント: https://github.com/github/hubot/blob/v2.11.2/docs/scripting.md#error-handling # src/scripts/does-not-compute.coffee module.exports = (robot) -> robot.error (err, msg) -> robot.logger.error "DOES NOT COMPUTE" if msg? msg.reply "DOES NOT COMPUTE" 解決策 ソースコードを読み、以下にまとめる。 結論:
この記事は Hubot Advent Calendar 2014 の17日目です. Hubotで「どのコマンドにも一致しないときは雑談」というのをやりたかったので,実装してみました. 5日目の「Hubotでdocomo「雑談対話」APIを使う - “敬称”をHubotコマンドに | 半月記」をベースにしています. コマンド一覧を取得 robot.helpCommands()でコマンドの一覧を取得できます. ただしCommands:コメントから生成されてるので,説明なども含まれており,整形する必要があります. また,全てのscriptでCommands:を書いておかないと,漏れが発生してしまいます. cmds = [] for help in robot.helpCommands() cmd = help.split(' ')[1] cmds.push cmd if cmds.indexOf
これは Hubot Advent Calendar 2014 の 11 日目の記事です。 また、今回は @bouzuya の Hubot 連載の第 9 回です。目次は、第 1 回の記事にあるので、そちらをどうぞ。 前回まで、そして今回は 前回は Hubot でホームページをつくろう ということで、robot.router を使った HTTP リクエストへの応答する Hubot スクリプトをつくりました。 今回は、ちょっと違った観点で Hubot スクリプトの読み込みの流れを追いかけてみましょう。 Procfile さて Hubot はどうやって起動されているのでしょう。ここでは Heroku にデプロイされる想定で考えてみましょう。 Heroku はルートに Procfile があれば、それを見て動きを変えます (実は省略可能ですが、それは後述) 。ひとまず Procfile から追ってみ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く