Hifadhi jumbe za WhatsApp kwenye Airtable na utume kutoka base
Kichochezi cha webhook inayopokelewa cha Airtable kinakubali ombi la POST pekee, kwa hiyo hakiwezi kujibu GET ya uthibitishaji ya Meta wala kuwa mahali pa kupokelea webhook za nambari yenyewe. Elekeza webhook kwenye mtiririko wa n8n unaoongeza kila ujumbe kwenye jedwali. Kutuma kunafanyika ndani ya Airtable: automation ya Run a script inaweza kuita Cloud API kwa fetch, na token ya nambari ikiwa imehifadhiwa kama secret.
Kichochezi cha When webhook received cha Airtable hakikubali njia nyingine, kwa hiyo hakiwezi kujibu GET ya uthibitishaji.
Kikomo cha maombi kwenye kichochezi cha webhook cha Airtable, pamoja na kikomo cha payload cha 100 KB.
Idadi ya maombi ambayo action moja ya Run a script ya Airtable inaweza kufanya, kila moja ikikatika baada ya sekunde 30.
Kwa nini Airtable haiwezi kupokea webhook za WhatsApp moja kwa moja?
Kwa sababu Meta hukagua mahali pa kupokelea kabla ya kuwasilisha chochote. Hutuma ombi la GET lenye thamani ya challenge na hutarajia thamani hiyo hiyo irudishwe kama mwili wa jibu. Kichochezi cha When webhook received cha Airtable kinakubali ombi la POST pekee na hujibu kwa JSON yake maalum isiyobadilika, kwa hiyo ukaguzi hauwezi kupita na Meta haianzi kuwasilisha.
Suluhisho ni hatua moja ya kati. Node ya Webhook ya n8n hushughulikia uthibitishaji na kupokea kila ujumbe, kisha node ya Airtable ya n8n huongeza safu: mtumaji, jina la wasifu, maandishi, kitambulisho cha ujumbe, muhuri wa muda na kitambulisho cha nambari ya simu iliyopokea. Muundo huo huo unafanya kazi kwenye Make au Zapier.
Hatua hiyo ya kati ina faida ya pili. Kichochezi cha webhook cha Airtable kinaruhusu maombi matano kwa sekunde, na zana ya mtiririko inaweza kupanga foleni ya wingi wa jumbe ambazo vinginevyo zingekataliwa.
Unatumaje template ya WhatsApp kutoka base ya Airtable?
Kwa automation ambayo action yake ni Run a script. Kichochezi kinaweza kuwa rekodi kuingia kwenye view, uga kubadilika au kitufe kubonyezwa. Script husoma simu na nyuga za rekodi kupitia input.config() na kuita endpoint ya messages ya Cloud API kwa fetch. Script za automation za Airtable hufanya kazi upande wa server, kwa hiyo hakuna kizuizi cha kivinjari.
Hifadhi token kama secret kwenye kihariri cha script badala ya kuiweka kwenye msimbo. Airtable huficha secret kwenye matokeo ya console na huruhusu watu wenye ufikiaji wa secret zote za script pekee kuihariri.
Tumia template kwa chochote ambacho mteja hajakianzisha ndani ya saa 24 zilizopita, kwa sababu maandishi huru hufika ndani ya dirisha hilo pekee. Script inaweza kuandika kitambulisho cha ujumbe kilichorudishwa kwenye rekodi, na hivyo kuunganisha ujumbe uliotumwa na safu husika.
const { phone, name } = input.config();
const token = input.secret("WHATSAPP_TOKEN");
const res = await fetch(
"https://graph.facebook.com/v23.0/<PHONE_NUMBER_ID>/messages",
{
method: "POST",
headers: { Authorization: "Bearer " + token, "Content-Type": "application/json" },
body: JSON.stringify({
messaging_product: "whatsapp",
to: phone,
type: "template",
template: {
name: "order_ready",
language: { code: "en" },
components: [{ type: "body", parameters: [{ type: "text", text: name }] }],
},
}),
},
);
output.set("result", await res.json());Jedwali la jumbe linapaswa kuwaje?
Safu moja kwa kila ujumbe, na kitambulisho cha ujumbe wa WhatsApp kama uga kuu. Meta hurudia uwasilishaji inaodhani umeshindwa, na mtiririko unaotafuta kitambulisho kabla ya kuongeza kamwe haandiki ujumbe huo huo mara mbili.
Weka uga wa direction wenye inbound na outbound. Kwenye nambari ya Coexistence, majibu ambayo timu huandika kwenye programu ya WhatsApp Business hufika kwenye webhook ile ile kama matukio ya smb_message_echoes, na kuyahifadhi kama safu za outbound huipa base mazungumzo kamili badala ya upande mmoja tu.
Unganisha kila ujumbe na jedwali la Contacts lenye ufunguo wa nambari ya simu ya tarakimu pekee, ambayo ndiyo umbo ambalo Meta hutuma. Rollup kisha huonyesha muda wa mwisho wa inbound kwa kila mwasiliani, na uga huo mmoja ndio automation inahitaji kuamua kati ya maandishi huru na template.
Makosa ya kawaida
- Kuweka URL ya webhook ya Airtable kama mahali pa kupokelea webhook za nambari. Inakubali POST pekee, GET ya uthibitishaji ya Meta inashindwa, na hakuna kitu kinachowasilishwa kamwe.
- Kubandika token kwenye mwili wa script. Ihifadhi kama script secret ili isionekane kwenye msimbo na kwenye logs.
- Kutuma maandishi huru kutoka kwenye automation ya rekodi kwa mtu ambaye hajaandika ndani ya saa 24. Template iliyoidhinishwa pekee ndiyo huwasilishwa.
Unganisha nambari yako kwenye easycoexistence.com, elekeza mahali pa kupokelea webhook yake kwenye mtiririko wa n8n unaoandika kwenye Airtable, kisha soma kitambulisho cha nambari ya simu na token kutoka dashboard. Kuanzia US$ 9 kwa kila nambari kwa mwezi, hadi US$ 1 kadiri nambari zinavyoongezwa, pamoja na siku 3 za kwanza za kipindi cha majaribio bila malipo.
Maswali yanayoulizwa mara kwa mara
Je, Run a script inapatikana kwenye mpango wa bila malipo wa Airtable?
Airtable inaorodhesha action hiyo kwenye aina zote za mipango kwa vikwazo tofauti, na inabainisha kuwa haipatikani wakati wa kipindi cha majaribio cha mpango wa Team.
Naweza kuruka n8n na kutumia Make au Zapier?
Ndiyo. Yoyote kati ya hizo tatu inaweza kupokea webhook, kujibu uthibitishaji na kuongeza safu. Airtable yenyewe ndiyo sehemu pekee ambayo haiwezi kuwa mahali pa kupokelea.
Je, kitufe cha Airtable kinaweza kutuma ujumbe wa WhatsApp?
Ndiyo. Tumia kichochezi cha When a button is clicked pamoja na action ya Run a script inayoita Cloud API, na data ya safu hujaza template.
Je, EasyCoexistence huhifadhi jumbe?
Hapana. Meta huwasilisha kila webhook kwenye URL yako ya n8n, na nakala pekee ni ile ambayo mtiririko wako unaandika kwenye Airtable.
Endelea kusoma
Uko tayari kuanza?
Sanidi WhatsApp Coexistence kwa dakika chache, si miezi. Programu inaendelea kufanya kazi kwenye simu.
Anza kipindi cha majaribio bila malipoImethibitishwa kwenye