Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Send Facebook App Request/Invite using Graph Api

I have the following code that would get ur friends list using graph api

function getFriendsList(){

    $response = $this->api('/me/friends'); 
     return $response;

    }

This returns friends id and name. using graph api

I then execute this code in my joomla module:

$fbClient = JFBConnectFacebookLibrary::getInstance();
$fbUserId = $fbClient->getUserId(TRUE);   

//If FB User
if($fbUserId){

$f_list = $fbClient->getFriendsList();

after i get the array i display the firends picture

foreach ($f_list as $friend) {
    for($i = 0; $i < count($friend); $i++)
        { 

        echo '<img src="http://graph.facebook.com/'.$friend[$i]['id'].'/picture"><br/>';
        }
   }

}

This would create the profile photos of my friends.

My question is how do i create an onlick even so that when i click the photo i can send an individual facebook app request. ???

like image 762
ivias Avatar asked Dec 21 '22 09:12

ivias


2 Answers

Sending Facebook app requests are not available via the graph api. You can use the app requests javascript dialog to send the request though, you would just need to specify the user's id in the "to" property as detailed in the documentation.

Sample function:

<script>
  FB.init({ appId: '**appId**', status: true, cookie: true, xfbml : true });

  function sendRequest(to) {
    FB.ui({method: 'apprequests', to: to, message: 'You should learn more about this awesome site.', data: 'tracking information for the user'});
    return false;
  }
</script>

Then just wire an onclick for each image to something like onclick="return sendRequest('**friendId**');"

like image 186
bkaid Avatar answered Dec 24 '22 00:12

bkaid


I had same problem. Though it is very late for answering question, it will help somebody. That's why answering this question.

Instead you can call this function in javascript: it will give you all friends with photos. Also group of friends who are currently using same app. You can send request to any of them.

function sendRequestViaMultiFriendSelector() {
    FB.ui({
        method: 'apprequests',
        message: "You should learn more about this awesome site."
    });     
}
like image 39
Somnath Muluk Avatar answered Dec 24 '22 00:12

Somnath Muluk