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.
- 1Kiri
wake_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_atli 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à.
- 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.