2007年04月11日

Twitter 互換「ひとこと更新 API」をリリースしました

いつもlivedoorのソーシャルネットワーキングサービス 『フレパ』をご利用くださいまして、誠にありがとうございます。

本日、フレパに、Twitter ライクな「ひとこと更新 API」を実装し公開致しました。
簡単に言いますと、API Documentation - Twitter Development Talk にある、update の移植です。



update

認証されたユーザのひとことを更新します。下記のように、status パラメータを要求します。リクエストは POST メソッドで送られる必要があります。

URL: http://www.frepa.livedoor.com/statuses/update.format?status=message
Formats: xml, json. 成功時は、要求された形式でステータスを返します。
Parameters:
  • status ... 必須。更新したい、ひとことの文字列を渡してください。必要に応じて URL encode を行なってください。また、文字列は UTF-8 および EUC-JP の両方を受け付けることが可能ですが、フレパのキャラクタセットが EUC-JP のため、外国の文字等を正常に表示することは保証出来ません。また、文字列は EUC-JP にした場合に 100 バイト以上あった場合に、自動的に 100 バイト付近でカットされます。
API 利用時の Basic 認証では、フレパに登録している livedoor ID のみ認証されますので、フレパに未登録の livedoor ID の認証は 401 (unauthorized) ステータスが返されます。

Greasemonkey から GM_xmlhttpRequest() を利用して POST する等の場合は、一般に公開されている Twitter に POST する Greasemonkey Script の Endpoint だけ修正すれば、POST 可能です。

念の為、GM_xmlhttpRequest() を利用した際の簡単なサンプルは下記の通りです。
GM_xmlhttpRequest({
    method: 'POST',
    url: 'http://www.frepa.livedoor.com/statuses/update.json',
    data: 'status=' + encodeURIComponent('Hello, World!'),
    headers: {
        'Content-Type' : 'application/x-www-form-urlencoded'
    }
});
Basic 認証のダイアログが表示されるケースもありますが、それを避ける場合は、
    url: 'http://myuser:mypass@www.frepa.livedoor.com/statuses/update.json',
のように、livedoorID:password@ をホスト名の前に前置することによって、自動的に Basic 認証を通すことも可能です。

また、CPAN モジュールの Net::Twitter を利用し、update() メソッド経由でひとことを更新することも可能です。

Net::Twitter を利用してひとことを更新する場合のサンプルは以下の通りです。
#!/usr/bin/perl

use strict;
use Net::Twitter;

my $twit = Net::Twitter->new(
    username => "myuser",
    password => "mypass",
    apirealm => "Frepa API",
    apihost  => "www.frepa.livedoor.com:80",
    apiurl   => "http://www.frepa.livedoor.com/statuses"
);
my $result = $twit->update("Hello, World!");
Plagger で publish したいという場合は、例えば Plagger::Plugin::Publish::Twitter を継承した Plagger::Plugin::Publish::Frepa クラスを作り、initialize() メソッドを Net::Twitter のコンストラクタへの引数だけを上記のように変更するような override をすることによって publish が可能です。

今後もご要望に応じて API を追加したいと思いますので、今後とも『フレパ』をよろしくお願い申し上げます。

sns_staff at 18:33コメント(0)トラックバック(0) 

トラックバックURL

コメントする

名前:
URL:
  情報を記憶: 評価:  顔   星
 
 
 
QRコード
QRコード
  • ライブドアブログ