Внедрение ONVIF WS-BaseNotification — невозможно загрузить wsdl

Я пытаюсь реализовать механизм ONVIF WS-BaseNotification с использованием python, и требование такое.

  • Подпишитесь на события с ONVIF-совместимой камеры
  • При получении уведомлений с камеры анализируйте сообщение уведомления и извлекайте оттуда событие движения.

Вот мой план:

  • Загрузите wsdl с здесь
  • Преобразуйте файл wsdl в файл python с помощью wsdl2py.
  • Используйте классы сервера и клиента NotificationConsumer для отправки/получения мыльных сообщений.

В настоящее время я застрял на # 2, где я не могу правильно преобразовать файл wsdl. Когда я пытаюсь сгенерировать классы Python, я получаю 2 класса: 1 — WS_BaseNotification_services.py, а другой — WS_BaseNotification_services_types.py.

В WS_BaseNotification_services.py я не вижу ничего, кроме заголовка:

############################################

# WS_BaseNotification_services.py #сгенерировано ZSI.generate.wsdl2python

#

и В WS_BaseNotification_services_types.py подходят все типы.

Я думаю, что есть проблема с файлом wsdl, так как я даже пытался загрузить этот wsdl в SOAP-UI, но получил такую ​​​​ошибку:

Сообщение об ошибке от пользовательского интерфейса SOAP

Любая идея о том, что пошло не так.


person HRM    schedule 22.04.2016    source источник


Ответы (1)


Теперь эта проблема решена. Нам нужно отредактировать файл wsdl, чтобы включить также Bindings.

person HRM    schedule 13.06.2016
comment
Привет, хотя это старо, не могли бы вы рассказать, какие изменения вы сделали? если вы можете вспомнить. или поделитесь тем, что вы сделали. Мы тоже пытаемся делать то же самое. - person JOA80; 22.09.2020
comment
@ JOA80 JOA80, я точно не помню, что делал, и у меня нет содержимого, на которое можно было бы сослаться. Прочитав ответ, я считаю, что это исправлено путем редактирования файла wsdl путем добавления свойства Bindings. Одна вещь, которую я помню, это то, что он должен иметь возможность импортировать из SoapUI, который изначально также не работал; но после редактирования я также могу импортировать оттуда. Надеюсь, эта ссылка даст вам некоторое представление - soapui.org/docs /soap-and-wsdl/working-with-wsdls - person HRM; 23.09.2020