Obter amigo de identificação usando o Facebook api para tag foto enviada
-
21-12-2019 - |
Pergunta
Eu tenho o seguinte código
$taggable = (new FacebookRequest(
$session,
'GET',
'/me/friends'
))->execute()->getGraphObject()->asArray();
echo '<pre>' . print_r( $taggable, 1) . '</pre>';
Eu estou tentando obter o id da lista de amigos que também está usando o aplicativo, de modo que o usuário pode marcar a foto com esses amigos.Agora o código imprime os amigos que também estão usando o aplicativo, seu nome e id.Eu quero para obter o id de um amigo para sub em parâmetros de "tags", no entanto o getProperty ("id") não funciona e dá-me um erro.Eu sou novo para facebook api então, eu estou familiarizado com a sintaxe.
Como faço para obter o id do amigo do sub em:
'tags' => '[{\'tag_uid\': \'testing\'}]',
Obrigado
Solução
Uma vez que você fez a chamada de API, você terá uma lista de amigos, como:
{
"data": [
{
"name": "aaa",
"id": "111"
},
{
"name": "bbb",
"id": "222"
},
{
"name": "ccc",
"id": "333"
},
...
]
}
Supondo que você quer marcar a primeira pessoa, você pode obter o ID como isso:
$id = $taggable['data'][0]->id;
Esse vai definir $id
como 111
.
Em seguida, você pode chamar a API para marcar a Foto, como segue:
// set tags object (user_id, and position)
$tags = array( array( 'tag_uid' => $id, 'x' => 0, 'y' => 0 ) );
// call api, with json_encoded $tags
$tag = (new FacebookRequest( $session, 'POST', '/{photo_id}/tags', array( 'tags' => json_encode( $tags ) ) ))->execute()->getGraphObject()->asArray();
// output result
echo '<pre>' . print_r( $tag, 1 ) . '</pre>';