YouTube integracija sa ASP.NET aplikacijama
U posljednjem članku iz serije o integraciji popularnih servisa sa ASP.net aplikacijama, fokusiramo se na YouTube.
YouTube predstavlja najveću platformu za dijeljenje video sadržaja. Ono što je bitno spomenuti jeste da je servis besplatan i nudi ogroman broj mogućnosti za integrisanje video sadržaja u sklopu eksternih web lokacija.
Integrisanje sadržaja sa YouTube na eksterne lokacije stvara ogromnu količinu dodatnog prometa i svakim danom se približava količini prometa koja se dešava direktno koristeći YouTube platformu.
Integracija aplikacija sa YouTube-om se može učiniti na više načina:
- Putem predefinisanih načina
- API
Predefinisani načini integracije
YouTube News Element
Ovaj widget može se staviti na stranicu ukoliko je potrebno prikazati listu najnovijih video vijesti sa ovog servisa ili sa kanala nekih televizijskih i izdavačkih kuća kao što su CBS, Al-Jazeera, Euronews, The Washington Post itd.

Integracija se vrši kopiranjem HTML koda na stranicu gdje se želi prikazati ovaj widget.
Custom Player

Ovaj widget se može napraviti ukoliko je potrebno da na stranici bude prikazana lista video materijala, omiljenih video materijala ili playliste. Koristi se za prikaz videa sa kanala i iz toga razloga korisnika mora imati kanal jer se on veže na račun sa kojim je kreiran kanal. Moguće je podesiti izgled playera (tema), informacije o playeru i sadržaju koji će se prikazati kroz player.

Integracija se vrši kopiranjem HTML koda na stranicu gdje se želi prikazati ovaj widget.
API
YouTube API se sastoji iz dva dijela: Player API i Data API.
Player API

Ovaj API koriste programeri koji su malo iskusniji u radu sa HTML-om, Javascriptom i ActionScriptom, odnosno sa client-side programiranjem, i predstavlja najčešće korišteni tip integracije na eksternim web lokacijama.
Sastoji od dva tipa playera: Embedded i Chromeless. Embedded Player predstavlja najjednostavniji i najbrži način za integraciju videa na stranici. Za kontrolu mogu se koristiti parametri playera:
autohide, autoplay, border,cc_load_policy, color1, color2, controls, disablekb, enablejsapi, egm, fs, hd, iv_load_policy, loop, modestbranding, origin, playerapiid, playlist, rel, showinfo, showsearch, start.
Primjer za integrisanje videa sa Embedded Player-om:
<object width="425" height="344">
<param name="movie" value="http://www.youtube.com/v/u1zgFlCw8Aw?fs=1"</param>
<param name="allowFullScreen" value="true"></param>
<param name="allowScriptAccess" value="always"></param>
<embed src="http://www.youtube.com/v/u1zgFlCw8Aw?fs=1"
type="application/x-shockwave-flash"
allowfullscreen="true"
allowscriptaccess="always"
width="425" height="344">
</embed>
</object>
Rezultat je prikazan na narednoj slici:

Chromeless Player najčešće koriste iskusniji web programeri za potrebe prikaza nekog videa bez ikakve mogućnosti kontrole sa klijentske strane. Ovaj ali i Embedded Player se može podesiti na osnovu YouTube Player Demo forme.

Bez obzira da li je riječ o Embedded ili Chromeless Playeru, oni se mogu kontrolirati na osnovu Javascript/ActionScript API-a.
Javascript API se sastoji od niza funkcija i "eventa". Neke od vrsta funkcija su: Queueing functions (služe za pribavljanje i raspored videa za prikaz), Playback controls and player settings(služe za kontrolu videa pri prikazu, pauziranju itd.), Playback status (pružaju informacije o statusu videa koji se prikazuje), Playback quality (kvalitet videa koji se prikazuje, dostupne nivoe kvalitete itd.), Retrieving video information(pružaju informacije vezane za embedding videa na eksterne lokacije, trajanje, lokaciju itd.) i Adding an event listener (nude mogućnost kreiranja event handlera za određene evente itd.). Što se tiče "eventa" tu su podržani: onStateChange, onPlaybackQualityChange i onError.
Flash / ActionScript API se sastoji također od niza funkcija i eventa s tim što je donekle proširen u odnosu na Javascript API. Nudi više eventa, ali i neke specijalne funkcije koje ne postoje u prethodno spomenutom API-u.
Data API

Data API predstavlja najmoćniji dio cjelokupnog YouTube API seta i putem njega se mogu napraviti najkompleksnije stvari ali i postići najveći stepen integracije sa ovim servisom.
Putem API-a se mogu raditi pretrage video materijala, povezanih video sadržaja, prenijeti nove video materijale, modificirati playliste, kanale itd.
Prvenstveno je više namijenjen programerima koji su navikli na server-side programiranje. Baziran je na ATOM i Google Data protokolu, i nudi nekoliko klijentskih biblioteka, vodiča i primjera za .NET, Javu, PHP, Python, Objective-C i Javascript.
Prije korištenja Data API-a potrebno je registrovati aplikaciju da bi se dobio Developer Key.

Nakon registracije aplikacija je autorizovana za pristup Data API-u.

NAPOMENA: U vrijeme objave ovog članka, svi prikazani tokeni i aplikacija su izbrisani, tako da za testiranje demoa, morate registrovati novu aplikaciju za vaše vlastite YouTube kanale.
Autentifikacija aplikacije je moguća na više načina:
- OAuth (pojašnjeno u članku o integraciju Twittera sa ASP.NET aplikacijama)
- AuthSub (Google verzija autentifikacije slična OAuth-u)
- Clear Login (Korisničko ime i Lozinka)
U nastavku je prikazana autentifikacija sa Clear Login načinom dok se u priloženom demou nalaze i drugi načini autentifikacije. Jednostavan primjer za prikupljanje prenesenih video materijala sa kanala:

Za Clear Login autentifikaciju potrebno je proslijediti naziv aplikacije, developer key, korisničko ime i lozinku. Nakon toga se kreira request objekat i operacijom GetVideoFeed dobija lista uploadovanih videa. Za pretragu na YouTube-u kroz Data API:

Za upload videa kroz FileUpload kontrolu:

Ukoliko je potrebno obrisati određeni video sa kanala:

Sve druge funkcionalnosti i primjere može vidjeti kroz dostupni demo projekat, ali i oficijelnu dokumentaciju Data API-a.
I na kraju nekoliko ideja za integraciju YouTubea u vaše aplikacije:
- Video galerije integrisati kao Video kanale na YouTube stranici (Ušteda prostora)
- Postavljanje dugmeta za pretplatu na kanal
- Integracija pretrage YouTube kanala
- Povezani video materijali uz sadržaj na portalu, itd.
U prethodnom tekstu je prikazano mnogo načina za integraciju ASP.NET aplikacija sa YouTubeom. Ovim člankom se završava serija članaka vezana za integraciju ASP.NET aplikacija sa socijalnim mrežama i video servisima.







Komentari (0)