Device Fingerprinting ve Speed Test sistemi.
Kullanıcının hangi cihazdan bağlandığını, internet hızını ve tarayıcı özelliklerini tespit ederiz. Neden? Çünkü "şarkı dondu" dediğinde suçun bizde mi, kullanıcının internetinde mi olduğunu kanıtlayabilmeliyiz.
Kullanıcı "şarkı sürekli donuyor" derse, kayıtlara bakıp "internet hızınız 0.5 Mbps, bu hız yetersiz" diyebiliriz. Aksi halde her şikayette sunucuyu suçlarlar.
Her cihazın benzersiz bir "parmak izi" vardır. Toplanan bilgiler:
Çözünürlük, renk derinliği, piksel oranı
Tarayıcı tipi, sürüm, dil ayarları
İşlemci çekirdek sayısı, bellek miktarı
Kullanıcının yerel saat dilimi
Kullanıcının internet hızını ölçeriz. Böylece:
Yüksek kalite ses dosyaları sunulur
Standart kalite tercih edilir
Düşük kalite veya uyarı gösterilir
Cihaz tanınırken olan işlemler
Siteye girdin, seni tanımaya başladık.
Neden: Cihaz tanıma her şeyin başlangıcı. Hangi deneyimi sunacağımızı bilmemiz lazım.
iPhone mı, Android mi, bilgisayar mı - baktık.
Neden: iOS'ta bazı özellikler farklı çalışır. Platforma göre optimize ediyoruz.
Chrome, Safari, Firefox - hangisinden geldin öğrendik.
Neden: Safari HLS'i native destekler ama Chrome için hls.js lazım. Doğru player seçilir.
Büyük mü küçük mü, ona göre görüntü ayarlayacağız.
Neden: Küçük ekrana büyük görsel gönderme, bant genişliği israfı. Responsive boyutlar seçiyoruz.
Telefonunun gücüne baktık, kasmasın diye.
Neden: Zayıf cihazda ağır animasyonlar kötü deneyim yaratır. Performansa göre özellik açıp kapatıyoruz.
Küçük bir test dosyası ile internetinin hızını ölçtük.
Neden: İnternet hızını bilmeden doğru kalite seçemeyiz. Yavaş internette 320kbps takılır.
"10 Mbps" gibi bir rakam çıktı.
Neden: Somut bir değer olmadan karşılaştırma yapamayız. 5 Mbps altı düşük, 20+ yüksek kalite için yeterli.
Hızına göre düşük/orta/yüksek kalite seçtik.
Neden: Otomatik kalite seçimi ile kullanıcı hiç düşünmeden en iyi deneyimi alır. Takılma olmaz.
Bir daha geldiğinde seni tanıyacağız.
Neden: Tekrar test yapmak zorunda kalmayız. Tercihlerini, kalite ayarını hatırlayabiliriz.