you21979の日記

実験ネタとか。仮想化とかnodejsで嵌った所とかおもしろかったところとかいろいろ

node.jsで簡単にircへメッセージ送信

https://github.com/you21979/bot-irc-notifier

 

サーバーからircにサーバー落ちたよとエラーメッセージを通知をするシステムが欲しかったので作ってみた。

ただ作るだけじゃおもしろくないのでtypescriptで作ってみたけど単純な仕組みなので

あまり型の恩恵ない。

 

さて、実装方法だがredisを使っている

なんで使っているかというと

・redisはコマンドラインから簡単にメッセージを流せる

・redisとircはどちらもチャンネルと言う概念がある

・npmにライブラリがある

 

チャンネルという共通点を生かしてredisのチャンネルにポストすればirc上の同じチャンネルにポストするようにすればチャンネルも送信時に選べるしお手軽。

(irc側は事前にチャンネルに入っておく必要があるけども) 

 

こういうシステムとシステムを繋げるのにnodeはお手軽にできるからいいね

 

↓みたいなシェルでircにポストできる

#!/bin/bash
CHANNEL="#hogehoge"
MESSAGE="テストです"
redis-cli publish $CHANNEL $MESSAGE