Facebook API - frukostseminarium Nfi 1 april 2011

Preview:

DESCRIPTION

Integrera Facebook med din befintliga IT-struktur

Citation preview

Facebook APIIntegrera Facebook med din befintliga IT-struktur

Av: Fredrik Sewén // Tekniskt ansvarig på 7billion // 21 februari 2011

Kontakt: Tele: 073 980 67 75 // Mail: fredrik@7billion.se //

Twitter: sewen77 // Facebook: www.facebook.com/sewen

Inledning - Vad är Facebook APIFacebook Social pluginsFacebook Graph APIBest practices när man utvecklar mot FacebookDebugga dina applikationer

INLEDNING

INLEDNING - Vad är Facebook API?

API = Application Programming Interface

Ett gränssnitt för att interagera med Facebook

Facebook-applikationer

INLEDNING - Vad är en Facebook-applikation?

Applikation på Facebook

Iframe (XFBML)FBML

WebbapplikationXFBML

Mobilapplikation

(berörs inte i det här seminariet)

Applikation påFacebook (Iframe)

INLEDNING – Hur fungerar en Facebook-applikation?

Webbläsare(ex Internet Explorer)

WebbplatsFacebook

Request

API-anrop

Response

Http

-req

uest

Iframe

Webbapplikation

INLEDNING – Hur fungerar en Facebook-applikation?

Webbläsare(ex Internet Explorer)

WebbplatsFacebook Server

API-anrop

Http-request

INLEDNING – Vad innebär det att interagera med Facebook?

INTE:

Facebook SIDORFacebook GRUPPERFacebook PLATSER

UTAN:

Ditt innehållDitt varumärkeDin webbplatsDin webbadress

Facebook API är ett gränssnitt för att göra din webbplats eller ditt varumärke

– Socialt & personligt

SOCIAL PLUGINS

SOCIAL PLUGINS – Like-knappen

Enklaste sättet att komma igångMest känd: like(gilla)-knappen

SOCIAL PLUGINS – Open Graph protocol

Varje webbplats blir ett objekt i den Sociala GrafenGer möjlighet att påverkaObligatoriska egenskaper

og:titleog:typeog:imageog:urlog:site_name (Facebook kräver)fb:admins / fb:app_id (Facebook kräver)

Frivilliga (rekommenderade)og:description

Läs mer om Open Graph protocol: http://ogp.me/

SOCIAL PLUGINS – Exempel

SOCIAL PLUGINS – Open Graph protocol

Resultatet:

SOCIAL PLUGINS – Open Graph protocol

DessutomAdmin-sida!

Kommunicera med ”fans”

Skapa annonser

SOCIAL PLUGINS – Open Graph protocol

Statistik med Insights

SOCIAL PLUGINS – Debugga Open Graph protocol

URL Linter - http://developers.facebook.com/tools/lint/Ett snabbt sätt att få information om din url.Gör det lätt att felsöka hur Faccebook ser på din kod.

SOCIAL PLUGINS - Events

Javascript-events edge.create – när någon gillar något edge.remove – när någon ogillar något (tar bort sin “like”)

Används till att trigga andra eventExempelvis: Tracking

OBS! måste lägga till Javascript SDK

Läs mer: http://developers.facebook.com/docs/reference/javascript/

SOCIAL PLUGINS – Andra plugins

GRAPH API

GRAPH API – Facebook API:er

Core APIGraph APISocial plugins

Facebook SDKsJavascript SDKPHP SDKPython SDKiPhone SDKAndroid SDK

Advanced APIs Facebook Query Language (FQL) Facebook Markup Language (XFBML) (Old REST API) (Old Javascript Client Library)

Tredje parts SDKC# ASP.NET / VB.NETJavaRuby on RailsM.fl

GRAPH API – Vad är Graph API?

Utbyte av INFORMATION!Objekt i Facebook ”Social Graph”

ex. AlbumEventGroupLinkNotePagePhotoPostStatus messageUserVideo

Ger också möjlighet till sökningar i ”Social Graph”Sökmotorsoptimering

GRAPH API – Möjligheter

Exempel på anrop med Graph api – Testa att öppna i en webbläsare

https://graph.facebook.com/625091674 - med ID

https://graph.facebook.com/sewen - med användarnamn (samma som ovan)

https://graph.facebook.com/sewen/picture - fråga efter profilbild

https://graph.facebook.com/search?q=7billion&type=page - Sökning

https://graph.facebook.com/sewen?metadata=1 - Extra data om anropet

https://graph.facebook.com/http://www.mathem.se/recept/snabbaste-thaigrytan

GRAPH API – Möjligheter

Json svar för https://graph.facebook.com/http://www.mathem.se/recept/snabbaste-thaigrytan

{

"id": "157349154309621",

"name": "Recept p\u00e5 Snabbaste thaigrytan",

"picture": "http://profile.ak.fbcdn.net/hprofile-ak-snc4/41602_157349154309621_4505867_s.jpg",

"link": "http://www.facebook.com/pages/Recept-p\u0025C3\u0025A5-Snabbaste-thaigrytan/157349154309621",

"category": "Food",

"likes": 2,

"website": "http://www.mathem.se/recept/snabbaste-thaigrytan",

"description": "Recept p\u00e5 Snabbaste thaigrytan - Sida 36 i Mathems tidning”

}

GRAPH API – Vilken information?

Vad begränsarFacebooks användarvillkorApplikationen frågar – Användaren bestämmer (ger tillåtelse)

Extended permissionsAll tillgänglig information, så länge användaren tillåterEmail, sms, relationer, intressen, osv.Läs mer: http://developers.facebook.com/docs/authentication/permissions/

AuthenticationTidigare Facebook ConnectOauth 2.0 – Ett öppet protokoll som även används av Google och Twitter

GRAPH API – Best practice

CachingReal-time API – berättar om något uppdateratsSlipper round trips till Facebook serven

LoggingLogga minst (AnvändarID, Tid, Parametrar och värden, IP, ev. Felkoder)Om fel, kolla felmeddelande. Ofta handlar det om fel rättigheter.

RättigheterBe inte om mer rättigheter än du behöver / använderDu kan alltid be användaren om fler rättigheterTvinga aldrig en användare till något de inte vill

HastighetFacebook avbryter anrop som tar för lång tid (>12 sekunder)Testa med konto med många vänner (>500)

GRAPH API – Debugga din applikation

LocalhostSätt applikationens ”Site URL” till localhost (och eventuell port)Observera det avslutande snedtecknet

TestkontoMöjlighet för en utvecklare att skapa fler konton för att testa en applikation

beta.facebook.comVariant av facebook som har senaste uppdateringarna. Kan vara bra att kolla till då och då för att se att appen kommer fortsätta fungera.

Facebook APIIntegrera Facebook med din befintliga IT-struktur

Av: Fredrik Sewén // Tekniskt ansvarig på 7billion // 21 februari 2011

Kontakt: Tele: 073 980 67 75 // Mail: fredrik@7billion.se //

Twitter: sewen77 // Facebook: www.facebook.com/sewen

Läs mer påhttp://developers.facebook.comhttp://www.hyperarts.com/blog/