Come inviare messaggi WhatsApp da Fogli Google utilizzando l'API di WhatsApp

Pubblicato: 2022-06-16

WhatsApp with Google Sheets

Questo tutorial descrive come utilizzare la nuova API WhatsApp con lo script di Google Apps per inviare messaggi WhatsApp da Fogli Google. Lo stesso approccio funzionerebbe anche per l'invio di messaggi WhatsApp da Moduli Google quando vengono ricevuti nuovi invii di moduli.

Passaggio 1: crea un'app WhatsApp

Vai su developer.facebook.com e fai clic sul pulsante Create App per creare una nuova app che utilizzeremo per l'invio di messaggi WhatsApp.

Facebook WhatsApp App

Seleziona Business come tipo di app.

Assegna alla tua app un nome descrittivo (non utilizzare marchi di Facebook come WhatsApp o Facebook nel nome dell'app) e fai clic sul pulsante Create App per creare l'app.

WhatsApp App Name

Una volta creata l'app, fai clic sul pulsante WhatsApp nella schermata successiva per aggiungere le funzionalità di invio di WhatsApp alla tua app.

Nella schermata successiva, ti verrà richiesto di collegare la tua app WhatsApp al tuo account aziendale di Facebook. Avrai anche la possibilità di creare un nuovo account business se non ne hai ancora uno.

Add WhatsApp App

Passaggio 2: aggiungi il numero di telefono del destinatario

Facebook ti fornirà un numero di telefono WhatsApp di prova che sarà l'indirizzo di invio predefinito della tua app. Per i destinatari, avrai la possibilità di aggiungere un massimo di 5 numeri di telefono durante la fase di sviluppo senza dover effettuare alcun pagamento.

La tua app WhatsApp ti fornirà un token di accesso temporaneo che sarà valido per 23 ore. Prendi nota di questo token poiché ne avremo bisogno in un passaggio successivo.

WhatsApp Phone Number

Quindi, fai clic sul menu a discesa Recipient Phone Number per aggiungere fino a 5 diversi numeri di telefono WhatsApp alla tua app. Riceverai un codice di verifica sui numeri aggiunti e potrai inviare messaggi WhatsApp solo ai numeri che sono stati verificati con il codice.

Verify Phone Number

Passaggio 3: crea un modello di messaggio WhatsApp

Passa al gestore modelli e crea un nuovo modello di messaggio WhatsApp.

Per questo esempio, sceglieremo la categoria come Account Update e assegneremo un nome univoco al modello di messaggio. Per le lingue, sceglieremo l'inglese per il quale la lingua del codice è en . Se utilizzi un'altra lingua, prendi nota della lingua del codice in quanto è necessaria per l'invio dei messaggi.

WhatsApp Message Template

Scrivi il messaggio personalizzato

Stiamo utilizzando parametri variabili nel messaggio e questi verranno sostituiti con i valori effettivi del foglio Google. È molto simile ai marcatori che potresti aver utilizzato all'interno di Mail Merge e Document Studio con una piccola differenza che si tratta di marcatori di posizione e non di marcatori denominati.

Ecco il nostro modello di messaggio in cui le variabili {{1}} e {{2}} sono rispettivamente per il nome del cliente e il nome dell'articolo.

WhatsApp Message Template

L'approvazione del nuovo modello di messaggio da parte di WhatsApp potrebbe richiedere fino a un minuto.

Passaggio 4: invia messaggi WhatsApp

Ora che tutta la nostra configurazione lato Facebook/WhatsApp è completa, lavoriamo sul Foglio Google che invierà effettivamente questi messaggi WhatsApp personalizzati in maniera automatizzata.

Clicca qui per copiare il foglio WhatsApp nel tuo account Google.

Google sheets WhatsApp

Successivamente, aggiungi i numeri di telefono (con prefisso internazionale) nella colonna Numero di telefono del Foglio Google. Dovresti aggiungere solo i numeri che hai verificato con il tuo account WhatsApp di prova nel passaggio precedente.

Quindi vai al menu Estensione e scegli App Script per aprire lo script sottostante. Sostituisci WHATSAPP_ACCESS_TOKEN e WHATSAPP_TEMPLATE_NAME con i valori che hai copiato nei passaggi precedenti.

Fai clic sul pulsante Run all'interno dell'editor di script di Apps e dovrebbe inviare immediatamente il messaggio WhatsApp ai numeri di telefono elencati.

E quello che hai di seguito è il messaggio WhatsApp effettivo inviato dall'API di WhatsApp che sostituisce i marcatori variabili nel modello con i valori effettivi di Fogli Google.

WhatsApp Message Text

I Dettagli Tecnici

Come funziona l'API di WhatsApp con lo script di Google Apps

Lo script di Google Apps si collega a Fogli Google e recupera i dettagli dei clienti, inclusi i numeri di telefono, a cui inviare messaggi tramite WhatsApp.

 // Get data from Google Sheets // for sending messages through WhatsApp const getSheetData_ = ( ) => { const sheet = SpreadsheetApp . getActiveSheet ( ) ; const [ header , ... rows ] = sheet . getDataRange ( ) . getDisplayValues ( ) ; const data = [ ] ; rows . forEach ( ( row ) => { const recipient = { } ; header . forEach ( ( title , column ) => { recipient [ title ] = row [ column ] ; } ) ; data . push ( recipient ) ; } ) ; return data ; } ;

Successivamente, lo script scorre ogni riga del foglio e invia un messaggio WhatsApp richiamando l'API WhatsApp Cloud con il servizio UrlFetch.

 // Send Message with WhatsApp Cloud API const sendMessage_ = ( e ) => { const apiUrl = 'https://graph.facebook.com/v13.0/114746974570888/messages' ; const request = UrlFetchApp . fetch ( apiUrl , { muteHttpExceptions : true , method : 'POST' , headers : { Authorization : ` Bearer ${ WHATSAPP_ACCESS_TOKEN } ` , 'Content-Type' : 'application/json' , } , payload : JSON . stringify ( { type : 'template' , messaging_product : 'whatsapp' , to : e . recipient_number , template : { name : WHATSAPP_TEMPLATE_NAME , language : { code : LANGUAGE_CODE } , components : [ { type : 'body' , parameters : [ { type : 'text' , text : e . customer_name } , { type : 'text' , text : e . item_name } , { type : 'text' , text : e . delivery_date } , ] , } , ] , } , } ) , } ) ; const { error } = JSON . parse ( request ) ; if ( error ) { Logger . log ( ` ${ error } ` ) ; } else { Logger . log ( ` Message sent to ${ recipient_number } ` ) ; } } ; const main = ( ) => { getSheetData_ ( ) . forEach ( ( row ) => { const status = sendMessage_ ( { recipient_number : row [ 'Phone Number' ] . replace ( / [^\d] / g , '' ) , customer_name : row [ 'Customer Name' ] , item_name : row [ 'Item Name' ] , delivery_date : row [ 'Delivery Date' ] , } ) ; } ) ; } ;

Vedi anche: automatizzare i flussi di lavoro con Fogli Google