2011-04-28 61 views

Trả lời

2

Bạn phải sử dụng các api thời gian thực từ facebook: http://developers.facebook.com/docs/api/realtime/

Để làm những gì bạn yêu cầu, bạn phải đăng ký page đối tượng và kết nối feed của họ.

Để thêm một thuê bao bạn phải gửi một yêu cầu POST để:

https://graph.facebook.com/<app-id>/subscriptions?access_token=... 

Và cho rằng bạn cần một thẻ truy cập mà bạn có thể nhận được tại địa chỉ:

https://graph.facebook.com/oauth/access_token?client_id=<app-id>&client_secret=<app-secret>&grant_type=client_credentials 

Các lĩnh vực mà phải trong dữ liệu POST là:

  • object - Loại đối tượng cần giám sát, ví dụ: “Người dùng” hoặc “quyền”. Bạn sẽ theo dõi tất cả các đối tượng thuộc loại đó; ví dụ: tất cả người dùng ứng dụng của bạn.
  • fields - Danh sách được phân cách bằng dấu phẩy. Đây là danh sách các thuộc tính hoặc các kết nối trên đối tượng được chỉ định. Ví dụ: để theo dõi các thay đổi đối với tên, ảnh, bạn bè và Nguồn cấp dữ liệu của người dùng, bạn sẽ chỉ định "tên, ảnh, bạn bè, nguồn cấp dữ liệu"
  • callback_url - URL gọi lại mà Facebook sẽ đăng cập nhật đăng ký.

Và bạn có thể chỉ định

  • verify_token - Một dấu hiệu đục thuê bao-với điều kiện sẽ được lặp lại trong yêu cầu xác minh để hỗ trợ các thuê bao trong việc xác định mà yêu cầu đăng ký đã được xác minh. Nếu điều này không được bao gồm, sẽ không có mã thông báo nào được đưa vào yêu cầu xác minh. Đây là thông số kỹ thuật của PubSubHubbub.

Khi url callback của bạn đã được xác minh, bạn sẽ nhận được bản cập nhật khi thay đổi dữ liệu trong thức ăn chăn nuôi của trang trên url callback của bạn như các đối tượng json, đây là một ví dụ cho một người sử dụng:

{ 
"object": "user", 
"entry": 
[ 
    { 
     "uid": 1335845740, 
     "changed_fields": 
     [ 
      "name", 
      "picture" 
     ], 
     "time": 232323 
    }, 
    { 
     "uid": 1234, 
     "changed_fields": 
     [ 
      "friends" 
     ], 
     "time": 232325 
    } 
] 
} 

Bạn cũng có thể thực hiện GET và DELETE trên cùng một URL để nhận danh sách các đăng ký của bạn và xóa các đăng ký.

Nhưng tất cả các chi tiết có trong facebook doc

+3

Một khác biệt nhỏ tuy nhiên là không giống như Twitter truyền api, Facebook cập nhật theo thời gian thực không đưa ra sự thay đổi thực tế làm thức ăn. Nó chỉ cho biết rằng có một bản cập nhật trên đối tượng đã nói. Một sau đó phải kéo đối tượng một cách rõ ràng và tìm ra sự thay đổi. – Balakrishnan

+0

có bất kỳ mã mẫu nào có sẵn trong Ruby không? Tôi tìm kiếm một chút nhưng có vẻ như không nhiều người đang sử dụng đồ thị thời gian thực api ... nó là một chút lạ. – Mesut

+0

Về lý thuyết, công việc này hiện đang hoạt động để có được các cập nhật trên tường trên một trang, nhưng tôi không thể làm cho nó hoạt động. – Leopd

Các vấn đề liên quan