2015-08-14 14 views

risposta

21

Il modo migliore che ho trovato è utilizzare il pacchetto mailman. Per l'invio di messaggi di posta elettronica di prova stavo usando il mio account Gmail utilizzando la seguente configurazione per mailman ->

def config do 
    %Mailman.Context{ 
    config: %Mailman.SmtpConfig{ relay: "smtp.gmail.com",     
           port: 587, 
           username: "[email protected]", 
           password: "mypassword", 
           tls: :always },            
    composer: %Mailman.EexComposeConfig{} 
    } 
end 

e per il contenuto di posta elettronica che stavo usando la seguente:

def testing_email do 
    %Mailman.Email{ 
     subject: "Hello Mailman!", 
     from: "[email protected]", 
     to: ["[email protected]"],   
     text: "Hello Mate", 
     html: Phoenix.View.render_to_string(MyApp.PageView,"index.html", foo: "bar") 
     } 
end 

e poi basta fare ->

1) email = MyApp.Mailer.deliver testing_email

2) Task.await(email)

+1

Non ci sono molte informazioni sull'argomento, quindi ho deciso di pubblicare il risultato dei miei sforzi. Spero che sia utile per chiunque – JustMichael

+0

Inoltre è possibile inviare e-mail usando un pacchetto per API mailgun -> https://github.com/chrismccord/mailgun – JustMichael

+0

Sto provando a usare il tuo codice per inviare e-mail ma Task.await alla fine scade? –

5

Check out Bamboo - è un'eccellente libreria con un'ottima documentazione, è dotato di adattatori per SendGrid e Mandrill e offre un modo pratico per visualizzare in anteprima le e-mail inviate localmente in modalità sviluppo. Funziona alla grande con Phoenix e ha anche il supporto per i modelli di rendering.

+0

Penso che ci fosse una cosa su Bamboo che mi ha allontanato dal fatto che hanno reimplementato il client smtp in 'bamboo_smtp' e non so quanto sia affidabile. – JustMichael

1

Dopo aver provato alcuni, andrò sicuramente con il pacchetto https://github.com/swoosh/swoosh. Offre il miglior supporto documentation, il test di verifica, l'anteprima della casella di posta nel browser e il conteggio delle stelle punta a un numero maggiore di utenti.

Problemi correlati