Пређи на садржај

OpenSocial

С Википедије, слободне енциклопедије

OpenSocial je javna specifikacija koja definiše komponente hosting okruženja i niz zajedničkih aplikativnih programskih interfejsa za web-based aplikacije. U početku je dizajniran za Aplikacije društvenih mreže i razvijen je od strane Google-a zajedno sa Majspejs-om i brojnim drugim društvenim mrežama. U novije vreme usvojen je kao opšta upotreba dužine trajanja okruženja za omogućavanje nepouzdane i delimično pouzdane komponente iz trećih lica da rade u postojećoj aplikaciji. Open Social fondacija takođe podržava brojne druge otvorene web aplikacije. Ovo uključuje Oauth i Oauth 2.0, protok aktivnosti i prenosni kontakt, između ostalih.

Društvena mreža

Pušten je 1.novembra 2007. godine.[1] Glavna ideja Open Social tehnologije je u tome da web aplikacije pisane pomoću Open Social API-ja budu interoperabilne sa bilo kojim social network sistemom koji je takođe zasnovan na Open Social-u. Pomoću ove tehnologije mogu se kreirati tzv. kontejneri (container) koji predstavljaju social networking sisteme kao što su iGoogle, MySpace, Ning, Orcut, Linkedln, Hi5 i drugi i aplikacije koje se mogu ugraditi u kontejnere. Koncept je sličan Facebook konceptu, ali ipak postoje suštinske razlike. U slučaju Facebook-a, jedini kontejner je Facebook i aplikacije se mogu izvršavati isključivo na Facebook-u. Open Social podrazumeva da bilo koji social network sistem može biti Open Social kontejner, i svaka Open Social aplikacija se može izvršavati na bilo kojem od njih.

Na osnovu HTML i Java Script, kao i Google Gadgets okvir, Open Social obuhvata više APIs funkcija za društveni softver aplikacijama da pristupe podacima društvene mreže. U verziji 0.9 Open Social je dodao podršku za jezik.[2] Ovaj jezik se naziva OSML i omogućava tag-based pristup podacima iz Open Social APIs s tim što se prethodno pošalje zahtev klijentu. Takođe definiše oznaku šablon sistema i usvaja jezički izraz zasnovan na Java Expression Language. Cilj Open Social-a je da korišćenjem zajedničkih API-ja bude kreirano što više različitih aplikacija koje će biti dostupne svim korisnicima i koje će biti korišćene u različite svrhe. Web developeri mogu kreirati aplikacije korišćenjem standardnog JavaScript-a i HTML-a, a te aplikacije se mogu izvršavati na bilo kojoj platformi na internetu koja se temelji na Open Social API-jima. Takva platforma (kontejner) daje developerima mogućnost da pristupe social informacijama (informacije o korisnicima, njihovim aktivnostima, prijateljima itd.). U okviru API-ja postoje metode za pristup ovakvim informacijama koje su u kontekstu datog kontejnera.

OpenSocial platforma (kontejner)

[уреди | уреди извор]

Da bi jedan sajt bio Open Social kontejner potrebno je ispuni određene uslove:

  • Kao prvo, mora da implementira sve metode iz sledećih JavaScript fajlova Open Social API-ja
  • Mora da koristi samo određene mehanizme proširenja za bilo kakvu vrstu specifične nadogradnje kontejnera

Ukoliko postoji potreba da kontejner sadrži neke posebne osobe, aktivnosti ili neke druge objekte, polja sa ovakvim objektima moraju biti definisana u okviru enum strukture i namespace-u kontejnera i da bi aplikacije mogle da manipulišu njima okruženje im mora odobriti pristup ovakvoj vrsti “posebnih” polja.

  • Mora da zadovoljava Gadgets API specifikaciju

Ukratko, ovo se odnosi na rukovanje 3 vrste zahteva:Gadget Rendering Request, Gadget Metadata Request i JavaScript Request. Za JavaScript API-je, potrebno je implementirati gadgets core JavaScript API.

  • Mora da obezbeđuje podršku za RESTful Protocol specifikaciju

Što znači da kontejneri podržavaju predstavljanje podataka u JSON, XML i AtomPub obliku. Open Social koristi HTTP GET metodu za preuzimanje podataka, PUT za izmene (update), POST za kreiranje novog objekta (osobe, aktivnosti ili podataka aplikacije), DELETE za brisanje.

RPC protokol je alternativa za RESTful protokol, podržava istu reprezentaciju podataka kao i REST, samo je malo više privržen JSON-u.

OpenSocial aplikacija (gadget)

[уреди | уреди извор]

Da bi neka aplikacija(gadget) mogla da se pokrene, neophodno je da se ugradi u neki od Open Social kontejnera. Većina web sajtova koji su Open Social kontejneri, koristi Apache Shinding Reference implementaciju. Reference implementacija predstavlja standard po kojem se ravnaju sve ostale implementacije. Apache Shinding Reference implementacija je Open Source standard za Open Social. Sadrži server-side i client-side kod. Nakon implementacije, on će Open Social kontejneru omogućiti renderovanje Open Social gedget-a u pretraživaču.

Kreiranje veza između korisnika je ključna stavka u prelazu multi-user aplikacije u socijalnu mrežu. Veze omogućavaju korisnicima da međusobno interaguju, dele različite vrste informacija, da dele informacije u različitim formama i budu stalno u kontaktu. Postoje dva načina predstavljanja grupa ljudi u OpenSocial-u. To su: VIEWER_FRIENDS i OWNER_FRIENDS. Tako da su, na primer u trenutku kada posmatrate profil nekog svog prijatelja, VIEWER_FRIENDS vaši prijatelji, a OWNER_FRIENDS prijatelji vašeg prijatelja čije profil posmatrate. Ukoliko posmatrate svoj profil VIEWER_FRIENDS i OWNER_FRIENDS biće i jedno u drugo vaši prijatelji. Ukoliko kontejner podržava “anonymous profile browsing” (koncept koji zabranjuje korisnicima interneta koji nemaju nalog na datoj socijalnoj mreži da pristupaju podacima o korisnicima socijalne mreže), aplikacija neće biti u mogućnosti da pristupi informacijama u okviru VIEWER_FRIENDS parametra. Važno je istaći da VIEWER i OWNER ne moraju biti u bilo kakvoj vezi. Dakle, VIEWER i OWNER mogu biti prijatelji, ali ukoliko posmatrate profil nekog korisnika socijalne mreže kojeg nemate u listi prijatelja, nema veze između vas koji ste VIEWER i onog sa druge strane koji je OWNER. Za pristup informacijama o prijateljima prijatelja (“friends of friends”) koriste se upiti koji vraćaju NETWORK_DISTANCE parametar. Slično tome OpenSocial kontejneri mogu imati podršku i za upite koji vraćaju informacije o prijateljima koji su prijatelji prijatelja (“friends of friends of friends”).

Za vođenje evidencije o toku aktivnosti koje su korisnici OpenSocial kontejnera, OpenSocial ima definisanu js klasu opensocial.Activity. Ove aktivnosti mogu biti interakcija sa kontejnerom (kao što je npr. update-ovanje izgleda profila ili informacija na profilu, ugradnja novog gadget-a i slično) i interakcija sa OpenSocial aplikacijom (slanje virtualnih poklona prijateljima na socijalnoj mreži ili beleženje novog high score-a prilikom učešća u nekoj igri).

Priča se da je deo većeg socijalnog umrežavanja inicijativa Googla-a pod šifrom "Maka-Maka", koja se definiše kao značenje "intimni prijatelj sa kojim je jedan od uslova primanje i davanje slobodno" na Havajskom.[3]

Inicijalna podrška Open Social Propusta u bezbednosti, sa ličnim opisom, amaterski programer demonstrira eksploatisanje od uređaja RockYou na Plaxo i od Ning društvenih mreža pomoću uređaja iLike.

Open Social se obično opisuje kao otvorenija višeplatformska alternativa Fejsbuk platforma, vlasnički servis od popularnog socijalnog mrežnog servisa Fejsbuk-a. Korišćenjem Open Socket, korisnik može da pokrene Open Social uređaj unutar Fejsbuk-a.[4][5]

  1. ^ „Google Launches OpenSocial to Spread Social Applications Across the Web”. Google. 01. 11. 2007. Приступљено 31. 10. 2007. 
  2. ^ „OpenSocial Specification Release Notes”. Архивирано из оригинала 11. 08. 2011. г. Приступљено 18. 08. 2011. 
  3. ^ „maka.maka”. Nā Puke Wehewehe ʻŌlelo Hawaiʻi. Ulukau: The Hawaiian Electronic Library. Архивирано из оригинала 18. 09. 2013. г. Приступљено 01. 11. 2007. 
  4. ^ „OpenSocket on Facebook | Facebook”. Apps.facebook.com. Приступљено 11. 01. 2013. 
  5. ^ „OpenSocket”. OpenSocket. Архивирано из оригинала 31. 12. 2010. г. Приступљено 11. 01. 2013. 

Spoljašnje veze

[уреди | уреди извор]