Define o token OAuth2 que será utilizado no envio e recebimento de e-mails.
Sintaxe
SetOAuthToken( < cToken > )
Parâmetros
Nome | Tipo | Descrição | Obrigatório | Referência |
---|---|---|---|---|
cToken | caractere | Indica o token OAuth2 que será utilizado no envio de e-mails. | X |
Observações
- O método deve ser chamado após chamar o método Init e antes de chamar os métodos de connect (SMTPConnect, POPConnect, ou IMAPConnect).
- Esse método impacta o recebimento e o envio de emails.
- O token (Access Token) deve ser gerado através de ferramenta externa à classe.
- Se a conexão utilizada for usando o protocolo MAPI, o método não tem efeito.
Exemplos
user function tstgmail() Local cServer := "imap.gmail.com" Local nServerPort := 993 // Local cServer := "pop.gmail.com" // Local nServerPort := 995 Local cSMTP := "smtp.gmail.com" Local nSMTPPort := 587 Local cUser := "[email protected]" //Usuário com @gmail.com Local cToken := "access_token" Local cPass := "password" Local oSrv := TMailManager():New() Local oMsg := TMailMessage():New() Local nTimeout := 60 Local nMessages := 0 Local xRet oSrv:SetUseSSL( .T. ) oSrv:SetUseTLS( .T. ) xRet := oSrv:Init( cServer, cSMTP, cUser, cPass, nServerPort, nSMTPPort ) if xRet <> 0 conout( "Erro Init oSrv: " + oSrv:GetErrorString( xRet ) ) return endif oSrv:SetOAuthToken( cToken ) xRet := oSrv:SMTPConnect() if xRet <> 0 conout( "Erro SMTPConnect oSrv: " + oSrv:GetErrorString( xRet ) ) return endif xRet := oSrv:SetSMTPTimeout( nTimeout ) if xRet <> 0 conout( "Erro SetSMTPTimeout oSrv: " + oSrv:GetErrorString( xRet ) ) return endif xRet := oSrv:SMTPAuth( cUser, cPass ) if xRet <> 0 conout( "Erro SMTPAuth oSrv: " + oSrv:GetErrorString( xRet ) ) return endif oMsg:Clear() oMsg:cDate := cValToChar( Date() ) oMsg:cTo := "[email protected]" oMsg:cSubject := "Test subject" oMsg:MsgBodyType( "text/plain" ) oMsg:MsgBodyEncode( 1 ) oMsg:cBody := "Test" xRet := oMsg:Send( oSrv ) if xRet <> 0 conout( "Erro Send oSrv: " + oSrv:GetErrorString( xRet ) ) return endif conout( "Email enviado" ) xRet := oSrv:SMTPDisconnect() if xRet <> 0 conout( "Erro SmtpDisconnect: " + oSrv:GetErrorString( xRet ) ) return endif conout( "Disconectado SMTP" ) oMsg:Clear() // xRet := oSrv:POPConnect() // if xRet <> 0 // conout( "Erro POPConnect oSrv: " + oSrv:GetErrorString( xRet ) ) // return // endif xRet := oSrv:IMAPConnect() if xRet <> 0 conout( "Erro IMAPConnect oSrv: " + oSrv:GetErrorString( xRet ) ) return endif xRet := oSrv:SetPOPTimeout( nTimeout ) if xRet <> 0 conout( "Erro SetPOPTimeout oSrv: " + oSrv:GetErrorString( xRet ) ) return endif oSrv:GetNumMsgs( @nMessages ) if nMessages > 0 conout( "GetNumMsgs: " + cValToChar( nMessages ) ) xRet := oMsg:Receive( oSrv, 1 ) if xRet <> 0 conout( "Erro Receive oSrv: " + oSrv:GetErrorString( xRet ) ) else conout( " Date: " + oMsg:cDate ) conout( " From: " + oMsg:cFrom ) conout( " To: " + oMsg:cTo ) conout( "Subject: " + oMsg:cSubject ) // conout( " Body: " + oMsg:cBody ) endif endif // xRet := oSrv:POPDisconnect() // if xRet <> 0 // conout( "Erro POPDisconnect oSrv: " + oSrv:GetErrorString( xRet ) ) // return // endif xRet := oSrv:IMAPDisconnect() if xRet <> 0 conout( "Erro IMAPDisconnect oSrv: " + oSrv:GetErrorString( xRet ) ) return endif conout( "Disconnect Sucesso!!!" ) return
Abrangência
Disponível a partir da versão 20.3.0.14.
Veja também
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas