Gatnaşmagyň işjeňligini we triggerlerini çaklamak
1) Wezipe
Oýunçynyň haçan girjekdigini (ýa-da tersine, "öçüp" biljekdigini) we dogruçyllygy we Responsible Gaming (RG) bilen bir missiýa/kwalifikatora/ýaryşa gatnaşmak mümkinçiligini ýokarlandyrjakdygyny çaklamaly.
Esasy soraglar:- "Ol köplenç haçan oýnaýar?" (Wagtlaýyn nagyşlar)
- "Gatnaşmaga näme başlaýar?" (mazmun, format, baýrak, dowamlylyk)
- "Nädip gyzdyrmaly däl?" (degiş ýygylygy, RG-çäklendirmeler, ykdysady býudjet)
2) Maglumat signallary
Özüni alyp barşy: girişleriň ritmi (sagat/gün), sessiýalaryň uzynlygy we tizligi, çärelere gatnaşmagyň ýygylygy.
Mazmun: halaýan üpjün edijiler/resanrlar, täzelik, dürlülik.
Mahabatyň ykdysadyýeti: geçen bustlara/möwsümleýin belliklere/kosmetika reaksiýasy.
Sosial signallar: söhbetdeşlik, klipler, reaksiýalar (bar bolsa).
Kontekst: gurluş, kanal, wagt zolagy, ýerli baýramçylyklar/wakalar.
RG: wagt/goýum çäkleri, ýadawlyk alamatlary, "arakesme signallary".
Fiçleriň hemmesi - düzgünleşdiriji minimumdan ýokary PII-siz jemlenen.
3) Fiçering (mysallar)
Möwsümlilik/ritm: bir-gyzgyn sagat 0-23, hepdäniň günleri; laglaryň awtomatiki baglanyşygy (ACF/PACF).
4) Model steki
1. Hereket üçin wagt seriýasy:- Prophet/NeuralProphet, LSTM/Temporal Fusion Transformer;
- onlaýn üçin ýönekeý möwsümleýin profiller.
- Cox/Weibull/RSF → indiki sessiýa çenli wagt; "öçmek" töwekgelçiligi (churn-hazard).
- 3. Gatnaşmagyň propensiti (P (join))
GBDT/TabTransformer: teklip görkezilende gatnaşmak mümkinçiligi.
4. Uplift modellemek (CATE):- "Two-Model/T-Learner", "X-Learner", "DR-Learner".
- kontekstli garakçy (LinUCB/Thompson) onlaýn saýlamak üçin kanal × mazmun × kaplaryň içindäki wagt.
5) Gatnaşmak triggerleriniň görnüşleri
Kontent: ýaryşyň formaty (sprint 20-30 minut, marafon), halaýan üpjün edijiler, "hepdäniň täzelikleri".
Wagtlaýyn: "15 minutdan soň başlamak", "agşamky kwalifikator" - girelgäniň ähtimal penjiresine gabat gelmek.
Baýraklar (kosmetika/bellikler): tölegsiz; seýrek duş gelýänler hemmeler üçin umumy.
Sosial: dostlar onlaýn, kynçylyk jemgyýeti, köp meseleler (etiki, basyşsyz).
Çapraz missiýalar: gysga gyzdyrma missiýasy → kwalifikatoryň girişi.
6) Degmek orkestri (kanal × wagt × ýygylyk)
Kanallar: in-app, push, email, web-inbox; prioritet in-app → push → email.
Wagt saýlamak: p (indiki 90-120 minutda active) wakalaryň tertibi bilen geçmek.
Ýygylyk/ýygylyk: N-den köp degmek/hepde, M/gün; triggerleriň arasynda berk cooldown.
Sessiz re modeim: ulanyjynyň gijeki penjireleri; programmada "sessiz" push → inbox karta.
7) Dogruçyllyk, laýyklyk, RG
RTP/mümkinçiliklere täsir etmeýär. Triggerler ýeňişe garaşmak däl-de, "ýoly" üýtgedýärler.
Aç-açanlyk: "Habarnamalary nädip saýlaýarys" sahypasy: işjeňlik penjireleri, ýygylyk çäkleri, şahsylaşdyrmakdan ýüz öwürmek - 1 gezek basmak.
RG-gwardlar: ýadawlyk/çäklerde - ýygylygy peseldýäris, arakesme berýäris, uzyn formatlara çagyrmaýarys.
Jogaplar/opt-out: derrew hormatlanýar; şikaýatdan soň "akylly dymmak".
8) Anti-spam we anti-hyýanatçylyk
Ulanyjy we kanal üçin rate limiting.
Manyny öňe sürmek: yzly-yzyna şuňa meňzeş 2 sebäp ibermezlik.
Ykdysady býudjet: möwsümleýin bellikler/kosmetika zyňyndylaryna cap.
Adalat: baýragyň ýokarky gymmaty birmeňzeş; şahsylaşdyrmak - degişlilik hakda.
9) KPI we gözegçilik metrikleri
Hit Rate penjireleri: işjeň sessiýa giren degmeleriň paýy ± Δ minut.
Join Uplift: Gatnaşmagyň köpelmegi vs gözegçilik.
Maksatly kogortlarda Retention uplift D7/D30.
Fatigue: jogaplaryň/sazlaryň/şikaýatlaryň ösüşi; Mute Rate RG-metrikler: uzyn sessiýalaryň azalmagy, ýumşak arakesmeleriň paýy. Prize ROI/Emission to GGR - mahabat ykdysadyýetiniň durnukly bolmagy üçin. Incremental Revenue/User-week (eger kadalaşdyryjy taýdan ulanylsa we rugsat berilse). 10) A/B-patternleri 1. Duýduryş penjireleri: kwalifikatoryň başlamazyndan T-30/15/5 minut öň. 2. Formatyň dowamlylygy: agşam slotlary üçin sprint 20 min vs 35 min. 3. Mazmunyň görnüşi: halaýan üpjün ediji vs "hepdäniň täzeligi". 4. Kanal: in-app vs push; çuňňur baglanyşyklary bolan push vs ýok. 5. Uplift-syýasat: diňe uplift-pozitiw nyşany vs giň örtük. 6. Kombo-trigger: missiýa-gyzdyrmak → ýaryş vs derrew ýaryş. 11) JSON şablonlary 12) Orkestriň ýalan resminamasy 13) UX-patternler Lobbide kartoçka: "Agşam sprinti 20 minut, 15 minutdan soň başlangyç, kosmetika Rare". Wagt bahasy: "≈ 20-25 minut" + çylşyrymlylyk görkezijisi. Gözegçilik opsiýalary: "Soň ýatlatmak", "Bu mowzugy sypdyrmak", "Bir hepde dymmak". Sessiz VFX: gysga, invaziv däl, obsesif ses ýok. 14) Durmuşa geçirmek meýilnamasy 1. MVP (2-4 hepde): işjeňlik penjireleri + ýönekeý propensiti; bir kanal (in-app), ýygylyk kapy, aç-açanlyk ekrany. 2. v0. 9: girmezden öň wagtyň survival-modeli; push + inbox; 2-3 trigger üçin esasy uplift. 3. v1. 0: kontekstli garakçy, wakalaryň doly senenamasy, emissiýanyň býudjeti, RG-integrasiýa, dogruçyllyk hasabatlary. 4. Ondan soň: şahsy "hepdäniň tertibi", çapraz missiýalar, geo-wakalar, MLOps-awtomatlaşdyryş. 15) Goýberilmezinden öň çeklist Işjeňligi we triggerleri çaklamak, RG × dogruçyl gurluşlaryň aşagyndaky mazmuny we kanaly × wagtdyr. Wagt seriýasy we survival "haçan", propensiti we uplift - "näme diýmeli", garakçy - "onlaýn nädip uýgunlaşdyrmaly". Ýygylygyň, aç-açanlygyň we durnukly býudjetiň berk damjalarynda mahabat az ses, has köp gatnaşmak we möwsümiň öňünden aýdyp boljak ykdysadyýetini alýar.
Degiş orkestratorynyň çözgüdi:
json
{
"user_id": "u_29104", "next_active_window": {"start": "2025-10-24T17:00:00Z", "end": "2025-10-24T19:00:00Z", "p_active": 0. 72}, "p_join_by_trigger": {
"sprint_20min": 0. 41, "marathon_60min": 0. 18, "new_provider_event": 0. 36
}, "uplift_by_trigger": {
"sprint_20min": 0. 12, "new_provider_event": 0. 07
}, "rg_flags": {"fatigue": false, "limit_time": false}, "cooldowns": {"push": true, "in_app": false}
}json
{
"decision_id": "dec_2025_10_24_1630", "user_id": "u_29104", "touch": {
"channel": "in_app", "time": "2025-10-24T17:05:00Z", "trigger": "sprint_20min", "creative": "evening_sprint_card_v3"
}, "fairness": {"reward_cap_equivalent": true}, "rg": {"suggest_break": false}
}
python ctx = build_context(user_id)
p_active = activity_model. predict_window(ctx, horizon_hours=4)
p_join = propensity_model. score_triggers(ctx)
uplift = uplift_model. estimate(ctx, triggers=p_join. keys())
RG we ýygylyk çäklendirmeleri if ctx. rg. fatigue or over_frequency_cap(user_id):
schedule_silent_inbox(user_id); exit()
win = best_time_window (p_active, events_schedule)
trigger = argmax(uplift, mask=channel_caps(user_id))
touch = compose_touch(user_id, channel="in_app", window=win, trigger=trigger)
if economy_budget_ok(trigger) and not in_quiet_hours(user_id, touch. time):
deliver(touch); log(touch)