Clipper On Line • Ver Tópico - SENDMAIL não funciona com Gmail.

SENDMAIL não funciona com Gmail.

Projeto Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

 

SENDMAIL não funciona com Gmail.

Mensagempor Poka » 13 Jul 2017 10:22

Olá a todos
não funciona com Gmail
alguém poderia dar uma ajuda.

ANNOUNCE RDDSYS 
#INCLUDE "MINIGUI.CH"
#INCLUDE "FILEIO.CH"
*------------------------------------
FUNC SENDMAIL
         // RETORNA _ERRO
         // SE VAZIO, TUDO OK
         // SE NAO VAZIO DEU ERRO
         LOCAL X,A
   LOCAL OSOCKET, CSMTP, CFROM, CTO, CSUBJECT, CMSGBODY, AATTACHMENT
   LOCAL  CUSERID, CPASSWORD, LHTML, CUSER := ""  ,_ERRO:=""
   
         PARA;            //  EXEMPLOS
         XCSMTP,;          // "ITELEFONICA.COM.BR"
   XCFROM,   ;         // "<RCSISTEMA1@ITELEFONICA.COM.BR>"
   XCTO    , ;         // "<RCPOCA@YAHOO.COM.BR>"
   XCSUBJECT,   ;      // "TESTE DE ENVIO DE EMAIL"     // TITULO DO EMAL
   XAATTACHMENT, ;   // "C:\GELICHB\TESTE.XML"
   XCMSGBODY   , ;     // "SEGUE ARQUIVO XML"       // TEXTO DO CORPO DO EMAIL
   XCUSERID    , ;     // "RCSISTEMA1@ITELEFONICA.COM.BR"
   XCPASSWORD ,;     // "HELENINHA"
   XNPORT     ,;     // 25
   XNPRIORITY      // 3      PRIORIDADE NORMAL
         IF LEN( ALLTRIM (XCTO) ) <=2
                  _ERRO+="- Email não preenchido"
                  RETU (_ERRO)
         ENDIF
   msg(1,"enviando email para " + fl+xcto)

   *-----------------------------------------------------------------------------*
   CSMTP           :=  XCSMTP
   CFROM           :=  ALLTRIM(XCFROM)
   CTO             := ALLTRIM(XCTO)
   CSUBJECT        := XCSUBJECT
   AATTACHMENT   :=  XAATTACHMENT
   CMSGBODY        := XCMSGBODY
   CUSERID         := XCUSERID
   CPASSWORD     := XCPASSWORD
   NPORT         :=   XNPORT
   NPRIORITY     := XNPRIORITY
   
   IF  ! "@"  $ CTO
                  _ERRO+="-Email inválido"+FL
      RETU (_ERRO)
   ENDIF
   FOR A:= 2 TO LEN( CTO) -1  // NAO CONSIDERA <>
      X:= ASC(SUBSTR(CTO,A,1))
      IF X = 46;
                           .OR. X=64 ;
                     .OR. X>=48 .AND. X<=57 ;
                     .OR. X=95 ;
                     .OR. X>=97 .AND. X<=122
                     // VALIDO
                  ELSE
                     _ERRO+="-Email inválido"+FL + CTO+FL+ "caracter: "+ SUBSTR(CTO,A,1)
         RETU (_ERRO)
                  ENDIF
   NEXT
         //
   OSOCKET := TSMTP():NEW()
   OSOCKET:CLEARDATA()
   OSOCKET:SETPRIORITY( NPRIORITY )
   OSOCKET:SETFROM( CUSERID,CFROM)
   OSOCKET:ADDTO( CUSERID, CTO )
   OSOCKET:SETSUBJECT( CSUBJECT )
   OSOCKET:ADDATTACH( AATTACHMENT)
   OSOCKET:SETDATA( CMSGBODY, LHTML )
   OSOCKET:LOGIN( CUSERID, CPASSWORD )

   IF ! OSOCKET:SEND(.T.)
      //MSGSTOP( OSOCKET:GETLASTERROR(), "WHILE TRYING TO SEND DATA GOT AN ERROR MESSAGES FROM SERVER" )
      _ERRO+="- Email não enviado"
   ENDIF
   
   //OSOCKET:CLOSE()

RETU (_ERRO)
*----------------------------
FUNC CONECTA
         LOCAL _ERRO:=""
         PARA CSMTP,NPORT
   MSG(1,"Conectando servidor de email")
   OSOCKET := TSMTP():NEW()
   IF ! OSOCKET:CONNECT( CSMTP, NPORT )
      _ERRO:= "- Falha na conexão"
   ENDIF
   MSG(0)
RETU _ERRO
*-------------------
FUNC DESCONECTA
   OSOCKET := TSMTP():NEW()
   OSOCKET:CLOSE()
RETU NIL
*------------FIM ----------------------



Poka
Avatar de usuário

Poka
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 513
Data de registro: 25 Out 2004 21:26
Cidade/Estado: Leme/SP
Curtiu: 0 vez
Mens.Curtidas: 23 vezes

TSMTP minigui não funciona com gmail

Mensagempor JoséQuintas » 13 Jul 2017 10:58

Tópico errado, isso não é do Harbour, e não é sendmail do Harbour.
Isso é a classe TSMTP da minigui.
À primeira vista, não tem opção pra gmail.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18152
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1215 vezes

SENDMAIL não funciona com Gmail.

Mensagempor Kapiaba » 13 Jul 2017 15:07

Tente assim:

function Main()

   LOCAL oMsg  := CreateObject( "CDO.Message" )
   LOCAL oConf := CreateObject( "CDO.Configuration" )
   LOCAL cSchema := "http://schemas.microsoft.com/cdo/configuration/"
   
   oConf:Fields[ cSchema + "sendusing" ] = 2
   oConf:Fields[ cSchema + "smtpserver" ] = "smtp.gmail.com"
   oConf:Fields[ cSchema + "smtpserverport" ] = 465
   oConf:Fields[ cSchema + "smtpauthenticate" ] = 1
   oConf:Fields[ cSchema + "sendusername" ] = "kapiabafwh@gmail.com"
   oConf:Fields[ cSchema + "sendpassword" ] = "suasenha" //"yourpassword"
   oConf:Fields[ cSchema + "smtpusessl" ] = 1
   oConf:Fields:Update()
   
   oMsg:To = "kapiabafwh@gmail.com"
   oMsg:From ="Joao <kapiabafwh@gmail.com>"
   oMsg:Subject = "Test send with gmail account"
   oMsg:HTMLBody = "it works"
   oMsg:Sender = "Joao"
   oMsg:Organization = "FiveTech"
   oMsg:ReplyTo = "kapiabafwh@gmail.com"
   oMsg:Configuration = oConf
   
   oMsg:Send()

   MsgInfo( "Feito" )
   
return nil


abs.
Kapiaba
Colaborador

Colaborador
 
Mensagens: 1766
Data de registro: 07 Dez 2012 15:14
Cidade/Estado: São Paulo
Curtiu: 311 vezes
Mens.Curtidas: 119 vezes

SENDMAIL não funciona com Gmail.

Mensagempor Kapiaba » 13 Jul 2017 15:10

gmail.png
Kapiaba
Colaborador

Colaborador
 
Mensagens: 1766
Data de registro: 07 Dez 2012 15:14
Cidade/Estado: São Paulo
Curtiu: 311 vezes
Mens.Curtidas: 119 vezes

SENDMAIL não funciona com Gmail.

Mensagempor Kapiaba » 13 Jul 2017 15:39

Opa, esqueci:

gmail2.png
Kapiaba
Colaborador

Colaborador
 
Mensagens: 1766
Data de registro: 07 Dez 2012 15:14
Cidade/Estado: São Paulo
Curtiu: 311 vezes
Mens.Curtidas: 119 vezes

SENDMAIL não funciona com Gmail.

Mensagempor Kapiaba » 13 Jul 2017 15:40

gmail3.png
Kapiaba
Colaborador

Colaborador
 
Mensagens: 1766
Data de registro: 07 Dez 2012 15:14
Cidade/Estado: São Paulo
Curtiu: 311 vezes
Mens.Curtidas: 119 vezes

SENDMAIL não funciona com Gmail.

Mensagempor Kapiaba » 13 Jul 2017 15:41

Kapiaba
Colaborador

Colaborador
 
Mensagens: 1766
Data de registro: 07 Dez 2012 15:14
Cidade/Estado: São Paulo
Curtiu: 311 vezes
Mens.Curtidas: 119 vezes

SENDMAIL não funciona com Gmail.

Mensagempor Kapiaba » 13 Jul 2017 15:42

Desligando a segurança do gmail:

https://myaccount.google.com/lesssecureapps?pli=1

Abs
Kapiaba
Colaborador

Colaborador
 
Mensagens: 1766
Data de registro: 07 Dez 2012 15:14
Cidade/Estado: São Paulo
Curtiu: 311 vezes
Mens.Curtidas: 119 vezes

SENDMAIL não funciona com Gmail.

Mensagempor Poka » 21 Jul 2017 10:13

Olá

Quintas, com certeza peguei essa rotina praticamente pronta, funciona à tempos, mas com gmail não. Se há uma coisa que não gosto em programação é quando mexe com essas partes que sai do trivial de programação, impressoras fiscais, enfim essas coisas. Como trabalho sozinho pra mim é um parto. Tenho um amigo, ele não é programador mas me ajuda nessas partes. Não ligo de ficar uma semana em meia dúzia de linhas em programação com custos , contas a pagar , a receber, isso eu gosto, mas essas outras coisas aí pra mim é um sofrimento.

Kapiaba, obrigado por responder, mas infelizmente não consegui fazer funcionar, dá o seguinte erro.

Error cdo_message/- 2147352573
Disp_e_membernotfound:send
Called from toleauto:send(0)


Tem solução?
Obrigado.

Poka
Avatar de usuário

Poka
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 513
Data de registro: 25 Out 2004 21:26
Cidade/Estado: Leme/SP
Curtiu: 0 vez
Mens.Curtidas: 23 vezes

SENDMAIL não funciona com Gmail.

Mensagempor Daniel » 21 Jul 2017 10:28

Ola
voce usa minigui
tenta assim
LOCAL oMsg  := win_oleCreateObject( "CDO.Message" )
LOCAL oConf := win_oleCreateObject( "CDO.Configuration" )
Daniel

Harbour + Minigui + dbfcdx
Marinas-Gui Pena que parou o suporte
Avatar de usuário

Daniel
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 373
Data de registro: 13 Ago 2003 22:42
Cidade/Estado: Apucarana - PR
Curtiu: 0 vez
Mens.Curtidas: 36 vezes

SENDMAIL não funciona com Gmail.

Mensagempor JoséQuintas » 21 Jul 2017 10:37

Eu uso uma solução simples pra isso:
Meu aplicativo tem email próprio, não preciso usar o email do cliente.
Se o do cliente não funciona, uso o do aplicativo e pronto.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18152
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1215 vezes

SENDMAIL não funciona com Gmail.

Mensagempor rubens » 21 Jul 2017 13:47

Poka...

Eu uso exclusivamente o Gmail.
Envio NFE, Orcamento, Erros do Sistema e os XMLs do cliente quando vira o mes...

Dá uma olhada nessa rotina... mas ela tá prontinha.... com excessão do campos próprios do meu sistema..

Email_Pctoledo.prg
(17.01 KiB) Baixado 169 vezes


é só seguir a função envia_orcamento() que você vai conseguir enviar email com arquivo anexado, facinho, facinho...

Tem que fazer o procedimento no gmail do cliente que o kapiaba passou... desligar a segurança.
O Bom seria o que o Quintas faz... mas tem cliente que quer que o email dele envia... Eu sempre crio um gmail para o cliente, somente para o envio de nota...

Rubens
"Eu e minha casa servimos ao Senhor e você ???"
Avatar de usuário

rubens
Colaborador

Colaborador
 
Mensagens: 1518
Data de registro: 16 Ago 2003 09:05
Cidade/Estado: Nova Xavantina - MT
Curtiu: 77 vezes
Mens.Curtidas: 104 vezes

SENDMAIL não funciona com Gmail.

Mensagempor JoséQuintas » 21 Jul 2017 14:11

Esqueceu de mencionar:
SSL depende da lib disso, que não é gerada usando somente os fontes do Harbour, precisa componentes a mais a serem baixados.

Exemplo pra vários tipos de mail tem no Harbour, inclusive gmail:

https://github.com/vszakats/harbour-core/blob/master/contrib/hbtip/tests/email.prg
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18152
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1215 vezes

SENDMAIL não funciona com Gmail.

Mensagempor JoséQuintas » 21 Jul 2017 14:14

E achei interessante o esquema atual.
Tá na hora de atualizar minha classe de e-mails.... rs
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18152
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1215 vezes

SENDMAIL não funciona com Gmail.

Mensagempor Poka » 27 Jul 2017 08:22

Olá

Agradeço ao Quintas, , Kapiaba , Daniel e Rubens por responder.
Acabei pegando a rotina do Rubens, tirei algumas partes para se adequar ao meu sistema e funcionou perfeitamente. Obrigado Rubens por compartilhar.

Poka
Avatar de usuário

Poka
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 513
Data de registro: 25 Out 2004 21:26
Cidade/Estado: Leme/SP
Curtiu: 0 vez
Mens.Curtidas: 23 vezes




Retornar para Harbour

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 6 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro