友達が行っているイベントをFacebookから取得したいです。例えば
- eventId1(friend1、friend2、friend3)
- eventId2(friend10、friend55);
等々...
どうすればそれを達成できますか?
リプレイありがとうございます。
友達が行っているイベントをFacebookから取得したいです。例えば
等々...
どうすればそれを達成できますか?
リプレイありがとうございます。
イベントを取得する1つの方法は、FQLを使用することです。友達が参加するすべてのイベントを取得する方法は次のとおりです。
SELECT name FROM event WHERE eid IN (SELECT eid from event_member WHERE uid IN (SELECT uid2 FROM friend WHERE uid1=''$user_id'') )
詳細はこちら:
sarfazの答えを拡張する:
友達ごとに次のクエリを使用します。
SELECT name FROM event WHERE eid IN (SELECT eid from event_member WHERE uid = $friend_uid )
これにより、友達が参加しているイベントの正確なリストが返されます。次に、その友人のリストを解析し、参加しているイベントを収集して、データの逆マップを作成します。
私の経験から、このFQLクエリの実行には長い時間がかかります。特に、友達ごとに複数回実行する場合はなおさらです。FBMLアプリを使用している場合は、Facebookのタイムアウトにうんざりしてください。そうでない場合は、この呼び出しをバッチ処理することをお勧めします。
APIは、events.getが役立つはずだと言っています。各友達のuidを渡し、戻ってきたイベントIDを統合します。
編集:sarfrazはここでより良い答えを持っているかもしれません、FQLへの1つの呼び出しはより効率的になるでしょう。