Tema
Etkileşim olayları
SDK, kullanıcı etkileşimlerini track olayları olarak host'a verir. Cihaz bunları biriktirip sunucuya gönderir; panel app raporlarında (dokunma, oturum, sayfa, özel olaylar) gösterir. Olay göndermek için manifestte track yeteneği gerekir:
json
"permissions": { "capabilities": ["track"] }Otomatik olaylar
autoTrack açıkken (varsayılan) SDK şu olayları kendisi üretir. Hepsi ayrılmış corevo. önekini taşır:
| Olay | Ne zaman | props |
|---|---|---|
corevo.session_start | İlk dokunma (pointerdown) veya tuş basımı oturumu açar | session_id |
corevo.session_end | Son etkileşimden sonra boşta kalma süresi dolunca (display.idle_timeout_seconds, yoksa 30 sn), ekran gizlenince veya sayfa kapanınca | session_id, duration_ms, interactions, pages |
corevo.tap | Dokunma; en fazla 250 ms'de bir | session_id, x, y (0..1 oran), target |
corevo.button | <button>, role="button" veya data-corevo-track taşıyan öğeye basma | session_id, name |
corevo.page_view | Corevo.page(name), pushState / hashchange gezinmesi; yalnız açık oturumda | session_id, page, from |
corevo.dropped | Otomatik olaylar 60 sn'de 300'ü aşınca düşenlerin sayısı (dakikada en fazla bir) | count |
Öğe adı için data-corevo-track özniteliğini kullanın; yoksa id, o da yoksa aria-label alınır. Metin içeriği hiçbir olayda gönderilmez:
html
<button data-corevo-track="menu_open">Menü</button>Oturum ve dokunma olayları dokunmatik ekranlarda anlamlıdır; manifestte display.interactive: true yazın. Oturum yokken Corevo.page sayfayı hatırlar ama olay üretmez. Otomatik olayları (ve Corevo.page'i) kapatmak için Corevo.init({ autoTrack: false }); elle Corevo.track sürer ve 300 sınırına girmez.
Özel olaylar
ts
Corevo.track('cta_click', { label: 'Detaylar' });Örnek: bir çark çevirme oyunu, kazanılan ödülü raporlar:
ts
function onSpinEnd(prize: string) {
Corevo.track('wheel_spin', { prize });
}Panelde wheel_spin olaylarını prize değerine göre gruplayıp hangi ödülün kaç kez çıktığını görebilirsiniz.
Kurallar
Sunucu her olayı tek tek denetler. Kurala uymayan olay sessizce atlanır; aynı paketteki diğer olaylar etkilenmez.
- Ad: 1–64 karakter, yalnız
A-Z a-z 0-9 _ . : -(^[A-Za-z0-9_.:-]+$). corevo.öneki ayrılmıştır. Bu önekle yalnız SDK'nın otomatik olayları kabul edilir:corevo.session_start,corevo.session_end,corevo.tap,corevo.button,corevo.page_view,corevo.dropped.Corevo.track('corevo.x')gönderilmez ve konsola uyarı yazılır.propsbir nesne olmalıdır (dizi, metin veya sayı olursa olay atlanır). Verilmezse{}yazılır.propsboyutu kompakt JSON olarak en fazla 4096 bayt. Aşarsa olay atlanmaz,propsyerine{"_corevo_props_dropped": true}yazılır._corevo_önekli üst seviye anahtarlar sunucuya ayrılmıştır ve silinir ({ "_corevo_x": 1, "a": 2 }→{ "a": 2 }). İç içe nesnelere dokunulmaz.
Nerede denetlenir?
SDK yalnız boş adı (invalid_argument) ve corevo. önekini reddeder. Ad deseni, 64 karakter ve 4096 bayt sınırı sunucuda uygulanır; sunucu kurala uymayan olayları atlar.
Önizlemede (corevo dev ve panel önizlemesi) host bu kurallara uymayan her olay için konsola uyarı yazar, ör. [corevo] track "corevo.custom": corevo. öneki SDK otomatik olaylarına ayrılmıştır; sunucu bu olayı atlar. Olay yine gönderilir; uyarı yalnız geliştirme içindir. corevo dev'de tarayıcı konsolunu açık tutun.
İyi pratik
- Adları
snake_caseve sabit tutun (cta_click,wheel_spin); değişen değeriprops'a koyun. - Kişisel veri (ad, telefon, e-posta) göndermeyin.
- Her karede değil, kullanıcı eylemi başına bir olay gönderin. Cihaz olayları çevrimdışıyken de biriktirir.