Onvif ip camera service discovery

8k Views Asked by At

I need to discover all ip cameras in local area network that supports onvif protocol. I tried with WSDiscoveryClient, but it doesnt discover onvif services, although it discovers other services. Its like onvif doesnt responde to probe from WSDiscoveryClient. Onvif device manager can do the discovery, so I know it is possible to do it. Does anyone know how to do it?

2

There are 2 best solutions below

2
ChrisWard1000 On BEST ANSWER

This document: http://www.onvif.org/Portals/0/documents/WhitePapers/ONVIF_WG-APG-Application_Programmer%27s_Guide.pdf

Shows an example of what is required to send(via UDP broadcast)in order to discover ONVIF devices

<?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> 
0
Zulqarnain Mustafa On

Here is a very nice java wrapper which discovers OnVif cameras:

Network Discovery Library in Java