tig.rbの機能について

あくまで net-irc というライブラリの参考スクリプトであるけど、とても実用的なTwitterクライアントである tig.rb ですが、いかんせんドキュメントが足りていない感があります。

作者であるid:cho45氏のブログでアナウンスされているもののほかに、いろいろな機能を発見したのでメモ。

アクションの一覧

CTCPアクションというのは /join とかよりすごいことができるIRCコマンドという認識で問題ないとおもいます。ふぁぼるための /me fav だったり、OAuth認証の際、ピンコードを投げるための /me oauth など。

これらのCTCPアクションを、tig.rbはいくつか定義していますが、それらを確認するには /me とだけ叩けばよいです。

ただ、なにを引数として受け取るのか、そもそもそのCTCPアクションはなにをするのか、といったことは出力されません。おとなしく tig.rb のソースを読むしかないですね。

ドキュメント化されていないCTCPアクション

ここでいうドキュメント化とは、tig.rb のソースの冒頭での言及を指します。

  • list
  • fav
  • link
  • destroy
  • in
  • reply
  • retweet
  • utf7
  • name
  • description
  • spoof
  • bot
  • spam

具体的にはこれらのアクションのことです。

oauth [pin]

OAuth認証を行うアクションです。引数に pin をとります。これはOAuth認証が行われたときにピンコードです。

引数なしで呼ばれた場合、再度、認証を試みます。

tl_method

TLの取得APIを切り替えるアクションです。REST APIによる逐次リクエストと、ChirpUserStreamを交互に切り替えます。

reload

tig.rbを読み直します。接続が切れたりすることは(たぶん)ありません。うごいている tig.rb に変更を加えたときなどに便利でしょう。

call screen_name ['as'] nick

ユーザに別名をつけます。Twitterでのユーザ名である screen_name にIRCチャンネル上において nick という別名をつけます。

debug *some_code

Rubyのコードを引数にとり、それらを tig.rb のコンテキストで実行します。 Object#instance_eval をつかっているので動的にメソッドを追加したりできるかもしれない。

utf7

UTF-7でエンコードする、んだとおもう……。

ほかにもあった気がするけど

とりあえずこんなかんじでしょうか。