使ってみよう! Windows Live SDK/API

第44回 Windows 8でWindows Liveが加速! Live Connectで連携アプリの作成!

この記事を読むのに必要な時間:およそ 5 分

詳細なユーザー情報の取得

続いて,ユーザーに関する別の情報も取得してみましょう。取得する情報によって次のScopeに分かれています。

Scopeの値説明
wl.basicプロフィール情報とコンタクトリスト情報の参照
wl.birthday生年月日の参照
wl.emailsメールアドレスの参照
wl.postal_addresses住所の参照
wl.phone_numbers電話番号の参照
wl.work_profile勤務先情報の参照

以上の内容の許可を得る認可画面は,図4のようになります。

図4 認可画面

図4 認可画面

それでは,順に内容を見ていきましょう。

基本情報

wl.basicは,Windows LiveのプロフィールページのURLと,ユーザー情報が更新された日時,コンタクトリストの情報を参照する場合に使います。コンタクト(友だち)Contactオブジェクトとして別途取得します。その内容は次の機会に紹介します。

Userオブジェクトの内容は次の通りです。

プロパティ説明
linkstringプロフィールページのURL
updated_timestringユーザー情報が更新された日時(ISO 8601形式)
例: 2011-09-13T22:00:00+0000

生年月日

生年月日のみ参照するScopeが用意されています。当然ながらユーザーが設定してなければ参照できません。年まですべて設定されている場合,ここから年齢も計算できますね。

プロパティ説明
birth_daynumber/null誕生日
birth_monthnumber/null誕生月
birth_yearnumber/null誕生年

メールアドレス

メールアドレスは,いくつか種類があり,少なくともWindows Live IDのアカウントとなっているアドレスひとつは設定されています。レスポンスは次のようにemailsオブジェクト内に4種類のアドレスが格納されています。

{
    "emails": {
        "account": "***@live.jp", 
        "business": null, 
        "personal": null, 
        "preferred": "***@live.jp"
    }
}

それぞれの値は次の通りです。

プロパティ説明
accountstringWindows Live IDアカウントのメールアドレス
businessstring/null勤務先のメールアドレス
personalstring/null個人のメールアドレス
preferredstring/null優先するメールアドレス

住所

住所は,個人の住所と勤務先の住所があります。レスポンスは次のようになり,addressesオブジェクトに格納されています。さらに個人と勤務先によってpersonalオブジェクトとbusinessオブジェクトに分かれています。

{
    "addresses": {
        "personal": {
            "street": "外神田",
            "street_2": "大檜山ビル",
            "city": "千代田区",
            "state": "東京都",
            "postal_code": "101-0021",
            "region": "日本"
        },
        "business": {
            "street": "外神田",
            "street_2": "大檜山ビル",
            "city": "千代田区",
            "state": "東京都",
            "postal_code": "101-0021",
            "region": "日本"
        }
    }
}

personalとbusinessオブジェクトの値は次の通りです。

プロパティ説明
citystring/null日本の場合市区町村
postal_codestring/null郵便番号
regionstring/null
statestring/null日本の場合都道府県
streetstring/null住所1
street_2string/null住所2

ユーザーは住所の情報に自由な値を入力できるため,使用する際はチェックが必要です。

電話番号

電話番号は,個人・携帯・勤務先の3種類あります。レスポンスは次のようになり,phoneオブジェクトに格納されています。

{
    "phones": {
        "personal": "05-71024-***",
        "business": "104-8596-***",
        "mobile": null
    }
}

値は次の通りです。

プロパティ説明
businessstring/null勤務先の電話番号
personalstring/null個人の電話番号
mobilestring/null携帯の電話番号

電話番号についても,ユーザーは自由な値を入力できるため,使用する際は書式のチェックが必要です。

勤務先

勤務先の情報は,会社名と役職のみ参照できます。構造は以下のようになっています。

{
   "work": [
        {
            "employer": {
                "name": "未来ガジェット研究所"
            },
            "position": {
                "name": "ラボメン No.001"
            }
        }
    ]
}

値は次の通りです。

プロパティ説明
name
⁠employerオブジェクト)
string/null会社名
name
⁠positionオブジェクト)
string/null役職

Userオブジェクトに関する内容は以上です。オブジェクトの内容は,すべてではありませんが先に示した登録画面で使用しています。Userオブジェクトに関するScopeは細かく分類されていますので,アプリで必要な許可のみ,必要なときに要求するようにしましょう。

おわりに

今回はここまでです。いかがでしたでしょうか。今回は,最新の情報Live ConnectとJavaScript APIを利用したユーザー情報へのアクセスを紹介しました。次回以降も,さらなるLive Connectを活用したアプリ開発について紹介していく予定です。Technical Preview版のLive Connect情報も順次紹介していきますのでお楽しみに。

著者プロフィール

松江祐輔(まつえゆうすけ)

日本システムウエア株式会社 勤務。現在,ハードウェア設計・検証業務を担当。大学生・大学院生時代はベンチャー企業 有限会社ミレニアムシステムズにプログラマーとして従事。趣味はプログラミング。好きな言語はVisual Basic。Microsoft MVP for Windows Live Platform(Jul 2010 - Jun 2011),Windows Live(Jul 2011 - Jun 2013)。

URL:http://katamari.jp