昔からテキストチャットシステムといえばIRC[1]と言われていましたが、私自身は利用したことがありませんでした。[2]
というのも、「設定が難解そう」「チャットなんてここ数年利用していないし、億劫だ」という思いがあったからです。
しかし、TwitterをIRCから利用できるツール群が整備されていることを知ってからは「チャットだと尻込みしてしまうけど、Twitterなら」と考えが変わりました。ここでは[3]Windows上でIRCを使ってTwitterを利用する方法をまとめてみます。
なにぶんIRCを本格的に使い始めるのが初めてですので、間違った記述、あるいはもっと効率よくできるのに・・・という方法があるかもしれません。その際はコメント欄で指摘していただけるとありがたいです。
利用させていただいたツール
- TwitterIrcGateway (通称: TIG)
- LimeChat (IRCクライアント)
IRCを利用することのメリット・デメリット
IRCを利用することで生じるメリットとデメリットをあげてみます。
メリット
- IRCサーバへ接続できる環境からなら、どこからでも利用できる
- IRCからTwitterを利用するには当然ながらIRCサーバが必要となります。が、それになりすましてくれるツールを利用するため、インターネットに接続できる環境が整っているデバイスからはどこからでもサーバにアクセスし、IRC経由でTwitterできるようになります。
- 表示方法を思いのままにカスタマイズできる
- 今回利用させていただくLimeChatはカスタマイズが豊富で、文字色やフォントはもちろん、特定の動作に対してサウンドをならすことも可能です。IRCクライアント自体は無数にありますので、自分の好みにあったクライアントを利用することが出来ます。
デメリット
- セキュリティ上の不安
- 外部にサーバを公開する場合、ポートを解放するためセキュリティー上の不安が多少残ります。防護策が十分でない場合は安易に外部からアクセスできる状態にすべきではないと思われます。
- 表示がシンプル
- Twitter専用のクライアントではないため、アバターの表示機能やアイコン通知機能などはありません。テキストのみとなります。派手さを求めるなら専用のクライアントを使った方が良さそうです。
ツール類のダウンロード・インストール
TwitterIrcGateway
TwitterIrcGatewayのページ中程にある「TwitterIrcGateway-2.0.3451.29063.zip」をダウンロードします。ZIP形式なので、解凍して適当な位置に展開します。私の場合、以下の位置に展開しました。
C:\Users\Windows 7\Downloads\TwitterIrcGateway-2.0.3451.29063
LimeChat
LimeChatのページ右上にある「LimeChat 2.34 インストーラ形式」をダウンロードします。インストーラ形式なので、デフォルトインストール先は以下のようになるはずです。
C:\Program Files\LimeChat2\
TwitterIrcGateway.exe.configの修正
TIGの起動には.NET Frameworkが必要です。TIGのBinフォルダ内の「TwitterIrcGateway.exe」をダブルクリックしても何も起こらない、もしくはエラーメッセージが出る場合、.NET Frameworkをインストールしてください。
「TwitterIrcGateway.exe」が起動していない状態でBinフォルダ内の「TwitterIrcGateway.exe.config.sample」を「TwitterIrcGateway.exe.config」にリネームし、手持ちのテキストエディタで開きます。私は以下を修正しました。
タイムライン取得間隔の設定(16行目~18行目)
<setting name="Interval" serializeAs="String">
<value>90</value>
<value>45</value>
</setting>
記事執筆時現在のTwitterのAPI制限は1時間当たり150回までとなっています。極端に取得間隔を短くすると「(400) Bad Request」エラーが返って来やすくなりますのでご注意を。
文字コードの設定(19行目~21行目)
<setting name="Charset" serializeAs="String">
<value>ISO-2022-JP</value>
<value>UTF-8</value>
</setting>
設定が完了したら上書き保存し、終了します。そしてTwitterIrcGateway.exeをダブルクリックします。
TIGがタスクトレイに常駐し、IRCサーバが起動した旨のメッセージが表示されれば、正常に動作しています。
LimeChatのセットアップ
インストーラ形式の場合、スタートメニューにLimeChatが登録されていますので、そこから起動します。このようなダイアログが出たら、今回は「自分で設定をする」を選択します。
ウィンドウが立ち上がったらサーバメニューの「サーバを追加」(キーボードショートカット派の方はCtrl+Qキー)をクリックします。
設定画面が表示されたら次のように設定していきます
- 設定名
- お好みで。ここではtwitterに。
- ホスト名
- TIGを経由してTwitterに接続するため、自分自身を表す「localhost」を入力。
- ポート番号
- 16668に。TwitterIrcGateway.exe.configの11行目で任意のポート番号に変更可能。
- サーバパスワードを使う
- チェックを入れてTwitterアカウントのログインパスワードを入力。
- ニックネーム/ログイン名/名前
- TwitterのIDを入力。
- 文字コード
- UTF-8に。
- 起動時に接続する
- チェックを入れる。
設定が完了したらOKをクリックし、文字コードを変更したため、一度LimeChatを再起動します。
再起動後、タイムラインが流れはじめればセットアップは完了です。タイムラインが流れてくるテキストエリアのすぐ下にある1行分のテキストボックスにつぶやき内容を入力し、Enterキーを押せばtwitterに発言がPOSTされます。
ReplyやFavの設定
セットアップ完了後から早速使おうと思えば使えるのですが、Twitter独自の機能であるReplyやFav、ReTweet[4]などはそのままでは利用できません。ここではTIGの機能の一つ「TypableMap」を利用することにします。
TIGの設定を行うためのチャンネルに入ります。つぶやき内容を入れるテキストボックスに「/join #Console」と入力、Enterキーを押します。
するとLimeChatウィンドウの右下にConsoleチャンネルができますので、そこに入ります。
次に、設定を行うコンテキストに移動するため、「config」と入力、Enterキーを押します。
14:54 (Root\Config) コンテキストを変更しました。
と返ってきたら、現在の設定項目を表示するため「show」と入力してみます。すると以下のような内容が返ってきます。
14:54 (aquapple) show
14:54 (Root\Config) SearchCount(Int32) = 10
14:54 (Root\Config) TimelineCount(Int32) = 10
14:54 (Root\Config) FavoritesCount(Int32) = 10
14:54 (Root\Config) ShowPermalinkAfterStatus(Boolean) = False
14:54 (Root\Config) EnableTypableMap(Boolean) = False
14:54 (Root\Config) TypableMapKeyColorNumber(Int32) = 14
14:54 (Root\Config) TypableMapKeySize(Int32) = 2
(中略)
14:54 (Root\Config) FetchCount(Int32) = 50
今回利用したいのはEnableTypableMapですので、「set EnableTypableMap true」と入力、Enterキーを押します。
15:01 (aquapple) set EnableTypableMap true
15:01 (Root\Config) EnableTypableMap (Boolean) = True
と表示されれば、TypableMap機能が有効になりました。[5]先ほどの#twitterチャンネルに戻ってみるとタイムラインの後ろに(aa)や(io)のような文字列が付加されているはずです。特定の発言に対し、Replyをする場合はこのTypableMapを指定することになります。主な機能は次の通り。
- re(返信)
- re {tm} 返信メッセージ で指定された発言への返信を行う
- fav(お気に入りに追加)
- fav {tm} で指定された発言をお気に入りに追加する
- unfav(お気に入りから削除)
- unfav {tm} で指定された発言をお気に入りから削除する
- h(その人のホームのURLを表示)
- h {tm} で指定された発言をした人のホーム(http://twitter.com/名前)のURLを表示する
- u(その発言のURLを表示)
- u {tm} で指定された発言のページのURLを表示する
{tm}には先ほどのTypableMapを指定します。たとえば
15:04 (aquapple) test (eo)
これにリプライを飛ばす場合は「re eo テスト見えました!」のように入力すると、「@aquapple テスト見えました!」とTwitterにPOSTされます。リプライ先を@IDで指定する他のクライアントからするとなんだか変な感じがしますが、いずれ慣れることでしょう。
ReTweetについては「rt {tm}」で実装されているようですが、私は試したことがありません。
さらに細かくカスタマイズしたい
よりTwitterクライアントに近づけるならば「ID/抽出ワードごとにグループ分け」や「リプライが来た場合はサウンドを鳴らしたり、文字色を変えたりしたい」と思うかもしれません。
ここから先はIRCクライアントによって設定方法が異なりますのでそれぞれのクライアントのヘルプを参照していただければと思います。
おわりに
最初の設定こそ「うっ」と躊躇してしまいましたが、一旦タイムラインが流れはじめてしまえば、何ら他のTwitterクライアントと変わりない気がしました。切り口としてはかなり斜めから入ってしまいましたが、これでIRCの世界に踏み込むことが出来ました。これから少しずつ、自分の使いやすいように設定を変えていきたいと思います。
IRCの世界へ踏み込むきっかけをいただいた「TwitterIrcGateway」「LimeChat」の作者に感謝。最後に参考にさせていただいたサイトを載せておきます。