Clipper On Line • Ver Tópico - API DO WHATSAPP

API DO WHATSAPP

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

Moderador: Moderadores

 

API DO WHATSAPP

Mensagempor sygecom » 15 Jun 2019 16:07

asimoes escreveu:
sygecom escreveu:Pergunta:
Tem como evitar a opção 2 ? Ou seja: que apos o shelexecute() a mensagem seja enviada sem passar pelo click em ENVIAR ?


Acho que teria que simular um Click no btão, mas acho que não rola isso dai não.


Veja abaixo
http://forums.fivetechsupport.com/viewt ... e&start=30

Testei aqui e funciona mesmo.

Function Main()
   Local oShell

   oShell := CreateObject( "WScript.Shell" )
   oShell:run("chrome.exe https://api.whatsapp.com/send?phone=34666666666" )
   Sleep(1500)
   oShell:sendkeys("{tab}{tab}")
   oShell:SendKeys("~")
   Sleep(5000)
   oShell:sendkeys("Mensaje de prueba")
   oShell:SendKeys("~")

Return nil
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
leonardodemachado@hotmail.com

Faça você também sua doação esse fórum é uma lenda viva: http://www.pctoledo.com.br/doacao
Avatar de usuário

sygecom
Usuário Nível 7

Usuário Nível 7
 
Mensagens: 7005
Data de registro: 21 Jul 2006 10:12
Cidade/Estado: Alvorada-RS
Curtiu: 1 vez
Mens.Curtidas: 130 vezes

API DO WHATSAPP

Mensagempor wilson » 17 Out 2019 14:19

ola
boa tarde

1) ha como enviar watsapp de dentro do sistema xharbour ( console)

e mail ja consegui
ex..
quero enviar uma mensagem " Seu boleto esta disponivel no site ....etc.. "

entra na base de dados localiza telefone cecular e envia

2) - salvar um arquivos a ser impresso
ex.. set printer to teste em pdf
use cliente
do while .not. eof()

localiza envia etc....

skip
enddo
grato
wilson
wilceci2006@yahoo.com.br
wilson
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 2
Data de registro: 02 Set 2011 18:14
Cidade/Estado: sao bernardo do campo / sp
Curtiu: 0 vez
Mens.Curtidas: 0 vez

API DO WHATSAPP

Mensagempor sygecom » 20 Out 2019 23:02

Wilson,

Veja os exemplos nesse tópico, eles funcionam em console sem problema.
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
leonardodemachado@hotmail.com

Faça você também sua doação esse fórum é uma lenda viva: http://www.pctoledo.com.br/doacao
Avatar de usuário

sygecom
Usuário Nível 7

Usuário Nível 7
 
Mensagens: 7005
Data de registro: 21 Jul 2006 10:12
Cidade/Estado: Alvorada-RS
Curtiu: 1 vez
Mens.Curtidas: 130 vezes

API DO WHATSAPP

Mensagempor Itamar M. Lins Jr. » 05 Dez 2019 21:08

Ola!
Aqui toda vez abre nova aba do whatsapp
Qual é o segredo para enviar ?

Saudações,
Itamar M. Lins Jr.
Avatar de usuário

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 6927
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 309 vezes
Mens.Curtidas: 503 vezes

API DO WHATSAPP

Mensagempor HASA » 06 Dez 2019 10:47

+1
:%

Parece que em xHarbour vai e em Harbour 3.2 não abre para as mensagens, só abre a pagina ok.
:'(
HASA
Avatar de usuário

HASA
Colaborador

Colaborador
 
Mensagens: 1082
Data de registro: 01 Set 2003 19:50
Cidade/Estado: São Paulo
Curtiu: 1 vez
Mens.Curtidas: 51 vezes

API DO WHATSAPP

Mensagempor sygecom » 07 Dez 2019 11:07

De uma olhada no exemplo que o Fabio Luna postou no Fivewin
http://fivewin.com.br/index.php?/topic/ ... o-com-web/
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
leonardodemachado@hotmail.com

Faça você também sua doação esse fórum é uma lenda viva: http://www.pctoledo.com.br/doacao
Avatar de usuário

sygecom
Usuário Nível 7

Usuário Nível 7
 
Mensagens: 7005
Data de registro: 21 Jul 2006 10:12
Cidade/Estado: Alvorada-RS
Curtiu: 1 vez
Mens.Curtidas: 130 vezes

API DO WHATSAPP

Mensagempor HASA » 09 Dez 2019 09:29

:(Neg

Bom dia, é esse mesmo no Harbour + Minigui Extend não funfa.
:%
HASA
Avatar de usuário

HASA
Colaborador

Colaborador
 
Mensagens: 1082
Data de registro: 01 Set 2003 19:50
Cidade/Estado: São Paulo
Curtiu: 1 vez
Mens.Curtidas: 51 vezes

API DO WHATSAPP

Mensagempor André Corrêa » 20 Dez 2019 14:26

Boa tarde,

Consegui enviar mensagens utilizando o exemplo do Fivewin, mas encontrei alguns problemas:

1) Demora bastante para enviar uma única mensagem, já que a rotina tem vários "WaitSeconds" / "Sleeps" longos e sem eles, não funciona corretamente.
2) A cada mensagem enviada, é aberta uma nova aba no navegador (caso ele fique aberto), se fechá-lo, o processo demora mais ainda.

Alguém tem alguma solução melhor para enviar uma mensagem para diversos contatos, como uma mensagem de marketing, por exemplo?

Obrigado,
-- André Corrêa

"Opte por aquilo que faz o seu coração vibrar, apesar de todas as consequências". - Osho
Avatar de usuário

André Corrêa
Usuário Nível 2

Usuário Nível 2
 
Mensagens: 81
Data de registro: 03 Nov 2015 06:46
Cidade/Estado: Caraguatatuba/SP
Curtiu: 8 vezes
Mens.Curtidas: 3 vezes

API DO WHATSAPP

Mensagempor fladimir » 29 Mar 2020 14:09

Passando para compartilhar uma API Whatsapp q conheci através do fórum do ACBr.

Sem custo mensal nem limite de mensagens... [url=https://documenter.getpostman.com/view/4545782/SWTHbveC?version=latest#intro]segue link da documentação[/url]

Vc vincula o Whats do cliente na API e ele usa, logicamente respeitando as regras do Whats para SPAM etc, e consegue enviar arquivos etc.

Fiz uns videos e compartilhei um exemplo de como integrar (mas em outra linguagem) porém como é via GET e POST da pra fazer tranquilo em Harbour/Fivewin.
Só uma observação, se vc trabalha puramente com CONSOLE terá q ver como fazer pq um dos requisitos é obter o QRCode e carregar isso pro usuario do teu sistema vincular o Whats dele (igual Whatsweb)

Não comprei a API ainda, mas tenho conhecidos q usam, ela esta ativa a 3 anos. No link abaixo vc encontra os vídeos, informações e o contato do criador da mesma (telefone dele) e tb manual de utilização.
Ele liberou um ENDPOINT e Token pra uso e esta funcionando aki nos testes

[b]O bacana é q vc pode comprar a API e usar na tua carteira de clientes. [/b]

A API estava com promoção até este final de semana, achei ela no fórum do ACBr a promoção era até dia 13/03 ai conversei com o Hendell criador e falei q não tinha conhecimento da mesma onde o mesmo estendeu a promoção até este final de semana.

[url=https://wxdev.com.br/forum/index.php?/forum/20-dicas-e-truques/]Link da postagem em q fiz em outro fórum com os vídeos demonstrando e o contato do criador da API[/url]

Fiz uma classe pra Harbour pra testes e funcionou bem tb... só tem a questão do QRCode q vc tem usar alguma lib grafica pra carregar e mostrar isso pro cliente.
Vou compartilhar a classe (agradecimentos ao Oliveira q usa a API e cedeu um trecho de código q permitiu a criação da classe a partir do trecho, logicamente q alterado e ajustado a minha realidade)

[code]********************************************************************************
FUNCTION EXEMPLO_API_WHATS()
LOCAL oWhats := TWhatsappAPI_WTS():New()
oWhats:Situacao()
oWhats:NivelBateria()
oWhats:NrConectado()
oWhats:EnviarMsg('5567992354872', 'Teste *mensagem*')
oWhats:EnviarMsg('5567992354872', NIL, 'd:\documento.pdf') ; Inkey(2) // PAUSAR UNS 2 SEGUNDOS ENTRE UMA MENSAGEM E OUTRA
oWhats:EnviarMsg('5567992354872', NIL, 'd:\imagem.png') ; Inkey(2)
oWhats:End()
Quit()

********************************************************************************
#DEFINE httpGet 1
#DEFINE httpPost 2

********************************************************************************
CLASS TWhatsappAPI_WTS

DATA sToken INIT 'O TOKEN Q VC ADQUIRIR OU PEDE PRO HENDELL PRA TESTES'
DATA sEndPoint INIT 'URL DO ENDPOINT Q ELE FORNECE PRA TESTES QDO VC TIVER O SEU SERA O SEU URL, VC NAO USA ESTRUTURA DELE E SIM A SUA'

DATA sRet INIT ''
DATA hHash INIT hb_Hash()
DATA nMetodo INIT 0 // 1 GET 2 POST

METHOD ComunicaAPI()
METHOD Situacao()
METHOD Obter_QRCode()
METHOD NrConectado()
METHOD NivelBateria()
METHOD EnviarMsg()
METHOD MostraRetorno() INLINE PTAlert( 'Codigo..:;'+ PADC( hb_cStr(::hHash['codigo'],70) ) +';' +;
'Mensagem:;'+ PADC( UPPER(ALLTRIM(hb_UTF8ToStr(hb_cStr(::hHash['mensagem'])))),70) +';' +;
'Retorno.:;'+ PADC( hb_cStr(::hHash['retorno'],70) ), aOk, vcroxo)

// METHOD WhatsAPI_SetarWebhook() // PRA LER O RETORNO DAS MENSAGENS, ESSA PARTE NAO FIZ AINDA.

Method End() INLINE Self := Nil
ENDCLASS

*******************************************************************************
METHOD Situacao() Class TWhatsappAPI_WTS
Mensag("Consultando situacao da API...")
::ComunicaAPI("/whatsapp/situacao", httpGet)

If 'false' $ ::hHash['retorno']
MsgInfo( "Nao conectado. Obtenha QRCode", 'Atenção' )
Else
MsgInfo( "Whatsapp ja esta conectado.", 'Atenção' )
EndIf
Return

*******************************************************************************
METHOD NivelBateria() Class TWhatsappAPI_WTS
Mensag("Consultando nivel bateria")
::ComunicaAPI("/whatsapp/bateria", httpGet)
::MostraRetorno()
*******************************************************************************
METHOD NrConectado() Class TWhatsappAPI_WTS
Mensag("Consultando Nr Conectado API...")
::ComunicaAPI("/whatsapp/meunumero", httpGet)
::MostraRetorno()
Return
********************************************************************************
METHOD EnviarMsg(sContato, sMsg, sFilename) Class TWhatsappAPI_WTS
LOCAL sURL
DEFAULT sMsg TO ''
DEFAULT sFilename TO ''
IF EMPTY(sFilename) .AND. EMPTY(sMsg)
Alert('falta parametro')
RETURN
ENDIF
IF EMPTY(sFilename)
Mensag("Enviando mensagem de texto...")
sURL := "/whatsapp/msg"
ELSE
Mensag("Enviando arquivo...")
sURL := "/whatsapp/arquivo"
ENDIF
::ComunicaAPI(sURL, httpPost, sContato, sMsg, sFilename)
::MostraRetorno()
********************************************************************************
Procedure Obter_QRCode() Class TWhatsappAPI_WTS
Mensag("Obtendo QRCode...")
::ComunicaAPIWhats('/whatsapp/qrcode', httpGet)

// ATEN€ÇO O RETORNO AKI  RETORNADO O QRCODE EM Q VC TEM Q CARREGAR UM OBJETO GRAFICO ATRAVES DE UMA LIB GRAFICA FIVEWIN, XAILER, MINIGUI, HWGUI ETC
// If 'obtido com sucesso' $ ::hHash['mensagem']
// AKI CARREGA O OBJETO GRAFICO NA LIB Q VC USAR ::hHash['retorno'], { 20,20,-20,-20 }, "QR-CODE"
// Else
// MsgInfo( "O Whatsapp esta reiniciando. Favor repetir a operação.", 'Atenção' )
// EndIf
Return
*------------------------------------------------------------------------------*

METHOD ComunicaAPI(sURL, nMetodo, sContato, sMsg, sFilename) Class TWhatsappAPI_WTS
LOCAL cMetodo, oWeb, sContent := ''
TRY
oWeb := CreateObject( 'MSXML2.ServerXMLHTTP.6.0' )
CATCH
oWeb := CreateObject( 'MSXML2.XMLHTTP' )
END
IF EMPTY(sContato) .AND. nMetodo = httpPost
Alert("Falta telefone")
RETURN NIL
END

sURL := ::sEndPoint + sURL
cMetodo := IIF( nMetodo == httpGet, 'GET', 'POST')
oWeb:Open( cMetodo, sUrl, .F.) // True = pra vir o ResponseBody
oWeb:SetRequestHeader( 'token', ::sToken )

IF nMetodo = httpPost
oWeb:setRequestHeader( "contato", sContato )
IF .NOT. EMPTY(sFilename)
oWeb:setRequestHeader( "filename", SUBSTR(ALLTRIM( CharRem( "[<(-)>]*&@:", sFileName ) ),2))
oWeb:setRequestHeader( "caption", SUBSTR(ALLTRIM( CharRem( "[<(-)>]*&@:", sFileName ) ),2))

sContent = hb_MemoRead(sFileName)
sContent = hb_base64encode(sContent)
sContent = hb_StrToUTF8(sContent)
sContent = ALLTRIM( CharRem( CRLF, sContent ) )
ELSE
IF .NOT. EMPTY(sMsg)
sContent = sMsg
ENDIF
END
oWeb:setRequestHeader( "Content-Type", "text/plain; charset=UTF-8" )
END
TRY
IF EMPTY(sContent)
oWeb:Send( )
ELSE
oWeb:Send( sContent )
ENDIF
::sRet := oWeb:ResponseBody()
hb_jsondecode( ::sRet, @::hHash )
CATCH ; END
RETURN NIL
[/code]
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:

“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”
.


Até 2017    Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL


Novos Projetos:

   Desktop Visual           Windev Desktop
   Celular Android/iOS   Windev Mobile
   WEB                            Windev Web


Sejamos gratos a Deus.
Avatar de usuário

fladimir
Colaborador

Colaborador
 
Mensagens: 2434
Data de registro: 15 Nov 2006 19:21
Curtiu: 28 vezes
Mens.Curtidas: 157 vezes

API DO WHATSAPP

Mensagempor rogeriohfb » 31 Mar 2020 20:41

Estava rodando ate o mes passado certinho.
Fui usar hoje, 31/03 negativo. ele pede pra baixar o app ( que ja esta instalado ) ou abrir url whatsapp ou cancelar

Alguem passando por isso?
rogeriohfb
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 20
Data de registro: 23 Mar 2016 10:14
Cidade/Estado: Adamantina/SP
Curtiu: 27 vezes
Mens.Curtidas: 0 vez

API DO WHATSAPP

Mensagempor fladimir » 31 Mar 2020 22:17

essa q eu postei ta rodando aki, não sei se vc se refere a essa ou a outra
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:

“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”
.


Até 2017    Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL


Novos Projetos:

   Desktop Visual           Windev Desktop
   Celular Android/iOS   Windev Mobile
   WEB                            Windev Web


Sejamos gratos a Deus.
Avatar de usuário

fladimir
Colaborador

Colaborador
 
Mensagens: 2434
Data de registro: 15 Nov 2006 19:21
Curtiu: 28 vezes
Mens.Curtidas: 157 vezes

Anterior



Retornar para Harbour

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 5 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