Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > IP камеры и ONVIF


Автор: Ketrikken 1.2.2012, 11:16
Доброго времени суток!
Собственно, есть задача работать с камерами через ONVIF. С подобными технологиями раньше не работала, поэтому материал воспринимается тяжело. Вроде изучила SOAP, WSDL. Но куда это прикручивать не пойму. Примерно представляю, как начать работу, но очень хочется посмотреть на пример кода.
Помогите, кто чем может. Можно кодом, можно на словах, можно на пальцах  smile 

Автор: Ketrikken 6.2.2012, 10:39
up

Автор: Ketrikken 8.2.2012, 13:30
Все же надеюсь, что кто-то с этим работает. Пока сделала следующее.

Импортировала wsdl с помощью WSDLImporter. 
Изменила в получившемся файле

Код

InvRegistry.RegisterInterface(TypeInfo(IDevice), 'http://www.onvif.org/ver10/device/wsdl', 'utf-8');
InvRegistry.RegisterDefaultSOAPAction(TypeInfo(IDevice), '');


на 

Код

InvRegistry.RegisterInterface(TypeInfo(IDevice), 'http://www.onvif.org/ver10/device/wsdl', 'utf-8');
InvRegistry.RegisterDefaultSOAPAction(TypeInfo(IDevice), '');
InvRegistry.RegisterInvokeOptions(TypeInfo(IDevice), ioDocument);


И пытаюсь вызвать функцию

Код

procedure TForm1.Button1Click(Sender: TObject);
var
  dev: IDevice;
  req: GetDeviceInformation;
begin

  HTTPRIO1.url := 'http://192.168.0.90/onvif/device_service';
  HTTPRIO1.HTTPWebNode.UserName := 'root';
  HTTPRIO1.HTTPWebNode.Password := 'pass';

  if HTTPRIO1.QueryInterface(IDevice, dev) = s_ok then
  begin
    req := GetDeviceInformation.Create;
    dev.GetDeviceInformation(req);
  end;
end;


Пишет Ошибкак 404 - http://192.168.0.90/onvif/device_service
Причем ни wsdl ни камера не предоставляют Service и Port.

Автор: Ketrikken 7.3.2012, 12:32
Вопрос решен.

Автор: gashik 25.5.2012, 16:56
Цитата(Ketrikken @  7.3.2012,  12:32 Найти цитируемый пост)
Вопрос решен.

Может поделитесь?  тоже надо

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)