Hei jeg er veldig nytt for koding i PHP og Messenger Bots.
Jeg lurte på hvordan jeg skulle få tilgang navnet på noen som var meldinger mitt chat bot.
Hei jeg er veldig nytt for koding i PHP og Messenger Bots.
Jeg lurte på hvordan jeg skulle få tilgang navnet på noen som var meldinger mitt chat bot.
Den brukerprofil API kan hjelpe deg.
Bruk det event.sender.idmottatt fra messenger bot server (/ webhook), og følger forespørselen nedenfor
curl -X GET "https://graph.facebook.com/v2.6/<USER_ID>?fields=first_name,last_name,profile_pic,locale,timezone,gender&access_token=<PAGE_ACCESS_TOKEN>"
så du kan få den tilbake JSON nedenfor
{
"first_name": "Peter",
"last_name": "Chang",
"profile_pic": "https://fbcdn-profile-a.akamaihd.net/hprofile-ak-xpf1/v/t1.0-1/p200x200/13055603_10105219398495383_8237637584159975445_n.jpg?oh=1d241d4b6d4dac50eaf9bb73288ea192&oe=57AF5C03&__gda__=1470213755_ab17c8c8e3a0a447fed3f272fa2179ce",
"locale": "en_US",
"timezone": -7,
"gender": "male"
}
Du kan bruke under PHP tekstutdrag for å få navnet på brukeren
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL, 'https://graph.facebook.com/v2.6/<USER_ID>?fields=first_name,last_name&access_token=<PAGE_ACCESS_TOKEN>');
$result = curl_exec($ch);
curl_close($ch);
$obj = json_decode($result);
echo 'Hi ' . $obj['first_name'] . ' ' . $obj['last_name']
@Rajesh Hedge
Koden har en liten feil:
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL, 'https://graph.facebook.com/v2.6/<USER_ID>?fields=first_name,last_name&access_token=<PAGE_ACCESS_TOKEN>');
$result = curl_exec($ch);
curl_close($ch);
$obj = json_decode($result); // *** here
echo 'Hi ' . $obj['first_name'] . ' ' . $obj['last_name']
$obj = json_decode($result, **true**);
$result trenger å bli omdannet til assosiativ array før du får tilgang til det slik: $obj['first_name']
Se http://php.net/manual/en/function.json-decode.php for detaljer.