【发布时间】:2013-11-19 01:25:30
【问题描述】:
我使用 GSOAP 来实现一个简单的程序,该程序可以实现 ONVIF 发现功能。 (NVT,NVR部分,不是设备管理器,即客户端部分)
程序需要 1) 发送“ProbeMatch”消息以响应 ONVIF DM 的“Probe”消息。 2) 偶尔发送“Hello”消息。
我下载并启动“gsoap”工具没有任何问题。我生成了 h 和 c 文件,并在 Eclipse 中创建了一个项目。
当我在“客户端”模式下生成 C 文件时,我可以构建 Eclipse 项目。 soapClient.cpp 中定义了 3 个函数,但我不知道如何在 main 函数中使用它们(参数 ns2_HelloType 和 ns2_ResolveType 是什么)。还有,我什么时候调用这些函数?
当我在“服务器”模式下生成 C 文件时,我无法构建 Eclipse 项目,因为这些函数在 h 文件中具有签名但未定义。我必须根据gsoap的教程来定义它们。 (计算器示例)
http://www.cs.fsu.edu/~engelen/soapdoc2.html
实际上,我无法理解“服务器”和“客户端”的概念。 ONVIF 规范的哪一部分是客户端,哪一部分是服务器?你好,再见等是“设备”本身的功能,那么设备 SOAP 服务器也是如此吗?谁能澄清这些概念?
最好的问候, 费拉特
【问题讨论】:
-
有一个tutorial here。打开 zip,并阅读 docs 目录中包含的文档。此示例使用的开发环境可能与您可能使用的不同,但它提供了逐步如何为客户端构建 gsoap 文件的方法。 (顺便说一句,这是你需要的)。
-
他需要一个服务器,他正在实现 NVT 而不是客户端。
-
@OttavioCampana - 我明白这一点。这些概念类似于为客户端和服务器应用程序创建 C 绑定。他提出的问题是澄清围绕服务器/客户端的概念。