Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR adds NAT/proxy support.
Currently after
_getCapabilities()
succeeds node-onvif will resolve to use direct ip address of the devices and ignore the xaddr/addess passed in by the user in constructorOnvifDevice
This is undesired if the device is behind a NAT or is routed by an nginx server with multiple subpaths such as 10.10.1.2:8000 or 10.10.1.2/route-to-device/. node-onvif won't be able to connect.
Change in this PR allows user to pass in ip address or url pathname as the preferred connection string so node-onvif will always use this value to connect to the device and ignore the device's internal ip address.
For example:
OnvifDevice({ address: '10.10.2:300', user: 'user', 'pass': 'pass'})
OnvifDevice({ address: '10.10.1.2/route-to-device', user: 'user', 'pass': 'pass'})
Tested with node 6 and 8