http://mattn.jaiku.com/はいはいaddお願い!では、遅れた者として恥ずかしいので、とりあえずAPIについて。
Jaikuでは、RSS、Atom、Json、XMLRPCのインタフェースをサポートしています。
その内、Feed系であるRSS、Atomについては読み取り専用。JsonとXMLRPCがステータス更新可能なAPIとなっています。 APIキーはAPIドキュメントの右下に表示されます。 APIドキュメントの例では、XMLRPCで「test」メソッドを呼び出していますが、実際には「test」というメソッドはありません。
あるのは、「presence」というクラスと、そのクラスにある「send」とういメソッドのみです。
つまりは、現状のAPIでは、ステータス一覧をRSS、Atomから取得し、更新をJsonやXMLRPCで行うしか術がありません。
せっかくXMLRPCインタフェースを出したのですから、参照系APIも出して欲しいものです。
RSSやAtomを取得し解析するライブラリも必要になれば、更新用のライブラリも必要になります。
pythonでは便利なサードパーティ製ライブラリがありますが、C言語等になると、curlやらlibxml2やら、結構大変なんですよ。(グチ)
まぁ、とりあえずpythonの例を乗っけておきます。
ソースのuserとpersonal_keyを修正して頂いて、コマンドラインから実行すると、第一引数がメッセージとなって送信されます。
# Windowsから検証してますので、utf-8な*nixでは修正がいるかもしれません。
# -*- coding: utf-8 -*-
import sys
from xmlrpclib import ServerProxy
user = "?????"
personal_key = "??????????????????"
def update_status(user, personal_key, message):
jaiku = ServerProxy("http://api.jaiku.com/xmlrpc")
jaiku.presence.send({"user": user, "personal_key": personal_key, "message": unicode(message, "mbcs").encode("utf-8")})
if __name__ == "__main__":
if len(sys.argv) == 2:
update_status(user, personal_key, sys.argv[1])
else:
print "usage: [status message]"
追記:
観測気球さんが、Jaiku API 仕様書 (勝手に日本語訳シリーズ)を公開してくれています。