Обнаружение службы ip-камеры Onvif

Мне нужно обнаружить все IP-камеры в локальной сети, поддерживающие протокол onvif. Я пробовал с WSDiscoveryClient, но он не обнаруживает службы onvif, хотя обнаруживает другие службы. Это похоже на то, что onvif не отвечает на запрос от WSDiscoveryClient. Диспетчер устройств Onvif может выполнить обнаружение, поэтому я знаю, что это возможно. кто нибудь знает как это сделать?


person Aleksa    schedule 19.03.2015    source источник
comment
Обычным подходом было бы прослушивание известного IP-адреса, просмотр того, что передается обратно, возможно, отслеживание протокола.   -  person Joop Eggen    schedule 19.03.2015
comment
возможный дубликат ONVIF — начало обнаружения устройств   -  person mpromonet    schedule 01.06.2015


Ответы (2)


Этот документ: http://www.onvif.org/Portals/0/documents/WhitePapers/ONVIF_WG-APG-Application_Programmer%27s_Guide.pdf

Показывает пример того, что требуется для отправки (через широковещательную рассылку 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> 
person ChrisWard1000    schedule 21.03.2015
comment
Спасибо, чувак, можешь привести пример java-кода, как отправить мыльное сообщение на основе этого xml в udp-трансляцию? - person Aleksa; 21.03.2015
comment
Я немного программировал на Java, но это выглядит как хороший пример того, как отправлять широковещательную рассылку UDP: michieldemey.be/blog/network-discovery-using-udp-broadcast - person ChrisWard1000; 22.03.2015

Вот очень хорошая java-оболочка, которая обнаруживает камеры OnVif:

Библиотека сетевого обнаружения на Java

person Zulqarnain    schedule 27.10.2016