invio email HTML

Linguaggi di programmazione: php, perl, python, C, bash e tutti gli altri.
Avatar utente
daemon_nio
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1012
Iscrizione: lunedì 15 gennaio 2007, 14:18
Sesso: Maschile
Località: London
Contatti:

invio email HTML

Messaggio da daemon_nio »

Per sopperire a questo problema mi sono scritto uno script bash.

Codice: Seleziona tutto

#!/bin/bash

if [[ -z $1 || -z $2 || -z $3 || -z $4 ]]
then
  echo -e "Per inviare una mail in formato HTML lanciare il programma con\n
                $0 fileEmail.html mittente@address.it destinatario@address.it [oggetto]\n";
  exit 1;
fi

if [ ! -f $1 ]
then
  echo -e "ERRORE: il file $1 non esiste, non e' possibile inviare la mail.\n";
  exit 2;
fi

CONNECTION="HELO daemon_nio\nMAIL FROM: <$2>\nRCPT TO: <$3>\nDATA\n";
HEADER="Return-Path: <$2>\nDelivered-To: <$3>\nFrom: <$2>\nTo: <$3>\nSubject: $4\nDate: `date +"%a, %d %b %Y %H:%M:%S %z"`\nMIME-Version: 1.0\nContent-type: text/html\nX-Mailer: daemon_nio netcat\nUser-Agent: daemon_nio netcat\n\n";

echo -e "$CONNECTION $HEADER `< $1`\n.\n" | netcat out.virgilio.it 25;
E' un piccolo script che invia una mail scritta in formato HTML (in pratica una pagina HTML memorizzata sul nostro filesystem) ad un indirizzo email.

Lo script si usa in maniera molto semplice:

Codice: Seleziona tutto

nomeScript fileEmail.html mittente@address.it destinatario@address.it [oggetto]
Ovviamente può essere migliorato sia per controlli, sia per destinatari (per il momento se ne può indicare solo uno), sia perché adesso una volta inviata la email finché non si fa CTRL+C il programma non si ferma mai, sia perché fa schifo  ;D

Ma fa ciò che deve fare, e lo metto a disposizione di tutti per chi lo voglia utilizzare oppure migliorare ;)

Fatene buon uso!
Ultima modifica di daemon_nio il domenica 5 ottobre 2008, 21:43, modificato 1 volta in totale.
Sempre costruendo qualcosa di nuovo: Matag: The Game
Avatar utente
paper0k
Rampante Reduce
Rampante Reduce
Messaggi: 7220
Iscrizione: lunedì 2 ottobre 2006, 13:39
Contatti:

Re: invio email HTML

Messaggio da paper0k »

Ma nel messaggio verso SMTP il "Delivered-To" non dovrebbe far riferimento al mittente?
;)
Chiunque può essere ragionevole, ma esser sani di mente è raro (Oscar Wilde)
Wiki|Blog|Twitter|Identi.ca|last.fm
Avatar utente
kelev
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1766
Iscrizione: giovedì 4 settembre 2008, 0:27

Re: invio email HTML

Messaggio da kelev »

Nice
"E alla fine sei da solo, dove vai, con chi brindi?"
Avatar utente
daemon_nio
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1012
Iscrizione: lunedì 15 gennaio 2007, 14:18
Sesso: Maschile
Località: London
Contatti:

Re: invio email HTML

Messaggio da daemon_nio »

paper0k ha scritto: Ma nel messaggio verso SMTP il "Delivered-To" non dovrebbe far riferimento al mittente?
;)
Grazie per l'avviso.

Avevo lasciato il mio nome e cognome :D, gli header li avevo preso da un messaggio che mi ero autoinviato, quindi era destinato a me, e siccome non era un campo poi così importante lo script funzionava lo stesso.
Sempre costruendo qualcosa di nuovo: Matag: The Game
Scrivi risposta

Ritorna a “Programmazione”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 2 ospiti