BreeeZe / rpos

Raspberry Pi Onvif Server
http://breeeze.github.io/rpos
MIT License
647 stars 147 forks source link

Device not detected correctly from Milestone #53

Closed ghost closed 5 years ago

ghost commented 5 years ago

Im not able to add the device to Milestone (2018 R3) i get pass the first step to add new hardware and it finds the correct hardware model text. But the next step fails with error message:

-- It was not possible to connect to or receive information from the hardware '192.168.123.110'. Verify that the following is correct: address, port, user name, password and hardware driver. Alternatively use auto-detection to find the hardware.

Im using the built in rtsp and the pi camera. I can access the RTSP url from VLC.

Any ideas?

This is the last debug output i get:

DeviceService - Calltype : info, Data : Handling POST on /onvif/device_service DeviceService - Calltype : received, Data : <?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope" xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:tt="http://www.onvif.org/ver10/schema" xmlns:tds="http://www.onvif.org/ver10/device/wsdl" xmlns:wsa5="http://www.w3.org/2005/08/addressing">

DeviceService - Calltype : info, Data : Attempting to bind to /onvif/device_service DeviceService - Calltype : info, Data : Trying Device from path DeviceService received request GetNetworkInterfaces DeviceService - Calltype : replied, Data : true lo 00-00-00-00-00-00 1500 true 127.0.0.1 8 false true eth0 b8-27-eb-d0-b0-81 1500 true 192.168.123.110 24 false --
ghost commented 5 years ago

The problem was that the response included the 'lo' interface. The fix was device_service.js(326) "if (nwifs[nwif][addr].family === 'IPv4' && nwif !== 'lo') {"

RogerHardiman commented 5 years ago

Hi. Thanks for the bug fix. I was just about to email and say that I've not got an up to date Milestone install here right now so it may take a while to fix (current dev laptop has Win 10 Home and not Win 10 Pro so cannot install the Milestone server)

But I see you have got there with a fix which is great and I'm just about to add it to GitHub.

Thanks and let me know if you find any other issues as the last tests I did with Milestone were at least 14 months ago

RogerHardiman commented 5 years ago

Hi. Did the fix on github work? There is another user reporting milestone issues so wanted to check

ghost commented 5 years ago

I did not test the code on git hub, i just changed my local code and it works fine :)

tis 15 jan. 2019 kl. 19:16 skrev Roger Hardiman notifications@github.com:

Hi. Did the fix on github work? There is another user reporting milestone issues so wanted to check

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/BreeeZe/rpos/issues/53#issuecomment-454495350, or mute the thread https://github.com/notifications/unsubscribe-auth/AG85yWreXAYMSFiqftzHLtxF01YhT2Rpks5vDhsZgaJpZM4ZoYTz .

-- Sent from iPhone /Best Regards Erik Lindstein +46(0)70 - 498 92 67

RogerHardiman commented 5 years ago

Sorry, when I copied over your change I was testing on a Mac. The loopback interface was 'lo0' and not 'lo' so I fixed it on the Mac but not on the Pi. Change now committed.