FalkTannhaeuser / python-onvif-zeep

ONVIF Client Implementation in Python 2+3 (using https://github.com/mvantellingen/python-zeep instead of suds as SOAP client)
MIT License
433 stars 144 forks source link

zeep.exceptions.Fault: Method 'soap-env:Envelope' not implemented: method name or namespace not recognized #28

Open joaopalma5 opened 5 years ago

joaopalma5 commented 5 years ago

hey, anyone can help me? in Zeep the method soap-env:Envelope isn't implemented.. this is my code

....
#access media service
media = mycam.create_media_service()                

profiles = media.GetProfiles()

# Use the first profile and Profiles have at least one
token = profiles[0].token
snapshot = media.GetSnapshotUri({'ProfileToken' : token})
print ('My Cam: ' + str(snapshot))

OUTPUT `Traceback (most recent call last): File "C:\Program Files\Python37\lib\site-packages\onvif_zeep-0.2.12-py3.7.egg\onvif\client.py", line 23, in wrapped return func(*args, kwargs) File "C:\Program Files\Python37\lib\site-packages\onvif_zeep-0.2.12-py3.7.egg\onvif\client.py", line 153, in wrapped return call(params, callback) File "C:\Program Files\Python37\lib\site-packages\onvif_zeep-0.2.12-py3.7.egg\onvif\client.py", line 140, in call ret = func(params) File "C:\Program Files\Python37\lib\site-packages\zeep-3.1.0-py3.7.egg\zeep\proxy.py", line 42, in call self._op_name, args, kwargs) File "C:\Program Files\Python37\lib\site-packages\zeep-3.1.0-py3.7.egg\zeep\wsdl\bindings\soap.py", line 132, in send return self.process_reply(client, operation_obj, response) File "C:\Program Files\Python37\lib\site-packages\zeep-3.1.0-py3.7.egg\zeep\wsdl\bindings\soap.py", line 194, in process_reply return self.process_error(doc, operation) File "C:\Program Files\Python37\lib\site-packages\zeep-3.1.0-py3.7.egg\zeep\wsdl\bindings\soap.py", line 349, in process_error subcodes=subcodes) zeep.exceptions.Fault: Method 'soap-env:Envelope' not implemented: method name or namespace not recognized

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File ".\onvifCapture.py", line 19, in snapshot = media.GetSnapshotUri({'ProfileToken' : token}) File "C:\Program Files\Python37\lib\site-packages\onvif_zeep-0.2.12-py3.7.egg\onvif\client.py", line 26, in wrapped raise ONVIFError(err) onvif.exceptions.ONVIFError: Unknown error: Method 'soap-env:Envelope' not implemented: method name or namespace not recognized`

MAminZ commented 5 years ago

Hello, Did you find any solution for your problem ?

dmbaboiu commented 4 years ago

I had exactly the same problem. It took me a while, but I in the end figured it out. In my case, it turned out that I was sending the operation request to the wrong service (a Media2 request to device_service).