Archive@2010/01
30歳のバースディパーティーを遅くなったが地元の友達が祝ってくれました
いやーとうとう30歳になってから、既に1ヶ月以上経ってしまいましたw(本来の誕生日は「デスマ」最中でしたがw)
年末は忙しかったので、遅くなりつつも地元の友達が10人位で祝ってくれて、最高に嬉しかった
(みんな小学校からの友達やスケボー&ピスト&スノボー&DJ仲間)
開催場所は「牛角」で、かなり食べさせて頂きました。(知り合いが働いてるとのことで、優遇してもらっちゃったよ。)
ちょうど自分と同じく「12月」に誕生日だった子もいたので、一緒に祝って貰い誕生日ケーキもいただきました!!!
最高においしかったです。(肝臓治療中ですが、こんな日くらいはねー)

じゅんこ&おれの誕生日ケーキ posted by (C)kishir
さらにみんなから誕生日プレゼントまでいただいてしまったよ。大切に使わせて頂きます。(Tシャツなどもあるので、夏が楽しみだなぁー)

誕生日プレゼント全部w posted by (C)kishir
ピスト用のサドルもいただいたので、早速つけてみた所かなり乗り心地が良い。これ最高に良いよ。
アメリカのMTB用サドルメーカー"SDG/エスディージー"のサドル"BEL-AIR"です。
BlueLugとかで購入可能ですね。
サドル装着 posted by (C)kishir
持つべきものは友ですなーとしみじみ感じました。(牛角の後に「カラオケ」やら「飲み屋」やらで帰宅したのは4時過ぎてたw)
本当にみんなに感謝です!
後はチャリもやりつつ、スケボーもやって、食事制限も続けて、目指せ「-5kg」です!!!
- Posted at:
- 2010/01/28 00:03:00
- 0 Comments
- 0 TrackBacks
- Tags:
- Other
- Trackback:
- http://kishi-r.com/2010/01/28/30_birthday_party/trackback/
そういえばポケモンセンターに行ってきた

ポケモンセンター入り口 posted by (C)kishir
行ってきました「ポケモンセンタートウキョウ」
嫁さま(嫁さまの姉もw)が大分はまってしまって、是非行きたいとの事だったので、車で行って参りました。
近くに駐車場がいくつもあるので、車で行っても全然問題無かったのがうれしかった。(それもかなり大きな駐車場が、大門駅の近くにある。)
日曜日に行ったので、大分混んでました。(それも毎週なのか、イベントがあるとさらにガン混みw)
入り口から子供が喜びそうな大きな「ピカチュウ」と「ポッチャマ」と「ヒトカゲ」が出迎えてくれます。

いつものとパルキア posted by (C)kishir
そのさらに上には「ディアルガ」と「パルキア」も居るので、子供は大興奮!!!(嫁さまも大興奮w)
今(今後も?)行くと、殿堂入りしたデータがあるソフトを持って行くと、「殿堂入りおめでとう!プレート」が貰えます。

殿堂入り特典カード posted by (C)kishir 詳細はポケモン公式サイトの「こちら」から確認可能となってた。
実はこれがメインの目的だったのに、嫁さまは今年から長男が小学校に上がるので、それように「ポケモンセンター限定」のグッズ(筆箱やらノートやらたくさん)を購入していましたw
ポケモンセンター限定の場合、「値札が青色」になっていてそればかりを狙っていましたね。(結構売り切れが多くて、大分がっかりしてましたがw)
隣のビルでランチをしたのですが、各店でなのか「ポケモン」にちなんだ「子供用ランチ」なんかもあったので、子供は大喜び!

ポケモンらんち posted by (C)kishir
ランチ後もさらに買い物をしたいとの事だったので、姉の子供(9ヶ月)と長女を連れてそこら辺を散歩しながら、お茶したりして時間を潰してたw
何はともあれ嫁さまと子供達は大満足のようだったので、良かったよー ![]()
連れてきた方としてはあそこまで喜んで貰えると、かなりうれしいねw
また行きたいとの事だったので、何かキャンペーンなどがあるか公式サイトをチェックしておこうっと。
公式サイトはこちらから→ポケットモンスターオフィシャルサイト- Posted at:
- 2010/01/27 23:49:12
- 0 Comments
- 0 TrackBacks
- Tags:
- Other
- Trackback:
- http://kishi-r.com/2010/01/27/pokemon_center/trackback/
mixiアプリで「Restful API for PC」を試してみた

opensocial posted by (C)kishir
mixiアプリで「Restful API for PC」を試してみたので、メモ用に残しておく。
- APIを使用するため、「Consumer key」と「Consumer Secret」を発行する。
- 発行するには、mixiアプリ管理画面から可能
- 各アプリ画面(http://mixi.jp/view_appli.pl?id=[アプリID])の「設定変更」リンクから、アプリ管理画面へ
- まだ「Consumer key」と「Consumer Secret」を発行していない場合は、一度「同意する」にチェックを行い「設定を変更する」をクリックする必要がある
- 設定を変更すると、「アプリの説明」の上部に「Consumer Key」「Consumer Secret」という項目が追加される(変更などは出来ないので、テキストでの表示)

consumer posted by (C)kishir
- APIを使用するためにはアクセスに関して制限あり
- APIを使用するにあたり、誰の権限でアクセスを行うかを指定することが必要
- 誰の権限かを指定するには「対象ユーザのID」を使用
- ここで注意するのが「対象ユーザーID」は「一定時間内にWebブラウザで対象のmixiアプリを起動したユーザ」のIDのみが指定可能
- 現在(2010.01.25)mixiアプリで利用可能なAPI
Person & Friends API
これだけなので、「ユーザのプロフィールやマイミクに関する情報」しか取得出来ない
# アプリケーション毎で保持している「永続化データ(AppData)」などは不可
つまり取得出来るデータは、 JavaScriptAPIで「プロフィール情報を取り出す時」の
var req = opensocial.newDataRequest();
req.add(req.newFetchPersonRequest(opensocial.IdSpec.PersonId.VIEWER), "viewer");
req.send(function(data) {
if (data.hadError()) {
var msg = data.getErrorMessage();
// エラー発生時の処理
} else {
// 取得結果に対する処理
var item = data.get("viewer");
var viewer = item.getData();
var id = viewer.getId();
var nickname = viewer.getDisplayName();
var thumbnailUrl = viewer.getField(opensocial.Person.Field.THUMBNAIL_URL);
}
});
と同じですね。
参考:mixi Developer Center (ミクシィ デベロッパーセンター) >> プロフィール情報・マイミク情報を使ってみよう- 取得するためのURLパターン
取得時のURL(バージョンは0.8):http://api.mixi-platform.com/os/0.8/
各パターンは下記
注意1:{guid} とはmixiのユーザーIDとなり、指定方法は「mixi.jp:1234」もしくは、「1234」と指定する。 注意2:現在(2010.1.26)mixi上ではpeopleで取得出来るデータのみが対応可(永続化データ取得の「appdata」で指定するとエラー(401)になりました。)
- 取得時のフォーマット
- JSON
- XML(atom + xml)
指定方法は、
?format=json
例:http://api.mixi-platform.com/os/0.8/people/1234/@all?format=json
取得可能なフィールド一覧
基本情報
- ニックネーム(nickname)
- プロフィールURL(profileUrl)
- プロフィール画像URL(thumbnailUrl)
- アプリ利用状態(hasApp)
- 血液型 ※A, AB, B, Oのいずれか(bloodType)
プロフィール情報
- 現住所(addresses)
- 生年月日(birthday)
- 性別(gender)
基本情報以外の項目を取得する場合は、以下のように fields パラメータに項目名をカンマ区切りで指定
?format=json&fields=birthday,gender
アプリをインストールしているマイミク一覧を取得する場合は下記のように指定
?format=json&filterBy=hasApp
- 実際にデータ取得を試してみる
Google Codeやmixiにも記載されているPHPのコードを元に、
簡単に返すクラスを作って使ってみた。
ソースは下記
<?php
require_once('OAuth.php');
define(_CONSUMER_KEY_, 'ここに「ConsumerKey」を記述');
define(_CONSUMER_SECRET_, 'ここに「ConsumerSecret」を記述');
class TestRestfulAPI
{
private $_base_feed = NULL;
private $_consumer = NULL;
private $_viewer_id = NULL;
public function __construct($viewer_id=NULL)
{
if (!$viewer_id && is_null($viewer_id)) return false;
$this->_viewer_id = $viewer_id;
$this->_base_feed = sprintf('http://api.mixi-platform.com/os/0.8/people/%s/@self', $this->_viewer_id);
}
public function get()
{
try{
$params = array('xoauth_requestor_id' => $this->_viewer_id);
$this->_consumer = new OAuthConsumer(_CONSUMER_KEY_, _CONSUMER_SECRET_, NULL);
$request = OAuthRequest::from_consumer_and_token(
$this->_consumer, NULL, 'GET', $this->_base_feed, $params);
// Sign the constructed OAuth request using HMAC-SHA1
$request->sign_request(new OAuthSignatureMethod_HMAC_SHA1(),
$this->_consumer, NULL);
// Make signed OAuth request to the Contacts API server
$url = $this->_base_feed . '?' . $this->implode_assoc('=', '&', $params);
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_FAILONERROR, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_ENCODING, 'gzip');
$auth_header = $request->to_header();
if ($auth_header) {
curl_setopt($curl, CURLOPT_HTTPHEADER, array($auth_header));
}
$response = curl_exec($curl);
if (!$response) {
$response = curl_error($curl);
}
curl_close($curl);
} catch (Exception $e) {
//var_dump($e);
return false;
}
return $response;
}
function implode_assoc($inner_glue, $outer_glue, $array, $skip_empty=false)
{
$output=array();
foreach ($array as $key => $item) {
if (!$skip_empty || $item) {
$output[] = $key. $inner_glue. urlencode($item);
}
}
return implode($outer_glue, $output);
}
}
$viewer_id = $_POST('viewer_id');
$api = new TestRestfulAPI($viewer_id);
$data = $api->get();
print($data);
こいつをjsからmakeRequest()関数を使って動作させれば、
viewerの情報が取得出来る。
後々、peopleの部分を永続化データを取得するために「appdata」などに
置き換えるように変更したり、「@self」部分を「@all」などに変更出来るように
クラスを書き換えてやれば、ひとまずこれだけでRestful API対応は出来そう。
[2010-2-4 追記]
== 利用可能なクエリーパラメータの指定方法 ==
OpenSocialの本家サイトなどみれば解りそうだが、念のためメモメモ
上記のコードでURLを指定している箇所があるが、そこに直接クエリーパラメータを付与すると、
401でエラーになってしまう。
例:
<?php
$this->_base_feed = sprintf('http://api.mixi-platform.com/os/0.8/people/%s/@self', $this->_viewer_id);
この部分を「マイミクでかつアプリをインストールしているユーザーのみ1000件取得する」という指定で取得するために、
<?php
$this->_base_feed = sprintf('http://api.mixi-platform.com/os/0.8/people/%s/@friends?filterBy=hasApp&count=1000', $this->_viewer_id);
とやるとエラー
これは、「mixi Developer Center」の「2-legged OAuthによるAPIアクセス」に記載されている。(あんまり詳しくは書かれていないけども・・・OpenSocialの本家サイト見た方が良いかもねー。解決方法は、下記の部分の配列にパラメータを指定する
<?php
$params = array('xoauth_requestor_id' => $this->_viewer_id); // この部分
$this->_consumer = new OAuthConsumer(_CONSUMER_KEY_, _CONSUMER_SECRET_, NULL);
$request = OAuthRequest::from_consumer_and_token(
$this->_consumer, NULL, 'GET', $this->_base_feed, $params);
上記にある「// この部分」の箇所を下記ように記述する
<?php
$params = array(
'xoauth_requestor_id' => $this->_viewer_id,
'filterBy' => 'hasApp',
'count' => 1000
);
これで正常に取得する事が出来る。
- Posted at:
- 2010/01/26 23:17:27
- 0 Comments
- 0 TrackBacks
- Tags:
- JavaScript
- PHP
- Restful
- Trackback:
- http://kishi-r.com/2010/01/26/mixi_restful_api/trackback/
2010年はじまりました
2009年も終わり既に7日経ってしまったな。

あけましておめでとう posted by (C)kishir
「あけましておめでとうございます。」
去年から続いている案件もようやく落ち着きそうなので
、良かった良かった ![]()
年も明けたので、初詣は高尾山に行ってきておみくじを引いたら「大吉」が出てさい先良いスタートとなりそう ![]()
上に行くまでに途中でブタを散歩している人と遭遇したので、記念に取らして貰いました。

高尾山でブタ posted by (C)kishir
ケーブルカー内は行った時間が遅くてほとんど人も居なかったなー。なので写真も取り放題w

高尾山ケーブルカー内 posted by (C)kishir
上からの景色はやっぱりきれい。新宿もすんごく小さく見られます。

高尾山ケーブルカー降りたところ posted by (C)kishir
上に行くとやっぱりまだ初詣に来ている人たちが結構いました。みんな遅くまでお疲れ!

境内入り口階段 posted by (C)kishir
で、案の定帰りはガン混みですよ。
だって1時間位またされたもん。。。

ケーブルカー帰りガン混み posted by (C)kishir
後、友達が京都に行ったのでおみやげをいただいた。
なんか「はさみ」さえあれば組み立て可能な紙媒体のおもちゃ。これは子供が大喜びしていた。

京都おみやげ組み立て後 posted by (C)kishir
で年末というかずーっと髪の毛を切っていなく、「そろそろ気持ち悪いよ」と言われたので、
会社近くの美容院で予約してチョキチョキしてさっぱりとしてきた。
良い感じに切っていただいて気分スッキリです。
後は年末出来なかったMixCDの作成と、PS3が届いたのに出来なかったFF13をそろそろやりだそうかなーと。
他は新しいブログを作って、もう一つくらいサイトを立ち上げようと友達と妄想中。
Flashも年末近くに少々やり始めたので、今年はちゃんと勉強しないとなー。
iPhoneアプリも子供に作ってあげると言ったまま、なぁなぁになっているので作らないと・・・。
まぁーやりたいことは盛りだくさん。
まとまらずにダラダラ書いてしまったけど(まとめる気もないけど)、
今年もどうぞよろしくお願いします。
- Posted at:
- 2010/01/07 23:50:17
- 0 Comments
- 0 TrackBacks
- Tags:
- Other
- Trackback:
- http://kishi-r.com/2010/01/07/2010_happy_new_year/trackback/

