Dalla versione 1.0.3.4 di Nios4 è possibile, attraverso gli script utilizzari servizi esterni che dispongano di webapi. In questo esempio vedremo come inviare una mail utilizzando il servizio offerto da Sendinblue.
Questo servizio ci permette di inviare un numero elevato di mail contemporaneamente, anche schedulate nel tempo. Anche se sarebbe possibile inviare le mail direttamente dagli oggetti script presenti in Nios4, è meglio appoggiarsi a un servizio esterno perchè inviando molte mail con la nostra casella di posta, potremmo essere inseriti nelle black list dei server come spam. Utilizzando un servizio certificato e non essendo noi a spedire direttamente la mail non avremo mai questo tipo di problema.
Registrazione al servizio
Come prima cosa occorre creare un proprio account su Sendinblue. Creato l'account potremo utilizzare anche quello gratuito. Poi in base alle nostre esigenze continueremo con l'account gratis o sceglieremo uno degli abbonamenti presenti in base alle sue caratteristiche
Creazione chiave API
Dalla dashboard andare sul menù in alto a destra e selezionare la voce SMTP e API. Questa ci porterà alla finestra per la creazione della nostra chiave di trasmissione delle mail.
Premiamo sul pulsante "GENERA UNA NUOVA CHIAVE API" e inseriamo un nome
Come suggerisce anche la finestra copiate e mettete in un posto sicuro la chiave. Questa sarà da inserire all'interno dello script per poter inviare la mail. In caso venga smarrita occorrerà crearne un'altra.
Ora che abbiamo la chiave possiamo creare il nostro script. Ti consigliamo di visitare il sito sulla documentazione API dove potete trovare la spiegazione di tutte le funzioni e diversi esempi.
Carichiamo un contatto da Nios4 a Sendinblue
In questo primo script caricheremo un contatto all'interno del nostro account Sendinblue. In questo modo potremo creare ad esempio, una mailing list partendo ad esempio dai nostri clienti. Questo script mostra anche la struttura di base per la spedizione dei dati.
link = "https://api.sendinblue.com/v3/contacts"
request = program.newhttprequest()
request.addheader("api-key","APIKEY")
d = {}
d.email = "help@d-one.info"
value = request.sendpost(link,d,true)
Creiamo uno script di tipo azione e inseriamo il codice riportato sopra. Cambiate la scritta APIKEY con la chiave recuperata in precedenza e la mail help@d-one.info con la mail da caricare.
Il comando sendpost ridarà un dizionario contenente l'id del contatto caricato. In caso si cercherà di rinviare lo stesso contatto lo script darà errore.
Inviamo una mail
In questo script invieremo una mail, anche in questo caso creeremo uno script di tipo azione
link = "https://api.sendinblue.com/v3/smtp/email"
request = program.newhttprequest()
request.addheader("api-key","APIKEY")
request.accept = "application/json"
d = {}
d.sender = {}
d.sender.name = "D1"
d.sender.email = "help@d-one.info"
d.to = {}
d.to[1] = {}
d.to[1].email = "help@d-one.info"
d.to[1].name = "D-One"
d.subject = "Subject"
d.textContent = "Hello World"
d.scheduledAt = "2022-08-18 12:30:00"
value = request.sendpost(link,d,true)
Come nel caso precedente inserite la vostra chiave API e modificate la mail da help@d-one.info a quella a cui dovrete recapitare la mail.
In questo specifico caso è stato inserito anche il parametro di schedulazione scheduleAt. Questo informa il servizio di non inviare immediatamente la mail ma di aspettare la data riportata dentro di esso.
Se non si vuole la schedulazione basta commentare la riga o toglierla direttamente.
Per tutti i parametri e i comandi fate riferimento alla guida ufficiale di Sendinblue.
Commenti
Posta un commento