clickSomo

Funnels u triggers

Funnel hu graf. Run hu ringiela. Wait hu ħin.

Din hija l-mudell kollu, u kull proprjetà diffiċli li għandha dan il-prodott ġejja minn dawk it-tliet sentenza. L-editjar ta' funnel attiv huwa sikur minħabba fihom. Riprova ma tistax tibgħat darbtejn minħabba fihom. Persuna li taqbeż it-Tlieta ma tisma' xejn il-Ħamis minħabba fihom.

X'jiġri fil-fatt meta jaħdem

Il-pubblikazzjoni ta' funnel tikteb verżjoni immutabbli. Xi ħadd jidħol, u jidher ringiela: run wieħed, għal dan il-kuntatt, marbut ma' dik il-verżjoni, li jżomm in-noda kurrenti, ħin ta' qawmien u kuntest tiegħu stess.

Worker jikri r-runs li għadda minnhom il-ħin ta' qawmien tagħhom, u jieħedhom b'SKIP LOCKED biex żewġ workers ma jistgħux jieħdu l-istess wieħed. Jwettaq in-nodi sakemm jilħaq stennija jew terminal, imbagħad jikteb il-ħin ta' qawmien li jmiss u jħalliha.

Noda hija funzjoni pura tar-run, il-kuntatt u n-noda — u l-effetti tagħha jikkonfermaw fl-istess transazzjoni mal-avvanz tar-run innifsu. Din il-proprjetà waħda hi li tagħmel ir-riprova sikura. Worker li jinqatel f'nofs sekonda bejn "ibgħat" u "avvanza" jħalli jew it-tnejn jew l-ebda, qatt wieħed.

U peress li l-app tipprovdi l-ħin minflok id-database, ringiela miktuba issa hi skaduta issa. Kolonna ta' skedar li tieħu b'mod awtomatikul-arloġġ tad-database mhix għadha skaduta fl-istant li tinkiteb fiha, u titlef eżatt it-tick li ħalqitha — bug li jidher bħal xejn għal kollox sakemm messaġġ jkun tard siegħa.

Tick wieħed tal-workerEżekuzzjoni
  • 1Kiriwake_at <= now(), FOR UPDATE SKIP LOCKED. Kju bla kiri jibgħat darbtejn b'mod awtomatiku.
  • 2EżekuzzjoniNodi f'sekwenza sakemm stennija jew terminal. Kull waħda tikteb pass: x'iddeterminat, x'ħarġet.
  • 3IkkonfermaEffetti u avvanz, transazzjoni waħda. Din hi l-ħila kollha.
  • 4RieqedIl-wake_at li jmiss jinkteb. Għad m'hemmx ringieli downstream, u l-ebda bżonn li jkun hemm.

Run wieħed għal kull kuntatt għal kull verżjoni

Erbgħax u erbatax-il trigger

X'jista' jibda run

Xi ftit minnhom huma affarijiet li tagħmel int. Il-maġġoranza huma affarijiet li jagħmel jew ma jagħmilx il-klijent tiegħek — u n-nuqqas ta' azzjoni hi trigger daqs kemm hi l-azzjoni nnifisha.

Jaslu

form_submit, list_join, contact_created, tag_added u segment_enter. Segment hu predikat ħaj, għalhekk "jidħol fis-segment" tkopri kull "sar" li tista' tesprimi — tliet ordnijiet, disgħin jum bla ħbiberija, jonfoq fuq sogla.

Jagħmlu xi ħaġa

page_visit mill-isnippet tas-sit, message_opened, link_clicked, booking_made u payment_made. Messaġġ li jinfetaħ innifsu hu avveniment fuq il-kuntatt, għalhekk funnel wieħed jista' jistenna reazzjoni għall-aħħar ħaġa li bgħat.

Il-ħin, jew int

date_field b'offset — għeluq snin, tiġdid, "sena minn dakinnhar", sebat ijiem qabel jew tliet ijiem wara. schedule għal dak rikorrenti. manual għall-avviż li tibgħat għax int iddeċidejt.

L-applikazzjoni tiegħek stess

api_event hu avveniment personal li tibgħat mill-kodice tiegħek b'token tiegħek. Xi ħaġa li jaf il-prodott tiegħek issir trigger: attivat, stieden kollega, laħaq il-limitu, ikkanċella, esporta. Dan hu dak li jibdel għodda ta' post għal parti mill-prodott tiegħek.

Ridħol mill-ġdid, deċiż darba

Funnel jew hu re-entrant jew mhuwiex, u d-database jenforzah: run wieħed għal kull kuntatt għal kull funnel sakemm int għidt mod ieħor. L-istess trigger li jispara darbtejn fl-istess sekonda ma jistax joħloq żewġ runs b'mistake.

Kundizzjonijiet ta' dħul

Trigger jispara u l-ispeċifika ta' dħul tiddeċidi jekk dan il-kuntatt partikolari jistax jidħol — predikat ta' segment quddiem il-bieb. Irħas minn noda ta' kondizzjoni fl-ewwel pass, u jżomm il-graf fuq x'jiġri minflok fuq min jista' jidħol.

Erbgħax u erbatax-il ħaġa jistgħu jibdewh. Sittax-il ħaġa jistgħu jiġru wara.

Sittax-il azzjoni u seba' nodi ta' fluss

X'jista' jagħmel funnel, u kif jiddeċidi

Ibgħat xi ħaġa

send_email, send_sms, send_push, send_letter — erba' kanali, graf wieħed — flimkien ma' notify_team meta l-persuna li trid titgħarraf taħdem għalik.

Ibdel il-kuntatt

add_tag, remove_tag, add_to_list, remove_from_list, set_field. Li timmarka xi ħadd waqt li tmur hu dak li jagħmel is-segment tal-funnel li jmiss sempliċi.

Oħloq 'il barra

http_request għal xi ħaġa li tixtieq, create_payment kontra l-kont konness tiegħek stess, u book_slot kontra riżorsa ta' booking. Il-ħallas jibqa' tiegħek; ħadd ma jsir klijent tagħna.

Iċċaqlaq bejn funnels

enter_funnel u exit_funnel. Ibni sekwenza ta' merħba waħda u sejjaħha minn erba' postijiet, minflok żżomm erba' kopji li jinfirdu sa Marzu.

Iġġenera fil-ħin tal-ibgħat

ai_generate jimla l-varjabbli ta' merge għal kull kuntatt, jiġi kejjel kontra l-kwota tiegħek u jiġi ffaħfran bl-hash tal-kreativa u tal-attributi tal-kuntatt — inkella tkun tħallas għal kull riċipient f'kull ibgħat wieħed.

Stenna, ibram, issepara, ingħaqad

wait jieħu durata, data u ħin, jum tal-ġimgħa u ħin, jew qasam tad-data b'offset. condition huwa predikat ta' segment b'iva u le. split huwa A/B/n bi piżijiet. join jerġa' jġib il-fergħat flimkien.

goal — dak li jgħodd

Għan jtemm it-tħaddiġ għal kulħadd li jilħaqh. Huma ħadu l-appuntament, xtraw, wieġbu: il-bqija tas-sekwenza tiġi kkansata għalihom b'mod speċifiku. Ħadd ma jirċievi "nintilfu" jum wara li reġgħu lura, u dan huwa n-nod li jipprevjenih.

throttle u quiet_hours

Throttle jirregola l-veloċità ta' mewġa biex kaxxa tal-post b'limitu baxx ta' rata ma titħabbarx f'sospensjoni. Quiet hours iżommu messaġġ sa ħin deċenti — jiġi applikat fil-livell tal-messaġġ, mhux ikkupjat f'kull fergħa tal-graff.

Iċċekkjat qabel ma tkun tista' titħaddem

Il-validatur jirrifjuta l-istess ħwejjeġ għalik u għall-AI

Graff jiġi ċċekkjat qabel ma jista' jiġi ppubblikat, u l-ċekk mhuwiex biss parir. Huwa l-istess triq tal-kodiċi jekk persuna ġibditx il-funnel jew jekk mudell ġenerah, u dan huwa l-unika raġuni għaliex funnels ġenerati jistgħu jiġu fdati xejn.

Eżattament punt tad-dħul wieħed

Żewġ nodi tad-dħul huma ambigwità li ħadd ma tinnota sakemm in-nofs il-ħażin ta' lista tirċievi s-sekwenza l-ħażina.

Kull nod jilħaq

Fergħa orfna hija jew żball jew messaġġ li taħseb li se joħroġ u ma joħroġx. It-tnejn jixirqlu li tkun mgħarrfa dwarhom.

Ċiklu irid ikun fih stennija

Loop bla stennija fih huwa loop infinit b'ibgħat fin-nofs. Din ir-regola hi d-differenza bejn funnel u inċident.

Kull ibgħat għandu l-kreativa tiegħu

Nod send_email bla kreativa u bla suġġett ma jistax jiġi ppubblikat. Il-messaġġ bis-suġġett it-tajjeb u korp vojt huwa falliment reali; jiġi rrifjutat hawn.

Kull varjabbli huwa magħruf

Il-varjabbli ta' merge jiġu validati fil-pubblikazzjoni. {{frist_name}} huwa żball ta' kitba li tara waqt li qed teditja, mhux "Hello ," li jasal f'erbgħin elf inbox.

Imbagħad issimulah

Agħmel dry-run ta' kuntatt reali mill-graff kollu u aqra lura t-triq meħuda u kull messaġġ li kien se jinbgħat, bil-jum tiegħu. Xejn ma joħroġ mill-bini.

Il-każijiet inkonvenjenti

Seba' ħwejjeġ li jikseru magna naiva

Kull waħda minn dawn hija test b'arloġġ deterministiku warajh, għax kull waħda tkisser implimentazzjoni li tidher korretta perfettament sakemm tiltaqa' mar-realtà.

Għal xiex il-magna tiġi ttestjataFalsifikazzjoni
  • 1Funnel li jdur fuq innifsuLeġittimu, komuni, u tajjeb — sakemm iċ-ċiklu fih stennija, li l-validatur jinsisti fuqha.
  • 2Xi ħadd jaqta' l-abbonament waqt li jkun għaddejIs-suppressjoni tiġi ċċekkjata fil-ibgħat, mhux fl-enqueue. Iċ-ċekk fl-enqueue jibgħat lin-nies li telqu waqt l-istennija.
  • 3Il-funnel jiġi editjat b'għaxart elef ruħ ġewwaHuma jkomplu jimxu l-verżjoni li daħlu fiha, sal-aħħar. Dħul il-ġodda jimxu l-ġdida.
  • 4L-istess trigger jinħaraq darbtejn fi sekonda waħdaTħaddiġa waħda, għax l-unikezza hija indiċi mhux ċekk segwit minn insert.
  • 5Kuntatt jiġi mħassar waqt it-tħaddiġIt-tħaddiġa tintemm. Tħassir li jħalli sekwenza għadha mindirata lil xi ħadd mhuwiex tħassir.
  • 6Stennija taqsam bidla fid-dawl tas-sena"Tlett ijiem fid-disgħa ta' filgħodja" ifisser id-disgħa ta' filgħodja fuq iż-żewġ naħat tal-bidla tal-arloġġ.
  • 7Xogħol jinqatel bejn l-ibgħat u l-avvanzL-effetti u l-avvanz huma transazzjoni waħda. Jew seħħew it-tnejn, jew la waħda minnhom.

Arloġġ deterministikuKull test jikser implimentazzjoni li tidher raġonevoli

Il-kampanji huma n-nofs l-ieħor

Funnel jirreaġixxi. Il-kampanja hija xandir ta' darba waħda: udjenza, skeda, limitazzjoni, u ibgħat. Hija forma differenti ta' ħaġa u tinżel b'mod deliberat separat, minflok tinżen bħala funnel b'għaqda waħda.

Żewġ regoli jagħmluha sikura. L-udjenza tiġi materializzata darba waħda u tirrifjuta li taħdem darbtejn — li terġa' tiġi solvuta kieku żżid bil-mod kulħadd li daħal mill-ibgħat beda, u l-indiċi tad-deduplikazzjoni jħabbih billi jipprevjeni d-duplikati li kienet ħalqet. U l-kontaturi jiġu rkalkolati mill-avvenimenti ta' twassil, qatt ma jiżdiedu fil-post, biex webhook li jerġa' jipprova ma jkabbarx ir-rapport.

Lil xiex tuża: jekk jiġri minħabba xi ħaġa li għamlet il-persuna, hu funnel. Jekk jiġri minħabba deċiżjoni li ħadtha nhar it-Tlieta, hija kampanja. Ammont sorprendent ta' awtomazzjoni ta' kummerċjali tmur ħażin billi tifforza t-tieni fil-forma tal-ewwel.