Aqbeż għad-dokumentazzjoni

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_search
post_opened_from_feed
post_opened b’{ source: "search" | "feed" }
video_played_mobile
video_played_web
video_played — il-pjattaforma diġà tiżdied awtomatikament ma’ kull avveniment
checkout_from_cart
checkout_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 mhux PostOpened. 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-avvenimentProprjetà tal-utent
JiddeskriviDin l-okkorrenza waħda tal-azzjoniIl-persuna, b’mod persistenti tul l-avvenimenti kollha tagħha
Issettja b’Kixo.track(name, { ... })Kixo.setUserProperty(key, value)
Eżempjisource, screen, post_id, amount_centsplan, vip, signup_cohort, lifetime_orders
JippermettiFiltri għal kull pass tal-funnel, breakdowns, distribuzzjonijietSegmentation, 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.