Creare una routine di WhatsApp da utilizzare ad esempio per inviare messaggi di “buongiorno” ai propri cari, può essere la soluzione per levarsi d’impaccio incombenze di cui spesso e volentieri ci si dimentica. Per questo torna utile uno script Python creato da un ingegnere informatico, Kartik Nighania, di cui vi spieghiamo tutto, a partire dalle indicazioni su come farlo funzionare, fino alle informazioni per impostare per bene un messaggio WhatsApp da inviare in souplesse.

L’occorrente

Ci serve Twilio, un pacchetto Python con il codice da inserire e la piattaforma di riferimento da sfruttare: AWS Lambda di Amazon. Ma per creare una routine di WhatsApp e fare tutto ciò, occorre anche un po’ di destrezza informatica e soprattutto i passaggi seguenti che vi spieghiamo via via per filo e per segno:

  1. Impostazioni del profilo Twilio
  2. Modifica del codice
  3. Inserimento su AWS Lambda

Prima fase: impostare il profilo Twilio

Per prima cosa è necessario creare un account Twilio gratuito (di prova) da questa pagina, versione che richiede Twilio Sandbox per WhatsApp, che obbliga a utilizzare l’autenticazione di questo strumento per ricevere i messaggi WhatsApp, passaggio necessario per utilizzare Twilio con il proprio numero. Ci sono dei formulari da compilare e c’è un po’ da aspettare, ma questa è l’unica soluzione per avvalersi della versione gratuita di Twilio.

A questo punto occorre collegare lo smartphone del destinatario a Sandbok per iniziare a ricevere i messaggi, passaggio da completare tramite la sezione Learn (qui), come mostrato nello screenshot qui sotto.

A questo punto il sistema vi assegna un numero che dovete salvare nei vostri contatti, quindi inviargli un messaggio WhatsApp, dallo smartphone di un vostro caro cioè da chi volete che riceva il messaggio, un passaggio da fare una sola volta e che funge da conferma del processo.

Ora possiamo tornare al punto da cui siamo partiti, nella console di Twilio e recuperare l’SSID del proprio account con il token di autenticazione, di modo che il sistema ci riconosca come utenti  collegati a quel numero.

Seconda fase: modificare il codice

La seconda fase del processo per inviare automaticamente un messaggio WhatsApp come routine, necessita di un file da scaricare (da qui) che contiene il file di codice (whatsapp_messaging.py) e il pacchetto di distribuzione (aws_lambda_deploy.zip). Ecco quello che vi si presenta.

  • Riga 1: importa il pacchetto Twilio e usa il client per l’API Twilio
  • Riga 3: la funzione da creare che dirà a AWS Lambda di azionarsi ogni giorno a una certa ora
  • Righe 6 e 7: sostituisce i dati con quelli del proprio account
  • Riga 9: crea il client Twilio con le proprie credenziali
  • Riga 13: viene creata una directory con nome e numero di cellulare
  • Riga 15: il loop impostato con ad esempio “Buongiorno papà” con il numero di Twilio ottenuto prima e il numero da cui abbiamo inviato la conferma (come nel precedente passaggio)
  • Riga 23: per controllare lo stato del messaggio

Ciò detto, ci sono 5 elementi da cambiare: “twilio_sid” (riga 6), “auth_token” (7), “contact_directory” (13), “body” (17) e “from_” (18).

Una volta fatto questo, basta estrarre, sostituire il vecchio file col nuovo e comprimere il pacchetto di distribuzione per completare questa seconda fase.

Terza fase: completare con AWS Lambda

A questo punto il pacchetto per le routine dei messaggi WhatsApp è pronto a essere inserito su AWS Lambda, una piattaforma di calcolo senza server di casa Amazon. Accediamoci allora (da qui) per creare una funzione: Servizi > Calcola > Lambda.

Dopo aver inserito i dati che vedete nello screenshot qui sopra, cliccando su “Crea funzione” il sistema vi reindirizza alla dashboard in cui specificare al gestore le funzioni da eseguire per poi caricare il pacchetto creato e salvare.

Con il codice pronto per l’esecuzione è possibile cliccare su test per fare una verifica preventiva del funzionamento del tutto, prova che prevede l’invio di un messaggio al numero del contatto WhatsApp specificato. Se tutto va bene, ora non dovremo fare altro che attivare: Aggiungi Trigger/CloudWatch Events; quindi creare una nuova regola da rinominare a proprio piacimento.

Un esempio nello screenshot qui sopra, con “cron (minuti – ore)” a indicare l’orario da impostare in base al fuso (l’impostazione è la UTC, cioè sull’ora del meridiano di Greenwich). I due asterischi che vedete, si riferiscono al giorno del mese e al mese, il punto interrogativo e l’ultimo asterisco si riferiscono invece al giorno della settimana e dell’anno. Eventualmente date un’occhiata al grafico qui sotto in cui sono riportati alcuni esempi.

Dopodiché non ci resta che abilitare il tutto spuntando la casella apposita e cliccare su “Aggiungi”. A questo punto, la funzione ve la ritrovate nella dashboard di AWS Lambda con la routine di WhatsApp impostata e pronta a sostituirvi ad ogni risveglio (o viceversa coricamento), per la gioia di genitori e parenti.

Per ulteriori informazioni al riguardo e per chiarire eventuali dubbi, vi invitiamo a leggere l’articolo guida completo di Kartik Nighania, l’artefice, che trovate qui.

Vai a: le nostre guide per WhatsApp