13
NG DNG FACEBOOK OPEN GRAPH LÀ GÌ?

Ứng dụng Facebook open graph là gì?

  • Upload
    ait-jsc

  • View
    1.121

  • Download
    4

Embed Size (px)

DESCRIPTION

Tiêu đề gốc: 今話題の「Facebook Open Graphアプリ」とは何か Tác giả: Naoto Tiêu đề tiếng việt: Ứng dụng Facebook open graph là gì? Dịch bởi: Nhóm biên dịch công ty CP AI&T

Citation preview

Page 1: Ứng dụng Facebook open graph là gì?

ỨNG DỤNG FACEBOOK OPEN

GRAPH LÀ GÌ?

Page 2: Ứng dụng Facebook open graph là gì?

ADVANCED INTELLIGENCE TECHNOLOGY CO., JSC

5 Floor, Agribank Building, 266 Doi Can Str, Ba Dinh Dist, Hanoi, Vietnam. Tel: + 84 – 4 – 3762 – 4015. Fax: + 84 – 4 – 3762 – 1594. http://www.ai-t.vn

Lời mở đầu

Nhóm biên dịch thuộc Công ty Cổ phần AI&T xin gửi lời chào trân trọng tới tất cả các bạn!

Trong quá trình làm việc, chúng tôi đã dịch một số tài liệu và muốn chia sẻ cho tất cả.

Chúng tôi luôn mong muốn bản dịch truyền tải được hết nội dung và tinh thần của bài viết,

nhưng trong quá trình dịch thuật có thể còn nhiều thiếu sót, mong các bạn đóng góp ý kiến để

bản dịch hoàn thiện hơn.

Email đóng góp xin gửi về: [email protected]

Tất cả các bản dịch chỉ mang tính chất tham khảo và không nhằm mục đích kinh doanh, thương

mại, nhóm biên dịch không chịu trách nhiệm về nội dung và tác quyền.

Xin chân thành cảm ơn!

---------------------------------------------------------------------------------------------------------

Dưới đây, chúng tôi xin gửi tới các bạn bản dịch của bài viết “今話題の「Facebook Open

Graph アプリ」とは何か” của tác giả Naoto.

Link bài viết gốc: http://media.looops.net/naoto/2012/01/24/facebook_open_graph_app/

Tiêu đề tiếng Việt: Ứng dụng Facebook open graph là gì?

Page 3: Ứng dụng Facebook open graph là gì?

Ứng dụng Facebook open graph là gì?

www.media.looops.net 3/13

ỨNG DỤNG FACEBOOK OPEN GRAPH LÀ GÌ?

24/1/2012

Tác giả: Naoto

Ngày 18 tháng 1, trên nhiều báo mạng như Tech Crunch Japan, bài viết “Cuối cùng thì ứng

dụng lifestyle Facebook Open Graph kiểu mới cũng được cho ra mắt” đã trở thành tâm điểm chú

ý. Hiện nay trên trang Facebook Timeline apps đã có 78 ứng dụng được giới thiệu.

Vậy “Open Graph” là gì? Tôi thấy cũng khó tìm được câu trả lời đơn giản nào cho câu hỏi

này trong mục Open Graph trên Facebook Developers. Trong entry này, chúng ta sẽ cùng bàn về

“Ứng dụng Open Graph” trên cơ sở vừa sử dụng các document dành cho Facebook Developers

làm diễn đàn tham khảo chính, vừa tìm hiểu về các concept và mô tả kỹ thuật của “Open Graph”.

“Open Graph” và “Open Graph Procotol”

Trước hết tôi xin bắt đầu từ việc tìm hiểu các thuật ngữ có liên quan đến Open Graph. Mặc

dù sử dụng tài liệu dành cho Facebook developers để tham khảo, nhưng tôi xin lược bớt một số

chi tiết cho dễ hiểu hơn, và sẽ trình bày các ý chính mà cá nhân tôi cảm thấy phù hợp. Đồng thời,

tôi đã gắn link vào các thuật ngữ chuyên môn, các đường link này có liên kết đến thông tin gốc,

nếu như muốn hiểu rõ hơn các bạn có thể click vào đó để tham khảo

Open Graph

Page 4: Ứng dụng Facebook open graph là gì?

Ứng dụng Facebook open graph là gì?

www.media.looops.net 4/13

Hình ảnh dưới đây được tôi lấy từ website Facbook developers (Core Concepts › Open

Graph), nó sẽ có ích cho việc xem xét tổng quan về Open Graph

Ở tại vị trí trung tâm của bức hình trên là user sử dụng Facebook. Các vòng tròn ở xung

quanh chính là các Object mà Facebook có thể cung cấp cho user. Các kiểu Object được định

nghĩa trong phần Built-in Object Types. Trong entry này, Object được hiểu là một yếu tố cấu

thành của Social Graph, còn ở ngoài phạm vi entry này, Object còn được định nghĩa bao gồm cả

những Object có khả năng sử dụng trong Graph API như là User và Page.

Đường thẳng nối giữa các object với nhau được gọi là “action (hay edge)” trên lược đồ của

Open Graph. Trong khung màu xanh được hiển thị trên các đường thẳng này có các động từ

“ like”, “listen”, “watch”, “cook”, đó chính là Built-in Action Types (Vào thời điểm tham khảo

23/01/2012 trong tài liệu dành cho Facebook Developers mới chỉ có giải thích về động từ

Page 5: Ứng dụng Facebook open graph là gì?

Ứng dụng Facebook open graph là gì?

www.media.looops.net 5/13

“watch” ). Riêng động từ “cook”, tôi cũng không rõ nó có phải là một động từ mới được công

nhận trong Open Graph không (Tham khảo “Submit for Approval” về việc yêu cầu và xác nhận

động từ).

Object Types có thể lựa chọn trên màn hình setting của Open Graph

Nếu suy đoán qua những từ ngữ được dùng trong tài liệu (như expand, extend) có thể tóm

lại về Open Graph, đó là “một dạng thức mở rộng đối với bên thứ 3 (third party)” hướng tới hệ

thống dữ liệu có liên quan đến một core của Facebook được gọi là “Social Graph”. Nếu nói đến

dạng thức mở rộng thì hiện có Graph API đang được sử dụng rộng rãi. Trong Graph API, cùng

một API cho phép “truy cập” (access) đến Facebook Social Graph và cung cấp thuộc tính mở

rộng, còn Open Graph có thể cung cấp thuộc tính mở rộng cho các đối tượng là “object và action

trong Social Graph”, đó là một khác biệt có thể nhận thấy rõ. Nếu bạn là một developer đã từng

sử dụng khái niệm đa hình Polymorphism trong thiết kế, cho dù nói các Object ở đây bao gồm cả

các động thái (Method object) được gọi là “action” (sẽ được đề cập ở phần sau) thì có lẽ cũng

không gây ảnh hưởng gì. Thực tế, action ở đây không phải là chỉ có thể thiết lập được các logical

name (“cook”, “listen”, “like”) mà còn có thể định nghĩa đến cả properties.

Open Graph Protocol (OGP)

Page 6: Ứng dụng Facebook open graph là gì?

Ứng dụng Facebook open graph là gì?

www.media.looops.net 6/13

Trên các diễn đàn SEO và các diễn đàn thu hút một lượng lớn người dùng, OGP nhiều lần

được giới thiệu giống như là “Method của FBO (Facebook Optimize)”. Bản thân nó là đặc tả kỹ

thuật (spec) của một bộ siêu dữ liệu Metadata, đóng vai trò định nghĩa giúp cho máy tính dễ xử

lý các thông tin trên webpage (Để biết thêm thông tin, các bạn có thể tham khảo trong bài viết

“SEO – thế hệ sau của Semantic Web và Facebook OGP” trên blog này). Facebook OGP đã định

nghĩa các thông số kỹ thuật liên quan đến việc trao đổi dữ liệu giữa Facebook và các website bên

ngoài, vì thế có thể thu thập được thông tin từ các website ngoài vào trong Facebook Social

Graph. OGP được giới thiệu với vai trò là giải pháp cho vấn đề cải thiện PV và viral, đã tập trung

các ưu đãi gắn liền với Facebook (các website chia sẻ được hiển thị trên trang Facebook nhiều

hơn và hiệu quả hơn) để mở rộng cộng đồng.

Bản chi tiết thông số kỹ thuật của OGP có thể tham khảo tại Open Web Foundation

Agreement (OWFa) 0.9. Open Web Foundation (OWF) được thành lập năm 2007 bởi David

Recordon – được ghi danh với tư cách là thành viên của Six Apart, là người đi đầu trong việc

phát triển và phổ biến OpenID. Ngoài những thành viên cá nhân, Google, Facebook, Microsoft,

Yahoo!, Salesfore cũng tham gia vào tổ chức này, và trong số đó, Facebook đã thở thành trung

tâm đưa ra quyết sách.

Trong phần document có liên quan đến Open Graph – chủ đề của entry này, đều có lời giải

thích “Version mới đây của Open Graph được tung ra với mục đích giúp cho bên thứ ba (third

party) dễ dàng chia sẻ page và website của mình đến với các user sử dụng Facebook”. Thực tế,

OGP cũng có nhiều điểm chung với các Built-in Object Types trong Open Graph. Tuy nhiên, với

“ogp.me” được quản lý bởi tổ chức phi lợi nhuận, có mục tiêu việc xây dựng và phát triển các

bảng chi tiết thông số kỹ thuật liên quan đến Web dựa trên những thảo luận cộng đồng người sử

dụng (community base) và “Facebook Open Graph Protocol” được các doanh nghiệp tư nhân

như Facebook xây dựng nhằm mục đích mở trộng website của chính mình, tôi nghĩ chúng nên

được phát triển riêng rẽ một cách vững mạnh thì tốt hơn. Với suy nghĩ như vậy, thì liệu lời giải

thích rằng Facebook OGP là một tập con của Open Graph, và có một phiên bản từ trước đó sẽ

được lý giải dễ dàng hơn phải không?

Đặc trưng của ứng dụng Open Graph

Page 7: Ứng dụng Facebook open graph là gì?

Ứng dụng Facebook open graph là gì?

www.media.looops.net 7/13

Ở trong các mục trước, Open Graph được chỉ ra là một dạng thức mở rộng hướng đến bên

thứ 3 của Social Graph, là một ứng dụng có liên quan đến các định nghĩa về Object và Action, có

khả năng truy cập vào các Object, khác với Graph API.

Ứng dụng Open Graph đã sử dụng giao thức Open Graph được gọi là “Ứng dụng

Timeline” - Ứng dụng Timeline, được phân biệt với các ứng dụng khác dựa trên hình thức biểu

hiện. Các đặc trưng của ứng dụng Open Graph được liệt kê như dưới đây.

Có thể sử dụng các action và object do mình tự định nghĩa

Có thể nhận được “sự đồng ý hiển thị các activity trên giao diện timeline” của user.

Dưới đây tôi sẽ viết về từng đặc trưng riêng.

Object và action do mình tự định nghĩa

Trong ứng dụng Open Graph, các app developer có thể định nghĩa thêm nhiều dạng action

khác ngoài action “Like”. Đồng thời, cũng có thể tạo ra được các Object tương ứng là đối tượng

của action.

Page 8: Ứng dụng Facebook open graph là gì?

Ứng dụng Facebook open graph là gì?

www.media.looops.net 8/13

Trong màn hình setting ứng dụng được hiển thị trong dashboard của Facebook developers

hiện tại, chọn menu “Edit Open Graph”, ở đây bạn có thế thiết lập các Object, Action,

Aggregations mà ứng dụng sử dụng. Object là “một thực thể đơn – mono” mà ứng dụng chia sẻ

trong Social Graph, ví dụ như là “Tin tức sự kiện”, “Công thức nấu ăn”, “Âm nhạc”. Action thể

hiện các hoạt động (activity) đối với object. Nếu object là “tin tức sự kiện” thì action sẽ là “read”,

“chia sẻ với bạn bè”, nếu object là “công thức nấu ăn” thì action sẽ là “cook” chẳng hạn. Đó là

một số object có sẵn trên facebook. Aggrerations là chức năng tùy chỉnh cách thức trình bày (mô

thức layout) hiển thị action trên giao diện timeline.

Trong bài viết trên Tech Crunch, ngày 19 tháng 1 có giới thiệu các cặp Action và Object

được release mới nhất. Tôi xin trích dẫn ra một vài ví dụ.

Ví dụ về Object và action

Đã mua [hàng hóa] (E-commerce)

Đã mua vé cho các [ sự kiện] (Mua bán vé)

Đã quyên góp cho [các hội từ thiện/project] (Quyên góp - Ủng hộ tiền)

Đã đến thăm quan/ trọ lại tại các [địa điểm du lịch] (Du lịch)

Đã chia sẻ [nội dung] (chia sẻ)

Đã comment [các bài viết]/ trả lời [các câu hỏi] (Comment/Q&A)

Page 9: Ứng dụng Facebook open graph là gì?

Ứng dụng Facebook open graph là gì?

www.media.looops.net 9/13

Đã kết nối với [username] (Professional network)

Đã nấu ăn theo [công thức] (Website dạy nấu ăn)

Đã học [khóa học] (E-learning)

Nội dung trong dấu ngoặc vuông [] là Object, Động từ là Action, nội dung trong dấu ngoặc

đơn () là các ví dụ về các website.

Sự đồng ý hiển thị activity trên giao diện timeline

Khi nhận được sự đồng ý của user, thì ứng dụng Open Graph sẽ có thể hiển thị (đăng tải)

các activity trên giao diện timeline. Tuy Graph API cũng có thể hiển thị thông tin trên Social

Channels nếu như nhận được Permission, nhưng việc đăng tải activity trên ứng dụng Timeline

thì có vẻ hơi âm thầm. Liên quan đến việc đăng tải có sử dụng Graph API, trong Platform Policy

(bản Tiếng Nhật) yêu cầu phải có sự đồng ý của user ngay cả khi đã nhận được permission.

3. Dù trong trường hợp đã nhận được sự cho phép của user về việc công khai thông tin, thì

trước khi thực hiện các action thay cho user (công khai các content, tạo các event) thì cần có

được sự đồng ý từ user đó.

Facebook Platform policy (IV Point application intergration)

Mặt khác, trong ứng dụng Open Graph (Nói một cách chính xác hơn là “Ứng dụng đăng tải

action Open Graph”) có “publish_actions” với tư cách là permission đặc biệt. Tại trang

Permissions cũng có quy định “Enables your application to publish user scores and

achievements” – “Cho phép ứng dụng của bạn đăng tải điểm số và thành tích của user”, nhưng

trong phạm vi những gì bạn đọc ở Tutorial của ứng dụng Open Graph thì có lẽ permission để

đăng tải action Open Graph không khải là vấn đề đáng lo nghĩ. Đồng thời, permission này vẫn có

khả năng nhận được dù sử dụng Social Plugins như “Add to Timeline”. Dưới đây tôi xin đưa ra

một ví dụ cụ thể.

■Code(XFBML)

■Output(Dạng button)

Page 10: Ứng dụng Facebook open graph là gì?

Ứng dụng Facebook open graph là gì?

www.media.looops.net 10/13

↑ Nhấn vào “Add to Timeline” ở phía trên thì cách thức hiển thị sẽ thay đổi.

■ Hộp thoại xác nhận

Nếu nhận được permission này, sẽ có thể đăng tải các activity trên cở sở các action của

user (Trường hợp cá biệt thì cần phải có xác thực của Facebook). Đây là việc thực hiện concept

có tên “Frictionless sharing” đã được Facebook phát biểu tại F8 vào năm ngoái. Nếu như User

nhấn vào nút “Add to timeline” (tương đương với việc nhận được permission publish_actions)

trên website tin tức hay đọc, cho dù bạn không nhấn vào nút “like” thì mỗi ngày trên wall của

bạn vẫn chia sẻ activity với nội dung “đã đọc [tin tức sự kiện]”. Activity sẽ tự động chạy trên

social chanel của user mỗi lần nghe nhạc trên một ứng dụng âm nhạc, mỗi lần bạn ủng hộ trên

ứng dụng về vấn đề ủng hộ. Chức năng này có liên quan đến việc đăng tải cả những vấn đề riêng

tư, nên tôi nghĩ rằng đây là một thử thách đầy tham vọng hướng tới mục tiêu “gắn kết internet

và các hành động trong thế giới thực”.

Trong tương lai, có lẽ chỉ cần được chứng thực thôi là toàn bộ các hoạt động đều có thể

chia sẻ thông qua internet (Xét về mặt kỹ thuật là có thể). Đó sẽ là một thế giới mà khi bạn sử

dụng IC card mua nước hoa quả ở máy bán hàng tự động hay xem thông tin về vé xem phim ở

rạp chiếu phim thì loại nước mà bạn đã mua, hay bộ phim mà bạn sẽ xem sẽ đều được chia sẻ

qua internet. Tuy nhiên, với nhiều người khác, những thông tin kiểu như vậy được coi là dữ liệu

rác. Thế nên, Facebook dường như cũng đang suy nghĩ đến việc tránh hiện tượng trùng lặp dữ

liệu bằng concept có tên là “Real-time Serendipity”. Vì đây là concept khó nên trong khả năng

hiện tại của mình, tôi không thể giải thích chi tiết cho các bạn về nó, nhưng tôi cảm thấy rằng

“Nếu như có thể đặt trọng số chính xác cho các dữ liệu dựa trên cơ sở Social Graph, từ khối

Page 11: Ứng dụng Facebook open graph là gì?

Ứng dụng Facebook open graph là gì?

www.media.looops.net 11/13

lượng dữ liệu action khổng lồ của user, thì có thể cung cấp được những dữ liệu có giá trị mang

tính chất khách quan và bao quát”.

Sử dụng action riêng biệt

Để có thể thành công trước thử thách mới chứa đựng nhiều cơ hội và rủi ro giống như đã

nói ở trên, Facebook đang thận trọng trong từng bước đi của mình. Để cho timeline và feed của

user không bị ngập bởi những tin tức lặp đi lặp lại, họ đã chọn riêng đối tác phát triển ứng dụng

Open Graph, và có lẽ sẽ thực hiện kiểm chứng các action bằng cách thủ công.

Dù là trên dashboard của Developer có thể thực hiện thao tác thêm action một cách tự do,

nhưng để cho các user thông thường cũng thấy được điều đó thì cần phải gửi request lên

Facebook và phải được xác nhận. Flow của request này được viết bằng tiếng anh, nhưng thật là

may mắn là anh Oklahomer đã chúng ta giúp dịch sang tiếng Nhật. Vì guideline của review cũng

được ghi lại, nếu kiểm tra request của action thì có lẽ nên theo dõi trong đó.

Tham khảo: Submit for approval (Tips và phần dịch tiếng Nhật phần tài liệu dành cho

Facebook Developers)

Tuy nhiên, hiện tại vì mới chỉ đang trong giai đoạn chạy phiên bản beta nên Open Graph

chưa được xác thực. Website này (In the looop) cũng đang gửi request, nên trạng thái hiển thị

vẫn là “đang chờ xác nhận”.

Step 4

Trong thời gian chạy bản beta, Open Graph action chưa được xác nhận cho đến khi

timeline được áp dụng cho mọi user. Nếu ứng dụng được review thì status hiển thị tại trang

Open Graph Dashboard và Edit Action của Dev App sẽ thở thành Approved hoặc là Rejected.

Submit for approval (Tips và phần dịch tiếng Nhật phần tài liệu dành cho Facebook

Developers)

Tuy nhiên, bản thân những người phát triển ứng dụng có thể cho hiển thị Social plugins và

ứng dụng đã sử dụng Open Graph action. Vì tôi đang là người quản lý ứng dụng trên In the looop,

nên tôi cho hiển thị Social Plugin của bản beta có tên “Recommendations Bar” ở phía dưới của

website này.

Page 12: Ứng dụng Facebook open graph là gì?

Ứng dụng Facebook open graph là gì?

www.media.looops.net 12/13

Hình ảnh hiển thị Recommendations Bar

Cuối cùng

Trên đây tôi đã tập hợp lại những vấn đề tôi biết về Ứng dụng Open Graph – một topic

được quan tâm gần đây. Vì đây vẫn là bản beta và bài viết này cũng khá nhiều vấn đề liên quan

đến kỹ thuật, nên có nhiều phần vẫn chưa được kiểm chứng. Nếu có độc giả nào nhận thấy có bất

Tracking theo

Netsight

Sử dụng Internet

thông qua PC ■Home panel

. RDD panel khoảng 18000 người Tất cả những người trong gia đình từ 2 tuổi trở lên có sở hữu PH và có thể kết nối internet. . Mega panel khoảng 22000 người. Các cá nhân sửa dụng PC để kết nối internet.

■ Work panel khoản 2200

người 16 tuổi trở lên làm viêc trong công ty có môi trường làm việc có thể kết nối internet.

Cung cấp kết quả phân

tích dữ liệu trong môi

trường online

[Recommendation bar Plugin]

Khi scroll xuống phía dưới cùng của bài viết,

trạng thái sẽ được chuyển thành “Reading is

On”, và một bài báo gợi ý khác sẽ được hiển thị.

Để đăng tải Action “Read”, cần nhận được sự

xác nhận từ user bằng việc nhấn “Add to

timeline

Page 13: Ứng dụng Facebook open graph là gì?

Ứng dụng Facebook open graph là gì?

www.media.looops.net 13/13

cứ lỗi gì do dịch chưa chuẩn hay sai về kiến thức thì hãy góp ý cho tôi vào địa chỉ

[email protected], tôi rất vui lòng đón nhận.

Về tính năng này, ở trong bài viết tôi có sử dụng từ “tham vọng”, tuy nhiên tôi không thể

nào tính được tất cả các cơ hội và rủi ro của việc chia sẻ ngầm các hoạt động trong đời sống thực

của user trên internet. Vốn là một developer, tuy biết rằng thế giới thực của chúng ta đang bị hút

mạnh vào những concept được trừu tượng hóa, đồng bộ hóa và mở rộng bởi một chiều không

gian khác mà người ta vẫn gọi là internet, nhưng tôi không thể nào không cảm thấy kinh hãi

trước việc các thông tin đó bị thâu tóm chỉ bởi một doanh nghiệp duy nhất.

Vì con người rất nhanh chóng thích ứng nên 10 năm sau thì có lẽ nó sẽ trở thành một việc

hết sức bình thường, nhưng tôi nghĩ rằng khi mới đang chỉ ở giai đoạn chuẩn bị cho những thay

đổi lớn hơn sắp diễn ra, thì thật tốt khi được tự do làm những gì mình thích.

Nguồn: http://media.looops.net/naoto/2012/01/24/facebook_open_graph_app/

Dịch bởi : Công ty Cổ phần AI&T