0

ドキュメント、チュートリアル、およびこのフォーラムの助けを借りて、ログインしているユーザーのプロファイルまたはページで、彼が選択したイベントを作成することができました。また、友人を招待するには、events.invite を使用する必要があると考えました。

ユーザーのすべての友達を招待するのではなく、いくつかの友達を招待したいので、リクエストを実装しました。その結果、選択した友達の ID が返されます。

events.invite 呼び出しに使用しているもの。結果として bool 1 を取得します (つまり、招待が正常に送信されたことを意味します) が、友達のブックマークやイベント ページに表示される招待はありません。

招待以外はすべて機能しています。

3つの質問が出てきます:

1) events.invite には「create_event」以外に追加の権限が必要ですか? 私はevents.inviteを単独で試しましたが、結果も得られませんでした...

2) 招待状を送る前に友達を選ぶ良い方法はありますか? イベントが作成されるたびにアプリのリクエストを送信したくありません。

3) 2 が負の場合、アプリのリクエスト (およびブックマーク) をどのように抑制したり、友達のプロフィールから削除したりできますか? API 経由でリクエストを削除しても、明らかにアプリケーション リクエスト内のメッセージは削除されません。

*メインスクリプト: [javascript]

function sendRequest() {
FB.ui({
      method: 'apprequests',
      message: 'Test',
      title: 'event invitation for up to 20 friends',
      max_recipients: 20,
      },
  function (response) {
     if (response && response.request_ids) {
        var requests = response.request_ids.join(',');
        var invite_ids = new Ajax.Request('/facebook/handle_invitation.php', {
             onSuccess: function(test) { alert('Done!'); },
             method: 'post',
             parameters: {tid: '<?php echo $target_id; ?>',
                          request_ids: requests, 
                          eid:'<?php echo $event_id; ?>',
                          token: '<?php echo $access_token; ?>'}
             });
     } else {
         alert('canceled');
     }

  });
        return false;
  }

*および 'handle_invitation.php' (リクエスト応答から呼び出されます):

if( isset($_POST['request_ids']) && isset($_POST['uid']) ) {
  $target_id = $_POST['tid'];
  $event_id = $_POST['eid'];
  $access_token = $_POST['token'];
  $requests = explode(',',$_POST['request_ids']);


foreach($requests as $request_id) {
    $request_data = $fb->api("/$request_id?$access_token");
    $invite_id[] = $request_data['to']['id'];

    $fb->api("/$request_id?$access_token", "DELETE");
    }


//invite friends to my event
$return = $fb->api(array(
   'method' => 'events.invite',
   'eid' => $event_id,
   'uids' => $invite_id,
   'personal_message' =>"Einladung zu meinem Event"
)); 
}

これがあまり詳細ではないことを願っています。数日間の読書と実験の後、私は最終的にこの時点で立ち往生しているので、助けていただければ幸いです。どうも!

4

2 に答える 2

1

グラフ API では、user_id でユーザーを招待できるようになりました。http://developers.facebook.com/docs/reference/api/event/を参照してください

招待された

作成

HTTP POST を /EVENT_ID/invited/USER_ID に発行することで、ユーザーをイベントに招待できます。HTTP POST を /EVENT_ID/invited?users=USER_ID1,USER_ID2,USER_ID3 に発行することで、複数のユーザーを招待できます。どちらも create_event 権限を必要とし、招待が成功した場合は true を返します。

于 2011-12-05T15:37:42.990 に答える
0

「送信されたイベント招待状」はまだ GRAPH API にないと思います。REST API で利用できますが、期待どおりに動作しません。Facebook イベントに関する既知の問題と制限がいくつか見つかりました。Facebookの公式ドキュメントから以下のリンクを参照してください。

イベントに招待できる人数の制限。 http://www.facebook.com/help/?faq=12576#!/help/?faq=202545109787461

イベント メンバーは、私が送信したメッセージを受信して​​いません。 http://www.facebook.com/help/?page=786#!/help/?faq=188295427885002

于 2011-08-04T04:50:56.027 に答える