[Gambas-user] Sending E-Mail...
Fabien Bodard
gambas.fr at ...626...
Tue Mar 19 08:35:44 CET 2013
#!/usr/bin/env gbs3
USE "gb.db", "gb.net.smtp"
Private hcon As New Connection
Private hTim as Timer
Public Sub Main()
Application.Daemon = True
hTim = new timer as "Timer1"
hTim.Delay = 60000
hTim.Trigger()
hTim.Start
End
Public sub Timer1_Timer()
Dim hsmtp As Smtpclient
Dim hResMails As Result
Dim s As String
'Définir la connection
hcon.type = "mysql"
hCon.host = "localhost"
hcon.login = "#######"
hCon.password = "*******"
hcon.name = "GF"
hResMails = db.exec("SELECT * FROM emails")
For Each hResMails
hsmtp = New SmtpClient
hsmtp.Host = "mail.toile-libre.org"
hsmtp.User = "gf_info at ...2827..."
hsmtp.Password = "*******"
hsmtp.Port = 587
hsmtp.From = hsmtp.User
For Each s In Split(hResMails!to)
hsmtp.To.Add(s)
Next
For Each s In Split(hResMails!cc)
hsmtp.Cc.Add(s)
Next
For Each s In Split(hResMails!bcc)
hsmtp.bcc.Add(s)
Next
hsmtp.Subject = iif(hResMails!sujet, hResMails!sujet, "nosubject")
hsmtp.Add(hResMails!message, "text/plain")
if hResMails!message_html Then hsmtp.Add(hResMails!message_html,
"text/html")
hsmtp.Send()
Next
If hResMails.count = 0 Then Return
hResMails.MoveLast()
db.Exec("DELETE FROM emails WHERE id<=&1", hResMails!id)
Catch
File.Save(User.Home &/ "mailerror.log", Format(Now(), GB.GeneralDate) &
": \n" & Error.Backtrace.Join("\n") & " " & Error.Text & " " & Error.Where
& "\n")
End
This is the mail deamon of gambasforge, it work since more than one year
without fail nor reboot. It control the db every 1 min. The page refresh is
more quick :-)
A good Script example too :-)
2013/3/18 Ru Vuott <vuott at ...325...>
> Hello Willy,
>
> thanks a lot ! I communicated via Forum to our friend your gentle answer.
>
> I'll let you know a possible additional message.
>
> Bye
> vuooott
>
>
> --- Lun 18/3/13, Willy Raets <willy at ...2734...> ha scritto:
>
> > Da: Willy Raets <willy at ...2734...>
> > Oggetto: Re: [Gambas-user] Sending E-Mail...
> > A: gambas-user at lists.sourceforge.net
> > Data: Lunedì 18 marzo 2013, 21:50
> > On Mon, 2013-03-18 at 18:55 +0000, Ru
> > Vuott wrote:
> > > Hello,
> > >
> > > I would like to point out what a forum member of
> > "Gambas-it.org" wrote about the problem of sending email:
> > >
> > > ********
> > > These days I tried the component gb.net.smtp with poor
> > results, then I started to study and I made a small class to
> > send mail with a Telnet terminal.
> > >
> > > But I would like to know if the Socket of gambas could
> > somehow replace Telnet to communicate with the SMTP server.
> > >
> > > 220 posta.hextra.it Service ready
> > >
> > > and then it seems to disconnect !!!
> > >
> > > Have you had similar experiences ?
> > >
> > > *********
> > >
> > > Well, as we can help our friend?
> > >
> > > Thanks
> > >
> > > vuott
> > >
> > What seems to be the problem as I have no trouble sending
> > mail usingI commented out the encryption as I don't get it to work. But
> that is
> not a Gambas problem as my regular (non Gambas mail client) can't send
> SSL or TSL either
> > gb,net.smtp
> >
> > This is an example directly from one of my projects.
> > Note that info is retrieved from setting on a mail
> > preferences form
> > where user can set the values and they are saved as
> > settings.
> >
> > Nore: All settings are string values from settings file
> > using
> > gb.settings.
> > Settings["mail/from"] = yourmail at ...3115...
> > Settings["mail/smtp"] = smtp.yourprovider.org
> > Settings["mail/port"] = 25
> >
> > DefaultMail is a Public String variable I use to provide my
> > own mail
> > address.
> > I use this routine for error trapping and having error info
> > send back to
> > me automatically if Mail Preferences are set.
> >
> > It works like a charm..
> >
> > Private Sub SendMail(TextToSend As String, Subject As
> > String)
> >
> > Dim hMail As New SmtpClient
> > hMail.To.Add(DefaultMail)
> > hMail.From = Settings["mail/from"]
> > hMail.Host = Settings["mail/smtp"]
> > hMail.Port = Settings["mail/port"]
> > 'If Settings["mail/tsl"] = -1 Then
> > ' hMail.Encrypt = 2
> > 'Else
> > hMail.Encrypt = 0
> > 'Endif
> > hMail.Subject = Subject
> > hMail.Add(TextToSend)
> > hMail.Send
> > MailSend = True
> >
> > End
> >
> > I commented out the encryption as I don't get it to work.
> > But that is
> > not a Gambas problem as my regular (non Gambas mail client)
> > can't send
> > SSL or TSL either.
> >
> > Hope this can help your friend
> >
> > --
> > Kind regards,
> >
> > Willy (aka gbWilly)
> >
> > http://gambasshowcase.org/
> > http://howtogambas.org
> > http://gambos.org
> >
> >
> >
> >
> >
> >
> ------------------------------------------------------------------------------
> > Everyone hates slow websites. So do we.
> > Make your web apps faster with AppDynamics
> > Download AppDynamics Lite for free today:
> > http://p.sf.net/sfu/appdyn_d2d_mar
> > _______________________________________________
> > Gambas-user mailing list
> > Gambas-user at lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/gambas-user
> >
>
>
> ------------------------------------------------------------------------------
> Everyone hates slow websites. So do we.
> Make your web apps faster with AppDynamics
> Download AppDynamics Lite for free today:
> http://p.sf.net/sfu/appdyn_d2d_mar
> _______________________________________________
> Gambas-user mailing list
> Gambas-user at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gambas-user
>
--
Fabien Bodard
More information about the User
mailing list