Увы, не работает. Сергей сам признавался, что не получилось реализовать задуманное в плане получения событий по ONVIF.directman66 писал(а): ↑Вт сен 18, 2018 3:45 pmПрошло вроде больше года с момента поднятия вопроса о подписке на события ONVIF. За темой не следил, кто в теме, появилась ли сейчас такая возможность (polling)? Работает оно у кого-то?
[Модуль] ONVIF (onvif)
Модератор: immortal
-
- Сообщения: 1462
- Зарегистрирован: Вс янв 10, 2016 11:05 am
- Благодарил (а): 260 раз
- Поблагодарили: 454 раза
Re: Модуль ONVIF
-
- Сообщения: 2801
- Зарегистрирован: Пн дек 26, 2016 9:51 am
- Откуда: Екатеринбург
- Благодарил (а): 380 раз
- Поблагодарили: 693 раза
- Контактная информация:
Re: Модуль ONVIF
Ситуация на самом деле куда более интересная.
Более подробно тут с примерами https://stackoverflow.com/questions/415 ... n-in-onvif
А вот тут чувак приводит пример сообщения https://github.com/beegee-tokyo/CCTVview/issues/2, которое нужно отправить камере, чтобы сообщить ей, куда слать уведомления (второй вариант).
Которая вызывается
Т.е. теоретически все реализуемо, и даже почти готово, но очень сильно зависит от реализации протокола ONVIF на самой камере.
Может подскажет кто-нибудь приложения для отлова этих сообщений например для андройд? Первым делом нужно вообще понять, имеется ли данный функционал в лабораторных камерах, и если какие-то другие приложения работают, можно начинать копать и тут.
кстати вот нашел какое-то приложение, но не тестировал. https://habr.com/company/synesis/blog/120747/
Ссылка на программу https://yadi.sk/d/kXCND7Nmt3tAYQ
Поллинг камеры видимо выглядит так:
After a lot of reading and searching I have implemented Event using Onvif device manager dlls.
There are three ways by which we can subscribe to the events.
1.Real time Pull-Point Notification Interface.(Pull-Point Mechanism)
2.Basic Notification Interface.(Push Mechanism)
3.Notification Streaming Interface. (Metadata streaming)
Real time Pull-Point Notification Interface
СпойлерПоказать
После многого чтения и поиска я реализовал Event, используя DLL-файлы диспетчера устройств Onvif.
Есть три способа, которыми мы можем подписаться на события.
1.Real time Pull-Point Notification Interface (Механизм вытягивания)
2. Базовый интерфейс уведомления (Push Mechanism)
3.Notification Streaming Interface. (Потоковая передача метаданных)
Интерфейс уведомления о точке передачи в реальном времени
А вот тут чувак приводит пример сообщения https://github.com/beegee-tokyo/CCTVview/issues/2, которое нужно отправить камере, чтобы сообщить ей, куда слать уведомления (второй вариант).
В используемой Сергеем библиотеке class.ponvif.php есть функция public function events_Subscribe() {СпойлерПоказатьONVIF protocol has three type of event subscription (as described in this answer)
So I'm want to implement second one Basic Notification Interface.(Push Mechanism).
In that case I try to use this kind of request (take it by wireshark from onvif desktop app)
Код: Выделить всё
<s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" xmlns:a="http://www.w3.org/2005/08/addressing"> <s:Header> <a:Action> http://docs.oasis-open.org/wsn/bw-2/NotificationProducer/SubscribeRequest </a:Action> <a:To> http://192.168.0.239:8080/onvif/events </a:To> </s:Header> <s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Subscribe xmlns="http://docs.oasis-open.org/wsn/b-2"> <ConsumerReference> <a:Address> http://$ipv4ip:8085/subscription-1 </a:Address> </ConsumerReference> <InitialTerminationTime> PT60S </InitialTerminationTime> </Subscribe> </s:Body> </s:Envelope>
Код: Выделить всё
$post_string='<s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope"><s:Header><Security s:mustUnderstand="1" xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"><UsernameToken><Username>%%USERNAME%%</Username><Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest">%%PASSWORD%%</Password><Nonce EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">%%NONCE%%</Nonce><Created xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">%%CREATED%%</Created></UsernameToken></Security></s:Header><s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><CreatePullPointSubscription xmlns="http://www.onvif.org/ver10/events/wsdl"><InitialTerminationTime>PT60M</InitialTerminationTime></CreatePullPointSubscription></s:Body></s:Envelope>';
Код: Выделить всё
if ($rec['SUBSCRIBE']) {
$response = $onvif_object->events_Subscribe();
if ($response['SubscriptionReference']['Address']) {
$rec['SUBSCRIPTION_ADDRESS']=$response['SubscriptionReference']['Address'];
SQLUpdate('onvif_devices',$rec);
Может подскажет кто-нибудь приложения для отлова этих сообщений например для андройд? Первым делом нужно вообще понять, имеется ли данный функционал в лабораторных камерах, и если какие-то другие приложения работают, можно начинать копать и тут.
кстати вот нашел какое-то приложение, но не тестировал. https://habr.com/company/synesis/blog/120747/
Ссылка на программу https://yadi.sk/d/kXCND7Nmt3tAYQ
Поллинг камеры видимо выглядит так:
СпойлерПоказать
- За это сообщение автора directman66 поблагодарил:
- mer (Вт ноя 20, 2018 1:27 am)
- Рейтинг: 1.16%
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
-
- Сообщения: 2801
- Зарегистрирован: Пн дек 26, 2016 9:51 am
- Откуда: Екатеринбург
- Благодарил (а): 380 раз
- Поблагодарили: 693 раза
- Контактная информация:
Re: Модуль ONVIF
Оказывается polling работает. Проблема с передачей привязанного значения!!!
СпойлерПоказать
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
-
- Сообщения: 3006
- Зарегистрирован: Чт авг 21, 2014 8:28 am
- Откуда: Киров, Россия
- Благодарил (а): 400 раз
- Поблагодарили: 1753 раза
- Контактная информация:
Re: Модуль ONVIF
Перестаньте называть механизм подписки на события (event subscription) и Pull-Point Notification поллингом. Это диаметрально противоположные подходы.
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
Мой CONNECT | Блоги | Telegram
-
- Сообщения: 2801
- Зарегистрирован: Пн дек 26, 2016 9:51 am
- Откуда: Екатеринбург
- Благодарил (а): 380 раз
- Поблагодарили: 693 раза
- Контактная информация:
Re: Модуль ONVIF
Сергей починил передачу значений свойствам объектов. Можно использовать.
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
-
- Сообщения: 52
- Зарегистрирован: Вс сен 16, 2018 9:49 pm
- Благодарил (а): 5 раз
- Поблагодарили: 1 раз
Re: Модуль ONVIF
поиск не работает, при попытке добавить камеру вручную выдала вверху такую ошибку Error: GetCapabilities: Communication error
-
- Сообщения: 2801
- Зарегистрирован: Пн дек 26, 2016 9:51 am
- Откуда: Екатеринбург
- Благодарил (а): 380 раз
- Поблагодарили: 693 раза
- Контактная информация:
Re: Модуль ONVIF
Вроде заработало.
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
-
- Сообщения: 2801
- Зарегистрирован: Пн дек 26, 2016 9:51 am
- Откуда: Екатеринбург
- Благодарил (а): 380 раз
- Поблагодарили: 693 раза
- Контактная информация:
Re: Модуль ONVIF
Наконец модуль onvif начал корректно выдавать статусы движения. Камера постоянно шлёт сообщения, если есть движение шлёт true, если нет, то false. Мои китайские камеры к датчику движения приходится привязывать через свойство, а не через метод, иначе на получение каждого сообщения срабатывает метод. Предлагаю собрать статистику камер, с которыми работает данный функционал. Это нужно для понимания, есть ли интерес для развития этого направления. В частности планируется или отдельным модулем, или встроить в этот:
1) Сохранение и вывод на экран снапштов с камеры.
2) Распознавание объектов с помошью mail.ru VISION.
3) Распознавание лиц с помошью mail.ru VISION.
1) Сохранение и вывод на экран снапштов с камеры.
2) Распознавание объектов с помошью mail.ru VISION.
3) Распознавание лиц с помошью mail.ru VISION.
- За это сообщение автора directman66 поблагодарили (всего 3):
- ILGAS (Вс сен 23, 2018 2:38 pm) • Chainik (Вс сен 23, 2018 3:09 pm) • alex.frost (Вс сен 23, 2018 9:29 pm)
- Рейтинг: 3.49%
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
-
- Сообщения: 1462
- Зарегистрирован: Вс янв 10, 2016 11:05 am
- Благодарил (а): 260 раз
- Поблагодарили: 454 раза
Re: Модуль ONVIF
Мое мнение - развивать функционал существующего модуля. Чтобы не разбрасываться "мыслью по древу".directman66 писал(а): ↑Вс сен 23, 2018 9:22 amНаконец модуль onvif начал корректно выдавать статусы движения. Камера постоянно шлёт сообщения, если есть движение шлёт true, если нет, то false. Мои китайские камеры к датчику движения приходится привязывать через свойство, а не через метод, иначе на получение каждого сообщения срабатывает метод. Предлагаю собрать статистику камер, с которыми работает данный функционал. Это нужно для понимания, есть ли интерес для развития этого направления. В частности планируется или отдельным модулем, или встроить в этот:
1) Сохранение и вывод на экран снапштов с камеры.
2) Распознавание объектов с помошью mail.ru VISION.
3) Распознавание лиц с помошью mail.ru VISION.
Да, если раньше, что ни делай с вкладкой "Данные" в модуле onvif, ничего не происходило. то теперь у меня, примерно, каждые 6 секунд срабатывает метод (неважно, указываешь на вкладке "Данные" только метод, или указываешь только свойство, при изменении которого запускается метод). Картинку с камеры при этом модуль onvif присылает раз в 3-4 секунды. Значение свойства не меняется, как было "0", так и остается, даже если перед камерой происходит реальное движение и в журнале "родной" программы камеры это движение регистрируется.
-
- Сообщения: 2801
- Зарегистрирован: Пн дек 26, 2016 9:51 am
- Откуда: Екатеринбург
- Благодарил (а): 380 раз
- Поблагодарили: 693 раза
- Контактная информация:
Re: Модуль ONVIF
Так и не получил отзывы относительно использования камер в качестве датчиков движения.
По моим камерам:
1) Hi3516c +Sony imx222, в простонародье H.264 IPCAM события отрабатывают стабильно.
https://ru.aliexpress.com/item/Ultral-L ... 33edKTJw5c
2) XM-N2 - камера не обнаруживается модулем, также не обнаруживается приложением onvif
https://ru.aliexpress.com/item/XM-1080P ... 33edM5DSu2
По моим камерам:
1) Hi3516c +Sony imx222, в простонародье H.264 IPCAM события отрабатывают стабильно.
https://ru.aliexpress.com/item/Ultral-L ... 33edKTJw5c
2) XM-N2 - камера не обнаруживается модулем, также не обнаруживается приложением onvif
https://ru.aliexpress.com/item/XM-1080P ... 33edM5DSu2
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram