ChatOpsで進化するIT部門のコミュニケーション【最終回】
LINE、Facebook、MSが注目する未来型コミュニケーション「ChatOps」の仕組み(2/2 ページ)
簡単なボットを作って遊んでみよう
前半では、ボットとChatOpsの概要について解説した。後半では、実際に「指定したURLの死活監視を行う」ボットを作成してみよう。今回はチャットサービスとしてSlack、ボットフレームワークとしてHubotを用いる。
サーバ側で動作するJavaScript「Node.js」とHubotのインストール方法や、HubotとSlackの連係方法については割愛する。インターネットで検索すれば多くのチュートリアルや導入事例が見つかるので参考にしてほしい。
CoffeeScriptで書かれたボットのサンプルコードを以下に示す。シンプルなHTTPクライアントであるrequestを使い、ユーザーが指定したURLにGETメソッドを実行する。なお、[->]は関数の定義を表す。
ユーザーからボットに対するメッセージは[rebot.respond]関数を使って取得し、正規表現でURL部分を抜き出している。エラーが発生したりステータスコードが[200]以外だったりした場合はその内容を返し、アクセスできた場合は[pong]を返す。ボットからユーザーにメッセージを送る場合は[msg.reply]関数に文字列を渡すだけで良い。
request = require('request')
module.exports = (robot) ->
robot.respond(/httpings+(.+)$/i, (msg) ->
url = msg.match[1]
request(url, (error, response, body) ->
if error
msg.reply(error)
else if response.statusCode != 200
msg.reply("#{response.statusCode}: #{response.statusMessage}")
else
msg.reply('pong')
)
)
CoffeeScriptで書かれたボットのサンプルコード
サンプルコードを読むと分かるように、ボットの開発者は「URLにアクセスする」という処理部分を書くだけでよい。チャットのAPIと連係する部分はボットフレームワークが抽象化するため、ソースコードも簡潔になる。
今回はSlack上で動作させたが、ライブラリを切り替えるだけで、第2回で紹介したChatWorkやHipChatでも動作させることができる。ボットはプログラムを少し書くだけで簡単に開発することができるためぜひ試してほしい。
チャットとボットの未来
本連載では3回にわたって「チャットの歴史」「情報共有のハブ」「ビジネスシーンでの活用」「主要サービスの比較」「ボットとChatOpsの関係」というテーマを取り上げた。近年のIT企業における開発内製化の流れの中で、DevOpsやInfrastructure as Code、自動化をうまく組み合せるためにもChatOpsは必須だろう。これを機会にまずはコミュケーション手段をメールからチャットに移行してみてはいかがだろうか。
チャットを情報共有のハブとすることで、Dev(開発)、Ops(運用)、Biz(営業)のコミュニケーションを円滑にすることができるだろう。これからのチャットサービスの未来は、ボットやAI(人工知能)と連係して、より対話的にさまざまなサービスをチャット上で利用できるようになるだろう。
Microsoft Bot Frameworkでは既にCortanaが利用できるようになっており、今後はAppleの「Siri」やIBMの「Watson」での活用も近いかもしれない。自然言語でボットと会話できるようになることで、チャットやボットが人々に普及していくのは確実である。
近い将来、「ボットと会話してサービスを利用する」「チャットをサービス提供のプラットフォームとする」という時代が来るだろう。そのときChatOpsは開発現場だけでなく、皆が意識せずに実践する当たり前の考え方になっているかもしれない。
堀内晨彦(ほりうち あきひこ)
生まれも育ちも香川県。香川大学大学院 情報科出身。学生時代は研究の傍ら、勉強会やコミュニティー活動に積極的に参加し、「Hubot×ChatOps勉強会」などを主催。2016年4月からは上京し、ICT企業でクラウドエンジニアの見習い中。趣味は料理とカメラ。
Copyright © ITmedia, Inc. All Rights Reserved.
ChatOpsで進化するIT部門のコミュニケーション
この記事の著者
関連記事
新着ホワイトペーパー PR
-
製品資料
[株式会社MatrixFlow] 「物流リソース最適化」ガイド:人員・配車・傭車を出庫依頼の確定前に決めきる -
製品資料
[株式会社キーエンス] なぜRPA導入は頓挫する? シナリオ作成の壁を乗り越える解決策とは -
製品資料
[株式会社セールスフォース・ジャパン] 「CRMは設計と無関係」は本当か? PLMとの融合で実現する高速開発 -
事例
[日本ヒューレット・パッカード合同会社] AIエージェントの時代にどう備える? 「新たな働き手」を支える3要素とは -
製品資料
[日本ヒューレット・パッカード合同会社] “横並びの自動化”から脱却、AI活用で生産性と競争力を高める秘訣
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
法務と開発者で「言葉が通じない」問題 トヨタやソニーが語るOSS管理の真実
-
2
ChatGPTは“検索しまくり”でGeminiは“淡泊”? データが明かすAIの裏側
-
3
なぜ「全社配布Copilot」は使われないのか? 失敗に学ぶAI定着
-
4
損保ジャパンはなぜ「COBOL」を捨てなかったのか? 脱メインフレームの真相
-
5
肥大化した「SFA」の沼 4カ月でBigQuery×AppSheetの新システムを構築した方法
-
6
なぜ「Gemini 4 Argon」は出遅れたのか? Googleが狙う“逆転のシナリオ”
-
7
次世代RPA「ハイパーオートメーション」が急成長か Gartnerが予測
-
8
「Wi-Fi 7」経由でWindowsが乗っ取られる? 最高権限奪取の恐怖
-
9
昭和大学病院がeICUを導入、ICUの患者情報を遠隔地で一括管理
-
10
「何から始めればいい?」 情報漏えい対策で悲鳴を上げる中小企業のリアル
ホワイトペーパーランキング PR
-
1
不審メールの経路や見せ方に変化? 2026年夏の3事例から見えた動向と対処方法
-
2
家庭用Wi-Fiルーターの業務利用は危険? 避けるべき理由と具体的な対策
-
3
プログラミング不要で誰でも実現できる、ネットワーク運用管理の自動化とは
-
4
Microsoft 365を安全に運用 うっかりミスやサイバー攻撃に備えるデータ保護術
-
5
財務部門がAIを最大限に活用する方法 無駄のない戦略的リーダーシップへの道
-
6
LLMが兵器化? 元FBI高官が鳴らす警鐘とセキュリティツール統合のポイント
-
7
なぜRPA導入は頓挫する? シナリオ作成の壁を乗り越える解決策とは
-
8
HDDを使わない「SSDオンリー」が無謀なのはなぜ?
-
9
“あのファイル転送”で暗躍するノーウェアランサム
-
10
「オンプレミス回帰」せざるを得ない“合理的な理由”
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー