Forum: Italian Ruby user group mandare mail a piu' utenti.

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
09f38ff69d24a477bd0bc340eeeda432?d=identicon&s=25 Mauro Sanna (Guest)
on 2007-07-29 21:11
(Received via mailing list)
Come posso inviare una mail a piu' utenti contemporanemente?
Il metodo che utilizzo, trovato su internet, e':


def send_email(from, from_alias, to, to_alias, subject, message)
  msg = <<END_OF_MESSAGE
From: #{from_alias} <#{from}>
To: #{to_alias} <#{to}>
Subject: #{subject}

#{message}
END_OF_MESSAGE

  Net::SMTP.start('localhost') do |smtp|
    smtp.send_message msg, from, to
  end
end

Nella variabile "to" se metto un solo indirizzo funziona, se ne metto
piu' di uno, separati da virgole, non funziona.
09f38ff69d24a477bd0bc340eeeda432?d=identicon&s=25 Mauro Sanna (Guest)
on 2007-07-31 08:37
(Received via mailing list)
Il giorno dom, 29/07/2007 alle 21.26 +0200, Mauro Sanna ha scritto:
> #{message}
> END_OF_MESSAGE
>
>   Net::SMTP.start('localhost') do |smtp|
>     smtp.send_message msg, from, to
>   end
> end
>
> Nella variabile "to" se metto un solo indirizzo funziona, se ne metto
> piu' di uno, separati da virgole, non funziona.


non lo sa nessuno?
114ff87909d3f24150ff3d70d5254338?d=identicon&s=25 Luca Guidi (Guest)
on 2007-07-31 11:17
(Received via mailing list)
Prova con questi formati di array:

['d.duck@disney.com', 'm.mouse@disney.com']

["\"Donald Duck\" <d.duck@disney.com>", "\"Mickey Mouse\"
<m.mouse@disney.com>"]




LG
09f38ff69d24a477bd0bc340eeeda432?d=identicon&s=25 Mauro Sanna (Guest)
on 2007-07-31 11:41
(Received via mailing list)
Il giorno mar, 31/07/2007 alle 11.16 +0200, Luca Guidi ha scritto:
> Prova con questi formati di array:
>
> ['d.duck@disney.com', 'm.mouse@disney.com']

niente, non funziona.
114ff87909d3f24150ff3d70d5254338?d=identicon&s=25 Luca Guidi (Guest)
on 2007-07-31 11:56
(Received via mailing list)
Qual'è l'errore riportato nel file di log?
09f38ff69d24a477bd0bc340eeeda432?d=identicon&s=25 Mauro Sanna (Guest)
on 2007-07-31 12:01
(Received via mailing list)
Il giorno mar, 31/07/2007 alle 11.56 +0200, Luca Guidi ha scritto:
> Qual'è l'errore riportato nel file di log?
> _______________________________________________
> Ml mailing list
> Ml@lists.ruby-it.org
> http://lists.ruby-it.org/mailman/listinfo/ml

nessun errore se faccio to=['prova@prova.it', 'prova2@prova2.it']
il to nella mail risulta prova@prova.itprova2@prova2.it, cioe' tutto
attaccato e la mail viene recapitata solo al primo indirizzo.
Ba5ff91885d3b2243fa77b69893b5374?d=identicon&s=25 bugant (Guest)
on 2007-07-31 12:21
(Received via mailing list)
On 7/31/07, Mauro Sanna <mauro.sanna@comune.cagliari.it> wrote:
> nessun errore se faccio to=['prova@prova.it', 'prova2@prova2.it']

ma to e' un array vero? se si funziona
589a623369bfd145508f0b28b5ce267b?d=identicon&s=25 Claudio Zilio (Guest)
on 2007-07-31 12:22
(Received via mailing list)
Mauro Sanna ha scritto:
> il to nella mail risulta prova@prova.itprova2@prova2.it, cioe' tutto
> attaccato e la mail viene recapitata solo al primo indirizzo.
>

la virgola che utilizzi nella definizione dell'array è solo una
convenzione
che definisce la fine di un elemento e l'inizio del successivo, ma non
fa parte
di nessun elemento.

Prova a passare al campo to la sringa risultante da

to.join(" , ")

questo dovrebbe prendere tutti gli elementi della tua array to e
metterli dentro ad
una stringa utilizzado il separatore messo tra " " in questo caso ,

ciao
Claudio
09f38ff69d24a477bd0bc340eeeda432?d=identicon&s=25 Mauro Sanna (Guest)
on 2007-07-31 12:39
(Received via mailing list)
Il giorno mar, 31/07/2007 alle 12.22 +0200, Claudio Zilio ha scritto:
> > nessun errore se faccio to=['prova@prova.it', 'prova2@prova2.it']
>
> to.join(" , ")

niente "premature end of script header"
il codice e':

def sendMail(from, from_alias, to, to_alias, subject, message)
    msg = <<END_OF_MESSAGE
From: #{from_alias} <#{from}>
To: #{to_alias} <#{to}>
Subject: #{subject}

#{message}
END_OF_MESSAGE
    Net::SMTP.start('mail1') do |smtp|
      smtp.send_message msg, from, to
    end
  end

def sendMailOnInsert(mail, nominativo)
    from_alias="mail1"
    from="utente@prova.it"
    to_alias="mail1"
    to=['prova@prova.it','prova2@prova2.it'].join(" , ")
    to1_alias=nominativo
    to1=mail
    subject="[MAIL1] nuovo account"
    message="#{nominativo}\t#{mail}\n\ninserito da:
#{ENV["REMOTE_USER"]}\ncollegato da: #{ENV["REMOTE_ADDR"]}"
    subject1="messaggio da mail1"
    message1="Ricordati di cambiare la password."
    sendMail(from, from_alias, to, to_alias, subject, message)
    sleep(2)
    sendMail(from, from_alias, to1, to1_alias, subject1, message1)
Ba5ff91885d3b2243fa77b69893b5374?d=identicon&s=25 bugant (Guest)
on 2007-07-31 12:45
(Received via mailing list)
On 7/31/07, Mauro Sanna <mauro.sanna@comune.cagliari.it> wrote:
> niente "premature end of script header"
infatti non e' che sia un errore
fare #{to} ma ti da' un risultato diverso
da quello che vuoi tu.

fai una prova con irb e vedi la differenza
tra il tuo risultato e quello che ottieni
se provi la soluzione indicata da Claudio.

ciao ciao,
matteo.
09f38ff69d24a477bd0bc340eeeda432?d=identicon&s=25 Mauro Sanna (Guest)
on 2007-07-31 12:46
(Received via mailing list)
Il giorno mar, 31/07/2007 alle 12.43 +0200, bugant ha scritto:
> On 7/31/07, Mauro Sanna <mauro.sanna@comune.cagliari.it> wrote:
> > niente "premature end of script header"
> infatti non e' che sia un errore
> fare #{to} ma ti da' un risultato diverso
> da quello che vuoi tu.
>
> fai una prova con irb e vedi la differenza
> tra il tuo risultato e quello che ottieni
> se provi la soluzione indicata da Claudio.

con irb a=['prova','prova1'].join"," mi da appunto prova,prova1
ma nel mio codice non mi funziona
Ba5ff91885d3b2243fa77b69893b5374?d=identicon&s=25 bugant (Guest)
on 2007-07-31 12:50
(Received via mailing list)
On 7/31/07, Mauro Sanna <mauro.sanna@comune.cagliari.it> wrote:
> con irb a=['prova','prova1'].join"," mi da appunto prova,prova1
> ma nel mio codice non mi funziona

come ti dicevo tu gli stai passando una stringa invece che un array.
devi passare un array al metodo sendMail che hai definito e non una
stinga
e poi il join lo fai li dentro.
114ff87909d3f24150ff3d70d5254338?d=identicon&s=25 Luca Guidi (Guest)
on 2007-07-31 12:58
(Received via mailing list)
Erroneamente credevo stessi usando ActionMailer, non avevo prestato
attenzione al codice.

Il punto è che nel testo del messaggio #{to} viene risolto invocando
to_s, che su di un array produce la notazione [elemento1, elemento2].

Secondo l'api doc, il blocco all'interno di #start risulta essere
corretto.

http://www.ruby-doc.org/core/classes/Net/SMTP.html#M004111
09f38ff69d24a477bd0bc340eeeda432?d=identicon&s=25 Mauro Sanna (Guest)
on 2007-07-31 16:24
(Received via mailing list)
Il giorno mar, 31/07/2007 alle 12.58 +0200, Luca Guidi ha scritto:
> Erroneamente credevo stessi usando ActionMailer, non avevo prestato
> attenzione al codice.
>
> Il punto è che nel testo del messaggio #{to} viene risolto invocando
> to_s, che su di un array produce la notazione [elemento1, elemento2].
>
> Secondo l'api doc, il blocco all'interno di #start risulta essere corretto.

Quindi non c'e' soluzione a meno che non usi ActionMailer?
114ff87909d3f24150ff3d70d5254338?d=identicon&s=25 Luca Guidi (Guest)
on 2007-07-31 18:47
(Received via mailing list)
Mauro Sanna ha scritto:
> Quindi non c'e' soluzione a meno che non usi ActionMailer?

Citando il doc:

What is This Library NOT?

This library does NOT provide functions to compose internet mails. You
must create them by yourself. If you want better mail support, try
RubyMail or TMail. You can get both libraries from RAA.
(www.ruby-lang.org/en/raa.html)

FYI: the official documentation on internet mail is: [RFC2822]
(www.ietf.org/rfc/rfc2822.txt).



LG
09f38ff69d24a477bd0bc340eeeda432?d=identicon&s=25 Mauro Sanna (Guest)
on 2007-08-01 08:40
(Received via mailing list)
Il giorno mar, 31/07/2007 alle 18.46 +0200, Luca Guidi ha scritto:
> (www.ruby-lang.org/en/raa.html)
a me va piu' che bene 'net/smtp' solo che non riesco a capire come fare
a mandare mail a piu' utenti contemporaneamente.....
This topic is locked and can not be replied to.