Sto sviluppando un gioco PHP e vorrei pubblicare i punteggi migliori dei giocatori sul proprio muro/timeline di Facebook.Non è possibile pubblicare un punteggio elevato nella timeline del giocatore su Facebook
Ho creato un'applicazione Facebook e il codice PHP che sto usando per pubblicare il punteggio (come previsto da parte di Facebook per sé):
<?php
require 'facebook-sdk/facebook.php';
$app_id = MY_APP_ID;
$app_secret = MY_APP_SECRET;
$score = 1500; // this is gonna be passed someway...
$facebook = new Facebook(array(
'appId' => $app_id,
'secret' => $app_secret,
));
$user = MY_USER_ID; // to be replaced with a call to $facebook->getUser()
$app_access_token = get_app_access_token($app_id, $app_secret);
$facebook->setAccessToken($app_access_token);
$response = $facebook->api('/' . $user . '/scores', 'post', array(
'score' => $score,
));
print($response);
// Helper function to get an APP ACCESS TOKEN
function get_app_access_token($app_id, $app_secret) {
$token_url = 'https://graph.facebook.com/oauth/access_token?'
. 'client_id=' . $app_id
. '&client_secret=' . $app_secret
. '&grant_type=client_credentials';
$token_response =file_get_contents($token_url);
$params = null;
parse_str($token_response, $params);
return $params['access_token'];
}
?>
Naturalmente c'è un login e installare la sezione che Ho omesso, chiedendo all'utente di accedere e concedere i privilegi "publish_stream
" e "publish_actions
" all'app.
Questo sta funzionando con successo, le uscite delle variabili di risposta 1. Posso vedere il punteggio pubblicato utilizzando l'API Explorer di Facebook Graph, quindi presumo che tutto funzioni davvero bene e senza intoppi.
Il problema è che non sono in grado di vedere la user story presumibilmente postata su Facebook. Leggendo la documentazione mi sembra che un utente debba essere automaticamente pubblicato quando si salva un punteggio. Ad esempio, dai un'occhiata a here o here.
Qualcuno ha già risolto questo problema? Vedi qualcosa che potrei aver perso? Potete indicarmi la giusta direzione per risolvere questo problema?
Qualsiasi aiuto sarà molto apprezzato.
Hai controllato nel registro delle attività? Puoi accedervi tramite https://www.facebook.com/USER_ID/allactivity – Venu
Sei sicuro di utilizzare un token di accesso all'app valido? (ad esempio, prova a echo 'out e assicurandoti che sia quello che ti aspetti) Hai provato a replicare la richiesta in [Graph API explorer] (https://developers.facebook.com/tools/explorer/)? –
Purtroppo ho fatto entrambe le cose, come ho scritto: la partitura viene salvata da Facebook ma nessun post appare ovunque come mi aspettavo dai documenti. – HobieCat