Özet
iWatchUWatch bir Chrome uzantısı, küçük bir aktarım sunucusu ve bir hesap servisinden oluşur. Odaya katılmak için hesap gerekir; e-posta adresin, parolanın karması ve abonelik durumun bir veritabanında tutulur.
Eşitlemenin kendisi kayıt tutmaz. İzlediğin video hiçbir zaman tarayıcından çıkmaz; aktarım sunucusundan yalnızca eşitleme ve sohbet için küçük JSON mesajları geçer. Sohbet sunucuda saklanmaz, kim ne izliyor kaydedilmez, oda son kişi çıkınca bellekten silinir.
Hiçbir veri satılmaz, reklam ağlarına ya da analitik servislerine verilmez. Bu sitede analitik, reklam ya da izleme kodu yoktur.
Tek amaç
Uzantının tek amacı: birden fazla tarayıcıda aynı videoyu aynı anda oynatmak ve bu sırada odadakilerle yazışmak. Hesap katmanının tek amacı: kimin abone olduğunu bilmek ve odaya girişi buna göre açmak. İşlenen her veri yalnızca bu iki amaç için kullanılır.
Hesap verileri
Hesap açtığında şunlar hesap servisinin veritabanında tutulur:
| Veri | Neden | Hukuki sebep |
|---|---|---|
| E-posta adresi | Girişte kimlik, doğrulama ve parola sıfırlama bağlantısı, abonelik bildirimleri; arkadaş eklemenin anahtarı — adresini bilen başka bir üye sana istek gönderebilir ve kabul edersen adresini görür | Sözleşmenin ifası |
| Parolanın karması | Girişi doğrulamak. Parolanın kendisi saklanmaz; argon2id ile karması tutulur ve geri çevrilemez | Sözleşmenin ifası |
| Görünen ad | Odada kim olduğunun görünmesi | Sözleşmenin ifası |
| Dil seçimi | E-postaların ve arayüzün dili | Sözleşmenin ifası |
| Abonelik durumu ve erişim bitiş tarihi | Odaya girişin açık olup olmadığını belirlemek | Sözleşmenin ifası |
| Ödeme kaydı: tutar, para birimi, durum, fatura bağlantısı | Muhasebe ve iade taleplerini karşılamak | Hukuki yükümlülük |
| Oturum kayıtları: cihaz etiketi, oluşturma ve son kullanım anı | Açık oturumları görebilmek ve şüpheli kullanımda hepsini düşürmek | Meşru menfaat |
| Denetim kaydı: işlem adı, zaman, IP adresinin karması, tarayıcı bilgisi | Kötüye kullanımı ve hesap ele geçirmeyi tespit etmek | Meşru menfaat |
| Deneme defteri: e-posta adresinin tuzlanmış karması | Aynı adresle ikinci kez deneme alınmasını engellemek. Adresin kendisi bu tabloda yok | Meşru menfaat |
IP adresi düz metin olarak tutulmaz. Denetim kaydında yalnız karması bulunur; bu, bir kaydı belirli bir kullanıcıya bağlamaya yetiyor ama kaydı okuyan birinin adresi öğrenmesine yetmiyor.
Kart bilgisi hiç bize ulaşmaz. Ödeme, sağlayıcının kendi sayfasında alınır. Bizde yalnız tutar, durum ve sağlayıcının verdiği kimlik durur.
Arkadaş listesi, arkadaş istekleri ve engellediğin kişiler de hesabına bağlı olarak tutulur. Kimin çevrimiçi olduğu ise yalnız bellekte tutulur ve diske yazılmaz.
Toplanmayanlar
Hesap açman aşağıdakilerin toplandığı anlamına gelmez. Bunlar hiçbir zaman toplanmaz:
- Tarama geçmişi ya da ziyaret ettiğin sitelerin listesi.
- Video içeriği, izleme geçmişi, hangi videoyu izlediğinin kaydı.
- Sohbet mesajlarının metni. Sunucudan geçer, iletilir, saklanmaz.
- Kimin hangi odada olduğunun kalıcı kaydı. Bu bilgi yalnız oda açıkken bellekte durur.
- Ad-soyad, telefon, adres, doğum tarihi ya da kimlik numarası.
- Kart numarası veya ödeme aracı bilgisi.
- Analitik, reklam ya da izleme verisi.
- Konum verisi.
Çerez kullanılmaz. Ne uzantı ne de bu site çerez yazar. Sitede oturum açtığında oturum anahtarı tarayıcının localStorage alanında tutulur; bu bir çerez değildir, sunucuya kendiliğinden gönderilmez ve yalnız o tarayıcıda durur. Çıkış yaptığında silinir.
Sunucudan geçen mesajlar
Uzantı, sunucuya WebSocket üzerinden bağlanır ve aşağıdaki mesajları gönderir. Sunucu bunları odadaki diğer üyelere olduğu gibi iletir; içeriklerini işlemez, yalnızca oda üyeliğini ve son oynatma durumunu izler.
| Mesaj | İçerik | Ne zaman |
|---|---|---|
join | Oda kodu, görünen ad | Odaya girerken |
heartbeat | Konum, oynuyor mu, saat, reklamda mı, atlıyor mu | Oynatma sırasında saniyede bir |
control | Eylem (oynat, duraklat, atla, hız, tamponlama, reklam başladı/bitti), konum, saat | Bir eylem yapıldığında |
chat | Mesaj metni, en fazla 1000 karakter | Mesaj gönderildiğinde |
page | Kurucunun sayfa adresi ve başlığı | Yalnız kurucudan, sayfa değiştiğinde |
sync-ping | Yerel saat damgası | Bağlanırken 5 kez, sonra 5 dakikada bir |
Görünen ad, uzantının ürettiği rastgele bir addır (“Neşeli Panda” gibi); değiştirirsen yazdığın ad gönderilir. Sayfa adresi yalnızca odayı kuran kişiden alınır ve diğer üyelere “İlgili videoyu aç” önerisi olarak gösterilir.
Sunucuda tutulanlar
Bellekte, oda açık olduğu sürece: üyelerin bağlantıları ve görünen adları, kurucunun kim olduğu, kurucunun sayfa adresi ve başlığı, son oynat/duraklat/atla komutu. Oda, son üye çıktığında tamamen silinir. Kalıcı bir kayıt, veritabanı ya da yedek yoktur.
Uygulama günlüğü: odaya giriş ve çıkışlar (oda kodu, görünen ad, kişi sayısı), oynatma komutları ve kurucunun sayfa adresi günlüğe yazılır. Sohbet metni günlüğe yazılmaz. Günlükler yalnızca hata ayıklamak için okunur, düzenli olarak döndürülür ve kalıcı olarak saklanmaz.
Web sunucusu günlüğü: aktarım sunucusunun önündeki web sunucusu (nginx) standart erişim günlüğü tutar: IP adresi, zaman ve istek yolu. Bu günlükler sunucu yönetimi için kullanılır ve düzenli olarak döner.
Sunucu relay.iwatchuwatch.com adresinde çalışır ve projenin sahibi tarafından işletilir. İstersen Ayarlar › Sunucu alanından kendi sunucunu kullanabilirsin; o durumda bu bölüm senin sunucun için geçerli olmaz.
Cihazında saklananlar
Bunlar yalnızca senin tarayıcında, Chrome'un uzantı depolama alanında durur; hiçbir yere gönderilmez.
- Kalıcı (
chrome.storage.local): görünen ad, son oda kodu, sunucu adresi ve ortam seçimi, otomatik bağlanma tercihi, dil seçimi, tema (açık/koyu), sohbet balonu tercihi. - Oturumluk (
chrome.storage.session, tarayıcı kapanınca silinir): sohbet mesajları (en fazla 200), videoyu tutan sekmenin kimliği, adresi ve başlığı.
Uzantıda ayrıca oturum bilgisi tutulur (chrome.storage.local): erişim ve yenileme anahtarları ile hesap özetin. Bunlar odaya bağlanırken kimliğini kanıtlamak için gerekiyor; çıkış yaptığında silinir.
Uzantıyı kaldırdığında Chrome bu verilerin hepsini siler.
Bu sitede: oturum açtıysan oturum anahtarların ve hesap özetin localStorage alanında durur. Site ile uzantı ayrı oturum tutar; birinden çıkmak diğerini etkilemez.
Uzantı izinleri
Chrome kurulumda şu izinleri sorar. Her biri için neden gerektiği ve ne için kullanılmadığı:
| İzin | Neden gerekli | Ne için kullanılmaz |
|---|---|---|
Tüm sitelere erişim (<all_urls>) ve içerik betiği | İzlediğin sayfadaki video öğesini bulmak, oynatma durumunu okumak (konum, duraklama, reklam sınıfı), videonun üstüne eşitleme tuşunu ve sohbet balonunu çizmek. Hangi sitede izleyeceğin önceden bilinemediği için tüm siteler. Betik tüm çerçevelerde çalışır, çünkü oynatıcılar sık sık iframe içindedir. | Sayfa içeriğini, formları, çerezleri ya da parolaları okumak. Video öğesi olmayan sayfada betik bekler ve hiçbir şey göndermez. |
sidePanel | Uzantının arayüzü Chrome yan panelinde açılır. | — |
storage | Yukarıdaki tercihleri ve oturum bilgilerini cihazında saklamak. | Uzantı dışına aktarım. |
tabs | Videonun hangi sekmede olduğunu bilmek; kurucunun sayfa adresini ve başlığını odayla paylaşmak; “İlgili videoyu aç” ile doğru sekmeye geçmek. | Diğer sekmelerin içeriğini okumak. Yalnız adres ve başlık, yalnız odadaki sekme için. |
scripting | Uzantı kurulduğunda ya da güncellendiğinde zaten açık olan sekmelere içerik betiğini eklemek. | — |
alarms | Her dakika çalan bir alarm; Manifest V3 servis çalışanının uyumaması ve WebSocket bağlantısının açık kalması için. | — |
notifications | Panel kapalıyken gelen sohbet mesajını Chrome bildirimi olarak göstermek (gönderenin adı ve mesaj). | Başka hiçbir bildirim gönderilmez. |
Saklama ve imha
| Veri | Ne kadar |
|---|---|
| Oda ve sohbet | Saklanmaz. Oda son kişi çıkınca bellekten silinir |
| Hesap kaydı | Hesap açık olduğu sürece. Silme isteğinden 30 gün sonra kalıcı olarak silinir |
| Oturum anahtarları | Yenileme anahtarı 30 gün; çıkış yapıldığında ya da parola değiştiğinde hemen iptal |
| Doğrulama ve sıfırlama bağlantıları | 24 saat, ya da bir kez kullanıldığında |
| Denetim kaydı | Hesabın ömrü boyunca; hesap silindiğinde kullanıcı bağı kopar, kayıt kimliksiz kalır |
| Ödeme kaydı | Vergi mevzuatının gerektirdiği süre. Hesap silinse de tutar ve tarih kalır, kimlik bağı kopar |
| Deneme defteri | Kalıcı. Yalnız e-posta adresinin tuzlanmış karması; hesabı silmek bu kaydı silmez, yoksa "sil ve yeniden aç" sonsuz deneme olurdu |
| Sunucu günlükleri | Düzenli olarak döner, kalıcı saklanmaz |
Hesabını sildiğinde erişim hemen kesilir ve açık oturumların düşer. 30 gün içinde giriş yaparak silmeyi geri alabilirsin; süre geçtikten sonra kayıt kalıcı olarak silinir.
KVKK hakların
6698 sayılı Kişisel Verilerin Korunması Kanunu kapsamında şu haklara sahipsin: verinin işlenip işlenmediğini öğrenme, işlenmişse buna ilişkin bilgi talep etme, işlenme amacını öğrenme, yurt içinde veya yurt dışında aktarıldığı üçüncü kişileri bilme, eksik veya yanlış işlenmişse düzeltilmesini isteme, silinmesini veya yok edilmesini isteme, bu işlemlerin aktarılan üçüncü kişilere bildirilmesini isteme, otomatik sistemlerle analiz sonucu aleyhine bir sonuç doğmasına itiraz etme ve zarara uğramışsan giderimini talep etme.
İki hak uygulamada tek adımda kullanılabiliyor:
- Verini indirme: hesap servisi, hesabındaki her şeyi makine okunur biçimde döndüren bir uç sunuyor (
/me/export). Denetim kaydı bu dışa aktarımda da IP karmasıyla gelir, düz adresle değil. - Silme: hesabını uzantıdan ya da hesap sayfasından kapatabilirsin; yukarıdaki süreler geçerlidir.
Diğer talepler için iletişim sayfasına yaz.
Hukuki sebep: hesap ve abonelik verisi sözleşmenin ifası için işlenir; bu nedenle ayrıca açık rıza istenmez. Güvenlik kayıtları meşru menfaat, ödeme kayıtları hukuki yükümlülük kapsamındadır.
Üçüncü taraflar
Aktarım sunucusu ve hesap servisi projenin sahibi tarafından işletilir. Uzantıda ve bu sitede analitik, reklam ya da izleme SDK'sı yoktur. Bu sitenin yazı tipleri sitenin kendisinden sunulur; Google Fonts'a çalışma zamanında istek gitmez.
İki dış hizmet kullanılır:
| Hizmet | Ne için | Ne aktarılır |
|---|---|---|
| Ödeme sağlayıcısı | Abonelik tahsilatı, fatura, müşteri portalı | E-posta adresi ve hesap kimliği. Kart bilgisi doğrudan sağlayıcıya gider, bize hiç ulaşmaz |
| E-posta gönderim sunucusu | Doğrulama, parola sıfırlama ve abonelik bildirimleri | E-posta adresi ve iletinin metni |
Ödeme sağlayıcısı bu satışta kayıtlı satıcı (merchant of record) olarak hareket edebilir; bu durumda faturayı o düzenler ve kendi gizlilik politikası da geçerli olur. Sağlayıcının kimliği ve iletişim bilgileri mesafeli satış sözleşmesi sayfasında yer alır.
Yurt dışına aktarım: ödeme sağlayıcısı ve e-posta sunucusu Türkiye dışında bulunabilir. Bu durumda aktarım, sözleşmenin ifası için gerekli olması sebebiyle yapılır.
Uzantının Chrome Web Store'dan kurulumu Google'ın kendi koşullarına tabidir.
Çocuklar
Hizmet çocuklara yönelik değildir. Hesap açan kişinin 18 yaşından küçük olması hâlinde yasal temsilcisinin onayı gerekir (kullanım koşulları). Yaş bilgisi sorulmaz ve saklanmaz; 18 yaşından küçük birine ait bir hesabın varlığı bildirilirse hesap kapatılır ve verisi silinir.
Değişiklikler
Bu metin değişirse sayfanın başındaki yürürlük tarihi güncellenir. Toplanan veriyi genişleten bir değişiklik olursa uzantının sürüm notlarında ayrıca belirtilir.
İletişim
Sorular için iletişim sayfasına bak.