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.

業務で使うIRC

12,772 views

Published on

Published in: Software
  • Be the first to comment

業務で使うIRC

  1. 1. 業務で使うIRC 2013-06-12 onozaty
  2. 2. IRC
  3. 3. IRC Internet Relay Chat(インターネット・リ レー・チャット、略称 : IRC)とは、サー バを介してクライアントとクライアントが 会話をする枠組みの名称である。文章のみ をやり取りして会話を行い、DCCなどを利 用することでファイル転送も対応する。 Internet Relay Chat – Wikipedia
  4. 4. IRC すなわち、ネットワーク上で、複数人がテ キストで会話(+ファイルの転送)するため のシステム。 複数人におけるリアルタイムコミニケー ションをとるのにとても有用なツールであ る。
  5. 5. IRC メッセージ メッセージ入力欄 JOINしている メンバ一覧 JOINしている チャンネル一覧 いま表示している チャンネル
  6. 6. 業務におけるIRC
  7. 7. 業務におけるIRC プロジェクト内のコミニケーションツール として有用 • 近くにいない人とも簡単に会話。(ネットワーク がつながっていれば) • リアルタイムにやりとりができるので、物事を 早く進めやすい。(同じテキストでも、メールで のやり取りで時間かかるのは面倒…) • 拘束されずらい。(IRCで会話しながら、他の作 業やったり、忙しいときは後で返事とか)
  8. 8. 業務におけるIRC プロジェクト内のコミニケーションツール として有用 • 会話がオープンなところで行われるので、いろ いろな人の意見を聞きやすい。 • 情報共有しやすい。(他の人たちの会話から何か 得られたりとか)
  9. 9. 導入方法
  10. 10. とても簡単 ※詳しくはWEBで
  11. 11. 導入方法 1. IRCサーバを用意する オープンなものであるならば、freenode などの ようなインタネット上のIRCサーバーネットワー クを利用できるが、業務で使うとなると、閉じた ネットワーク内にサーバを構築するような形とな る。
  12. 12. 導入方法 1. IRCサーバを用意する フリーのサーバはいくつもあり、構築も簡単。 • ircd-hybrid Linuxの多くのディストリビューションで利用可能 >& sudo yum install ircd-hybrid • InspIRCd Windowsでも動くIRCサーバー Windows版はインストーラーあり
  13. 13. 導入方法 2. クライアントをインストールする サーバーに接続するためのクライアントソフトが 必要。 プロトコルがオープンであり、さまざまなクライ アントが存在するが、その中でもLimeChatが秀逸。 Linux上で動作するものや、ブラウザに組み込まれ たクライアントもあり。
  14. 14. 導入方法 2. クライアントをインストールする 設定内容などを統一するためにも、動作環境の違 いによる制約がなければ、クライアントは統一し ておいた方がよい。 LimeChatを使っておけば間違いなし。
  15. 15. 導入方法 3. クライアントからサーバに接続する クライアントにサーバの情報と、自分自身のニッ クネーム(他の人が見てわかる 名前)を設定し、サーバに接続。 使用する文字コードは、各メン バであわせておかないと、お互 いのメッセージが文字化けする ことになるので要注意。
  16. 16. 導入方法 4. チャンネルにJOINする チャンネルにJOINして、メッセージのやり取りを 行う。 チャンネルに対して送信したメッセージは、その チャンネルにJOINしているメンバ全員が目にする ことなる。
  17. 17. 導入方法 4. チャンネルにJOINする メッセージ メッセージ入力欄 JOINしている メンバ一覧 JOINしている チャンネル一覧 いま表示している チャンネル
  18. 18. よくある誤解
  19. 19. よくある誤解 Q. チャットって聞くと、遊んでいるように みえるけど A. 使い方次第です 複数人によるリアルタイムコミニケーションを取 るのに有用なツールなので、仕事でも遊びでも活 用可能。 実際、多くのOSSコミニティで、当たり前のよう にIRCが利用されている。 また会社内での利用例も多々あり。Google検索:社内IRC
  20. 20. よくある誤解 Q. チャットをずっと見ていたら仕事になら ないんじゃない? A. ずっと見ている必要はありません 気になった時に見ればよい。 また、常に見ていることを強要すべきではなく、 あくまでコミニケーションの補助ツールととらえ るべき。
  21. 21. IRCですべてを解決し ようとしない
  22. 22. IRCですべてを解決しようとしない チャットにログインしているからといって、 チャットを見れる状況であるとは限らない。 チャットで反応をもらえないならば、直接 話(または連絡)をすべき。 チャットを見ていない=悪としてはいけな い。
  23. 23. IRCですべてを解決しようとしない チャットでの議論が収集つかないならば、 面と向かって話をした方が良い。(テキスト だけだと、相手に対して意図しない印象を あたえかねない場合もあり) あくまでコミニケーションの 補助ツールとしてとらえるべ き。※重要なので大きく記載
  24. 24. 運用に関するTips
  25. 25. 運用に関するTips 1. チャットクライアントがPC起動時に立ち 上がるようにしておく スタートアップにクライアントの起動を設定して おくことにより、チャットへの参加し忘れを防ぐ ことができる。
  26. 26. 運用に関するTips 2. LimeChatのキーワード設定&バルーン 表示 LimeChatにて、自分の名前や、自分に関係するよ うなキーワードを設定しておくことにより、その キーワードを含む発言があった場合に、ハイライ トして表示させることができる。 これにより、関係する発言を見逃しずらくなる。
  27. 27. 運用に関するTips 2. LimeChatのキーワード設定&バルーン 表示 タスクバーが点滅 キーワードに一致する 部分がハイライト チャンネルもハイライト
  28. 28. 運用に関するTips 2. LimeChatのキーワード設定&バルーン 表示 また、バルーン表示により、常にクライアントを 開いておかなくても、IRCでの発言を眺めること ができる。 参考: LimeChatのキーワード設定とバルーン表示で、チャット(IRC)を効率 よく使う - Enjoy*Study
  29. 29. 運用に関するTips 3. プライベートメッセージ禁止 IRCではユーザに対してプライベートメッセージ を送ることができるが、プライベートメッセージ だと他の人が見ることができないので、情報共有 の妨げになる可能性がある。 何が有用な情報なのかは、個人で判断つかないこ とが多いので、仕事に関するやり取りでは、プラ イベートメッセージを禁止にしてみるのも、情報 共有を促進させるための手段かも。
  30. 30. IRCに情報を集約する
  31. 31. IRCに情報を集約する IRCにさまざまな情報を流すことにより、自 分から情報を取りにいくようなこともなく、 プロジェクトの状況を知ることができる。 たとえば、RedmineやTracなどのチケットが登録 されたことや、CIでのテスト結果、Subversionや Gitなどのコミットの情報をIRCに流すことにより、 プロジェクトの変化を簡単に知ることができる。
  32. 32. IRCに情報を集約する IRCと連携して、IRCに情報を流すための 様々なツールが存在し、それらを組み合わ せることにより、IRCの幅が広がる • IRC Plugin - Jenkins - Jenkins Wiki • YappoLogs: App::Ikachan - 様々なサーバの バッチ処理の結果等を IRC のチャンネルに通知 するサーバ • IRCbot Console 他にもたくさんあり
  33. 33. IRCbot Console
  34. 34. Author: onozaty
  35. 35. IRCbot Console IRCbot Consoleは、ブラウザから操作でき る多機能なIRCボット。 • http://www.enjoyxstudy.com/ircbotconsole/ ※IRCボットとは、IRCにログインして、発言に自動応答 したり、定期的に発言するようなプログラム
  36. 36. IRCbot Console 下記のような機能を持っている。 • 各種設定を全てブラウザ上から操作可能 • RSSの新着エントリをIRCにメッセージとして送信 • 一定周期や決まった時間にIRCにメッセージを送信 • IRC上の発言に対してメッセージを返信 • HTTPリクエストを受け付けて、IRCにメッセージ を送信 • ログを収集し、ブラウザ上で参照可能
  37. 37. IRCbot Console JavaScript(Rhino)で各処理を書けるので、 いろいろなことができる。 ※RhinoはJavaで作られたJavaScriptエンジンで、 JavaScriptからJavaのAPIなどを使用することもできる
  38. 38. いろいろな使い方
  39. 39. 始業/昼休み/終業時間を通知 始業時間や昼休み、終業時間をIRCで通知す ることにより、チャイムがわりに。 IRCbot Consoleでは、決められた時間にIRC上に メッセージを流すことができる。 また、単純なメッセージだけでなく、他のWEB サービスから取得した情報を流すようなこともで きる。 たとえば朝の始業時間には、天気予報を流すなど。
  40. 40. Redmine上での活動をIRCで通知 Redmineでの活動(チケット登録/変更、コ ミット情報など)を、IRCに流すことにより、 プロジェクトの動きを簡単に知ることがで きる。
  41. 41. Redmine上での活動をIRCで通知 IRCbot Consoleでは、RSSのURLを登録するだけ で、新着エントリをIRC上に流すことができる。 Redmineではプロジェクトの活動をRSSとして配 信しているので、その情報を活用。(他のシステム でも活用 できる はず)
  42. 42. チケット番号を拾って、その内容を通知 Redmineのチケット番号が発言に含まれて いたら、そのチケットの内容を通知する。 これにより、そのチケットが何のチケット なのか、いちいちRedmine上で確認しなく ても済む。
  43. 43. チケット番号を拾って、その内容を通知 IRCbot Consoleでは、メッセージ内容を受け取っ て、スクリプトを実行することができる。 これを利用し、メッセージの中から、Redmineの チケット番号を抽出し、RedmineのREST APIを 使って、チケット内容を取得。
  44. 44. 抽選により掃除当番を決める IRCbotによる厳選な抽選により、掃除当番 を決める。 担当を決める手間がなくなり、また不公平 感がなくなる。
  45. 45. 抽選により掃除当番を決める IRCbot Consoleの周期実行にて、スクリプト (JavaScript)を書くことができるので、それを 使って、ログインユーザの一覧から、ランダムに ユーザを 決定する。
  46. 46. 他にもいろいろできる • 土日の22時には、遅くまでお疲れ様と、終電案 内。 • JenkinsのJob結果を、Jobが実行された時間(人 がいない時間)ではなく、朝、みんながそろった くらいの時間に通知 • JOINしてきた人になると(オペレーション権限) を自動付与 などなど
  47. 47. 最後に
  48. 48. 最後に ちょっとでもいいかなと思った方は、ぜひ IRCをお試しください。 あわせて、IRCbot Consoleをご利用くださ い。
  49. 49. おわり ご静聴ありがとうございました。

×