2013-06-03 31 views
5

Tôi đang cố gắng triển khai Cập nhật thời gian thực trên Facebook theo cách phù hợp. (https://developers.facebook.com/docs/reference/api/realtime/).Cập nhật thời gian thực trên Facebook chỉ trả về "changed_fields": ["feed"] và không phải là nhận xét thực tế

Mọi thứ được thực hiện theo các hướng dẫn được đưa ra trong trang này, nhưng JSON trả về từ Facebook thiếu thông tin thú vị.

Các JSON là ví dụ:

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

Nhưng trường hợp gây ra sự kiện này là một nhận xét về facebook-page. Tôi muốn biết thêm thông tin. Ví dụ: id của bài đăng, id của nhận xét và thông tin quan trọng tương tự.

Tại sao Facebook chỉ trả lại rằng trường "nguồn cấp dữ liệu" đã thay đổi chứ không phải id của nhận xét?

Kính trọng, Jonas

Trả lời

0

Lý do cho điều này khá dễ dàng khi tôi nhận ra điều đó.

Trang nhà phát triển Facebook cho các trang (https://developers.facebook.com/docs/reference/api/page/#realtime). Câu hỏi này là kết quả nếu người ta chỉ thực hiện bước 1 và không thực hiện bước 2 và 3.

Sau khi thực hiện điều đó và cẩn thận sử dụng access_token cho trang, mọi thứ bắt đầu hoạt động và bây giờ nó hoạt động tốt. Không thực sự trong vòng năm giây hứa hẹn của Facebook, nhưng đủ tốt.

Tôi cũng nhận thấy rằng việc sử dụng api như Facebook SDK cho .NET (http://facebooksdk.net/) có thể rất bổ ích, nhưng nó có thể khiến bạn khó hiểu được api được trình bày bởi Facebook.

+3

Không chắc chắn lý do tại sao điều này được chấp nhận. Rõ ràng câu hỏi là về một người dùng chứ không phải một trang. –

+0

Nếu không thực hiện bước 2 và 3, thì Facebook (cập nhật theo thời gian thực) không biết ứng dụng nào được kết nối với trang và do đó chỉ trả về nguồn cấp dữ liệu. Do đó, phản hồi có thể đánh lừa bạn và khiến bạn nghĩ rằng nó liên quan đến người dùng chứ không phải một trang. Facebook API là một chút phức tạp và tôi đã phải dành thời gian để học cách hiểu nó phù hợp với nhau như thế nào. –

1

Cập nhật: tìm thấy này, âm thanh đầy hứa hẹn: http://allfacebook.com/page-posts-real-time-updates-api_b111225

Tôi có cùng một vấn đề. Theo như tôi có thể nói, hệ thống của FB được thiết kế để làm, mặc dù chúng tôi thực sự muốn có được thông tin chi tiết cao hơn (và nó có thể hiệu quả hơn cho các máy chủ của FB, vì hiện tại, các nhà phát triển có thể có để viết mã mà khai thác thông qua nguồn cấp dữ liệu để tìm nhận xét có liên quan hoặc như vậy, có thể tìm nạp khá nhiều thứ chúng tôi qua, chỉ để nhận được một nhận xét).

Rất tiếc. Nếu bất cứ ai có bất kỳ ý tưởng tốt để cung cấp, tôi sẽ biết ơn. Chúng tôi muốn ứng dụng của chúng tôi phản ứng với các nhận xét nhất định trên tường của người dùng mà chúng tôi đã cập nhật trạng thái của riêng người dùng, nhưng để làm điều đó cho nhận xét, có vẻ như chúng tôi sẽ phải xóa toàn bộ nguồn cấp dữ liệu (có vẻ không thực tế về quy mô), vì nhận xét mới có thể nằm trong bản cập nhật trạng thái cũ.

+0

Chúng tôi đã thực hiện việc cập nhật thời gian thực theo api, https: //developers.facebook .com/docs/reference/api/page/# realtime và nó hoạt động tốt. Tuy nhiên, việc triển khai của chúng tôi liên quan đến một trang chứ không phải người dùng. Cập nhật –

+0

: tính đến ngày 16 tháng 1 năm 2014, điều này vẫn chưa được triển khai trong API thời gian thực –

-1

Bạn nhận RTU từ "Web hooks" - đó là tính năng đơn giản hơn.

Nếu bạn muốn nhận RTU với định dạng tiếp theo: {"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"}}]}]}

bạn nên thiết lập RTU với sự giúp đỡ của Graph API.Dưới đây bạn có thể thấy một vài ví dụ về các hoạt động:

View RTU subscriptions

Subscribe For RTU

Hy vọng nó sẽ hữu ích