Privesc.Eu

În martie, la conferința F8, Facebook a adăugat posibilitatea de a face upload la video prin API. Un mic/mare progres. Imediat am implementat această funcționalitate pe site-ul privesc.eu sub forma de video citate.

Video citat, este o frântură de video cu conținut viral. Bine, nimeni nu poate garanta viralitatea unui video sau altul, însă una e sigur, probabilitatea ca să găsești un video viral e direct proporțională cu numărul de încercări.

Deci, trucul constă în a găsi un eveniment interesant de pe privesc.eu, apăsați butonul Citat și tăiați cu foarfeca un moment interesant. După aceea, postați pe wall-ul personal sau pe o pagină de pe Facebook. În câteva clipe citatul video va apărea pe Facebook ca video uploadat, nu ca embedat.

Acum încep a curge views-urile, live-urile, share-urile și comentariile. Și cu cât e mai mare engagement-ul cu atât facebook-ul îl distribuie mai mult. Pentru a mări engagement-ul privesc.eu automat include embedul cu acel video pe prima pagină de pe site-ul privesc.eu și totodată pe pagina cu înregistrarea evenimentului. Dacă ai un blog, poți include și tu acel embed.

Acum iată și viralul cu pricina.

Mai jos un screen despre viralitatea lui.
Privesc.Eu data from Facebook

Pentru comparație reach-ul de 525824 e mai mare decât toți moldovenii de pe Facebook, care e de 440000, adică au văzut thumnail-ul în newsfeed și o bucată bună din românii de pe Facebook. 187929 views sunt oamenii care au dat play la acest video. E comparabil cu auditoriul unui TV. Ca rezultat pagina Privesc.Eu s-a ales cu +1000 de fani noi.

Îți rămâne să găsești în cele peste 19 mii de evenimente un fragment interesant din domeniu tău de activitate și să alegi un citat.

Succes.

E-sportMai dăunăzi am avut o lecție publică pentru AISEC, unde majoritatea erau adolescenți, clasele 9-12. La întrebarea cine din ei utilizează zi de zi Internetul au ridicat mâna toți. Cine privește zi de zi TV-ul, cam 30%. Cine ascută radio - vreo 3 mâini.

Iată așa consumă noua generație contentul Audiovizual.

Fiind implicat într-un domeniul destul de dinamic, e foarte important să am semnale de la generația tânără. Viitorul e în ceea ce utilizează tinerii, nu generația în vârstă.

Generația care stă pe youtube, twitch, facebook, apple tv, chrome consumă content selectiv și social. Nu mai mănâncă ceea ce le servește de la TV. Dacă doresc să privească un film… sunt o mulțime de site-uri unde o pot face, de tipul netflix, hulu, hbo go. Dacă doresc e-sport intră pe twitch.tv, dacă orice alceva, pe youtube. Dacă are dispoziție proastă 9gag.tv. Dacă dorește să fie informat - privesc.eu. Nu pe Prime, nu pe TV7, nu pe Moldova1.

TV-urile cu ale peoplemetre se bat pentru o audiență fictivă. Apoi, acele cifre umflate apoi se servesc advertiserilor.

Deci, parlamentarii și CCA fac o isterie cum să controleze mass-media. Adică mass-media veche, radioul și TV-ul care nu mai are viitor.

O altă disperare a TV-ul este televiziunea digitală.

Dragilor, viitorul nu e TV-ul liniar, nu e nici în web. E în mobil și social. Mai mult ca atât va fi și P2P.

Chiar și metoda de creare a conținutului s-a schimbat, fără specialiști în audio și lumini, fără camere scumpe și fără echipamente de sute de mii de euro.

Așa încep să apară star-uri pe youtube. Un român are peste 700 mii de subscriberi, nemaivorbind de cei în engleză care au cu milioanele.

Și pentru ce v-am spus eu tot acest bred de mai sus? ;)

Pentru a băga un embed la un canal de youtube început de feciorul meu și prietenul lui, cu vârsta de 9 și 10 ani. Singuri și-au plătit pentru jocuri, singuri și-au platit softul pentru screen capture, singuri înregistrează și singuri îl întrețin.

Să invit să vă abonați, mai au băieții de învățat. Dar asta e, nu ne-am născut perfecți.

1 Comment

Aplicația iPhone Privesc.Eu

Aplicația iPhone Privesc.Eu

Demult mă întrebau prietenii de ce nu o fac, o aplicație Privesc.Eu pentru iPhone. Răspunsul e în Google Analytics. Pentru că sunt puțini oameni cu iPhone/iPad! Rețeaua Privesc.eu a găsit că în Moldova și România sunt aproximatic 130 mii de astfel de oameni. Însă tendința e în creștere, săptămâna trecută am bătut recordul cu 28 mii de vizite de pe mobil.

Publicul nostru țintă vine dimineața pe la 9:00 pe site, studiază agenda și se întorc când începe un eveniment interesant. Deci aplicația MVP (minimum viable product) trebuie să rezolve problema publicului țintă. Să le amintească când se începe un live. O aplicație cât se poate de simplă, ador aplicațiile simple și utile.

Ca să nu pierd timpul din contul altor proiecte am făcut aplicația în goană, într-un weekend. Aplicația conține doar 3 forme: Lista evenimentelor, setările și playerul video.

Din lista evenimentelor vă puteți da seama ce eveniment a început, care e live sau în arhivă. Dacă evenimentul nu a început, apăsați pe el și veți primi o notificare când va începe. Privesc.Eu e același pentru România și Moldova, aplicația determină din ce țară accesezi Internetul și îți arată doar acele evenimente. Din setări puteți schimba forțat regiunile și vă puteți abona la notificări după categori. Gata. Asta e tot.

Îți rămâne să tragi aplicația, și să aștepți când va începe un live.

Pentru fanii iOS-ului, voi lămuri cum a fost făcută.

După ce îți faci un cont apple pentru developer. Moldoveni, trebuie să trimită un fax la Apple cu semnatura și numărul de cardului de credit. Apoi setezi conturile bancare, tragi XCode de pe App Store. Îți adaugi UDID-ul iPhone-ul pe portalul de la Apple. Pentru că noi dorim să trimitem notificări, bundle ID trebuie să fie exact, fără *. Apoi faci certificatele pentru sandbox și production pentru notificări și provision profiles pentru developer și distribuții ad-hoc și distribuții Apple.

Lista device-urilor asignate contului meu.

Lista device-urilor asignate contului meu.




Privesc.Eu Bundle ID

Privesc.Eu Bundle ID

Deschizi XCode și alegi un template pentru table view. Niște mici modificări, setăm bundleID, iconițele, default screen-uri. Și putem rula aplicația pe simulator sau device.

Setari în XCode

Setari în XCode

Cu librăria ASIHTTP dăm un request la server care întoarce rezultatul în JSON, iar cu frameworkul SBJSON îl procesăm și îl facem în NSObiecte. Îl transmitem la UITablewView datasource și avem live-urile afișate. Facem un custom la UICellView și băgăm UIImageView inteligent, care singur își trage imaginea din Internet în background, fără a frâna scrolarea. Am luat din source code de la Facebook și am modificat ;-)

La pornirea aplicației cerem utilizatorului să ne dea voie să-i trimitem notification

[[UIApplication sharedApplication] registerForRemoteNotificationTypes:
UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound | UIRemoteNotificationTypeAlert];

Iar când avem răspunsul îl trimitem la serverul nostru. Să știe și serverul ce și cum, ce deviceToken cu ce regiuni și ce categorii să-l alerteze.

- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken
{
self.onlineController.deviceToken = deviceToken;
[self.onlineController updateDeviceToken:self.onlineController.deviceToken];
}

Trimisul notificarilor e destul de complicat, însă sunt băieți harnici care rezolvă repejor. Hei, programerii sunt leneși și folosesc la maximum codul altora.

Serverul e pe .NET framework în c# sub Windows Azure. Facem un Worker Role, cu un Thread care procesează o coadă de mesaje. Folosim frameworkul PushSharp pentru a trimite notificări la iPhone, Android sau Windows Phone.

PushService push = new PushService();
//Wire up the events
push.Events.OnDeviceSubscriptionExpired += new PushSharp.Common.ChannelEvents.DeviceSubscriptionExpired(Events_OnDeviceSubscriptionExpired);
push.Events.OnChannelException += new PushSharp.Common.ChannelEvents.ChannelExceptionDelegate(Events_OnChannelException);
push.Events.OnNotificationSendFailure += new PushSharp.Common.ChannelEvents.NotificationSendFailureDelegate(Events_OnNotificationSendFailure);
push.Events.OnNotificationSent += new PushSharp.Common.ChannelEvents.NotificationSentDelegate(Events_OnNotificationSent);
var appleCert = RoleEnvironment.IsEmulated ?
Certificates.loadCertificateFromAppData("PrivescEu.Sandbox.p12") :
Certificates.loadCertificateFromBlob("PrivescEu.Production.p12");
push.StartApplePushService(new ApplePushChannelSettings(!RoleEnvironment.IsEmulated, appleCert, "catpecesauitsascotparoladeaici"), new PushServiceSettings());

....
un ciclu veșnic

//Fluent construction of an iOS notification
AppleNotification an = NotificationFactory.Apple()
.WithTag(pn) //for feedback in events
.ForDeviceToken(pn.DeviceToken)
.WithAlert(pn.Title)
.WithSound(pn.Sound)
.WithBadge(pn.Bag)
.WithCustomItem(pn.PayLoadName, pn.PayLoadValue);

push.QueueNotification(an);

iar pe device-uri prindem aceste notificari.

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
{
if (!userInfo) return;
[self processRemoteNotification:userInfo];
}

Ne rămâne să afișăm screen de live. E simplu, se face în două rânduri.

MPMoviePlayerViewController *mpc = [[MPMoviePlayerViewController alloc] initWithContentURL:live.VideoStreamUrl];
[self presentMoviePlayerViewControllerAnimated:mpc];

Compilăm, testăm, dăm la prieteni să-și spună părerile, nu-i ascutăm și trimitem la iTunes App Store. Așteptăm o săptămână pentru aprobare și facem buzzzzz până ne ridicăm pe primul loc.

Privesc.Eu primul în topul aplicațiilor gratuite pe iPhone

Privesc.Eu primul în topul aplicațiilor gratuite pe iPhone


Pitch well and prosper!
Vitalie Eșanu.