IngiaAnza kipindi cha majaribio bila malipo
Meta Tech Provider

Hifadhi jumbe za WhatsApp kwenye Google Sheets na utume kutoka kwenye jedwali

Elekeza webhook ya nambari yako kwenye workflow ya n8n ambayo node ya Google Sheets huongeza safu moja kwa kila ujumbe: mtumaji, jina, maandishi, kitambulisho cha ujumbe na wakati. Ili kutuma kutoka kwenye jedwali, function ya Apps Script inaweza kupitia safu moja baada ya nyingine na kuita Cloud API kwa UrlFetchApp, ikitumia kitambulisho cha nambari ya simu na token yako. Timu yako inaendelea kujibu kutoka programu ya WhatsApp Business.

60 / min

Idadi ya maombi ya kuandika ya Google Sheets API yanayoruhusiwa kwa dakika kwa kila mtumiaji kwa kila mradi; 300 kwa kila mradi.

20,000 / day

Idadi ya miito ya URL Fetch ya Apps Script kwa akaunti ya kawaida ya Google; akaunti za Workspace hupata 100,000.

6 min

Muda mrefu zaidi ambao utekelezaji mmoja wa Apps Script unaweza kuendeshwa kabla haujasimamishwa.

Ujumbe wa WhatsApp unakuwaje safu kwenye jedwali?

Meta hutuma kila ujumbe wa nambari yako kwenye webhook uliyoweka, hapa ni node ya Webhook ya n8n ambayo pia hujibu ombi la uthibitishaji la Meta. Node inayofuata ni Google Sheets yenye operesheni ya Append Row, inayopanga sehemu za payload kwenye safu wima: nambari ya mtumaji, jina la wasifu, maandishi, kitambulisho cha ujumbe cha WhatsApp, muhuri wa wakati na kitambulisho cha nambari ya simu iliyopokea.

Tumia Append or Update Row ukiwa na kitambulisho cha ujumbe kama ufunguo badala ya Append ya kawaida, ili majaribio ya kutuma upya yasilete madhara. Meta hutuma ujumbe tena inapodhani utumaji ulishindwa, na ufunguo wa kitambulisho hugeuza utumaji wa pili kuwa usasishaji wa safu ile ile.

Kwenye nambari ya Coexistence, majibu yanayoandikwa kwenye programu ya WhatsApp Business hufika kwenye webhook ile ile kama matukio ya smb_message_echoes. Yahifadhi pamoja na safu wima ya mwelekeo, na jedwali litakuwa na pande zote mbili.

Kikomo cha Sheets kinabana wapi?

Kwenye uandishi kwa kila mtumiaji. Sheets API inaruhusu maombi 300 ya kuandika kwa dakika kwa kila mradi na 60 kwa dakika kwa kila mtumiaji kwa kila mradi, na credential ya n8n ni mtumiaji mmoja. Workflow inayoongeza safu moja kwa kila ujumbe kwa hiyo inaweza kushughulikia takriban ujumbe mmoja kwa sekunde, mfululizo.

Hiyo inatosha kwa nambari nyingi za maduka. Haitoshi tena baada ya template ya matangazo, wateja mia kadhaa wanapojibu ndani ya dakika chache. API hujibu 429 Too Many Requests na, bila kujaribu tena, safu hupotea.

Njia mbili za kurekebisha, na moja yoyote inatosha. Washa kujaribu tena pamoja na kusubiri kwenye node ya Google Sheets, jambo linalolingana na ushauri wa Google wa kupunguza kasi hatua kwa hatua. Au kusanya kwa pamoja: acha n8n ikusanye jumbe kwa sekunde thelathini kisha iziongeze kwa ombi moja, hivyo maandishi mengi huwa moja.

Unatumaje template kutoka kwenye jedwali?

Kwa Apps Script, kupitia menyu ya Extensions ya jedwali. Function husoma safu ambazo hazijatumwa, huita endpoint ya kutuma jumbe ya Cloud API kwa UrlFetchApp kwa kila safu, kisha huandika kitambulisho cha ujumbe kilichorudishwa na wakati kwenye safu hiyo. Trigger ya wakati inaweza kuiendesha kila baada ya dakika chache, au unaweza kuiendesha mwenyewe kutoka menyu maalum.

Hifadhi token kwenye script properties badala ya kwenye msimbo, ili yeyote anayeweza kuona script asiione.

Kumbuka vikomo. Akaunti ya kawaida ya Google hupata miito 20,000 ya URL Fetch kwa siku na akaunti ya Workspace 100,000, na kila utekelezaji husimama baada ya dakika sita. Shughulikia safu kwa vipande na uweke alama ya imetumwa kabla ya kuendelea, ili utekelezaji uliosimamishwa uendelee pale ulipoishia badala ya kutuma mara mbili.

Apps Script: send one approved template per unsent row
function sendPending() {
  const token = PropertiesService.getScriptProperties().getProperty("WHATSAPP_TOKEN");
  const sheet = SpreadsheetApp.getActive().getSheetByName("Send");
  const rows = sheet.getDataRange().getValues();
  for (let i = 1; i < rows.length; i++) {
    const [phone, name, sentAt] = rows[i];
    if (sentAt) continue;
    const res = UrlFetchApp.fetch("https://graph.facebook.com/v23.0/<PHONE_NUMBER_ID>/messages", {
      method: "post",
      contentType: "application/json",
      headers: { Authorization: "Bearer " + token },
      payload: JSON.stringify({
        messaging_product: "whatsapp", to: String(phone), type: "template",
        template: { name: "order_ready", language: { code: "en" },
          components: [{ type: "body", parameters: [{ type: "text", text: name }] }] },
      }),
    });
    sheet.getRange(i + 1, 3).setValue(new Date());
  }
}

Makosa ya kawaida

  • Kuongeza safu bila ufunguo wa kitambulisho cha ujumbe. Majaribio ya Meta ya kutuma upya huandika ujumbe ule ule kwenye safu mbili.
  • Kuandika safu moja kwa kila ujumbe kupitia credential moja wakati wa wimbi la majibu. Kikomo cha maandishi 60 kwa dakika kwa kila mtumiaji hurudisha 429 na safu hupotea.
  • Kutuma maandishi huru kutoka kwenye jedwali kwa watu ambao hawajaandika ndani ya saa 24. Ni template iliyoidhinishwa pekee inayofika nje ya dirisha hilo.
Kufanya hili ukitumia EasyCoexistence

Unganisha nambari yako kwenye easycoexistence.com, elekeza webhook yake kwenye workflow ya n8n, kisha nakili kitambulisho cha nambari ya simu na token kwenye script. Kuanzia US$ 9 kwa kila nambari iliyounganishwa kwa mwezi, hadi US$ 1 kadiri unavyoongeza nambari, na siku 3 za kwanza bila malipo.

Maswali yanayoulizwa mara kwa mara

Naweza kutumia Make au Zapier badala ya n8n?

Ndiyo. Webhook maalum ya Make au catch hook ya Zapier hupokea ujumbe, kisha hatua yao ya Google Sheets huongeza safu.

n8n huandika kwa akaunti gani ya Google?

Ile iliyoidhinisha credential ya Google ya n8n. Akaunti hiyo inahitaji ruhusa ya kuhariri jedwali, na kikomo chake cha kuandika kwa kila mtumiaji ndicho ambacho workflow hutumia.

Safu wima ya simu imepangwa vizuri?

Hifadhi nambari kama maandishi ya kawaida, tarakimu zenye msimbo wa nchi bila alama ya plus, ambayo ndiyo muundo anaotuma Meta. Vinginevyo Sheets huzichukulia kama namba, hivyo huondoa plus ya mwanzo na inaweza kubadilisha muundo wa thamani ndefu.

EasyCoexistence huhifadhi nakala ya jumbe?

Hapana. Meta hutuma kila webhook kwenye URL yako ya n8n, na jedwali ndilo nakala pekee.

Endelea kusoma

Uko tayari kuanza?

Sanidi WhatsApp Coexistence kwa dakika chache, si miezi. Programu inaendelea kufanya kazi kwenye simu.

Anza kipindi cha majaribio bila malipo

Imethibitishwa kwenye

WhatsApp na Google Sheets kwenye Cloud API