Enviando mensagens no WhatsApp via Elipse E3/Power.

Este artigo demonstra como configurar e efetuar o envio de mensagens do aplicativo WhatsApp via aplicação Elipse E3/Power.

É necessário utilizar um provedor de mensagens, que através de integrações Web API’s, permite o envio de mensagens via WhatsApp.
Neste exemplo utilizaremos a plataforma Zenvia, mas outros provedores podem ser utilizados.
A API segue o modelo HTTP padrão, baseado em solicitação e resposta.

API do WhatsApp

1. Primeiramente, é necessário criar uma conta no provedor, para obter o acesso a API:

Este acesso é fornecido gratuitamente.

2. Logo após realizar o login, é possível testar a API via Sandbox e validar a integração, para isso basta acessar este endereço.

3. No painel de validação da API, selecione a opção “Criar novo teste”, e selecione o canal “WhatsApp”

4. Em seguida inclua o(s) contato(s) para recebimento da mensagem:

5. Com o contato incluído, é possível enviar uma mensagem. Logo abaixo é informada a resposta de envio da requisição realizada:

NOTA: Caso ocorra algum tipo de instabilidade ao enviar a mensagem teste, é possível gerar um token manualmente e então inserir os dados no cabeçalho da solicitação via Elipse E3. Para gerar o token, verifique este endereço.

Utilizando o WhatsApp com o Elipse E3/Power

1. Para realizar a escrita na API, utilizamos o objeto ServerXMLHTTP, que fornece métodos e propriedades que permitem estabelecer uma conexão HTTP entre arquivos ou objetos em diferentes servidores web. Com base no request utilizado no teste anterior, o script abaixo foi utilizado para enviar a mensagem ao telefone desejado:

  1. Sub CommandButton1_Click()
  2. number = Screen.Item("spNumber").Value
  3. msg = Screen.Item("spMessage").Value
  4. WhatsAppMessage_Send number, msg
  5. End Sub
  6. function WhatsAppMessage_Send(strNumber, strMessage)
  7. API_URL = "https://api.zenvia.com/v2/channels/whatsapp/messages"
  8. strJson = "{""from"": ""abundant-judo"",""to"": """ & strNumber & """,""contents"": [{""type"": ""text"",""text"":""" & strMessage & """}]}"
  9. Set oHttp = CreateObject("Msxml2.ServerXMLHTTP")
  10. oHttp.Open "POST", API_URL, False
  11. oHttp.setRequestHeader "Content-type", "application/json"
  12. oHttp.setRequestHeader "X-API-TOKEN", "IRET6aFOkplLDPvBY3NJR-X3FfZmBvncxL79"
  13. oHttp.Send strJson
  14. sHTML = oHttp.ResponseText
  15. MsgBox sHTML
  16. end function
  17. Sub Vazia()
  18. End Sub
Sub CommandButton1_Click()
  number = Screen.Item("spNumber").Value
  msg = Screen.Item("spMessage").Value
  WhatsAppMessage_Send number, msg   
End Sub

function WhatsAppMessage_Send(strNumber, strMessage)
API_URL = "https://api.zenvia.com/v2/channels/whatsapp/messages"
strJson = "{""from"": ""abundant-judo"",""to"": """ & strNumber & """,""contents"": [{""type"": ""text"",""text"":""" & strMessage & """}]}"

   Set oHttp = CreateObject("Msxml2.ServerXMLHTTP")
   oHttp.Open "POST", API_URL, False
   oHttp.setRequestHeader "Content-type", "application/json"
   oHttp.setRequestHeader "X-API-TOKEN", "IRET6aFOkplLDPvBY3NJR-X3FfZmBvncxL79"
   oHttp.Send strJson

sHTML = oHttp.ResponseText
MsgBox sHTML  
end function

Sub Vazia()
End Sub

2. Após a solicitação de envio da mensagem, a seguinte resposta será exibida:

Utilizando o WhatsApp com o Elipse E3/Power via driver VBScript

1. Por questões de performance, podemos implementar o envio das mensagens utilizando o driver VBScript com a estrutura JSON, acrescentando as linhas abaixo:

  1. DIM strMessage, strNumber, sHTML
  2. Sub OnWrite_Number(r, v)
  3. strNumber = v.Value
  4. End Sub
  5. Sub OnRead_Number(r, v)
  6. v.Value = strNumber
  7. End Sub
  8. Sub OnWrite_Message(r, v)
  9. strMessage = v.Value
  10. End Sub
  11. Sub OnRead_Message(r, v)
  12. v.Value = strMessage
  13. End Sub
  14. Sub OnRead_Response(r, v)
  15. v.Value = sHTML
  16. End Sub
  17. Sub OnWrite_Send(r, v)
  18. API_URL ="https://api.zenvia.com/v2/channels/whatsapp/messages"
  19. strJson = "{""from"": ""abundant-judo"",""to"": """ & strNumber & """,""contents"": [{""type"": ""text"",""text"":""" & strMessage & """}]}"
  20. Set oHttp = CreateObject("Msxml2.ServerXMLHTTP")
  21. oHttp.Open "POST", API_URL, False
  22. oHttp.setRequestHeader "Content-type", "application/json"
  23. oHttp.setRequestHeader "X-API-TOKEN", "IRET6aFOkplLDPvBY3NJR-X3FfZmBvncxL79"
  24. oHttp.Send strJson
  25. sHTML = oHttp.ResponseText
  26. End Sub
DIM strMessage, strNumber, sHTML 

Sub OnWrite_Number(r, v)
strNumber = v.Value
End Sub

Sub OnRead_Number(r, v)
 v.Value = strNumber 
End Sub

Sub OnWrite_Message(r, v)
strMessage  = v.Value
End Sub

Sub OnRead_Message(r, v)
 v.Value = strMessage  
End Sub

Sub OnRead_Response(r, v)
v.Value = sHTML 
End Sub

Sub OnWrite_Send(r, v)
 API_URL ="https://api.zenvia.com/v2/channels/whatsapp/messages"
 strJson = "{""from"": ""abundant-judo"",""to"": """ & strNumber & """,""contents"": [{""type"": ""text"",""text"":""" & strMessage & """}]}"   
   Set oHttp = CreateObject("Msxml2.ServerXMLHTTP")
   oHttp.Open "POST", API_URL, False
   oHttp.setRequestHeader "Content-type", "application/json"
   oHttp.setRequestHeader "X-API-TOKEN", "IRET6aFOkplLDPvBY3NJR-X3FfZmBvncxL79"
   oHttp.Send strJson

  sHTML = oHttp.ResponseText
End Sub

2. Então, crie quatro tags no Driver e configure-os através da coluna Item (propriedade ParamItem):

 

Em conclusão, você encontrará no anexo deste artigo uma aplicação exemplo que foi desenvolvida no Elipse E3 v6.5.161.

Artigos Relacionados


Anexos:

WhatsApp_Elipse.zip

 

Print Friendly, PDF & Email

Este artigo foi útil? Was this helpful?

Classificação média - Average rating 0 / 5. Count: 0

Comentários em “Enviando mensagens no WhatsApp via Elipse E3/Power.

Deixe seu Comentário

Seu endereço de e-mail não será publicado. Campos marcados com asterisco são obrigatórios *

Floating button icon
Pesquise com IA