我需要发现支持onvif协议的局域网中的所有ip摄像头。我尝试使用WSDiscoveryClient,但它没有发现onvif服务,尽管它发现了其他服务。它就像onvif没有响应来自WSDiscoveryClient的探测。 Onvif设备管理器可以进行发现,所以我知道可以做到这一点。有谁知道怎么做?
答案 0 :(得分:5)
显示发送(通过UDP广播)以发现ONVIF设备所需的内容示例
<?xml version="1.0" encoding="UTF-8"?>
<e:Envelope xmlns:e="http://www.w3.org/2003/05/soap-envelope"
xmlns:w="http://schemas.xmlsoap.org/ws/2004/08/addressing"
xmlns:d="http://schemas.xmlsoap.org/ws/2005/04/discovery"
xmlns:dn="http://www.onvif.org/ver10/network/wsdl">
<e:Header>
<w:MessageID>uuid:84ede3de-7dec-11d0-c360-f01234567890</w:MessageID>
<w:To e:mustUnderstand="true">urn:schemas-xmlsoap-org:ws:2005:04:discovery</w:To>
<w:Action a:mustUnderstand="true">http://schemas.xmlsoap.org/ws/2005/04/discovery/Probe</w:Action>
</e:Header>
<e:Body>
<d:Probe>
<d:Types>dn:NetworkVideoTransmitter</d:Types>
</d:Probe>
</e:Body>
</e:Envelope>
答案 1 :(得分:0)
这是一个非常好的java包装器,可以发现OnVif相机: