Página 1 de 1

Exemplo de uso do Pocket Soap no Harbour

Enviado: 12 Out 2009 20:15
por toninhofwi
Olá pessoal,

Agora que a Microsoft abandonou o MSSOAP, o melhor é usar PocketSoap, este é um exemplo que roda perfeitamente, mas foi testado somente no Harbour:

---cut---
local oEnvelope := Win_OleCreateObject( "PocketSOAP.Envelope.2" )
local oHttp := Win_OleCreateObject( "PocketSOAP.HTTPTransport.2" )

oEnvelope:EncodingStyle = ""
oEnvelope:SetMethod( "InvertStringCase", "http://www.dataaccess.com/webservicesserver/" )
oEnvelope:Parameters:Create( "sAString", "THIS IS LOWER - this is upper" )

oHttp:Send( "http://www.dataaccess.com/webservicesse ... g.wso?WSDL", oEnvelope:Serialize() )

oEnvelope:Parse( oHttp )

MsgInfo( oEnvelope:Parameters:Item( 0 ):Value )
---cut---

baixe o pocket soap de: http://www.pocketsoap.com/

Toninho.

PS: Obrigado ao Luiz Culick por indicar o pocketsoap e ensinar a usá-lo.

Re: Exemplo de uso do Pocket Soap no Harbour

Enviado: 02 Nov 2009 23:03
por sygecom
Esse Pocket SOAP, funciona com Windows Vista ?
O que tenho que instalar nas maquinas dos clientes com windows 98,XP e Vista ?

Re: Exemplo de uso do Pocket Soap no Harbour

Enviado: 14 Nov 2009 22:39
por rochinha
Amiguinhos,

Para usar este recurso com seus aplicativos bastará registrar as DLLs que vem com o pacote:

pocketHTTP.dll e pSOAP32.dll

Eis meu exemplo funcional o qual faço envio de mensagem SMS usando um serviço na internet, a partir de meu sistema:

Código: Selecionar todos

// FiveWin 32 Bits - Usando Plataforma FastSMS

#include "FiveWin.ch"

function Main( cSMSID, cSMSSenha, cSMSPara, cSMSTexto )
   local oWnd, oSMS
   
   default cSMSID := "ABC123456", cSMSSenha := "001122", cSMSPara := "1199791772", cSMSTexto := "somente+um+teste"
   DEFINE WINDOW oWnd TITLE "Fast SMS - Envio"

          oFastSMS := TOLEAuto():New( "PocketSOAP.Envelope.2" )

          oParameters := oFastSMS:Parameters

          oParameters:Create( "id"   , cSMSID )
          oParameters:Create( "senha", cSMSSenha )
          oParameters:Create( "para" , cSMSPara )
          oParameters:Create( "texto", cSMSTexto )

          oFastHTTP := TOLEAuto():New( "pocketSOAP.HTTPTransport.2" )

          oFastHTTP:Send( "http://www.fastsms.com.br/sms.cfm?" + ;
            "id="    + oParameters:Item(0):Value + "&" + ;
            "senha=" + oParameters:Item(1):Value + "&" + ;
            "para="  + oParameters:Item(2):Value + "&" + ;
            "texto=" + oParameters:Item(3):Value, "" )

          ? "http://www.fastsms.com.br/sms.cfm?"+;
            "id="    + oParameters:Item(0):Value + "&" + ;
            "senha=" + oParameters:Item(1):Value + "&" + ;
            "para="  + oParameters:Item(2):Value + "&" + ;
            "texto=" + oParameters:Item(3):Value
            
   ACTIVATE WINDOW oWnd
   return nil

Re: Exemplo de uso do Pocket Soap no Harbour

Enviado: 16 Nov 2009 14:25
por toninhofwi
Valeu Rochinha.

Mais um precioso exemplo.

Abraços,

Toninho.

Re: Exemplo de uso do Pocket Soap no Harbour

Enviado: 25 Nov 2009 19:40
por sygecom
Muito Bom mesmo, vlw Rochinha.

Exemplo de uso do Pocket Soap no Harbour

Enviado: 02 Dez 2013 21:51
por filizola
rochinha, ta enviando sms com esta rotina ainda ?

Exemplo de uso do Pocket Soap no Harbour

Enviado: 03 Dez 2013 00:33
por rochinha
Amiguinho,

Só fiz os testes na época deste post, tanto que nem tenho mais o numero que usei.

A solução ainda existe e não foi a única que implementei, mas no momento não uso nenhuma.

Exemplo de uso do Pocket Soap no Harbour

Enviado: 05 Mai 2020 19:29
por lwinter
Oi Rochinha!
Como voce configura a sua conta de SMS? No exemplo nao fica claro como configurar isso? Teria como me explicar?

Muito Obrigado!

Exemplo de uso do Pocket Soap no Harbour

Enviado: 06 Mai 2020 00:05
por rochinha
Amiguinhos,
...
default cSMSID := "ABC123456", cSMSSenha := "001122"
...
Você receberá o ID e Senha do fornecedor do serviço.

Exemplo de uso do Pocket Soap no Harbour

Enviado: 06 Mai 2020 11:59
por sygecom
Para envio de SMS tem um serviço abaixo, inclusive com exemplo em xHarbour

http://fivewin.com.br/index.php?/topic/ ... ent-286470

Exemplo de uso do Pocket Soap no Harbour

Enviado: 07 Mai 2020 10:58
por JoséQuintas
Talvez tenha a ver com o post, talvez não.
Mas me chamou a atenção o fonte, pelo fato de usar json
Pode ser útil pra outras coisas
Nota: é o componente Microsoft, o mesmo pra download, comunicação NFE, e agora um exemplo em json

Código: Selecionar todos

Function Main()
  Local oOle, aRet, aHash:=hash(), cJson

    ahash["numero"]      := "55DDDTELEFONE"
    ahash["servico"]     := "short"
    ahash["mensagem"]    := "test msg"
    ahash["parceiro_id"] := "xxxxxxx"  // esse codigo tem na documentacao
    ahash["codificacao"] := "0" // vc pode comentar isto, eh o que diz a documentacao 

    cJson := hb_jsonEncode(ahash, .t.)
    cJson :="["+cJson+"]"

    Try
        oOle := CreateObject("MSXML2.XMLHTTP")
    Catch
        oOle := CreateObject("Microsoft.XMLHTTP")
    End

    oOle:Open( "POST", "https://api.disparopro.com.br/mt", .f. )
    oOle:SetRequestHeader( "Content-Type", "application/json")
    oOle:SetRequestHeader( "Authorization", "Bearer 99999999999")  // substituir o 99999999999 por seu token recibido no cadastrar
    oOle:Send(cJson)
    Do While oOle:readyState <> 4
       SysRefresh()
    Enddo

    MsgInfo(oOle:ResponseBody)
    hb_jsonDecode(oOle:ResponseBody, @aRet)
    xbrowser(aRet)

Return nil