v4 GERÇEK VERİ CANLI TEST

Abuse Detection - Gerçek Veri Simülasyonu

Veritabanından çekilen gerçek verilerle eş zamanlı dinleme tespiti

29 Aralık 2025 - 17:15-17:18 arası | Muzibu B2B

Veritabanından Çekilen Gerçek Veriler

Bu veriler tenant_muzibu_1528d0.muzibu_song_plays tablosundan canlı olarak çekilmiştir.

1
User ID
#477
Song ID
156 sn
Süre
8 sn
Çakışma
677
Play ID 1
678
Play ID 2

Şarkı Bilgisi

Give Me the Power

Song ID: #477
Süre: 2:36 (156 sn)
Artist: -
Album: -

Cihaz 1: Mobile

İlk dinleme başlatan
Play ID
#677
Başlangıç 17:15:41
Hesaplanan Bitiş 17:18:17 (+156 sn)
IP Adresi 92.44.171.31
Cihaz Tipi mobile
İşletim Sistemi iOS 18.7
Cihaz iPhone
Tarayıcı Safari Mobile 26.2
User Agent (tam):
Mozilla/5.0 (iPhone; CPU iPhone OS 18_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.2 Mobile/15E148 Safari/604.1

Cihaz 2: Desktop

Çakışma yaratan
Play ID
#678
Başlangıç 17:18:09
Hesaplanan Bitiş 17:20:45 (+156 sn)
IP Adresi 92.44.171.31
Cihaz Tipi desktop
İşletim Sistemi macOS 10.15.7
Cihaz MacBook
Tarayıcı Chrome 143.0.0.0
User Agent (tam):
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36

Görsel Zaman Çizelgesi

17:15:41 17:18:09 17:18:17 17:20:45
Mobile
iPhone Safari
Play #677
17:15:41 17:18:17
Desktop
Mac Chrome
Play #678
17:18:09 17:20:45
ÇAKIŞMA
8 saniye

Eş Zamanlı Dinleme Tespit Edildi

17:18:09 - 17:18:17 arasında (toplam 8 saniye) aynı kullanıcı hesabı iki farklı cihazdan aynı anda müzik dinledi.

Mobile cihazda "Give Me the Power" şarkısı henüz bitmeden (17:18:17), Desktop cihazdan aynı şarkı 17:18:09'da başlatıldı.

Çakışma Hesaplama Detayı

// Girdi verileri (DB'den)
mobile_start = "17:15:41"
desktop_start = "17:18:09"
song_duration = 156 saniye
// Hesaplama
mobile_end = mobile_start + song_duration
mobile_end = 17:15:41 + 156 sn = 17:18:17
// Çakışma kontrolü
if (mobile_end > desktop_start)
overlap = mobile_end - desktop_start
overlap = 17:18:17 - 17:18:09 = 8 saniye

Veritabanına Kaydedilecek JSON

{
  "report_id": "abuse-2025-12-29-001",
  "user_id": 1,
  "analyzed_at": "2025-12-29T17:35:00Z",
  "period": {
    "start": "2025-12-29 17:00:00",
    "end": "2025-12-29 18:00:00"
  },
  "song": {
    "id": 477,
    "title": "Give Me the Power",
    "duration": 156
  },
  "overlaps": [{
    "overlap_seconds": 8,
    "overlap_start": "17:18:09",
    "overlap_end": "17:18:17",
    "devices": [{
      "play_id": 677,
      "role": "first",
      "device_type": "mobile",
      "start_time": "17:15:41",
      "end_time": "17:18:17",
      "ip_address": "92.44.171.31",
      "os": "iOS 18.7",
      "device": "iPhone",
      "browser": "Safari Mobile 26.2",
      "user_agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_7..."
    }, {
      "play_id": 678,
      "role": "overlapping",
      "device_type": "desktop",
      "start_time": "17:18:09",
      "end_time": "17:20:45",
      "ip_address": "92.44.171.31",
      "os": "macOS 10.15.7",
      "device": "MacBook",
      "browser": "Chrome 143.0.0.0",
      "user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7..."
    }]
  }],
  "summary": {
    "total_overlaps": 1,
    "total_overlap_seconds": 8,
    "unique_ips": 1,
    "unique_devices": 2,
    "severity": "low"
  }
}

Kullanılan SQL Sorgusu

SELECT
    id, song_id, ip_address, device_type,
    user_agent, created_at
FROM tenant_muzibu_1528d0.muzibu_song_plays
WHERE id IN (677, 678)
ORDER BY id;

Versiyon Geçmişi