Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Facebook API - dodawanie wpisu na tablicę fanpaga
Forum PHP.pl > Inne > Hydepark
phpion
Witam,
mam pewien problem, przetrzepałem dokumentację Facebook API oraz Google i nie znalazłem odpowiedzi więc pytam tutaj.

Mam serwis, w którym użytkownicy dodają powiedzmy artykuły. W jaki sposób po dodaniu przez użytkownika wrzucić od razu artykuł na fanpage? Dodam, że użytkownicy nie są zalogowani za pomocą FB.

Wszystkie przykłady jakie znalazłem zawierały $facebook->getUser() czyli użytkownik musiał być zalogowany za pomocą FB. U mnie nie ma czegoś takiego. Finalnie spłodziłem kod:
  1. public function post($message) {
  2. $ci = get_instance();
  3.  
  4. $ci->config->load('facebook');
  5. $config = $ci->config->item('facebook');
  6.  
  7. $facebook = new Facebook($config);
  8. $facebook->setAccessToken($config['accessToken']);
  9.  
  10. try {
  11. $result = $facebook->api('/'.$config['pageId'].'/feed', 'post', array(
  12. 'from' => $config['pageId'],
  13. 'message' => (string)$message
  14. ));
  15.  
  16. if (is_array($result) && isset($result['id'])) {
  17.  
  18. }
  19. }
  20. catch (Exception $e) {
  21. //echo $e->getMessage();
  22. }
  23. }

Generalnie on działa, posty zostają umieszczone na tablicy fanpage. Jest tylko jeden problem. Do wykonania tej operacji korzystam z access token, którego termin ważności to 60 minut. Czytałem o przedłużaniu jego ważności, ale nie bardzo chce to zadziałać.

Próbowałem na bieżąco pobierać access token spod https://graph.facebook.com/oauth/access_token ale przy próbie dodania wpisu otrzymuję:
Cytat
(#200) The user hasn't authorized the application to perform this action

Namierzyłem informację, że access token można pobrać spod /me/accounts, ale tutaj otrzymuję:
Cytat
An active access token must be used to query information about the current user.


Jeśli ktoś robił coś podobnego - proszę o pomoc.

Przy okazji: dziwna sprawa. Jeśli do wysyłanych parametrów dodam np. description to jako autor wpisu widnieję ja, a nie fanpage. Jeśli natomiast zostawię jak jest (nawet bez parametru from) to autorem wpisu jest fanpage (i tak powinno być).

//Edit:
Może problem leży gdzie indziej, ale tego też nie znalazłem. Może to kwestia uprawnień aplikacji dla danego fanpaga? Nie znalazłem jednak nigdzie takowych ustawień. Czy da się zatem nadać uprawnienia dla danej aplikacji do dodawania wpisów na dany fanpage?

//Edit 2:
Czyżby kupa?
http://stackoverflow.com/questions/9787592...ugh-permissions
:/
bim2
Próbowałeś offline_access ? Wtedy token masz na 60 dni chyba.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.