2013-06-03 8 views
5

Próbuję zaimplementować aktualizację czasu rzeczywistego Facebooka w odpowiedni sposób. (https://developers.facebook.com/docs/reference/api/realtime/).Facebook Aktualizacja w czasie rzeczywistym zwraca tylko "zmienione_pliki": ["kanał"], a nie sam komentarz

Wszystko odbywa się zgodnie z instrukcjami podanymi na tej stronie, ale zwrócony JSON z Facebooka brakuje ciekawych informacji.

JSON jest na przykład:

{"object":"user","entry":[{"uid":"1408932149","id":"1408932149","time":1370253930,"changed_fields":["feed"]}]} 

Jednak wydarzeniem, które skłoniły zdarzenia był komentarz na facebook-PAGE. Chcę więcej informacji. Na przykład identyfikator posta, id komentarza i podobne istotne informacje.

Dlaczego zwracany jest tylko Facebook, że zmieniono "kanał" pola, a nie identyfikator komentarza?

Pozdrawiam, Jonas

Odpowiedz

0

Powód tego był dość łatwy, gdy zdałem sobie z tego sprawę.

To strona dewelopera Facebooka dla stron (https://developers.facebook.com/docs/reference/api/page/#realtime). To pytanie jest wynikiem, jeśli robi się tylko krok 1 i kończy się niepowodzeniem w wykonaniu kroków 2 i 3.

Po wykonaniu tego i ostrożnym użyciu toku dostępu dla strony wszystko zaczęło działać i teraz działa poprawnie. Naprawdę nie w ciągu pięciu sekund obiecanych przez Facebooka, ale wystarczająco dobre.

Zauważyłem również, że używanie api takich jak Facebook SDK dla .NET (http://facebooksdk.net/) może być bardzo satysfakcjonujące, ale może utrudnić zrozumienie api prezentowanych przez Facebooka.

+3

Nie wiadomo, dlaczego została przyjęta. Najwyraźniej pytanie dotyczyło użytkownika, a nie strony. –

+0

Jeśli nie wykonasz kroku 2 i 3, to Facebook (aktualizacja w czasie rzeczywistym) nie wie, która aplikacja jest podłączona do strony, a zatem tylko zwraca kanał. Dlatego odpowiedź może Cię oszukać i sprawić, że myślisz, że jest to związane z użytkownikiem, a nie ze stroną. Facebook API jest nieco skomplikowany i musiałem poświęcić trochę czasu na poznanie, jak elementy pasują do siebie. –

1

Aktualizacja: znaleziono to brzmi obiecująco: http://allfacebook.com/page-posts-real-time-updates-api_b111225

mam ten sam problem. O ile mogę powiedzieć, to właśnie zaprojektował system FB, mimo że naprawdę chcielibyśmy uzyskać wyższą informację o ziarnistości (i prawdopodobnie byłaby bardziej wydajna dla serwerów FB, ponieważ tak jak teraz, programiści mogą mieć napisać kod, który przekopuje się przez kanał, by znaleźć odpowiedni komentarz lub coś takiego, prawdopodobnie zabierając ze sobą sporo rzeczy, które przeoczyliśmy, aby uzyskać jeden komentarz).

Bummer. Jeśli ktoś ma jakieś dobre pomysły do ​​zaoferowania, byłbym wdzięczny. Chcemy, aby nasza aplikacja reagowała na pewne komentarze na ścianie użytkownika, co robimy już dla własnych aktualizacji statusu użytkownika, ale aby zrobić to dla komentarzy wygląda na to, że musielibyśmy zeskrobać cały plik danych (co brzmi niepraktycznie na dużą skalę), ponieważ nowy komentarz może dotyczyć starej aktualizacji statusu.

+0

Wdrożyliśmy aktualizacji w czasie rzeczywistym zgodnie z API, https: //developers.facebook .com/docs/reference/api/page/# realtime, i działa dobrze. Jednak nasza implementacja dotyczy strony, a nie użytkownika. –

+0

Aktualizacja: od 16 stycznia 2014 r. Nadal nie jest zaimplementowana w czasie rzeczywistym API –

-1

Otrzymujesz RTU z "Haczyków internetowych" - jest to bardziej prosta funkcja.

Jeśli chcesz otrzymywać RTU z kolejnym formacie: {"object":"page","entry":[{"id":"593349087454592","time":1445698004,"changes":[{"field":"feed","value":{"item":"post","verb":"add","post_id":"593349087454592_787861828003316","is_hidden":false,"sender_id":1442769135993502,"message":"Post #4","sender_name":"Sheva Che"}}]}]}

zalecana konfiguracja RTU z pomocą Graph API.Poniżej można zobaczyć kilka przykładów działań:

View RTU subscriptions

Subscribe For RTU

nadzieję, że będzie użyteczny

Powiązane problemy