2012-10-31 2 views

답변

1

당신이 데이터베이스를 사용한다고 가정합니다. 사용자가 친구를 초대하면 보낸 요청의 응답에는 response.request와 response.to가 포함됩니다. 이 request_id를 사용자 및 사용자의 친구 ID (초대 된 친구)와 함께 저장하십시오.

function inviteuser(){ 
    FB.ui({ 
     method: 'apprequests', 
     message: "Apllications message goes here", 
     exclude_ids: [1, 2, 3], 
     filters:['app_non_users'], 
     data: "optional additional data you may pass for tracking" 
    }, function (response) { 
     if (response && response.to) { 
     //callback function, will be called after user invites his friend, response object will contain list of all users invited 
     //save response.to and response.request in database 
     } 
    }); 
} 

사용자가 즉 앱 요청 알림을 클릭하여 응용 프로그램 캔버스 페이지로 오는 초대를 수락, 페이스 북은 쉼표 "request_ids"매개 변수에 ID를 분리 보냅니다. 이 요청 ID를 가져 와서 데이터베이스와 비교하여 필요한 정보를 얻을 수 있습니다.

2

하면 당신은 너무 당신의 전송 요청 기능처럼 될 것 sender_name를 보낼한다고 가정 해 봅시다 추적 데이터를 추가 할 수 있습니다 초대 전송하는 동안 :

FB.ui({ 
     method: 'apprequests', 
     message: "has invited you to the app", 
     filters:['app_non_users'], 
     data: sender_name 
    }, function (response) { 
    }); 

수신기는 요청 통지를 클릭하면 응용 프로그램에 올 때 보내면 데이터를 가져 와서 다음과 같이 PHP에서 요청을 삭제할 수 있습니다 :

if(isset($_GET['request_ids'])) 
    { 
     $request_ids = $_GET['request_ids']; 
     $request_ids = explode(",", $request_ids); 
     foreach($request_ids as $request_id) 
      { 
       $request_object = $facebook->api($request_id); 
       if(isset($request_object['data'])) $req_data = $request_object['data'];//you can now use the sent $req_data your way 
       $full_request_id = $request_id."_".$current_user_fbid; 
       $facebook->api("$full_request_id","DELETE"); 
      } 
    } 
관련 문제