Lingrのbotを作る方法まとめ

追記: この情報は今後古くなっていく可能性があります。つい最近公式のドキュメントが整備されましたので、こちらも併せて見るといいでしょう: Lingr Bot API · lingr/lingr Wiki · GitHub (2011-02-14)
追記2: 新しいAPIを紹介した同じような記事を書きました。钱柜娱乐_钱柜娱乐平台_钱柜娱乐777(唯一)官方网站 (2011-02-14)

Lingr – Group Chat Made Easy
Lingrが新しくなりましたね。登録のURLは知ってるのだけどここでいっていいのかどうか・・
と思ったら
http://lingr.com/room/onsg *1
とかから普通に登録できるようになってるじゃん!今気づいた。

Lingrbot

新しいlingrにはbot機能があります。
botっていうかWebhookです。

使い方

  • Lingrのsettingsからbot作成できます。
  • owner権限与えられているroomで、detailからmanage>botを押して、あとはごにょごにょして誘致しましょう。
  • Callback URLで指定したURLに、そのbotが存在しているルームで人間の発言があったらWebhookのように通知が来ます。
  • HTTPでアクセスして出力されて返ってきた結果が、発言があったRoomにpostされます。空白ならなにもpostされないようです。

簡単に試す

  • 実は静的URLでもできるみたいです
  • 試すなら勝手に。ウザいだけですw発言があるごとに同じ文だすから。

発言の情報とか

  • GETパラメータのjsonJSONで情報が入ってきます。
一般的に使いそうなパラメータ一覧
  • events(配列)
    • message
      • nickname (ニックネーム)
      • text (発言)
      • room (ルームID)

簡単なbotを作ろう

オウム返しbotRubyで実装してみます。
json (gem install json)

#!/usr/bin/env ruby
require "rubygems"
require "json"
require "cgi"

json = JSON.parse(CGI.new["json"])
print "Content-Type: text/plain\n\n"
json["events"].each do |e|
    puts e["message"]["text"]
end

即興で書いたので動くかどうかは微妙ですが動くはずです。

bot作りまとめ

  • おもしろい
  • みんなもじゃんじゃんつくろう

*1:Online.sgLingrルームです