In [1]:
from SoapProxy import models, utils

In [2]:
obj = models.ProxyService.objects.all()[0]
obj.soap()
obj.methods
print obj.methods


None

In [5]:
from suds.plugin import MessagePlugin
from suds.client import Client

class LogPlugin(MessagePlugin):
  def sending(self, context):
    print(str(context.envelope))
    print("\n\n\n\n")
  def received(self, context):
    print(str(context.reply))
    print("\n\n\n\n")


cli = Client("http://www.webservicex.net/stockquote.asmx?WSDL")
res =  cli.service.GetQuote(symbol="ORC")
print cli.last_sent()
print cli.last_received()


DEBUG:suds.client:sending to (http://www.webservicex.net/stockquote.asmx)
message:
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:ns0="http://www.webserviceX.NET/" xmlns:ns1="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
   <SOAP-ENV:Header/>
   <ns1:Body>
      <ns0:GetQuote>
         <ns0:symbol>ORC</ns0:symbol>
      </ns0:GetQuote>
   </ns1:Body>
</SOAP-ENV:Envelope>
DEBUG:suds.client:headers = {'SOAPAction': u'"http://www.webserviceX.NET/GetQuote"', 'Content-Type': 'text/xml; charset=utf-8'}
DEBUG:suds.client:http succeeded:
<?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><GetQuoteResponse xmlns="http://www.webserviceX.NET/"><GetQuoteResult>&lt;StockQuotes&gt;&lt;Stock&gt;&lt;Symbol&gt;ORC&lt;/Symbol&gt;&lt;Last&gt;13.01&lt;/Last&gt;&lt;Date&gt;1/15/2015&lt;/Date&gt;&lt;Time&gt;4:02pm&lt;/Time&gt;&lt;Change&gt;+0.17&lt;/Change&gt;&lt;Open&gt;12.90&lt;/Open&gt;&lt;High&gt;13.06&lt;/High&gt;&lt;Low&gt;12.85&lt;/Low&gt;&lt;Volume&gt;180440&lt;/Volume&gt;&lt;MktCap&gt;170.1M&lt;/MktCap&gt;&lt;PreviousClose&gt;12.84&lt;/PreviousClose&gt;&lt;PercentageChange&gt;+1.32%&lt;/PercentageChange&gt;&lt;AnnRange&gt;11.70 - 14.99&lt;/AnnRange&gt;&lt;Earns&gt;3.173&lt;/Earns&gt;&lt;P-E&gt;4.05&lt;/P-E&gt;&lt;Name&gt;Orchid Island Cap&lt;/Name&gt;&lt;/Stock&gt;&lt;/StockQuotes&gt;</GetQuoteResult></GetQuoteResponse></soap:Body></soap:Envelope>
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:ns0="http://www.webserviceX.NET/" xmlns:ns1="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
   <SOAP-ENV:Header/>
   <ns1:Body>
      <ns0:GetQuote>
         <ns0:symbol>ORC</ns0:symbol>
      </ns0:GetQuote>
   </ns1:Body>
</SOAP-ENV:Envelope>
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope>
   <soap:Body>
      <GetQuoteResponse xmlns="http://www.webserviceX.NET/">
         <GetQuoteResult>&lt;StockQuotes&gt;&lt;Stock&gt;&lt;Symbol&gt;ORC&lt;/Symbol&gt;&lt;Last&gt;13.01&lt;/Last&gt;&lt;Date&gt;1/15/2015&lt;/Date&gt;&lt;Time&gt;4:02pm&lt;/Time&gt;&lt;Change&gt;+0.17&lt;/Change&gt;&lt;Open&gt;12.90&lt;/Open&gt;&lt;High&gt;13.06&lt;/High&gt;&lt;Low&gt;12.85&lt;/Low&gt;&lt;Volume&gt;180440&lt;/Volume&gt;&lt;MktCap&gt;170.1M&lt;/MktCap&gt;&lt;PreviousClose&gt;12.84&lt;/PreviousClose&gt;&lt;PercentageChange&gt;+1.32%&lt;/PercentageChange&gt;&lt;AnnRange&gt;11.70 - 14.99&lt;/AnnRange&gt;&lt;Earns&gt;3.173&lt;/Earns&gt;&lt;P-E&gt;4.05&lt;/P-E&gt;&lt;Name&gt;Orchid Island Cap&lt;/Name&gt;&lt;/Stock&gt;&lt;/StockQuotes&gt;</GetQuoteResult>
      </GetQuoteResponse>
   </soap:Body>
</soap:Envelope>

In [16]:
import xml.dom.minidom
mxml = xml.dom.minidom.parseString(str(cli.last_sent()))
mxml.toprettyxml()


Out[16]:
u'<?xml version="1.0" ?>\n<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns0="http://www.webserviceX.NET/" xmlns:ns1="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">\n\t\n   \n\t<SOAP-ENV:Header/>\n\t\n   \n\t<ns1:Body>\n\t\t\n      \n\t\t<ns0:GetQuote>\n\t\t\t\n         \n\t\t\t<ns0:symbol>ORC</ns0:symbol>\n\t\t\t\n      \n\t\t</ns0:GetQuote>\n\t\t\n   \n\t</ns1:Body>\n\t\n\n</SOAP-ENV:Envelope>\n'
forms[0]['inputs']['civilId']='282101700696' utils.call(client,name=forms[0]['name'],params=forms[0]['inputs'])

In [12]:
url = "http://10.192.224.5:7006/DealerServices_SB/ProxyServices/DealerOnlinePaymentProxy?wsdl"

In [13]:
from SoapProxy.utils import SoapClient
client = SoapClient(wsdl=url)

In [14]:
client.ToJson()


Out[14]:
'[{"inputs": {"msisdn": null, "amount": null, "paymentMethod": null, "customerId": null, "channel": null, "paymentRef": null}, "method": "DealerOnlinePaymentService"}]'

In [15]:
out = client.GetMethods()

In [16]:
out[0]["inputs"]


Out[16]:
{amount: None,
 channel: None,
 customerId: None,
 msisdn: None,
 paymentMethod: None,
 paymentRef: None}

In [6]:
res = client.call(name='ReadVIP',params = {'msisdn': '96566361918'})

In [7]:
print res


False

In [11]:
client.client.service.ReadVIP(msisdn='965')


Out[11]:
False

In [2]:
from django.shortcuts import redirect
redirect('soapview', wsdlurl="hello")


Out[2]:
<django.http.response.HttpResponseRedirect at 0x107e2fdd0>

In [3]:
print redirect('soapview', wsdlurl="hello")


Content-Type: text/html; charset=utf-8
Location: /soap/services/hello/



In [1]:
from django.core.urlresolvers import reverse
reverse("soapresponse")


Out[1]:
'/soap/services/response/'

In [ ]: