onvif摄像机的python客户端

onvif-zeep的Python项目详细描述


python onvif zeep
==


>python中的onvif客户端实现


依赖项
----
`zeep<;http://docs.python zeep.org>;``uugt;=3.0.0

您可以从onvif import onvifcamera


























<












mycam=onvifcamera('192.168.0.0.0.2','192.168.0.0.2','192.168.0.2.0.2',





现在,onvifcamera实例可用。默认情况下,如果一切正常,也可以使用devicemgmt服务。wsdl文档中定义的所有操作:

/etc/onvif/wsdl/devicemgmt.wsdl



主机名:'+str(resp.name)

摄像机
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

要配置摄像机,有两种方法可以将参数传递给服务方法。

**dict**


如果设置的参数无效(或不存在),则类型实例将引发
异常。

::


params=mycam.devicemgmt.create_type('set hostname')
params.hostname='newhostname'
mycam.devicemgmt.sethostname(params)

time撸=mycam.devicemgmt.create_type('setSystemDateAndTime')
时间参数.dateTimeType='手动'
时间参数.daylightSavings=true
时间参数.timeZone.tz='cst-8:00:00'
时间参数.utcdateTime.Date.Year=2014
时间参数.utcdateTime.Date.Month=12
time_params.utcdatetime.date.day=3
time_params.utcdatetime.time.hour=9
time_params.utcdatetime.time.minute=36
time_params.utcdatetime.time.second=11
mycam.devicemgmt.setsystemdateandtime(time_params)

服务
~~~~~~~~~~~~~~~~~~~~~~~~~~
onvif协议定义了许多服务。
您可以在这里找到所有服务和操作<;http://www.onvif.org/onvif/ver20/util/operationindex.html>;`.onvifcamera有创建新服务的支持方法:

一个非官方的服务:

xaddr='http://192.168.0.3:8888/onvif/yourservice'
yourservice=mycam.create\onvif庠service('service.wsdl',xaddr,"yourservice")
yourservice.someoperation()
示例
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

::

$onvif cli devicegmt gethostname--用户"admin"--密码"12345"--主机"192.168.0.112"--端口80
true:{fromdhcp':true,"name":hision}
$onvif cli devicegmt sethostname{'name':'newerhostname'}--用户"admin"--密码"12345"--主机"192.168.0.112"--端口80
真值:{}


交互模式
~~~~~~~~~~~~~~~~~



$onvif cli-u‘admin’-a‘12345’--host‘192.168.0.112’--port 80--wsdl/etc/onvif/wsdl/
onvif>;>cmd
analytics devicemgmt events imaging media ptz
onvif>;>cmd devicemgmt getwsdlurl
true:http://www.onvif.org/
onvif>;>cmd devicemgmt sethostname{'name':'newhostname'}
onvif>;>cmd devicemgmt gethostname
true:{'name':'newhostname'}
onvif>;>cmd devicemgmt someoperation
false:无操作:someoperation

注意:交互模式支持制表符完成。


批处理模式
~~~~~~~~




$vim batchcmds
$cat batchcmds
cmd devicemgmt getwsdlurl
cmd devicemgmtsethostname{'name':'newhostname','fromdhcp':true}
cmd devicemgmt gethostname
$onvif cli--host 192.168.0.112-u admin-a 12345-w/etc/onvif/wsdl/<;batchcmds
onvif>;>;true:http://www.onvif.org/
onvif>;>;true:{}
onvif>;>;true:{'fromdhcp':false,'name':newhostname}


http://www.onvif.org/specs/docmap-2.4.2.html>;`

*`foscam python lib<;http://github.com/quatanium/foscam python lib>;。`_

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java JavaFX 11可编辑组合框引发IndexOutOfBoundsException   java选择数组中的数组元素   java我从来没有找到创建2D ArrayList的正确方法   java JPA查找orderById的顶部数据,并按字符串过滤Id   使用java在ejabberd中进行xmpp外部身份验证   从ajax调用向java传递点运算符   java如何使用ReadWriteLock   使用Spring控制器和jQueryAjax的java重定向   java使JFrame中的JPanel可滚动   java如何用多个。jar库?   java EditText在RecyclerView中失去了对滚动的关注   java为什么我们必须扩展Servlet或GenericServlet或HttpServlet来创建Servlet应用程序?如果不扩展,我们可以开发Servlet应用程序吗?   使用递归java查找数组中的最大值   具有不同字段数的html表单的java域传输对象   java文本视图扩展;不支持操作异常   java如何使用iText的HTMLWorker类将多语言HTML字符串呈现为PDF