ATND API の Ruby ラッパー Atnd4R を作りました
微妙に名前だけ出していましたけれど
ついにATND API リファレンスが正式にリリースされたので、こちらも正式に告知します。
githubの sugamasao/atnd4r · GitHub にプロジェクトページがあります。
どのように入手できますか
github に rubygems で置いてあるので、下記のようにインストールします。
github の URL を登録していない人のみ、上のコマンドも合わせて実行してください。
gem sources -a http://gems.github.com
sudo gem install sugamasao-atnd4r
また、プロジェクトページの Downloads ページから tgz 等の形式も取得可能です。
どのように使いますか
まず、require します
requre 'atnd4r'
イベントサーチAPIを使う場合
Atnd4r::get_event_list メソッドを実行してください。引数は Hash で、 {検索キー => 検索したい値} と渡します。
Atnd4r::get_event_list({:user_id => 1500})
検索したい値が複数ある場合は、配列として渡します。
Atnd4r::get_event_list({:user_id => [1500, 1]})
検索結果は以下のような、 Atnd4r::AtndAPI オブジェクトとして返却されます。
#<Atnd4r::AtndAPI:0x1561ac0 @events= [#<Atnd4r::AtndEvent:0x155a1d0 @accepted=48, @address="東京都中央区銀座8−4−17", @catch= "このイベントはATNDのデモです。実際に開催されることはありませんが、自由に参加/キャンセルをしてみてください(サブタイトル)", @description= "<h1>ここ(内容)の使い方</h1>\n<ul>\n<li>ここにイベントの内容を書きます</li>\n<li>簡単なHTMLを使うことができます</li>\n</ul>\n\n<h1>お知らせ</h1>\n<ul>\n<li><a href=\"http://atnd.org/users/profile\">http://atnd.org/users/profile</a>から、ATND内のユーザ名を設定することができますので、ぜひ変更してみてください。</li>\n</ul>", @ended_at=nil, @event_id=1, @event_url="http://atnd.org/events/1", @lat=35.6685393, @limit=48, @lon=139.7593983, @owner_id=1, @owner_nickname="knjko", @place="MTL", @started_at=Wed Sep 02 14:20:00 +0900 2009, @title="ATNDデモイベント(タイトル)", @updated_at=Wed Jan 14 15:06:00 +0900 2009, @url="http://atnd.org/", @users=[], @waiting=134>], @results_available=1, @results_returned=1, @results_start=1>
検索パラメータの詳細や、検索結果の値の意味などは公式ページをご確認下さい。
出席確認APIを使う場合
メソッド名以外は、ほぼ同じです。
Atnd4r::get_user_list メソッドを実行してください。引数は Hash で、 {検索キー => 検索したい値} と渡します。
Atnd4r::get_user_list({:user_id => 1500})
検索したい値が複数ある場合は、配列として渡します。
Atnd4r::get_user_list({:user_id => [1500, 1]})
検索結果は以下のような、 Atnd4r::AtndAPI オブジェクトとして返却されます。
#<Atnd4r::AtndAPI:0x105499c @events= [#<Atnd4r::AtndEvent:0x104cf6c @accepted=92, @address=nil, @catch=nil, @description=nil, @ended_at=nil, @event_id=202, @event_url="http://atnd.org/events/202", @lat=nil, @limit=100, @lon=nil, @owner_id=nil, @owner_nickname=nil, @place=nil, @started_at=nil, @title="1981s忘年会#2", @updated_at=Fri Dec 12 17:41:14 +0900 2008, @url=nil, @users= [#<Atnd4r::AtndUser:0x15d531c @nickname="すがまさお(id:seiunsky)", @status=1, @user_id=1500>, (中略)], @waiting=0>], @results_available=1, @results_returned=1, @results_start=1>
イベントサーチAPIとの一番の違いは、events プロパティに、Atnd4r::AtndUser オブジェクトの配列が入っていることです*1。
というわけで
よかったら使ってくだしあ!
追記(2009/7/30)
詳細な使い方のエントリを書きました。
Atnd4Rの使い方 - @sugamasao.blog.title # => ”コードで世界を変えたい”