Pessoal segue abaixo um exemplo do TDN de como enviar e-mail utilizando SSL.
user function sendMail()
local oServer := Nil
local oMessage := Nil
local nErr := 0
local cPopAddr := "pop.example.com" // Endereco do servidor POP3
local cSMTPAddr := "smtp.example.com" // Endereco do servidor SMTP
local cPOPPort := 110 // Porta do servidor POP
local cSMTPPort := 465 // Porta do servidor SMTP
local cUser := "user@example.com" // Usuario que ira realizar a autenticacao
local cPass := "password" // Senha do usuario
local nSMTPTime := 60 // Timeout SMTP
// Instancia um novo TMailManager
oServer := tMailManager():New()
// Usa SSL na conexao
oServer:setUseSSL(.T.)
// Inicializa
oServer:init(cPopAddr, cSMTPAddr, cUser, cPass, cPOPPort, cSMTPPort)
// Define o Timeout SMTP
if oServer:SetSMTPTimeout(nSMTPTime) != 0
conout("[ERROR]Falha ao definir timeout")
return .F.
endif
// Conecta ao servidor
nErr := oServer:smtpConnect()
if nErr <> 0
conOut("[ERROR]Falha ao conectar: " + oServer:getErrorString(nErr))
oServer:smtpDisconnect()
return .F.
endif
// Realiza autenticacao no servidor
nErr := oServer:smtpAuth(cUser, cPass)
if nErr <> 0
conOut("[ERROR]Falha ao autenticar: " + oServer:getErrorString(nErr))
oServer:smtpDisconnect()
return .F.
endif
// Cria uma nova mensagem (TMailMessage)
oMessage := tMailMessage():new()
oMessage:clear()
oMessage:cFrom := "sender@example.com"
oMessage:cTo := "receiver@example.com"
oMessage:cCC := "cc@example.com"
oMessage:cBCC := "bcc@example.com"
oMessage:cSubject := "Assunto"
oMessage:cBody := "Corpo do e-mail"
// Envia a mensagem
nErr := oMessage:send(oServer)
if nErr <> 0
conout("[ERROR]Falha ao enviar: " + oServer:getErrorString(nErr))
oServer:smtpDisconnect()
return .F.
endif
// Disconecta do Servidor
oServer:smtpDisconnect()
return .T.
local oServer := Nil
local oMessage := Nil
local nErr := 0
local cPopAddr := "pop.example.com" // Endereco do servidor POP3
local cSMTPAddr := "smtp.example.com" // Endereco do servidor SMTP
local cPOPPort := 110 // Porta do servidor POP
local cSMTPPort := 465 // Porta do servidor SMTP
local cUser := "user@example.com" // Usuario que ira realizar a autenticacao
local cPass := "password" // Senha do usuario
local nSMTPTime := 60 // Timeout SMTP
// Instancia um novo TMailManager
oServer := tMailManager():New()
// Usa SSL na conexao
oServer:setUseSSL(.T.)
// Inicializa
oServer:init(cPopAddr, cSMTPAddr, cUser, cPass, cPOPPort, cSMTPPort)
// Define o Timeout SMTP
if oServer:SetSMTPTimeout(nSMTPTime) != 0
conout("[ERROR]Falha ao definir timeout")
return .F.
endif
// Conecta ao servidor
nErr := oServer:smtpConnect()
if nErr <> 0
conOut("[ERROR]Falha ao conectar: " + oServer:getErrorString(nErr))
oServer:smtpDisconnect()
return .F.
endif
// Realiza autenticacao no servidor
nErr := oServer:smtpAuth(cUser, cPass)
if nErr <> 0
conOut("[ERROR]Falha ao autenticar: " + oServer:getErrorString(nErr))
oServer:smtpDisconnect()
return .F.
endif
// Cria uma nova mensagem (TMailMessage)
oMessage := tMailMessage():new()
oMessage:clear()
oMessage:cFrom := "sender@example.com"
oMessage:cTo := "receiver@example.com"
oMessage:cCC := "cc@example.com"
oMessage:cBCC := "bcc@example.com"
oMessage:cSubject := "Assunto"
oMessage:cBody := "Corpo do e-mail"
// Envia a mensagem
nErr := oMessage:send(oServer)
if nErr <> 0
conout("[ERROR]Falha ao enviar: " + oServer:getErrorString(nErr))
oServer:smtpDisconnect()
return .F.
endif
// Disconecta do Servidor
oServer:smtpDisconnect()
return .T.
Nenhum comentário:
Postar um comentário