首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OnvifClientPTZ onvif c++无法获得配置选项

OnvifClientPTZ onvif c++无法获得配置选项
EN

Stack Overflow用户
提问于 2016-05-22 19:35:58
回答 1查看 801关注 0票数 1
代码语言:javascript
复制
tt__Profile *t = profiles.Profiles.at(0);

OnvifClientPTZ PTZ(onvifDevice);

_tptz__GetConfigurationOptions tptz__GetConfigurationOptions;
_tptz__GetConfigurationOptionsResponse  tptz__GetConfigurationOptionsResponse;
tt__PTZConfigurationOptions *options; 

int response = PTZ.GetConfigurationOptions(tptz__GetConfigurationOptionsResponse, t->token);

问题是PTZ#GetConfigurationOptions返回值1 (#response)。对象#onvifDevice看起来很好(onvifDevice.hasPTZ返回true)。我尝试过调试,onvifDevice.GetPTZUrl( strUrl )返回true,并将strUrl设置为192.168.1.88:2000/ PtzProxy对象的soap_endpoint (ptzProxy.soap_endpoint = strUrl.c_str();),它似乎很好。另外,"www.onvif.org/ver20/ptz/wsdl/GetConfigurationOptions“也是soap_action,它似乎也不错。我在用https://github.com/xsmart/onvifcpplib

在PTZ代理中,在这里返回:

代码语言:javascript
复制
tptz__GetConfigurationOptionsResponse->soap_get(soap, "tptz:GetConfigurationOptionsResponse", "");
if (soap->error)
    return soap_recv_fault(soap, 0);

任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-05-23 12:58:12

我找到了解决办法。问题就在这一行上:

代码语言:javascript
复制
int response = PTZ.GetConfigurationOptions(tptz__GetConfigurationOptionsResponse, t->token);

OnvifPTZClient#GetConfigurationOptions请求PTZConfiguration令牌,而不是配置文件令牌。所以正确的行文是:

代码语言:javascript
复制
response = PTZ.GetConfigurationOptions(tptz__GetConfigurationOptionsResponse, tr->PTZConfiguration->token);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37378788

复制
相关文章

相似问题

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