Histórico da Página
Composition Setup |
---|
import.css=/download/attachments/6062824/tecnologia.css |
...
Pagetitle | ||
---|---|---|
|
...
|
...
|
Classe tMailMessage
A classe
...
TMailMessage representa uma mensagem de e-mail. Através dela é possível obter todas informações sobre a mensagem carregada e realizar diversas operações, como envio e recebimento de
...
e-mail.
...
TMailMessage possui todos atributos possíveis a uma mensagem de e-mail e podemos utilizar seus métodos para inserir arquivos, documentos e outras mensagens como anexo da mensagem atual.
...
Hierarquia
...
- TMailMessage
Construtores
Inclusão de trecho | ||
---|---|---|
|
...
|
...
Propriedades
Inclusão de trecho | ||
---|---|---|
|
...
|
...
Métodos
Inclusão de trecho | ||
---|---|---|
|
...
|
...
Observações
- A classe
...
- TMailMessage não possui hierarquia, no entanto é relacionada diretamente com a classe
...
- TMailManager para operações de envio e recebimento de e-mail.
Exemplos
Bloco de código | ||||||
---|---|---|---|---|---|---|
|
| |||||
language | cpp |
| ||||
#include "TOTVS.CH"
user Function EMail()
Local oServer
Local oMessage
Local nNumMsg := 0
Local nTam := 0
Local nI := 0
//Cria a conexão com o server STMP ( Envio de e-mail )
oServer := tMailManagerTMailManager():New() oServer:Init( "", "smtp.microsiga.com.br", "ricardo.reis", "rica4758", 0, 25 ) //seta um tempo de time out com servidor de 1min If oServer:SetSmtpTimeOut( 60 ) != 0 Conout( "Falha ao setar o time out" ) Return .F. EndIf //realiza a conexão SMTP If oServer:SmtpConnect() != 0 Conout( "Falha ao conectar" ) Return .F. EndIf //Apos a conexão, cria o objeto da mensagem oMessage :=tMailMessage TMailMessage():New() //Limpa o objeto oMessage:Clear() //Popula com os dados de envio oMessage:cFrom := "Microsiga " oMessage:cTo := "[email protected];[email protected]" oMessage:cCc := "[email protected]" oMessage:cBcc := "[email protected]" oMessage:cSubject := "Teste de Email"
oMessage:cBody := "Conteudo do e-mail"
//Adiciona um attach
If oMessage:AttachFile( "arquivo.txt" ) < 0
Conout( "Erro ao atachar o arquivo" )
Return .F.
Else
//adiciona uma tag informando que é um attach e o nome do arq
oMessage:AddAtthTag( 'Content-Disposition: attachment; filename=arquivo.txt')
EndIf
//Envia o e-mail
If oMessage:Send( oServer ) != 0
Conout( "Erro ao enviar o e-mail" )
Return .F.
EndIf
//Desconecta do servidor
If oServer:SmtpDisconnect() != 0
Conout( "Erro ao disconectar do servidor SMTP" )
Return .F.
EndIf
//Cria uma nova conexão, agora de POP
oServer := tMailManagerTMailManager():New() oServer:Init( "pop3.microsiga.com.br", "", "SeunomeAntesDo@", "senhaDoEmail", 0, 110 ) If oServer:SetPopTimeOut( 60 ) != 0 Conout( "Falha ao setar o time out" ) Return .F. EndIf If oServer:PopConnect() != 0 Conout( "Falha ao conectar" ) Return .F. EndIf //Recebe o número de mensagens do servidor oServer:GetNumMsgs( @nNumMsg ) nTam := nNumMsg For nI := 1 To nTam //Limpa o objeto da mensagem oMessage:Clear() //Recebe a mensagem do servidor oMessage:Receive( oServer, nI ) //Escreve no server os dados do e-mail recebido Conout( oMessage:cFrom ) Conout( oMessage:cTo ) Conout( oMessage:cCc ) Conout( oMessage:cSubject ) Conout( oMessage:cBody ) Next //Deleta todas as mensagens do servidor For nI := 1 To nTam oServer:DeleteMsg( nI ) Next //Desconecta do servidor POP oServer:POPDisconnect() Return .T. |
Bloco de código | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
| language | cpp
| |||||||||
//Exemplo tMailMessageTMailMessage com Imagem //Este exemplo de uso da classetMailMessage TMailMessage, visa o uso e explicação de dois métodos da classe: //SetConfirmRead() e AddAttHTag(). //SetConfirmRead() tem como objetivo, mandar uma solicitação de resposta de Leitura para a pessoa //que receber oemail e-mail, podendo ela optar por mandar ou não. //AddAttHTag() tem como objetivo incluir tags no cabeçalho(header) da mensagem. Obs: este cabeçalho //não é cabeçalho do corpo da mensagem. //Neste exemplo da função usaremos uma tag para colocarmos a imagem no corpo do texto, após //carregar a imagem, atribuimos um ID para ele, da seguinte forma: 'Content-ID:<ID <ID_siga.jpg> jpg>' //A parte em negrito significa o ID que atribuimos para a imagem, o que está entre as aspas deve //ser seguido por padrão com o protocolo. //Note que quando criamos o html que compõe a mensagem usamos esse ID: //oMessage:cBody := 'Teste<br><img Teste<br><img src='cid:ID_siga.jpg'> >' //Assim a imagem será carregada normalmente.
#include "TOTVS.CH"
User Function EnvMail()
Local oMailServer := tMailManagerTMailManager():New() Local oMessage :=tMailMessage TMailMessage():New() Local nErro := 0 oMailServer:Init( "", "smtp.microsiga.com.br", "", "", 0, 25 )
If( (nErro := oMailServer:SmtpConnect()) != 0 )
conout( "Não conectou.", oMailServer:GetErrorString( nErro ) )
Return
EndIf
oMessage:Clear()
oMessage:cFrom := "[email protected]"
//Altere
oMessage:cTo := "[email protected]"
//Altere
oMessage:cCc := ""
oMessage:cBcc := ""
oMessage:cSubject := "Teste de envio d e-mail"
oMessage:cBody := " Teste<br><imgTeste<br><img src='cid:ID_siga.jpg'> >" oMessage:MsgBodyType( "text/html" ) // Para solicitar confimação de envio //oMessage:SetConfirmRead( .T. ) // Adiciona um anexo, nesse caso a imagem esta no root oMessage:AttachFile( '\siga.jpg' ) // Essa tag, é a referecia para o arquivo ser mostrado no corpo, o nome declarado nela deve ser o usado no HTML oMessage:AddAttHTag( 'Content-ID:<ID <ID_siga.jpg> jpg>' ) nErro := oMessage:Send( oMailServer ) If( nErro != 0 ) conout( "Não enviou o e-mail.", oMailServer:GetErrorString( nErro ) ) Return EndIf nErro := oMailServer:SmtpDisconnect() If( nErro != 0 ) conout( "Não desconectou.", oMailServer:GetErrorString( nErro ) ) Return EndIf Return
|
Abrangência
Advanced Protheus 6.09, Advanced Protheus 7.10, Microsiga Protheus 8.11, Protheus 10, TOTVS Application Server 10, ByYou Application Server
Veja também
...
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas