Prodantix
Kwa muhtasari
- Kundi
- Jukwaa la wasanidi programu
- Tovuti
- prodantix.com
- Konsoli
- app.prodantix.com
- Nyaraka
- prodantix.com/en/docs/overview
- API ya GraphQL
- api.prodantix.com/graphql
- Upokeaji wa matukio
- eu.api.prodantix.com/v1/events
- Wakati halisi
- eu.ws.prodantix.com
- Kiolesura cha MCP
- eu.mcp.prodantix.com/mcp
- Kucheza upya kipindi
- eu.replay.prodantix.com
Prodantix imetengenezwa kwa ajili ya watu wanaojenga programu. Kila timu ya bidhaa huuliza maswali yale yale matatu: watu wanafanya nini hasa ndani ya programu yetu, ni nani aone sehemu ipi, na ni wakati gani unaofaa kuwaambia jambo.
Kampuni nyingi hununua zana tofauti kwa kila moja ya kazi hizo, na hapo ndipo matatizo huanza. Kila zana huweka kumbukumbu yake tofauti kuhusu watumiaji wako, na kumbukumbu hizo hutengana taratibu. Zana moja hudhani mteja amemaliza kusanidi akaunti yake. Nyingine bado haijafikia, hivyo humtumia maelekezo ya hatua aliyoimaliza wiki iliyopita. Hakuna anayeligundua hadi mteja alalamike, au hadi dashibodi mbili zianze kuonyesha namba tofauti.
Jinsi injini ilivyojengwa
Injini imeundwa na vijenzi vinne vya msingi, na kila kitu kingine kimejengwa juu yake. Ni vyema kuvifuata kwa mpangilio, kwa sababu kila kimoja hulisha kinachofuata. Marejeleo ya dhana huvieleza kwa ukamilifu.
Tukio
Jambo moja alilofanya mtumiaji, likinaswa linapotokea: usajili uliokamilika, ukurasa uliofunguliwa, fomu iliyoachwa katikati. Matukio ndiyo ishara ghafi, na ndiyo kitu pekee kinachoingia kwenye mfumo kutoka nje. Kila kitu kingine hutokana nayo.
Hali ya mtumiaji
Mwonekano hai unaoweza kuulizwa wa kila kinachojulikana kuhusu mtumiaji, uliotokana na matukio yake na kusasishwa wakati tukio jipya linapowasili. Hiki ndicho chanzo cha ukweli ambacho uchanganuzi, feature flags na ujumbe vyote husoma. Si mkusanyo wa usiku, wala si nakala inayowekwa sambamba na kazi fulani. Kipo kimoja tu.
Uamuzi
Kanuni inayopimwa dhidi ya hali ya mtumiaji: nani yumo katika kundi fulani, nani anapata flag, nani anastahili ujumbe. Kwa kuwa uamuzi husoma hali hai wakati ule ule unapoulizwa, hauwezi kujibu kwa kutumia picha ya zamani.
Kitendo
Kile injini hufanya uamuzi unapotekelezwa: kufungua kipengele, kutuma ujumbe, kuanzisha mtiririko wa kazi. Kitendo chenyewe hurekodiwa kama tukio, na ndicho kinachofunga mzunguko: kile injini ilichofanya huwa sehemu ya kile inachokijua.
Uchanganuzi ni kusoma hali
Uchanganuzi katika Prodantix si hifadhi tofauti yenye nakala yake ya watumiaji wako. Ni kusoma hali ya mtumiaji moja kwa moja. Funeli, ubakiaji na makundi ni maswali juu ya mwonekano hai ule ule ambao sehemu nyingine za injini hufanyia kazi, hivyo hakuna safari ya SQL kwenda ghala wala kusubiri mkusanyo wa usiku: hali tayari imeundwa kwa umbo la swali. Makundi hapa ni vitu vya daraja la kwanza: yana majina, hufafanuliwa kwa vifungu, na uanachama wake hubaki wa sasa watu wanapotimiza au kuacha kutimiza masharti.
Kuhifadhi swali utakalouliza tena
Dashibodi ni mkusanyiko wenye jina wa vigae, na kigae ni hoja uliyokwisha kuiendesha pamoja na jinsi unavyotaka ichorwe. Hoja huhifadhiwa vilevile kama mchunguzi alivyoituma, hivyo kigae hushikilia swali wala si picha ya jibu lake: kukifungua huendesha hoja tena na kukurudisha kwenye mchunguzi ukiwa kwenye hoja ileile, huru kusogeza dirisha la muda au kubadilisha mgawanyo. Kwa hiyo dashibodi haiwi kamwe nakala ya zamani. Ni mkusanyiko wa maswali ambayo injini huyajibu kutoka hali hai kila unapotazama.
Namba inapojisogeza yenyewe
Hakuna anayeweza kufuatilia kila chati. Sehemu ya kufuatilia hufanywa na Prodantix: husoma mfululizo kipande kwa kipande, hukokotoa mstari wa msingi na mtawanyiko wa mfululizo huo, kisha huweka alama kwenye vipande vilivyo mbali mno navyo, pande zote mbili. Kuporomoka na kupanda kwa ghafla vyote huripotiwa, kila kimoja pamoja na mstari wa msingi kilichouacha na kiasi kilichojitenga, ili uweze kutofautisha mvunjiko halisi na kelele za kawaida. Uwezo wa kutambua ni mpangilio unaoweza kubadilishwa, si sheria isiyobadilika, na kitambuzi hukataa kubahatisha: mfululizo ulio karibu tambarare, au ulio mfupi mno kuwa na umbo bado, hautoi chochote badala ya kutoa tahadhari ya uongo.
Watu ambao hali inawahusu
Hali ya mtumiaji ni mwonekano uliokadiriwa, na orodha ya watu ndipo unaposoma mwonekano huo mtu mmoja kwa wakati. Konsoli huorodhesha kila aliyeonwa na mradi, waliokuwa hai karibuni wakitangulia, pamoja na kisanduku cha kutafuta na orodha inayoendelea kupakia unapoendelea. Kila safu hubeba yale injini iliyokusanya kuhusu mtu huyo: matukio mangapi, vipindi tofauti vingapi, alionekana lini mara ya kwanza na ya mwisho, alifanya nini mwisho, yuko katika makundi gani, pamoja na sifa zilizotengwa (jina, barua pepe, simu, picha ya wasifu) zikitolewa kwenye safu wima zake. Kufungua safu huonyesha jedwali kamili la sifa, ambalo hubeba chochote matukio yako yaliyoweka humo, si orodha isiyobadilika ya sehemu. Makundi yana kichupo chake na sifa zake, kwa sababu kampuni au eneo la kazi ni kitu kinachojitegemea na ukweli wake ni wake, si wa kila mwanachama.
Mtu mmoja, vitambulisho kadhaa
Mgeni hufika kabla hujajua yeye ni nani. SDK humpa kitambulisho, yeye husoma kurasa tatu, na hapo ndipo hujisajili. Hadi mtu amwambie injini yeye ni nani, wasifu huo hauna jina kabisa, na orodha husema hivyo badala ya kubahatisha. Usajili unapotokea, vitambulisho hufungwa katika mnyororo unaoishia kwenye utambulisho mmoja wa msingi, hivyo nyayo za bila jina hukunjwa ndani ya akaunti yenye jina badala ya kuanzisha wasifu wa pili. Kila safu huonyesha ni vitambulisho vingapi vinavyoishia hapo, na wasifu huviorodhesha. Pale injini yenyewe isipoweza kubaini, unaweza kuunganisha wasifu miwili kwa mkono: wewe huchagua utambulisho utakaobaki, sifa zake hushinda pale panapokinzana, na hesabu hujumlishwa. Huo haurudi kutengana tena. Wasifu kama ulivyosomeka kabla ya kuunganishwa hubaki kwenye kumbukumbu ya ukaguzi, hivyo kile ulichosema kinaweza kupatikana, lakini watu hao wawili hawatenganishiki tena baada ya kuunganishwa.
Kutazama upya kipindi kimoja
Uchanganuzi hukwambia kuwa jana watu kumi na mmoja waliacha fomu ileile katikati. Haukuambii kwa nini. Urudiaji wa kipindi hurekodi ukurasa wenyewe: SDK ya kivinjari hunasa hati na kila mabadiliko yanayotokea juu yake wakati mtu anafanya kazi, hukusanya mabadiliko hayo kuwa vipande vilivyopangwa kwa mfuatano na kuvipeleka kwa kinasa, kisha konsoli hucheza kipindi hicho kama kilivyotokea. Kila rekodi huwekwa chini ya kitambulisho kileile kinachotumiwa na sehemu nyingine za injini, hivyo kipindi ni cha mtu ambaye tayari unaweza kumtafuta, si cha kitambulisho cha mgeni kilichopo ndani ya zana nyingine pekee.
Kile rekodi inaruhusiwa kuhifadhi
Ufichaji huwa umewashwa kabla hujaweka mipangilio yoyote. Kila herufi inayoandikwa kwenye sehemu ya kujaza hubadilishwa kuwa nyota ndani ya kivinjari, kabla kipande hakijapakiwa, kwa hiyo kinachofika kwa kinasa hakikuwahi kubeba maudhui: urefu na mipaka ya maneno hubaki, jambo linalofanya urudiaji uendelee kuonekana kama ukurasa, na maneno yenyewe hayapo. Sehemu za nenosiri, barua pepe na simu hufichwa iwe ufichaji umewashwa au umezimwa, hivyo kuuzima hakuwezi kufichua sehemu ya vitambulisho. Maandishi yanayoonekana ukurasani hubaki isipokuwa uombe nayo yafichwe. Kila kipande hurekodi kama kilifichwa na konsoli huweka alama kwenye kipindi kulingana na hilo, hivyo unajua kila mara ni kipi kati ya viwili unachotazama. Rekodi zenyewe zipo kwenye hifadhi ya faragha: konsoli huomba kiungo kilichotiwa saini chenye muda mfupi kwa kipande kimoja kwa wakati, na bila hicho hakuna kinachofikika. Kipindi kinabaki kupatikana kwa muda gani baada ya hapo huamuliwa na mpango wako.
Kuonyesha vitu tofauti kwa watu tofauti
Mara nyingi timu hutaka kutoa kitu kipya kwa watumiaji wachache kwanza na kuona kinavyokwenda kabla kila mtu hajakipata. Prodantix huamua nani aone nini kwa kupima masharti dhidi ya hali ya mtumiaji: sifa, opereta na thamani, vinavyokaguliwa wakati ule ule flag inapoulizwa badala ya kutafutwa kwenye orodha iliyohifadhiwa. Unaweza kumpa asilimia mbili ya wateja kipengele kipya, ukatazama wanavyokitumia, kisha ukakipanua au ukakiondoa bila kusubiri toleo jingine.
Ujumbe unaowasili ukiwa bado unasaidia
Ujumbe unafaa kutumwa tu wakati bado unasaidia. Prodantix unaweza kuutuma wakati ule ule mtu anapofanya jambo, au anaposhindwa kulifanya. Mteja akifika kikomo cha kifurushi chake, anajua papo hapo, si asubuhi iliyofuata baada ya kukata tamaa na kwenda kwingine.
Wanapokujibu
Ujumbe huenda upande mmoja hadi mtu ajibu, na kuanzia hapo huwa mazungumzo ya msaada. Prodantix hubeba hayo pia, na akili bandia iliyomo huandika rasimu badala ya kutuma. Modeli hupewa mazungumzo hayo na hali ya mtu huyo mwenyewe, si zaidi ya hapo: si mazungumzo ya mteja mwingine, wala si sehemu nyingine ya mradi wako. Huandika jibu linalopendekezwa, na jibu hilo huwa sehemu ya mazungumzo pale tu wakala wako anapobonyeza tuma, hivyo “pendekeza, usitume” ndivyo msimbo ulivyojengwa, si kanuni ambayo mtu lazima aikumbuke. Mazungumzo pia hubeba kitambulisho chake. Ufunguo wa mradi hutambulisha mradi na husafiri ndani ya kila ukurasa unaosakinisha SDK, kwa hiyo hauwezi kusimama badala ya mtu; kila mazungumzo hupata tokeni yake, inayotumika kwa mazungumzo hayo pekee, na kitambulisho kilichomo ndani ya ombi hakiamui kamwe unazungumza na nani. Kufungua mazungumzo ndiyo njia pekee isiyohitaji chochote zaidi ya ufunguo wa umma, ndiyo maana ina kikomo cha kasi kwa kila mradi na kwa kila anayepiga simu.
Kuunganisha mfuatano mwenyewe
Baadhi ya majibu ni zaidi ya hatua moja, nawe unataka kuyapanga mwenyewe. Mtiririko wa kazi ni grafu ndogo: huanza kwa mkono, au mtu anapoingia au kutoka katika kundi, na kutoka hapo husonga kupitia nodi. Nodi ya kitendo hufanya jambo (huandika mstari wa kumbukumbu, huita webhook yako). Nodi ya kuchelewesha husubiri, hadi siku thelathini. Nodi ya kusubiri hushikilia hadi ishara yenye jina ifike, na ina njia yake ya kutokea ikiwa ishara haitafika kamwe. Nodi ya matawi hupima masharti dhidi ya hali ya mtumiaji kisha huchukua njia inayolingana, au ile mbadala. Mizunguko husonga nodi moja kwa wakati, na kila hatua huthibitishwa kabla ya inayofuata kuchukuliwa, hivyo kuanzishwa upya huendelea pale mzunguko ulipofika kweli badala ya kuurudia tangu mwanzo. Webhook hukaguliwa kabla ya kuitwa: lengo lazima liwe anwani ya https ya umma, ombi huenda kwenye anwani zilezile ukaguzi ulizoidhinisha, maelekezo upya hayafuatwi, na simu inayoning’inia hukatwa.
Uratibu wa AI, na jinsi mzunguko unavyofungwa
Violesura vilivyo hapo juu bado hukuachia kazi ya kuunganisha hatua: kutambua jambo, kubaini linamhusu nani, na kuamua ufanye nini. Prodantix inaweza kuendesha mzunguko huo yenyewe. Injini hutambua wakati muhimu ndani ya hali hai, huchagua kundi linalohusika, na huamua kitendo. Kinachoifanya izidi uendeshaji wa kawaida ni sehemu ya mwisho: kitendo hurekodiwa kama tukio, hivyo hukunjwa tena ndani ya hali ile ile ya mtumiaji ambayo uamuzi unaofuata utaisoma. Tabia ya mfumo wenyewe huwa sehemu ya kile inachokijua kuhusu mtu huyo, badala ya kuwa jambo lililomtokea pembeni.
Pendekezo humsubiri mtu
Injini haitendi kwa hitimisho lake yenyewe. Kile inachozalisha ni pendekezo, na pendekezo ni mpango ulioandikwa: bendera hizi, makundi haya, ujumbe huu. Kabla halijaidhinishwa, kila bendera, kundi na mazungumzo linayoyataja hupatanishwa dhidi ya mpangaji wako mwenyewe, na marejeleo yasiyopatikana huliangusha pendekezo lote badala ya kutupwa kimyakimya, na hilo ndilo linalozuia modeli iliyosoma kitu chenye nia mbaya isifikie zaidi ya mradi wako. Kuidhinisha ni tendo la binadamu, na hapo ndipo kitu chochote hutokea: utekelezaji hupita katika njia zilezile za bendera na ujumbe unazotumia kwa mkono, hivyo ruhusa, kumbukumbu ya ukaguzi na mipaka ya mpango wako yote bado hutumika. Kuidhinisha mara mbili hakufanyi lolote mara ya pili.
Kuingiza matukio
Kila kitu huanza na tukio linalotumwa kwenye lango la upokeaji, ambalo injini hulikunja mara moja ndani ya hali ya mtumiaji. SDK zinahusu wavuti, simu na seva. React ndiyo kipekee: mzunguko wake wa maisha unahitaji adapta maalum, provider na hook zinazosakinisha mteja mara moja tu na ambazo ni salama kwa StrictMode. Mwongozo wa haraka huiunganisha kwa mistari michache.
Funguo na mazingira
Kila wito wa SDK hubeba ufunguo wa mradi, unaotoka kwenye konsoli. Kuunda mradi hutengeneza mazingira mawili, live na test, kila moja na ufunguo wake: jenga kwa test, sambaza kwa live. Funguo zote mbili huonyeshwa mara moja tu, mara baada ya kuundwa, kwa sababu seva huhifadhi alama ya siri pekee na hakuna skrini inayoweza kuzionyesha tena. Kuzungusha hutengeneza mbadala kwa mazingira uliyochagua, na wewe huamua kama ufunguo wa zamani ukome mara moja au baada ya kipindi cha neema.
Njia nne za kuzungumza nayo
REST inaenea kwenye seva pangishi tatu: moja kwa flags na ujumbe, moja kwa upokeaji wa matukio, na moja kwa kucheza upya vipindi, kila moja ikitoa hati yake ya OpenAPI kwenye /openapi.json. Upokeaji hujibu 202, maana yake tukio limepokelewa kwa uchakataji si kwamba limehifadhiwa: tukio lenye kasoro bado laweza kutupwa mbele zaidi kwenye mkondo. GraphQL hushughulikia modeli nzima ya programu, ikijumuisha miradi, flags, mitiririko ya kazi, uchanganuzi, ujumbe, makundi na ankara. Kiolesura cha wakati halisi hutangaza mabadiliko ya flags, ujumbe na mizunguko ya kazi, na hukata muunganisho usiothibitishwa papo hapo. Kiolesura cha MCP huruhusu mawakala kusoma na kuandika kwa miito ya zana; ni cha mashine kwa mashine na hukataa maombi ya kivinjari.
Data inabaki yako
Unaweza kuendesha Prodantix kwenye seva zetu au kwenye zako mwenyewe, na hufanya kazi vivyo hivyo kwa njia zote mbili. Kila kitu unachokiweka ndani unaweza kukitoa tena kikiwa kizima, wakati wowote unaotaka. Hatuuzi data yako wala hatuitumii kufundisha modeli za AI. Kwa jinsi ilivyoundwa, Prodantix huishia kushikilia kumbukumbu kamili zaidi ya wateja wako kuliko mahali pengine popote ulipo nayo, hivyo ahadi hiyo ina uzito zaidi hapa kuliko kwingineko.
Ni kwa ajili ya nani
Prodantix inafaa timu zinazoendesha zana mbili au tatu tofauti kwa jambo hili na zimechoshwa na kupingana kwake. Hufaa zaidi pale unapokuwa na wateja wa kutosha kiasi kwamba huwezi tena kufuatilia wanachofanya kwa kuuliza uliza tu.
Tembelea Prodantix: prodantix.com