streamテーブルを扱う際に使うfilter_keyを返すので、Facebook上でユーザが利用可能なコンテンツフィルタを利用できます。これらは友達リスト、アプリケーション、ネットワーク、ホームページのストリーム(News Feed)などを含み、ユーザやページのストリームを構成します。
Columns
Indexable | Name | Type | Description |
---|---|---|---|
* | uid | string | ユーザID |
filter_key | string | ユーザのストリームで特定のフィルタを示すキー。streamテーブルから関連するアイテムを取得するのに役立ちます。 | |
name | string | ホーム画面上に表示されるフィルタ名。 | |
rank | int | フィルタ名がソート順のどこに現れるかを示す32ビットの整数 | |
icon_url | string | フィルタアイコンのURL。アプリケーションの場合、あなたのアプリケーションアイコンと同じ物です。 | |
is_visible | bool | 真が返る場合、フィルタはホーム画面で閲覧できます。偽の場合、Moreリンクに隠れています。 | |
type | string | フィルタのタイプ。application, newsfeed, friendlist, network, publicprofileのいずれかです。 | |
value | int | フィルタタイプの64ビットID |
Examples
ユーザが許可したアプリケーション全部のfilter keyを取得する場合
SELECT filter_key FROM stream_filter WHERE uid=<uid> AND type="application"
任意のユーザの全フィルタを得る場合
SELECT filter_key FROM stream_filter WHERE uid=<uid>
streamテーブルと連結して使う典型的なケースです。このケースでは、user 3 のNews Feedを取得しています。
SELECT post_id, actor_id, target_id, message FROM stream WHERE filter_key in (SELECT filter_key FROM stream_filter WHERE uid = 3 AND type = 'newsfeed')