首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Onvif设备管理器找不到Onvif设备

Onvif设备管理器找不到Onvif设备
EN

Stack Overflow用户
提问于 2016-08-05 12:05:11
回答 1查看 1.7K关注 0票数 3

我正在尝试使用gsoap实现带有onvif配置文件标准的相机设备服务器。关于ws动态发现,当我试图在https://github.com/mpromonet/ws-discovery/blob/master/gsoap/server.cpp中运行代码时,Onvif设备管理器没有给出任何回答我的问题信息的答案。我可以看到,我得到了探测信息,发送了问题信息,但Onvif设备管理器忽略了它们。我为我的设备做了这些参数更改:

代码语言:javascript
复制
const int   _metadataVersion = 1;
static const char* _xaddr= "http://10.0.0.50:1881";
const char* _type="tdn:NetworkVideoTransmitter " "tds:Device " ;
const char* _scope=
        "onvif://www.onvif.org/name/ru "
        "onvif://www.onvif.org/hardware/hw "
        "onvif://www.onvif.org/Profile/Streaming "
        "onvif://www.onvif.org/location/ANY "
        "onvif://www.onvif.org/type/video_encoder onvif://www.onvif.org/type/audio_encoder onvif://www.onvif.org/type/ptz ";

const char* _endpoint="urn";

我尝试了许多参数,但我找不到解决办法。为了被Onvif设备管理器发现,我需要做什么样的更改?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-08-28 14:17:21

如您所见,您使用的命名空间(tdn & tds)没有在生成的命名空间中声明(在gen/wsdd.nsmap中):

代码语言:javascript
复制
#include "soapH.h"
SOAP_NMAC struct Namespace namespaces[] =
{
        {"SOAP-ENV", "http://schemas.xmlsoap.org/soap/envelope/", "http://www.w3.org/*/soap-envelope", NULL},
        {"SOAP-ENC", "http://schemas.xmlsoap.org/soap/encoding/", "http://www.w3.org/*/soap-encoding", NULL},
        {"xsi", "http://www.w3.org/2001/XMLSchema-instance", "http://www.w3.org/*/XMLSchema-instance", NULL},
        {"xsd", "http://www.w3.org/2001/XMLSchema", "http://www.w3.org/*/XMLSchema", NULL},
        {"wsa", "http://schemas.xmlsoap.org/ws/2004/08/addressing", NULL, NULL},
        {"wsdd", "http://schemas.xmlsoap.org/ws/2005/04/discovery", NULL, NULL},
        {NULL, NULL, NULL, NULL}
};

为了指定具有限定名的wsdd:ProbeType,您应该使用:

http://www.onvif.org/ver10/network/wsdl”:网络视频传送器

这可以通过指定-t参数来实现:

代码语言:javascript
复制
ws-discovery.exe -t \"http://www.onvif.org/ver10/network/wsdl\":NetworkVideoTransmitter \
                 -x http://10.0.0.50:1881

或修改代码:

代码语言:javascript
复制
const char* _type="\"http://www.onvif.org/ver10/network/wsdl\":NetworkVideoTransmitter" ;
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38788840

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档