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

第34回 Live Messenger Web Toolkit──WebサイトにLive Messenger機能を追加(2)

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

ProfileコントロールとCID

次はProfileコントロールというものです。これはユーザーの名前,表示アイコン,表示メッセージ,オンラインや退席などの状態を,表示・変更が可能なコントロールです図9⁠。

図9 Profileコントロール

図9 Profileコントロール

タグは次のように記述します。

<msgr:profile cid="$user"></msgr:profile>

editable属性を付けると,名前などの編集可否を制御できます。

<msgr:profile cid="$user" editable="false"></msgr:profile>

さてProfileコントロールに指定されているcid属性について,ここで説明します。Windows LiveアカウントユーザーにはCIDと呼ばれる一意な符号付の整数値が割り当てられています。cid属性にはこのCIDを指定します。

つまり,Profileコントロールではcid属性に特定のユーザーのCIDを指定するとそのユーザーの情報が表示できるということです。ただし,サインインしたユーザーのコンタクトリストにあるユーザーの表示に通常は限られます。また表示名等の変更も当然ながらできません。

UI Controlsでは,$userはサインインしたユーザーを表し,上記のようにするとサインインしているユーザーが表示されます。

ユーザーのCIDを確認するにはLive Messengerのプロフィールの表示図10が利用できます。プロフィールの表示をクリックしたとき,移動先のURLにCIDが含まれています。

図10 プロフィールの表示

図10 プロフィールの表示

URLは次の書式になっていると思います。⁠{16進数表記の値}」部分がCIDです。この表記はプロフィールのURL以外でも見かけたことがあるかもしれませんね。各種LiveサービスではCIDが使用されています。

http://cid-{16進数表記の値}.profile.live.com

この16進数表記の値を符号付の10進数表記にするとUI Controlsのcid属性値として使えます。$userの代わりに知り合いのCIDなどに変えて表示が変わることを確認してみてください。Profileコントロール以外の多くのコントロールでもCIDが必要になってきます。

Basic Presence/Contact/Sharingコントロール

Profileコントロールは,表示名や表示アイコンなどがまとまった多機能なコントロールでしたが,表示名だけや,表示アイコンだけのコントロールなどもあります。基本的なプレゼンス(Presence: 存在の意)に関するコントロール(Basic Presenceコントロール)は以下のものが用意されています。

  • Display Nameコントロール(表示名の表示・変更)
  • Display Pictureコントロール(表示アイコンの表示)
  • Presence Statusコントロール(オンラインなどの状態の表示・変更)
  • Personal Messageコントロール(表示メッセージの表示・変更)
  • Profileコントロール

また,サインインしたユーザーのコンタクトリストに関するコントロールは次のものがあります。

  • Add Contactコントロール(コンタクトの追加)
  • Contact Listコントロール(コンタクトの表示など)
  • Contact Pickerコントロール(コンタクトの選択)

少し変わったコントロールとしてSharingコントロールというのもあります図1112⁠。これは,Webサイトであらかじめ設定されたメッセージを,複数のユーザーに一度に送信できるというものです。

図11 Sharingコントロール 共有ボタン

図11 Sharingコントロール 共有ボタン

図12 Sharingコントロール コンタクトの選択

図12 Sharingコントロール コンタクトの選択

ユーザーは共有ボタンをクリックし,表示されたコンタクトリストからメッセージを送信するユーザーを選択します。Shareボタンをクリックすると一斉送信されます。

以上のコントロールは,Interactive SDKで簡単に試せます。Webページ上でコントロールの属性を変更でき,すぐに動作の違いを確認できます。また,各コントロールのタグも表示されます。これらのコントロールを利用する場合,有効にInteractive SDKを活用しましょう。


今回はここまでです。UI Controlsにはまだ種類があります。次回にはまた別のコントロールを紹介します。また今回は,直接CIDを記述しているなど少し応用しにくい方法でした。次回以降はより実践的な実装をしていきます。

著者プロフィール

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

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

URL:http://katamari.jp