Ittraċċjar ta’ azzjonijiet fil-kuntest
L-ikbar deċiżjoni fl-instrumentation hija kif issemmi l-avvenimenti u fejn tpoġġi l-kuntest. Jekk tagħmilha sew, avveniment wieħed iwieġeb tużżana mistoqsijiet; jekk tagħmilha ħażin, il-katalgu jisplodi f’mijiet ta’ ismijiet kważi duplikati li l-ebda funnel ma jista’ jqabbel. Din il-gwida hija l-pattern kanoniku ta’ Kixo — l-istess disinn li jirrakkomanda l-AI instrumentation advisor (suggest_instrumentation fiċ-chat).
Il-pattern: avveniment ġeneralizzat wieħed + properties għonja
Ittraċċa avveniment wieħed għal kull azzjoni tal-utent u iddeskrivi l-kuntest b’properties — qatt taqsam l-isem tal-avveniment skont il-kuntest. Post miftuħ mis-search u post miftuħ mill-feed huma l-istess azzjoni (post_opened) b’property source differenti.
Anti-pattern
Tagħmilx mhux u toħloq post_opened_from_search, post_opened_from_feed, post_opened_from_profile. Tliet ismijiet ta’ avvenimenti jfissru tliet affarijiet x’tżomm, l-ebda funnel wieħed ma jista’ jkoprihom kollha, u jekk iżżid ir-raba’ surface trid tbiddel il-kodiċi kullimkien. post_opened wieħed b’source jiskala għal kwalunkwe numru ta’ surfaces bla sforz żejjed.
| Tagħmilx (avveniment għal kull kuntest) | Agħmel (avveniment wieħed + property) |
|---|---|
post_opened_from_searchpost_opened_from_feed | post_opened b’{ source: "search" | "feed" } |
video_played_mobilevideo_played_web | video_played — il-pjattaforma diġà tiżdied awtomatikament ma’ kull avveniment |
checkout_from_cartcheckout_from_buy_now | cart_checked_out b’{ source: "cart" | "buy_now" } |
Ismijiet: snake_case (oġġett)(verb), fil-passat
Semmi kull avveniment (object)_(verb) f’snake_case, fil-passat — post_opened, video_played, cart_checked_out. L-istess isem irid jintuża verbatim fuq Web, iOS, u Android biex il-funnels bejn il-pjattaformi jaqblu, u biex id-detector ta’ standard events ta’ Kixo jkun jista’ jqabbel l-ismijiet kanoniċi.
- L-ewwel l-oġġett, imbagħad il-verb — jiġbor flimkien avvenimenti relatati meta tkun qed tgħaddi mill-katalgu (
post_opened,post_liked,post_shared). - Fil-passat — avveniment jirreġistra xi ħaġa li ġara.
- snake_case — mhux
postOpened, u mhuxPostOpened. Id-detector u l-vocabulary matcher ma jagħtux kas il-majuskoli u l-minuskoli, iżda jekk tikkonverġi fuq forma waħda żżomm il-funnels nodfa.
Properties tal-avvenimenti vs properties tal-utenti
In-nofs l-ieħor tad-deċiżjoni huwa fejn jgħix il-valur.
| Property tal-avveniment | Proprjetà tal-utent | |
|---|---|---|
| Jiddeskrivi | Din l-okkorrenza waħda tal-azzjoni | Il-persuna, b’mod persistenti tul l-avvenimenti kollha tagħha |
| Issettja b’ | Kixo.track(name, { ... }) | Kixo.setUserProperty(key, value) |
| Eżempji | source, screen, post_id, amount_cents | plan, vip, signup_cohort, lifetime_orders |
| Jippermetti | Filtri għal kull pass tal-funnel, breakdowns, distribuzzjonijiet | Segmentation, audience targeting, eligibility tal-campaigns |
Suġġeriment
Regola sempliċi: jekk il-valur jista’ jkun differenti bejn żewġ avvenimenti tal-istess utent (liema post, sors liema), hija property tal-avveniment. Jekk huwa fatt dwar l-utent li jibqa’ jgħodd irrispettivament mill-azzjoni (il-plan tiegħu, jekk huwiex VIP), hija user property. Poġġi source fuq l-avveniment; poġġi plan fuq l-utent.
Dejjem għaddi ID stabbli tal-entità
Għaddi ID stabbli għall-oġġett li messet l-azzjoni — post_id, video_id, order_id. Mingħajru tista’ tgħodd kemm infetħu posts, imma ma tistax tiġborhom flimkien, tneħħi d-duplikati, jew torbot avvenimenti dwar l-istess post l-istess. Funnel bħal search → open-from-search → like jagħmel sens bħala user journey waħda biss meta kull pass iġorr il-property li torbot il-passi bejnithom.
Eżempju maħdum: search → open → like
Ngħidu li trid tkun taf kemm utenti search, imbagħad iftaħ post mir-riżultati tas-search, imbagħad għamel like. Tliet avvenimenti — iżda l-kuntest “mis-search” huwa property source fuq post_opened, mhux avveniment separat:
search_performed—{ query }post_opened—{ source: "search", screen, post_id }post_liked—{ source: "search", screen, post_id }
Imbagħad il-funnel tiegħek jiffiltra l-pass 2 (u l-pass 3) fuq source = "search" — predicate wieħed ta’ property, mingħajr ma toqgħod tbiddel bejn ismijiet ta’ avvenimenti. Is-sejħiet eżatti tal-SDK għal kull pjattaforma:
// User runs a search
Kixo.track('search_performed', {
query: 'running shoes',
});
// User taps a result — the post was opened FROM search
Kixo.track('post_opened', {
source: 'search', // ← context as a property, not the event name
screen: 'search_results',
post_id: 'post_8f3a1c',
});
// User likes the post they opened from search
Kixo.track('post_liked', {
source: 'search',
screen: 'post_detail',
post_id: 'post_8f3a1c',
});Tagging tal-utent minflok
Jekk “għamel like lil post mis-search” hija karatteristika fit-tul li trid tagħmel segmentation fuqha (mhux biss sinjal ta’ avveniment wieħed), issettja user property wara l-azzjoni: Kixo.setUserProperty("liked_from_search", true). Issa l-audience explorer u l-eligibility tal-campaigns jistgħu jimmiraw direttament lejn dawk l-utenti.
Ħalli l-AI tfassalhielek
Fiċ-chat tad-dashboard ta’ Kixo, iddeskrivi b’lingwa sempliċi x’trid tkejjel — “ittraċċa posts miftuħa mis-search u mbagħad magħmula like” — u l-assistent jagħtik l-avvenimenti rakkomandati, il-properties, u snippets copy-paste għat-tliet pjattaformi. u jurik liema avvenimenti diġà qed jidħlu għall-project tiegħek u x’għadu jeħtieġ xogħol fuq l-SDK. Japplika eżatt il-pattern ta’ din il-paġna.
Ara wkoll: il-Referenza tal-Events għall-ħdax-il isem kanoniku ta’ avveniment li Kixo jagħraf awtomatikament, u l-gwidi tal-SDK għal kull pjattaforma għal Web, iOS, u Android.