Hello @matt1,
Thank you so much for the work you’ve put into this binding.
I’m struggling with making it work with the newest version. I’m using HikVision NVR and wanted to add a few RTSP cameras as well.
For a few months I had the following configuration:
Thing ipcamera:HIKVISION:Cam1 "Front Camera" [IPADDRESS="192.168.0.49", USERNAME="XXX", PASSWORD="XXX", ONVIF_PORT=8000, PORT=80, NVR_CHANNEL=1 ]
And it worked perfectly with the items like
Image NVR_Front "Front" {channel="ipcamera:HIKVISION:Cam1:image"}
Now I’ve updated the binding to the latest one, and keeping the same *.things and items definitions intact, I get the following errors:
2019-07-17 20:57:39.980 [TRACE] [ing.ipcamera.handler.IpCameraHandler] - DefaultLastHttpContent(data: PooledSlicedByteBuf(ridx: 0, widx: 166, cap: 166/166, unwrapped: PooledUnsafeDirectByteBuf(ridx: 376, widx: 376, cap: 400)), decoderResult: success)
2019-07-17 20:57:39.975 [TRACE] [ipcamera.internal.MyNettyAuthHandler] - MyNettyAuthHandler is now setup for GET:/Streaming/channels/301/picture
2019-07-17 20:57:39.986 [TRACE] [ing.ipcamera.handler.IpCameraHandler] - HTTP Result back from camera is :<!DOCTYPE html>
<html><head><title>Document Error: Not Found</title></head>
<body><h2>Access Error: 404 -- Not Found</h2>
<p>Can't open URL</p>
</body>
</html>
:
2019-07-17 20:57:39.997 [TRACE] [ing.ipcamera.handler.IpCameraHandler] - DefaultLastHttpContent(data: PooledSlicedByteBuf(ridx: 0, widx: 166, cap: 166/166, unwrapped: PooledUnsafeDirectByteBuf(ridx: 376, widx: 376, cap: 400)), decoderResult: success)
2019-07-17 20:57:39.998 [TRACE] [ing.ipcamera.handler.IpCameraHandler] - DefaultLastHttpContent(data: PooledSlicedByteBuf(ridx: 0, widx: 297, cap: 297/297, unwrapped: PooledUnsafeDirectByteBuf(ridx: 530, widx: 530, cap: 1024)), decoderResult: success)
2019-07-17 20:57:39.997 [TRACE] [ipcamera.internal.MyNettyAuthHandler] - MyNettyAuthHandler is now setup for GET:/ISAPI/System/IO/inputs/2/status
2019-07-17 20:57:40.003 [TRACE] [ing.ipcamera.handler.IpCameraHandler] - HTTP Result back from camera is :<!DOCTYPE html>
<html><head><title>Document Error: Not Found</title></head>
<body><h2>Access Error: 404 -- Not Found</h2>
<p>Can't open URL</p>
</body>
</html>
:
2019-07-17 20:57:40.005 [DEBUG] [ing.ipcamera.handler.IpCameraHandler] - Sending camera GET: http://192.168.0.49:80/ISAPI/System/IO/inputs/3/status
2019-07-17 20:57:40.006 [TRACE] [ing.ipcamera.handler.IpCameraHandler] - HTTP Result back from camera is :<?xml version="1.0" encoding="UTF-8" ?>
<ResponseStatus version="1.0" xmlns="urn:psialliance-org">
<requestURL>/ISAPI/System/IO/inputs/4/status</requestURL>
<statusCode>4</statusCode>
<statusString>Invalid Operation</statusString>
<subStatusCode>invalidOperation</subStatusCode>
</ResponseStatus>
:
2019-07-17 20:57:40.003 [TRACE] [ing.ipcamera.handler.IpCameraHandler] - DefaultHttpResponse(decodeResult: success, version: HTTP/1.1)
HTTP/1.1 403 Forbidden
Date: Wed, 17 Jul 2019 20:58:09 GMT
Server: DNVRS-Webs
Cache-Control: no-cache
Content-Length: 297
Content-Type: application/xml; charset="UTF-8"
Connection: keep-alive
Keep-Alive: timeout=60, max=79
2019-07-17 20:57:40.013 [DEBUG] [ing.ipcamera.handler.IpCameraHandler] - Using the already open channel:2 GET:/ISAPI/System/IO/inputs/3/status
2019-07-17 20:57:40.014 [TRACE] [ing.ipcamera.handler.IpCameraHandler] - DefaultLastHttpContent(data: PooledSlicedByteBuf(ridx: 0, widx: 297, cap: 297/297, unwrapped: PooledUnsafeDirectByteBuf(ridx: 530, widx: 530, cap: 1024)), decoderResult: success)
2019-07-17 20:57:40.016 [TRACE] [ipcamera.internal.MyNettyAuthHandler] - MyNettyAuthHandler is now setup for GET:/ISAPI/System/IO/inputs/3/status
2019-07-17 20:57:40.017 [TRACE] [ing.ipcamera.handler.IpCameraHandler] - HTTP Result back from camera is :<?xml version="1.0" encoding="UTF-8" ?>
<ResponseStatus version="1.0" xmlns="urn:psialliance-org">
<requestURL>/ISAPI/System/IO/inputs/1/status</requestURL>
<statusCode>4</statusCode>
<statusString>Invalid Operation</statusString>
<subStatusCode>invalidOperation</subStatusCode>
</ResponseStatus>
:
2019-07-17 20:57:40.009 [TRACE] [ing.ipcamera.handler.IpCameraHandler] - DefaultHttpResponse(decodeResult: success, version: HTTP/1.1)
HTTP/1.1 403 Forbidden
Date: Wed, 17 Jul 2019 20:58:09 GMT
Server: DNVRS-Webs
Cache-Control: no-cache
Content-Length: 297
Content-Type: application/xml; charset="UTF-8"
Connection: keep-alive
Keep-Alive: timeout=60, max=78
2019-07-17 20:57:40.000 [TRACE] [ing.ipcamera.handler.IpCameraHandler] - HTTP Result back from camera is :<!DOCTYPE html>
<html><head><title>Document Error: Not Found</title></head>
<body><h2>Access Error: 404 -- Not Found</h2>
<p>Can't open URL</p>
</body>
</html>
:
2019-07-17 20:57:40.009 [TRACE] [ing.ipcamera.handler.IpCameraHandler] - DefaultHttpResponse(decodeResult: success, version: HTTP/1.1)
HTTP/1.1 404 Not Found
Date: Wed, 17 Jul 2019 20:58:09 GMT
Server: DNVRS-Webs
Cache-Control: no-cache
Content-Length: 166
Content-Type: text/html
Connection: keep-alive
Keep-Alive: timeout=60, max=78
2019-07-17 20:57:40.024 [TRACE] [ing.ipcamera.handler.IpCameraHandler] - DefaultLastHttpContent(data: PooledSlicedByteBuf(ridx: 0, widx: 297, cap: 297/297, unwrapped: PooledUnsafeDirectByteBuf(ridx: 530, widx: 530, cap: 1024)), decoderResult: success)
2019-07-17 20:57:40.028 [TRACE] [ing.ipcamera.handler.IpCameraHandler] - DefaultHttpResponse(decodeResult: success, version: HTTP/1.1)
HTTP/1.1 403 Forbidden
Date: Wed, 17 Jul 2019 20:58:09 GMT
Server: DNVRS-Webs
Cache-Control: no-cache
Content-Length: 297
Content-Type: application/xml; charset="UTF-8"
Connection: keep-alive
Keep-Alive: timeout=60, max=78
2019-07-17 20:57:40.032 [TRACE] [ing.ipcamera.handler.IpCameraHandler] - DefaultLastHttpContent(data: PooledSlicedByteBuf(ridx: 0, widx: 297, cap: 297/297, unwrapped: PooledUnsafeDirectByteBuf(ridx: 530, widx: 530, cap: 1024)), decoderResult: success)
2019-07-17 20:57:40.035 [TRACE] [ing.ipcamera.handler.IpCameraHandler] - HTTP Result back from camera is :<?xml version="1.0" encoding="UTF-8" ?>
<ResponseStatus version="1.0" xmlns="urn:psialliance-org">
<requestURL>/ISAPI/System/IO/inputs/3/status</requestURL>
<statusCode>4</statusCode>
<statusString>Invalid Operation</statusString>
<subStatusCode>invalidOperation</subStatusCode>
</ResponseStatus>
Reading through this thread I suspect it has to do with ISAPI endpoint?
Questions
- Is there a way to have it working as before without the need of rollback? I’m using
NVR_CHANNEL
params there. Maybe I missed some breaking change
- (slightly off-topic) What would be a proper way to have a HTTPONLY Thing declared?
My only input is a audioless RTSP stream from a Yi camera: rtsp://192.168.0.XX/ch0_0.h264
Seems like I got it wrong:
Thing ipcamera:HTTPONLY:Driveway "Driveway" [ IPADDRESS="192.168.0.XX", PORT=554, SNAPSHOT_URL_OVERRIDE="rtsp://192.168.0.XX/ch0_0.h264" ]
I’m on openHAB 2.5.0.M1 Milestone Build
on RPi3B with openHABian.
Installed ffmpeg
manually.
Stopped openhab2 service, cleared cache - all that stuff.
Best regards,
Kuba