例:
https://www.googleapis.com/buzz/v1/activities/search?lat=42.370498&lon=-71.083603&radius=100&prettyprint=true&alt=atom
「いつ、どこで、誰が、何をつぶやいたのか」という情報だけに限ると、チェックするタグは、以下にまとめたものくらい。
※Atom形式
<feed> <entry> <!-- メッセージ --> <title>あいうえお</title> <!-- 投稿日 --> <published>2010-10-15T06:51:05.485Z</published> <author> <!-- gmailアカウントの姓名 --> <name>おおつかみさほ</name> <!-- ユーザのサムネイル画像パス --> <link rel='photo' type='' href='' /> </author> <activity:object> <buzz:attachment> <!-- 添付写真パス --> <link rel='enclosure' type='' href='' /> <!-- 添付写真のプレビュー画像(小さめ)パス。1枚でも複数のタグが含まれる? --> <link rel='preview' type='' href='' /> </buzz:attachment> </activity:object> <!-- 投稿された場所の緯度経度 --> <georss:point>42.370498 -71.083603</georss:point> </entry> <!-- 以下、結果件数だけ、entryタグが連続する --> </feed>これだけ押さえていれば、「いつ、どこで、誰が、何をつぶやいたのか」を表示できる情報が最低限集められる。
ちなみに、レスポンスデータの全タグを列挙すると以下になる。
<?xml version="1.0" encoding="UTF-8"?> <feed> <!-- httpsから始まる、発行したリクエストのURI --> <link rel="" type=""/> <!-- 検索結果をブラウザなどで表示した時のタイトル --> <title></title> <!-- 検索結果内の最も新しい更新日 --> <updated></updated> <!-- この検索のID --> <id></id> <generator uri="http://www.google.com/buzz">Google Buzz</generator> <entry gd:kind="buzz#activity"> <title></title> <published></published> <updated></updated> <!-- このBuzzのID --> <id></id> <!-- このBuzzのURI --> <link rel="alternate" type="text/html" href=""/> <!-- このBuzzのフィード --> <link rel="self" type="application/atom+xml" href=""/> <!-- このBuzzのコメントのフィード --> <link rel="replies" type="application/atom+xml" href=""/> <author> <!-- ユーザID(数字)--> <poco:id></poco:id> <poco:photoUrl></poco:photoUrl> <name></name> <!-- ユーザのプロフィールURI--> <uri></uri> <link rel="photo" type="" href=""/> <activity:object-type>http://activitystrea.ms/schema/1.0/person</activity:object-type> </author> <!-- メッセージ。titleと同じもの --> <content type="html"></content> <activity:verb>http://activitystrea.ms/schema/1.0/post</activity:verb> <activity:object> <activity:object-type>http://activitystrea.ms/schema/1.0/note</activity:object-type> <!-- メッセージ。titleと同じもの --> <content type="html"></content> <buzz:original-content type="text"/> <!-- このBuzzのURI --> <link rel="alternate" type="text/html" href=""/> <!-- このBuzzに添付されたデータ --> <buzz:attachment> <activity:object-type>http://activitystrea.ms/schema/1.0/photo</activity:object-type> <link rel="enclosure" type="image/jpeg" href="/> <link rel="alternate" type="text/html" href=""/> <link rel="preview" type="image/jpeg" href=""/> </buzz:attachment> </activity:object> <source> <activity:service> <title>Mobile</title> </activity:service> </source> <!-- このBuzzを見る権限--> <buzz:visibility> <buzz:aclentry type="group"> <poco:id>G:@me:@public</poco:id> <uri>https://www.googleapis.com/buzz/v1/people/@me/@groups/G:@me:@public?alt=atom</uri> <poco:name>Public</poco:name> </buzz:aclentry> </buzz:visibility> <!-- likedの件数やURI --> <link rel="http://schemas.google.com/buzz/2010#liked" type="application/poco+xml" href="" buzz:count="0"/> <georss:point></georss:point> <!-- 郵便番号など--> <georss:featureName></georss:featureName> <poco:address> <!-- 投稿されたロケーションをフォーマットした文字列 --> <poco:formatted>X-X 〇〇町, Atsugi, Kanagawa Prefecture, Japan</poco:formatted> </poco:address> </entry> </feed>
BuzzのデフォルトのレスポンスフォーマットはAtom。TwitterはJSON推奨で、Atom形式も現状は使用できるが、今後はサポートされなくなる。
PubSubHubbubもフィードが必要だし、BuzzはAtomとの親和性が高いんでしょうか。
「buzz:attachment」というタグを見ると、画像だけではなく色々なものを添付できそうですね。
返信削除できればBuzzで添付可能なファイルタイプのリストがあるといいですね。
そうですね。
返信削除パッと見、見当たりませんでした。
でも、Activity Streamsに列挙されているObject Typesはかなりサポートされているようです。
http://activitystrea.ms/schema/1.0/activity-schema-01.html
少なくとも、Article、Audio、Photo、Photo Album、Videoは添付データとして認識できそうです。
音やビデオも?
返信削除するとGoogleAppsの関連でDOCとかXLSなんかも添付できる、いや、実際は何でも添付できる仕様という可能性もありますね。
試してみないと分かりませんが、色々やれそうですね。
返信削除