Unfortunately, I don’t use zones so I can’t be of much help. Maybe someone else here knows the answer.
I’ve picked up the latest jar from above, but keep seeing “‘zm:server:ZoneMinder’ changed from INITIALIZING to OFFLINE (CONFIGURATION_ERROR): Can’t get version information” in the log.
I’m using https as @liketofly - but mine is self-signed. I’m also not sure what port to use? Any tips? I’ve also added the .htaccess files as mentioned above.
EDIT:
I’ve added debugging and it could be my self-signed certs
2020-09-23 19:06:53.852 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model ‘security.things’
2020-09-23 19:06:53.864 [DEBUG] [b.binding.zm.internal.handler.ZmAuth] - ZmAuth: Authorization is disabled
2020-09-23 19:06:53.878 [DEBUG] [b.binding.zm.internal.handler.ZmAuth] - ZmAuth: Authorization is enabled
2020-09-23 19:06:53.878 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - Bridge: Checking for valid Zoneminder host: zoneminder.server
2020-09-23 19:06:53.878 [DEBUG] [b.binding.zm.internal.handler.ZmAuth] - ZmAuth: Update expired REFRESH token using url ‘https://zoneminder.server/zm/api/host/login.j
son’
2020-09-23 19:06:53.902 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - Bridge: IOException on POST request, url=‘https://zoneminder.server/zm/api/host/login.json’:
java.util.concurrent.ExecutionException: javax.net.ssl.SSLHandshakeException: General SSLEngine problem
EDIT 2:
I assume it is the self-signed cert. curl -k https://zoneminder.server/zm/api/host/login.json -XPOST -d "user=apiuser&pass=apipass&stateful=1"
gives me a valid output. If I drop the -k it complains about self-signed certs
Hmm. Yeah, I’ll bet it’s the self-signed cert.
I’ve added the self-signed cert from zoneminder to my openhab box, but still no dice. I can curl without the -k
, but my guess is the JDK is using a different set of CAs to trust than the OS level
Yeah, I think the JDK has it’s own cert store. Unfortunately, that where my knowledge in this area ends.
I’ve had a few run-ins with Java Keystores at work so I have a basic knowledge. A bit of googling threw me on the right track.
OpenHAB is using the keystore bundled with the jre. For me it’s /usr/lib/jvm/zulu-8-amd64/jre/lib/security/cacerts
. On OpenHABian it’s in /usr/lib/jvm/zulu-embedded-8-armhf/jre/lib/security
as detailed here
You can see what’s in the keystore by using keytool -v -list -keystore cacerts
and the password is changeit
by default
Now we know which keystore OpenHAB is relying on we can copy our self-signed certificate from the server it’s hosted on and move it onto the OpenHAB server.
Then the following command imports your crt into the jks:
sudo keytool -trustcacerts -keystore "cacerts" -storepass changeit -importcert -alias zoneminder -file "apache-selfsigned.crt"
I restarted OpenHAB for good measure and now my server is online
Nice!
any guesses as to why the plugin can’t find/update the monitor image channel? I see it trying in the logs, but it keeps returning with HTTP 404 not found
Not sure. Could you get a debug log and pm it to me?
tail -n 90 /var/log/openhab2/openhab.log
2020-09-27 10:13:29.602 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating: id=6, name=PoolHouse-North-LowRES, function=Monitor, enabled=true, status=Connected, alarm=false, state=IDLE, events=(0,0,0,0,0)
2020-09-27 10:13:29.777 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:29.779 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:30.777 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:30.779 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:31.777 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:31.779 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:32.778 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:32.780 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:33.778 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:33.780 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:34.778 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:34.780 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:35.778 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:35.789 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:35.951 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 3: Updating: id=3, name=PoolHouse-North, function=Modect, enabled=true, status=Connected, alarm=false, state=IDLE, events=(1,306,1340,1340,1340)
2020-09-27 10:13:35.953 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 5: Updating: id=5, name=PoolHouse-South, function=Modect, enabled=true, status=Connected, alarm=false, state=IDLE, events=(1,277,1279,1279,1279)
2020-09-27 10:13:35.954 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating: id=6, name=PoolHouse-North-LowRES, function=Monitor, enabled=true, status=Connected, alarm=false, state=IDLE, events=(0,0,0,0,0)
2020-09-27 10:13:36.779 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:36.782 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:37.779 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:37.781 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:38.779 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:38.782 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:39.779 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:39.782 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:40.780 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:40.783 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:41.780 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:41.782 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:42.301 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 3: Updating: id=3, name=PoolHouse-North, function=Modect, enabled=true, status=Connected, alarm=false, state=IDLE, events=(1,306,1340,1340,1340)
2020-09-27 10:13:42.302 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 5: Updating: id=5, name=PoolHouse-South, function=Modect, enabled=true, status=Connected, alarm=false, state=IDLE, events=(1,277,1279,1279,1279)
2020-09-27 10:13:42.303 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating: id=6, name=PoolHouse-North-LowRES, function=Monitor, enabled=true, status=Connected, alarm=false, state=IDLE, events=(0,0,0,0,0)
2020-09-27 10:13:42.781 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:42.783 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:43.781 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:43.783 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:44.782 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:44.784 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:45.782 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:45.786 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:46.782 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:46.785 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:47.783 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:47.785 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:48.654 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 3: Updating: id=3, name=PoolHouse-North, function=Modect, enabled=true, status=Connected, alarm=false, state=IDLE, events=(1,306,1340,1340,1340)
2020-09-27 10:13:48.655 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 5: Updating: id=5, name=PoolHouse-South, function=Modect, enabled=true, status=Connected, alarm=false, state=IDLE, events=(1,277,1279,1279,1279)
2020-09-27 10:13:48.656 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating: id=6, name=PoolHouse-North-LowRES, function=Monitor, enabled=true, status=Connected, alarm=false, state=IDLE, events=(0,0,0,0,0)
2020-09-27 10:13:48.783 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:48.785 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:49.784 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:49.787 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:50.784 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:50.786 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:51.784 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:51.786 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:52.784 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:52.787 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:53.784 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:53.787 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:54.785 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:54.795 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:55.042 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 3: Updating: id=3, name=PoolHouse-North, function=Modect, enabled=true, status=Connected, alarm=true, state=ALERT, events=(2,307,1341,1341,1341)
2020-09-27 10:13:55.043 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 5: Updating: id=5, name=PoolHouse-South, function=Modect, enabled=true, status=Connected, alarm=true, state=ALERT, events=(2,278,1280,1280,1280)
2020-09-27 10:13:55.043 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating: id=6, name=PoolHouse-North-LowRES, function=Monitor, enabled=true, status=Connected, alarm=false, state=IDLE, events=(0,0,0,0,0)
2020-09-27 10:13:55.785 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:55.787 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:56.785 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:56.787 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:57.785 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:57.787 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:58.786 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:58.788 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:13:59.786 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:13:59.788 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:14:00.786 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:14:00.788 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:14:01.421 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 3: Updating: id=3, name=PoolHouse-North, function=Modect, enabled=true, status=Connected, alarm=true, state=ALERT, events=(2,307,1341,1341,1341)
2020-09-27 10:14:01.422 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 5: Updating: id=5, name=PoolHouse-South, function=Modect, enabled=true, status=Connected, alarm=true, state=ALERT, events=(2,278,1280,1280,1280)
2020-09-27 10:14:01.422 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating: id=6, name=PoolHouse-North-LowRES, function=Monitor, enabled=true, status=Connected, alarm=false, state=IDLE, events=(0,0,0,0,0)
2020-09-27 10:14:01.786 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:14:01.788 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:14:02.787 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:14:02.789 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:14:03.787 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:14:03.789 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:14:04.787 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:14:04.790 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 10:14:05.787 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 10:14:05.790 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
It looks like the zoneminder API is actually returning the 404 and not the httpd daemon, because I don’t have any 404 errors in /var/log/httpd/error_log nor do I see the request in /var/log/httpd/access_log
If you enable TRACE mode, you can see the URL being sent by the binding.
A couple other questions…
-
do you have authentication enabled in Zoneminder?
-
are you using http or https?
Authentication I’ve tried both on and off(currently on)
Https is enabled
here is an older log where I had trace enabled.
2020-09-27 09:42:03.082 [TRACE] [.zm.internal.handler.ZmBridgeHandler] - Bridge: Http GET of 'https://localhost.localdomain:443/zm/api/monitors/alarm/id:3/command:status.json?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJab25lTWluZGVyIiwiaWF0IjoxNjAxMjEwNTExLCJleHAiOjE2MDEyMTc3MTEsInVzZXIiOiJvcGVuaGFiIiwidHlwZSI6ImFjY2VzcyJ9.bptfR6BwfErGs3V1CDJpZkRpsF1T_z4qbO-JpeZKUPE' returned '{"status":"0"}' in 107 ms
2020-09-27 09:42:03.100 [TRACE] [.zm.internal.handler.ZmBridgeHandler] - Bridge: Http GET of 'https://localhost.localdomain:443/zm/api/events/index/MonitorId:3.json?sort=StartTime&direction=desc&limit=1&token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJab25lTWluZGVyIiwiaWF0IjoxNjAxMjEwNTExLCJleHAiOjE2MDEyMTc3MTEsInVzZXIiOiJvcGVuaGFiIiwidHlwZSI6ImFjY2VzcyJ9.bptfR6BwfErGs3V1CDJpZkRpsF1T_z4qbO-JpeZKUPE' returned '{"events":[{"Event":{"Id":"4519","MonitorId":"3","StorageId":"3","SecondaryStorageId":"0","Name":"Event- 4519","Cause":"Motion","StartTime":"2020-09-27 08:52:59","EndTime":"2020-09-27 08:53:53","Width":"2592","Height":"1520","Length":"54.32","Frames":"401","AlarmFrames":"1","DefaultVideo":"4519-video.mp4","SaveJPEGs":"0","TotScore":"1","AvgScore":"1","MaxScore":"1","Archived":"0","Videoed":"0","Uploaded":"0","Emailed":"0","Messaged":"0","Executed":"0","Notes":"Motion: PoolHouse Door","StateId":"1","Orientation":"ROTATE_0","DiskSpace":"120356640","Scheme":"Medium","Locked":false,"MaxScoreFrameId":"11135189","FileSystemPath":"\/mnt\/recDisk1\/zm\/3\/2020-09-27\/4519"}}],"pagination":{"page":1,"current":1,"count":1339,"prevPage":false,"nextPage":true,"pageCount":1339,"order":{"Event.StartTime":"desc"},"limit":1,"options":{"limit":1,"order":{"Event.StartTime":"desc"},"sort":"StartTime","direction":"desc"},"paramType":"querystring","queryScope":null}}' in 15 ms
2020-09-27 09:42:03.214 [TRACE] [.zm.internal.handler.ZmBridgeHandler] - Bridge: Http GET of 'https://localhost.localdomain:443/zm/api/monitors/alarm/id:5/command:status.json?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJab25lTWluZGVyIiwiaWF0IjoxNjAxMjEwNTExLCJleHAiOjE2MDEyMTc3MTEsInVzZXIiOiJvcGVuaGFiIiwidHlwZSI6ImFjY2VzcyJ9.bptfR6BwfErGs3V1CDJpZkRpsF1T_z4qbO-JpeZKUPE' returned '{"status":"0"}' in 113 ms
2020-09-27 09:42:03.228 [TRACE] [.zm.internal.handler.ZmBridgeHandler] - Bridge: Http GET of 'https://localhost.localdomain:443/zm/api/events/index/MonitorId:5.json?sort=StartTime&direction=desc&limit=1&token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJab25lTWluZGVyIiwiaWF0IjoxNjAxMjEwNTExLCJleHAiOjE2MDEyMTc3MTEsInVzZXIiOiJvcGVuaGFiIiwidHlwZSI6ImFjY2VzcyJ9.bptfR6BwfErGs3V1CDJpZkRpsF1T_z4qbO-JpeZKUPE' returned '{"events":[{"Event":{"Id":"4518","MonitorId":"5","StorageId":"4","SecondaryStorageId":"0","Name":"Event- 4518","Cause":"Motion","StartTime":"2020-09-27 08:53:01","EndTime":"2020-09-27 08:53:21","Width":"2592","Height":"1520","Length":"20.35","Frames":"401","AlarmFrames":"1","DefaultVideo":"4518-video.mp4","SaveJPEGs":"0","TotScore":"14","AvgScore":"14","MaxScore":"14","Archived":"0","Videoed":"0","Uploaded":"0","Emailed":"0","Messaged":"0","Executed":"0","Notes":"Motion: Pool House Door","StateId":"1","Orientation":"ROTATE_0","DiskSpace":"41202165","Scheme":"Medium","Locked":false,"MaxScoreFrameId":"11134925","FileSystemPath":"\/mnt\/recDisk2\/zm\/5\/2020-09-27\/4518"}}],"pagination":{"page":1,"current":1,"count":1278,"prevPage":false,"nextPage":true,"pageCount":1278,"order":{"Event.StartTime":"desc"},"limit":1,"options":{"limit":1,"order":{"Event.StartTime":"desc"},"sort":"StartTime","direction":"desc"},"paramType":"querystring","queryScope":null}}' in 13 ms
2020-09-27 09:42:03.284 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 09:42:03.293 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 09:42:03.293 [TRACE] [.zm.internal.handler.ZmBridgeHandler] - Bridge: Http GET of 'https://localhost.localdomain:443/zm/api/monitors/alarm/id:6/command:status.json?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJab25lTWluZGVyIiwiaWF0IjoxNjAxMjEwNTExLCJleHAiOjE2MDEyMTc3MTEsInVzZXIiOiJvcGVuaGFiIiwidHlwZSI6ImFjY2VzcyJ9.bptfR6BwfErGs3V1CDJpZkRpsF1T_z4qbO-JpeZKUPE' returned '{"status":"0"}' in 65 ms
2020-09-27 09:42:03.306 [TRACE] [.zm.internal.handler.ZmBridgeHandler] - Bridge: Http GET of 'https://localhost.localdomain:443/zm/api/events/index/MonitorId:6.json?sort=StartTime&direction=desc&limit=1&token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJab25lTWluZGVyIiwiaWF0IjoxNjAxMjEwNTExLCJleHAiOjE2MDEyMTc3MTEsInVzZXIiOiJvcGVuaGFiIiwidHlwZSI6ImFjY2VzcyJ9.bptfR6BwfErGs3V1CDJpZkRpsF1T_z4qbO-JpeZKUPE' returned '{"events":[],"pagination":{"page":1,"current":0,"count":0,"prevPage":false,"nextPage":false,"pageCount":0,"order":{"Event.StartTime":"desc"},"limit":1,"options":{"limit":1,"order":{"Event.StartTime":"desc"},"sort":"StartTime","direction":"desc"},"paramType":"querystring","queryScope":null}}' in 11 ms
2020-09-27 09:42:03.306 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 3: Updating: id=3, name=PoolHouse-North, function=Modect, enabled=true, status=Connected, alarm=false, state=IDLE, events=(1,310,1339,1339,1339)
2020-09-27 09:42:03.307 [TRACE] [zm.internal.handler.ZmMonitorHandler] - Monitor 3: Id:4519, Frames:401, AlarmFrames:1, Length:54.32
2020-09-27 09:42:03.307 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 5: Updating: id=5, name=PoolHouse-South, function=Modect, enabled=true, status=Connected, alarm=false, state=IDLE, events=(2,279,1278,1278,1278)
2020-09-27 09:42:03.308 [TRACE] [zm.internal.handler.ZmMonitorHandler] - Monitor 5: Id:4518, Frames:401, AlarmFrames:1, Length:20.35
2020-09-27 09:42:03.308 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating: id=6, name=PoolHouse-North-LowRES, function=Monitor, enabled=true, status=Connected, alarm=false, state=IDLE, events=(0,0,0,0,0)
2020-09-27 09:42:04.284 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 09:42:04.286 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 09:42:05.285 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 09:42:05.287 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 09:42:06.285 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 09:42:06.287 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 09:42:07.285 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 09:42:07.288 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 09:42:08.286 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 09:42:08.288 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 09:42:09.286 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 09:42:09.288 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
Hmm. I’m not seeing a reason why this wouldn’t work.
In the bridge config, you’ve selected https as the protocol, correct? Did you also set the port number to 443? If so, can you try removing that?
I have tried the binding in both methods updating the port as needed (80 vs 443). I tried clearing it and it provided the same result, log file below.
2020-09-27 20:49:50.347 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 20:49:50.349 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 20:49:51.347 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 20:49:51.349 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 20:49:51.753 [TRACE] [.zm.internal.handler.ZmBridgeHandler] - Bridge: Http GET of 'https://localhost.localdomain/zm/api/monitors.json?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJab25lTWluZGVyIiwiaWF0IjoxNjAxMjUzNzA5LCJleHAiOjE2MDEyNjA5MDksInVzZXIiOiJvcGVuaGFiIiwidHlwZSI6ImFjY2VzcyJ9.EXO8aIBRWv7LxVffXrUDuyHxJnVLv41xQuYNjPUuskM' returned '{"monitors":[{"Monitor":{"Id":"3","Name":"PoolHouse-North","Notes":null,"ServerId":null,"StorageId":"3","Type":"Ffmpeg","Function":"Modect","Enabled":"1","LinkedMonitors":null,"Triggers":"","Device":"\/dev\/video0","Channel":"0","Format":"255","V4LMultiBuffer":null,"V4LCapturesPerFrame":"1","Protocol":"rtsp","Method":"rtpRtsp","Host":"admin:admin@192.168.32.3","Port":"554","SubPath":"","Path":"rtsp:\/\/admin:admin@192.168.32.3\/media\/video1","Options":null,"User":null,"Pass":null,"Width":"2592","Height":"1520","Colours":"4","Palette":"0","Orientation":"ROTATE_0","Deinterlacing":"0","DecoderHWAccelName":null,"DecoderHWAccelDevice":null,"SaveJPEGs":"0","VideoWriter":"2","OutputCodec":null,"OutputContainer":null,"EncoderParameters":"# Lines beginning with # are a comment \r\n# For changing quality, use the crf option\r\n# 1 is best, 51 is worst quality\r\n#crf=23","RecordAudio":"0","RTSPDescribe":false,"Brightness":"-1","Contrast":"-1","Hue":"-1","Colour":"-1","EventPrefix":"Event-","LabelFormat":"%N - %d\/%m\/%y %H:%M:%S","LabelX":"0","LabelY":"0","LabelSize":"2","ImageBufferCount":"206","WarmupCount":"0","PreEventCount":"206","PostEventCount":"206","StreamReplayBuffer":"0","AlarmFrameCount":"1","SectionLength":"600","MinSectionLength":"10","FrameSkip":"0","MotionFrameSkip":"0","AnalysisFPSLimit":null,"AnalysisUpdateDelay":"0","MaxFPS":null,"AlarmMaxFPS":null,"FPSReportInterval":"100","RefBlendPerc":"0","AlarmRefBlendPerc":"12","Controllable":"0","ControlId":null,"ControlDevice":null,"ControlAddress":null,"AutoStopTimeout":null,"TrackMotion":"0","TrackDelay":null,"ReturnLocation":"-1","ReturnDelay":null,"DefaultRate":"100","DefaultScale":"100","DefaultCodec":"auto","SignalCheckPoints":"10","SignalCheckColour":"#0000c0","WebColour":"red","Exif":false,"Sequence":"1","TotalEvents":"1522","TotalEventDiskSpace":"117440765136","HourEvents":"15","HourEventDiskSpace":"842473009","DayEvents":"191","DayEventDiskSpace":"13287354291","WeekEvents":"1522","WeekEventDiskSpace":"117440765136","MonthEvents":"1522","MonthEventDiskSpace":"117440765136","ArchivedEvents":"0","ArchivedEventDiskSpace":null,"ZoneCount":"3","Refresh":null},"Monitor_Status":{"MonitorId":"3","Status":"Connected","CaptureFPS":"10.00","AnalysisFPS":"4.76","CaptureBandwidth":"1929373"}},{"Monitor":{"Id":"5","Name":"PoolHouse-South","Notes":null,"ServerId":null,"StorageId":"4","Type":"Ffmpeg","Function":"Modect","Enabled":"1","LinkedMonitors":null,"Triggers":"","Device":"\/dev\/video0","Channel":"0","Format":"255","V4LMultiBuffer":null,"V4LCapturesPerFrame":"1","Protocol":null,"Method":"rtpRtsp","Host":null,"Port":"80","SubPath":"","Path":"rtsp:\/\/admin:admin@192.168.32.4\/media\/video1","Options":null,"User":null,"Pass":null,"Width":"2592","Height":"1520","Colours":"4","Palette":"0","Orientation":"ROTATE_0","Deinterlacing":"0","DecoderHWAccelName":null,"DecoderHWAccelDevice":null,"SaveJPEGs":"0","VideoWriter":"2","OutputCodec":null,"OutputContainer":null,"EncoderParameters":"# Lines beginning with # are a comment \r\n# For changing quality, use the crf option\r\n# 1 is best, 51 is worst quality\r\n#crf=23","RecordAudio":"0","RTSPDescribe":false,"Brightness":"-1","Contrast":"-1","Hue":"-1","Colour":"-1","EventPrefix":"Event-","LabelFormat":"%N - %d\/%m\/%y %H:%M:%S","LabelX":"0","LabelY":"0","LabelSize":"2","ImageBufferCount":"206","WarmupCount":"0","PreEventCount":"206","PostEventCount":"206","StreamReplayBuffer":"0","AlarmFrameCount":"1","SectionLength":"600","MinSectionLength":"10","FrameSkip":"0","MotionFrameSkip":"0","AnalysisFPSLimit":null,"AnalysisUpdateDelay":"0","MaxFPS":null,"AlarmMaxFPS":null,"FPSReportInterval":"100","RefBlendPerc":"0","AlarmRefBlendPerc":"12","Controllable":"0","ControlId":null,"ControlDevice":null,"ControlAddress":null,"AutoStopTimeout":null,"TrackMotion":"0","TrackDelay":null,"ReturnLocation":"-1","ReturnDelay":null,"DefaultRate":"100","DefaultScale":"100","DefaultCodec":"auto","SignalCheckPoints":"10","SignalCheckColour":"#0000c0","WebColour":"red","Exif":false,"Sequence":"2","TotalEvents":"1496","TotalEventDiskSpace":"97254828204","HourEvents":"12","HourEventDiskSpace":"541131435","DayEvents":"234","DayEventDiskSpace":"14601679496","WeekEvents":"1496","WeekEventDiskSpace":"97254828204","MonthEvents":"1496","MonthEventDiskSpace":"97254828204","ArchivedEvents":"0","ArchivedEventDiskSpace":null,"ZoneCount":"4","Refresh":null},"Monitor_Status":{"MonitorId":"5","Status":"Connected","CaptureFPS":"10.00","AnalysisFPS":"10.00","CaptureBandwidth":"1898410"}},{"Monitor":{"Id":"6","Name":"PoolHouse-North-LowRES","Notes":null,"ServerId":null,"StorageId":"3","Type":"Libvlc","Function":"Monitor","Enabled":"1","LinkedMonitors":"3","Triggers":"","Device":"\/dev\/video0","Channel":"0","Format":"255","V4LMultiBuffer":null,"V4LCapturesPerFrame":"1","Protocol":"rtsp","Method":"rtpRtsp","Host":"admin:admin@192.168.32.3","Port":"554","SubPath":"","Path":"rtsp:\/\/admin:admin@192.168.32.3\/media\/video3","Options":null,"User":null,"Pass":null,"Width":"352","Height":"288","Colours":"4","Palette":"0","Orientation":"ROTATE_0","Deinterlacing":"0","DecoderHWAccelName":null,"DecoderHWAccelDevice":null,"SaveJPEGs":"1","VideoWriter":"0","OutputCodec":null,"OutputContainer":null,"EncoderParameters":"# Lines beginning with # are a comment \r\n# For changing quality, use the crf option\r\n# 1 is best, 51 is worst quality\r\n#crf=23","RecordAudio":"0","RTSPDescribe":false,"Brightness":"-1","Contrast":"-1","Hue":"-1","Colour":"-1","EventPrefix":"Event-","LabelFormat":"%N - %d\/%m\/%y %H:%M:%S","LabelX":"0","LabelY":"0","LabelSize":"1","ImageBufferCount":"200","WarmupCount":"0","PreEventCount":"200","PostEventCount":"200","StreamReplayBuffer":"0","AlarmFrameCount":"1","SectionLength":"600","MinSectionLength":"10","FrameSkip":"0","MotionFrameSkip":"0","AnalysisFPSLimit":null,"AnalysisUpdateDelay":"0","MaxFPS":null,"AlarmMaxFPS":null,"FPSReportInterval":"100","RefBlendPerc":"0","AlarmRefBlendPerc":"12","Controllable":"0","ControlId":null,"ControlDevice":null,"ControlAddress":null,"AutoStopTimeout":null,"TrackMotion":"0","TrackDelay":null,"ReturnLocation":"-1","ReturnDelay":null,"DefaultRate":"100","DefaultScale":"100","DefaultCodec":"auto","SignalCheckPoints":"10","SignalCheckColour":"#0000c0","WebColour":"red","Exif":false,"Sequence":"3","TotalEvents":"0","TotalEventDiskSpace":null,"HourEvents":"0","HourEventDiskSpace":"0","DayEvents":"0","DayEventDiskSpace":"0","WeekEvents":"0","WeekEventDiskSpace":"0","MonthEvents":"0","MonthEventDiskSpace":"0","ArchivedEvents":"0","ArchivedEventDiskSpace":null,"ZoneCount":"0","Refresh":null},"Monitor_Status":{"MonitorId":"6","Status":"Connected","CaptureFPS":"2.00","AnalysisFPS":"0.00","CaptureBandwidth":"0"}},{"Monitor":{"Id":"7","Name":"PoolHouse-South-LowRES","Notes":null,"ServerId":null,"StorageId":"4","Type":"Libvlc","Function":"Monitor","Enabled":"1","LinkedMonitors":"5","Triggers":"","Device":"\/dev\/video0","Channel":"0","Format":"255","V4LMultiBuffer":null,"V4LCapturesPerFrame":"1","Protocol":null,"Method":"rtpRtsp","Host":null,"Port":"80","SubPath":"","Path":"rtsp:\/\/admin:admin@192.168.32.4\/media\/video3","Options":null,"User":null,"Pass":null,"Width":"352","Height":"288","Colours":"4","Palette":"0","Orientation":"ROTATE_0","Deinterlacing":"0","DecoderHWAccelName":null,"DecoderHWAccelDevice":null,"SaveJPEGs":"0","VideoWriter":"0","OutputCodec":null,"OutputContainer":null,"EncoderParameters":"# Lines beginning with # are a comment \r\n# For changing quality, use the crf option\r\n# 1 is best, 51 is worst quality\r\n#crf=23","RecordAudio":"0","RTSPDescribe":false,"Brightness":"-1","Contrast":"-1","Hue":"-1","Colour":"-1","EventPrefix":"Event-","LabelFormat":"%N - %d\/%m\/%y %H:%M:%S","LabelX":"0","LabelY":"0","LabelSize":"1","ImageBufferCount":"200","WarmupCount":"0","PreEventCount":"200","PostEventCount":"200","StreamReplayBuffer":"0","AlarmFrameCount":"1","SectionLength":"600","MinSectionLength":"10","FrameSkip":"0","MotionFrameSkip":"0","AnalysisFPSLimit":null,"AnalysisUpdateDelay":"0","MaxFPS":null,"AlarmMaxFPS":null,"FPSReportInterval":"100","RefBlendPerc":"0","AlarmRefBlendPerc":"12","Controllable":"0","ControlId":null,"ControlDevice":null,"ControlAddress":null,"AutoStopTimeout":null,"TrackMotion":"0","TrackDelay":null,"ReturnLocation":"-1","ReturnDelay":null,"DefaultRate":"100","DefaultScale":"100","DefaultCodec":"auto","SignalCheckPoints":"10","SignalCheckColour":"#0000c0","WebColour":"red","Exif":false,"Sequence":"4","TotalEvents":"0","TotalEventDiskSpace":null,"HourEvents":null,"HourEventDiskSpace":null,"DayEvents":null,"DayEventDiskSpace":null,"WeekEvents":null,"WeekEventDiskSpace":null,"MonthEvents":null,"MonthEventDiskSpace":null,"ArchivedEvents":"0","ArchivedEventDiskSpace":null,"ZoneCount":"0","Refresh":null},"Monitor_Status":{"MonitorId":"7","Status":"Connected","CaptureFPS":"2.00","AnalysisFPS":"0.00","CaptureBandwidth":"0"}}]}' in 14 ms
2020-09-27 20:49:51.860 [TRACE] [.zm.internal.handler.ZmBridgeHandler] - Bridge: Http GET of 'https://localhost.localdomain/zm/api/monitors/alarm/id:3/command:status.json?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJab25lTWluZGVyIiwiaWF0IjoxNjAxMjUzNzA5LCJleHAiOjE2MDEyNjA5MDksInVzZXIiOiJvcGVuaGFiIiwidHlwZSI6ImFjY2VzcyJ9.EXO8aIBRWv7LxVffXrUDuyHxJnVLv41xQuYNjPUuskM' returned '{"status":"0"}' in 106 ms
2020-09-27 20:49:51.880 [TRACE] [.zm.internal.handler.ZmBridgeHandler] - Bridge: Http GET of 'https://localhost.localdomain/zm/api/events/index/MonitorId:3.json?sort=StartTime&direction=desc&limit=1&token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJab25lTWluZGVyIiwiaWF0IjoxNjAxMjUzNzA5LCJleHAiOjE2MDEyNjA5MDksInVzZXIiOiJvcGVuaGFiIiwidHlwZSI6ImFjY2VzcyJ9.EXO8aIBRWv7LxVffXrUDuyHxJnVLv41xQuYNjPUuskM' returned '{"events":[{"Event":{"Id":"4918","MonitorId":"3","StorageId":"3","SecondaryStorageId":"0","Name":"Event- 4918","Cause":"Motion","StartTime":"2020-09-27 20:08:43","EndTime":"2020-09-27 20:09:26","Width":"2592","Height":"1520","Length":"42.99","Frames":"413","AlarmFrames":"1","DefaultVideo":"4918-video.mp4","SaveJPEGs":"0","TotScore":"1","AvgScore":"1","MaxScore":"1","Archived":"0","Videoed":"0","Uploaded":"0","Emailed":"0","Messaged":"0","Executed":"0","Notes":"Motion: PoolHouse Door","StateId":"1","Orientation":"ROTATE_0","DiskSpace":"86151824","Scheme":"Medium","Locked":false,"MaxScoreFrameId":"11337150","FileSystemPath":"\/mnt\/recDisk1\/zm\/3\/2020-09-27\/4918"}}],"pagination":{"page":1,"current":1,"count":1522,"prevPage":false,"nextPage":true,"pageCount":1522,"order":{"Event.StartTime":"desc"},"limit":1,"options":{"limit":1,"order":{"Event.StartTime":"desc"},"sort":"StartTime","direction":"desc"},"paramType":"querystring","queryScope":null}}' in 19 ms
2020-09-27 20:49:51.985 [TRACE] [.zm.internal.handler.ZmBridgeHandler] - Bridge: Http GET of 'https://localhost.localdomain/zm/api/monitors/alarm/id:5/command:status.json?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJab25lTWluZGVyIiwiaWF0IjoxNjAxMjUzNzA5LCJleHAiOjE2MDEyNjA5MDksInVzZXIiOiJvcGVuaGFiIiwidHlwZSI6ImFjY2VzcyJ9.EXO8aIBRWv7LxVffXrUDuyHxJnVLv41xQuYNjPUuskM' returned '{"status":"0"}' in 104 ms
2020-09-27 20:49:52.003 [TRACE] [.zm.internal.handler.ZmBridgeHandler] - Bridge: Http GET of 'https://localhost.localdomain/zm/api/events/index/MonitorId:5.json?sort=StartTime&direction=desc&limit=1&token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJab25lTWluZGVyIiwiaWF0IjoxNjAxMjUzNzA5LCJleHAiOjE2MDEyNjA5MDksInVzZXIiOiJvcGVuaGFiIiwidHlwZSI6ImFjY2VzcyJ9.EXO8aIBRWv7LxVffXrUDuyHxJnVLv41xQuYNjPUuskM' returned '{"events":[{"Event":{"Id":"4920","MonitorId":"5","StorageId":"4","SecondaryStorageId":"0","Name":"Event- 4920","Cause":"Motion","StartTime":"2020-09-27 20:48:00","EndTime":"2020-09-27 20:48:20","Width":"2592","Height":"1520","Length":"20.75","Frames":"415","AlarmFrames":"3","DefaultVideo":"4920-video.mp4","SaveJPEGs":"0","TotScore":"221","AvgScore":"73","MaxScore":"106","Archived":"0","Videoed":"0","Uploaded":"0","Emailed":"0","Messaged":"0","Executed":"0","Notes":"Motion: Close deck, Pool House Door","StateId":"1","Orientation":"ROTATE_0","DiskSpace":"42078061","Scheme":"Medium","Locked":false,"MaxScoreFrameId":"11337976","FileSystemPath":"\/mnt\/recDisk2\/zm\/5\/2020-09-27\/4920"}}],"pagination":{"page":1,"current":1,"count":1496,"prevPage":false,"nextPage":true,"pageCount":1496,"order":{"Event.StartTime":"desc"},"limit":1,"options":{"limit":1,"order":{"Event.StartTime":"desc"},"sort":"StartTime","direction":"desc"},"paramType":"querystring","queryScope":null}}' in 18 ms
2020-09-27 20:49:52.074 [TRACE] [.zm.internal.handler.ZmBridgeHandler] - Bridge: Http GET of 'https://localhost.localdomain/zm/api/monitors/alarm/id:6/command:status.json?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJab25lTWluZGVyIiwiaWF0IjoxNjAxMjUzNzA5LCJleHAiOjE2MDEyNjA5MDksInVzZXIiOiJvcGVuaGFiIiwidHlwZSI6ImFjY2VzcyJ9.EXO8aIBRWv7LxVffXrUDuyHxJnVLv41xQuYNjPUuskM' returned '{"status":"0"}' in 70 ms
2020-09-27 20:49:52.088 [TRACE] [.zm.internal.handler.ZmBridgeHandler] - Bridge: Http GET of 'https://localhost.localdomain/zm/api/events/index/MonitorId:6.json?sort=StartTime&direction=desc&limit=1&token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJab25lTWluZGVyIiwiaWF0IjoxNjAxMjUzNzA5LCJleHAiOjE2MDEyNjA5MDksInVzZXIiOiJvcGVuaGFiIiwidHlwZSI6ImFjY2VzcyJ9.EXO8aIBRWv7LxVffXrUDuyHxJnVLv41xQuYNjPUuskM' returned '{"events":[],"pagination":{"page":1,"current":0,"count":0,"prevPage":false,"nextPage":false,"pageCount":0,"order":{"Event.StartTime":"desc"},"limit":1,"options":{"limit":1,"order":{"Event.StartTime":"desc"},"sort":"StartTime","direction":"desc"},"paramType":"querystring","queryScope":null}}' in 13 ms
2020-09-27 20:49:52.089 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 3: Updating: id=3, name=PoolHouse-North, function=Modect, enabled=true, status=Connected, alarm=false, state=IDLE, events=(15,191,1522,1522,1522)
2020-09-27 20:49:52.089 [TRACE] [zm.internal.handler.ZmMonitorHandler] - Monitor 3: Id:4918, Frames:413, AlarmFrames:1, Length:42.99
2020-09-27 20:49:52.089 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 5: Updating: id=5, name=PoolHouse-South, function=Modect, enabled=true, status=Connected, alarm=false, state=IDLE, events=(12,234,1496,1496,1496)
2020-09-27 20:49:52.089 [TRACE] [zm.internal.handler.ZmMonitorHandler] - Monitor 5: Id:4920, Frames:415, AlarmFrames:3, Length:20.75
2020-09-27 20:49:52.090 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating: id=6, name=PoolHouse-North-LowRES, function=Monitor, enabled=true, status=Connected, alarm=false, state=IDLE, events=(0,0,0,0,0)
2020-09-27 20:49:52.347 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 20:49:52.349 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 20:49:53.347 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 20:49:53.349 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 20:49:54.347 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 20:49:54.349 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 20:49:55.348 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 20:49:55.349 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 20:49:56.348 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 20:49:56.350 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 20:49:57.348 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 20:49:57.350 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 20:49:58.106 [TRACE] [.zm.internal.handler.ZmBridgeHandler] - Bridge: Http GET of 'https://localhost.localdomain/zm/api/monitors.json?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJab25lTWluZGVyIiwiaWF0IjoxNjAxMjUzNzA5LCJleHAiOjE2MDEyNjA5MDksInVzZXIiOiJvcGVuaGFiIiwidHlwZSI6ImFjY2VzcyJ9.EXO8aIBRWv7LxVffXrUDuyHxJnVLv41xQuYNjPUuskM' returned '{"monitors":[{"Monitor":{"Id":"3","Name":"PoolHouse-North","Notes":null,"ServerId":null,"StorageId":"3","Type":"Ffmpeg","Function":"Modect","Enabled":"1","LinkedMonitors":null,"Triggers":"","Device":"\/dev\/video0","Channel":"0","Format":"255","V4LMultiBuffer":null,"V4LCapturesPerFrame":"1","Protocol":"rtsp","Method":"rtpRtsp","Host":"admin:admin@192.168.32.3","Port":"554","SubPath":"","Path":"rtsp:\/\/admin:admin@192.168.32.3\/media\/video1","Options":null,"User":null,"Pass":null,"Width":"2592","Height":"1520","Colours":"4","Palette":"0","Orientation":"ROTATE_0","Deinterlacing":"0","DecoderHWAccelName":null,"DecoderHWAccelDevice":null,"SaveJPEGs":"0","VideoWriter":"2","OutputCodec":null,"OutputContainer":null,"EncoderParameters":"# Lines beginning with # are a comment \r\n# For changing quality, use the crf option\r\n# 1 is best, 51 is worst quality\r\n#crf=23","RecordAudio":"0","RTSPDescribe":false,"Brightness":"-1","Contrast":"-1","Hue":"-1","Colour":"-1","EventPrefix":"Event-","LabelFormat":"%N - %d\/%m\/%y %H:%M:%S","LabelX":"0","LabelY":"0","LabelSize":"2","ImageBufferCount":"206","WarmupCount":"0","PreEventCount":"206","PostEventCount":"206","StreamReplayBuffer":"0","AlarmFrameCount":"1","SectionLength":"600","MinSectionLength":"10","FrameSkip":"0","MotionFrameSkip":"0","AnalysisFPSLimit":null,"AnalysisUpdateDelay":"0","MaxFPS":null,"AlarmMaxFPS":null,"FPSReportInterval":"100","RefBlendPerc":"0","AlarmRefBlendPerc":"12","Controllable":"0","ControlId":null,"ControlDevice":null,"ControlAddress":null,"AutoStopTimeout":null,"TrackMotion":"0","TrackDelay":null,"ReturnLocation":"-1","ReturnDelay":null,"DefaultRate":"100","DefaultScale":"100","DefaultCodec":"auto","SignalCheckPoints":"10","SignalCheckColour":"#0000c0","WebColour":"red","Exif":false,"Sequence":"1","TotalEvents":"1522","TotalEventDiskSpace":"117440765136","HourEvents":"15","HourEventDiskSpace":"842473009","DayEvents":"191","DayEventDiskSpace":"13287354291","WeekEvents":"1522","WeekEventDiskSpace":"117440765136","MonthEvents":"1522","MonthEventDiskSpace":"117440765136","ArchivedEvents":"0","ArchivedEventDiskSpace":null,"ZoneCount":"3","Refresh":null},"Monitor_Status":{"MonitorId":"3","Status":"Connected","CaptureFPS":"10.00","AnalysisFPS":"4.76","CaptureBandwidth":"1931434"}},{"Monitor":{"Id":"5","Name":"PoolHouse-South","Notes":null,"ServerId":null,"StorageId":"4","Type":"Ffmpeg","Function":"Modect","Enabled":"1","LinkedMonitors":null,"Triggers":"","Device":"\/dev\/video0","Channel":"0","Format":"255","V4LMultiBuffer":null,"V4LCapturesPerFrame":"1","Protocol":null,"Method":"rtpRtsp","Host":null,"Port":"80","SubPath":"","Path":"rtsp:\/\/admin:admin@192.168.32.4\/media\/video1","Options":null,"User":null,"Pass":null,"Width":"2592","Height":"1520","Colours":"4","Palette":"0","Orientation":"ROTATE_0","Deinterlacing":"0","DecoderHWAccelName":null,"DecoderHWAccelDevice":null,"SaveJPEGs":"0","VideoWriter":"2","OutputCodec":null,"OutputContainer":null,"EncoderParameters":"# Lines beginning with # are a comment \r\n# For changing quality, use the crf option\r\n# 1 is best, 51 is worst quality\r\n#crf=23","RecordAudio":"0","RTSPDescribe":false,"Brightness":"-1","Contrast":"-1","Hue":"-1","Colour":"-1","EventPrefix":"Event-","LabelFormat":"%N - %d\/%m\/%y %H:%M:%S","LabelX":"0","LabelY":"0","LabelSize":"2","ImageBufferCount":"206","WarmupCount":"0","PreEventCount":"206","PostEventCount":"206","StreamReplayBuffer":"0","AlarmFrameCount":"1","SectionLength":"600","MinSectionLength":"10","FrameSkip":"0","MotionFrameSkip":"0","AnalysisFPSLimit":null,"AnalysisUpdateDelay":"0","MaxFPS":null,"AlarmMaxFPS":null,"FPSReportInterval":"100","RefBlendPerc":"0","AlarmRefBlendPerc":"12","Controllable":"0","ControlId":null,"ControlDevice":null,"ControlAddress":null,"AutoStopTimeout":null,"TrackMotion":"0","TrackDelay":null,"ReturnLocation":"-1","ReturnDelay":null,"DefaultRate":"100","DefaultScale":"100","DefaultCodec":"auto","SignalCheckPoints":"10","SignalCheckColour":"#0000c0","WebColour":"red","Exif":false,"Sequence":"2","TotalEvents":"1496","TotalEventDiskSpace":"97254828204","HourEvents":"10","HourEventDiskSpace":"452015487","DayEvents":"234","DayEventDiskSpace":"14601679496","WeekEvents":"1496","WeekEventDiskSpace":"97254828204","MonthEvents":"1496","MonthEventDiskSpace":"97254828204","ArchivedEvents":"0","ArchivedEventDiskSpace":null,"ZoneCount":"4","Refresh":null},"Monitor_Status":{"MonitorId":"5","Status":"Connected","CaptureFPS":"10.00","AnalysisFPS":"11.11","CaptureBandwidth":"1934630"}},{"Monitor":{"Id":"6","Name":"PoolHouse-North-LowRES","Notes":null,"ServerId":null,"StorageId":"3","Type":"Libvlc","Function":"Monitor","Enabled":"1","LinkedMonitors":"3","Triggers":"","Device":"\/dev\/video0","Channel":"0","Format":"255","V4LMultiBuffer":null,"V4LCapturesPerFrame":"1","Protocol":"rtsp","Method":"rtpRtsp","Host":"admin:admin@192.168.32.3","Port":"554","SubPath":"","Path":"rtsp:\/\/admin:admin@192.168.32.3\/media\/video3","Options":null,"User":null,"Pass":null,"Width":"352","Height":"288","Colours":"4","Palette":"0","Orientation":"ROTATE_0","Deinterlacing":"0","DecoderHWAccelName":null,"DecoderHWAccelDevice":null,"SaveJPEGs":"1","VideoWriter":"0","OutputCodec":null,"OutputContainer":null,"EncoderParameters":"# Lines beginning with # are a comment \r\n# For changing quality, use the crf option\r\n# 1 is best, 51 is worst quality\r\n#crf=23","RecordAudio":"0","RTSPDescribe":false,"Brightness":"-1","Contrast":"-1","Hue":"-1","Colour":"-1","EventPrefix":"Event-","LabelFormat":"%N - %d\/%m\/%y %H:%M:%S","LabelX":"0","LabelY":"0","LabelSize":"1","ImageBufferCount":"200","WarmupCount":"0","PreEventCount":"200","PostEventCount":"200","StreamReplayBuffer":"0","AlarmFrameCount":"1","SectionLength":"600","MinSectionLength":"10","FrameSkip":"0","MotionFrameSkip":"0","AnalysisFPSLimit":null,"AnalysisUpdateDelay":"0","MaxFPS":null,"AlarmMaxFPS":null,"FPSReportInterval":"100","RefBlendPerc":"0","AlarmRefBlendPerc":"12","Controllable":"0","ControlId":null,"ControlDevice":null,"ControlAddress":null,"AutoStopTimeout":null,"TrackMotion":"0","TrackDelay":null,"ReturnLocation":"-1","ReturnDelay":null,"DefaultRate":"100","DefaultScale":"100","DefaultCodec":"auto","SignalCheckPoints":"10","SignalCheckColour":"#0000c0","WebColour":"red","Exif":false,"Sequence":"3","TotalEvents":"0","TotalEventDiskSpace":null,"HourEvents":"0","HourEventDiskSpace":"0","DayEvents":"0","DayEventDiskSpace":"0","WeekEvents":"0","WeekEventDiskSpace":"0","MonthEvents":"0","MonthEventDiskSpace":"0","ArchivedEvents":"0","ArchivedEventDiskSpace":null,"ZoneCount":"0","Refresh":null},"Monitor_Status":{"MonitorId":"6","Status":"Connected","CaptureFPS":"2.00","AnalysisFPS":"0.00","CaptureBandwidth":"0"}},{"Monitor":{"Id":"7","Name":"PoolHouse-South-LowRES","Notes":null,"ServerId":null,"StorageId":"4","Type":"Libvlc","Function":"Monitor","Enabled":"1","LinkedMonitors":"5","Triggers":"","Device":"\/dev\/video0","Channel":"0","Format":"255","V4LMultiBuffer":null,"V4LCapturesPerFrame":"1","Protocol":null,"Method":"rtpRtsp","Host":null,"Port":"80","SubPath":"","Path":"rtsp:\/\/admin:admin@192.168.32.4\/media\/video3","Options":null,"User":null,"Pass":null,"Width":"352","Height":"288","Colours":"4","Palette":"0","Orientation":"ROTATE_0","Deinterlacing":"0","DecoderHWAccelName":null,"DecoderHWAccelDevice":null,"SaveJPEGs":"0","VideoWriter":"0","OutputCodec":null,"OutputContainer":null,"EncoderParameters":"# Lines beginning with # are a comment \r\n# For changing quality, use the crf option\r\n# 1 is best, 51 is worst quality\r\n#crf=23","RecordAudio":"0","RTSPDescribe":false,"Brightness":"-1","Contrast":"-1","Hue":"-1","Colour":"-1","EventPrefix":"Event-","LabelFormat":"%N - %d\/%m\/%y %H:%M:%S","LabelX":"0","LabelY":"0","LabelSize":"1","ImageBufferCount":"200","WarmupCount":"0","PreEventCount":"200","PostEventCount":"200","StreamReplayBuffer":"0","AlarmFrameCount":"1","SectionLength":"600","MinSectionLength":"10","FrameSkip":"0","MotionFrameSkip":"0","AnalysisFPSLimit":null,"AnalysisUpdateDelay":"0","MaxFPS":null,"AlarmMaxFPS":null,"FPSReportInterval":"100","RefBlendPerc":"0","AlarmRefBlendPerc":"12","Controllable":"0","ControlId":null,"ControlDevice":null,"ControlAddress":null,"AutoStopTimeout":null,"TrackMotion":"0","TrackDelay":null,"ReturnLocation":"-1","ReturnDelay":null,"DefaultRate":"100","DefaultScale":"100","DefaultCodec":"auto","SignalCheckPoints":"10","SignalCheckColour":"#0000c0","WebColour":"red","Exif":false,"Sequence":"4","TotalEvents":"0","TotalEventDiskSpace":null,"HourEvents":null,"HourEventDiskSpace":null,"DayEvents":null,"DayEventDiskSpace":null,"WeekEvents":null,"WeekEventDiskSpace":null,"MonthEvents":null,"MonthEventDiskSpace":null,"ArchivedEvents":"0","ArchivedEventDiskSpace":null,"ZoneCount":"0","Refresh":null},"Monitor_Status":{"MonitorId":"7","Status":"Connected","CaptureFPS":"2.00","AnalysisFPS":"0.00","CaptureBandwidth":"0"}}]}' in 15 ms
2020-09-27 20:49:58.219 [TRACE] [.zm.internal.handler.ZmBridgeHandler] - Bridge: Http GET of 'https://localhost.localdomain/zm/api/monitors/alarm/id:3/command:status.json?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJab25lTWluZGVyIiwiaWF0IjoxNjAxMjUzNzA5LCJleHAiOjE2MDEyNjA5MDksInVzZXIiOiJvcGVuaGFiIiwidHlwZSI6ImFjY2VzcyJ9.EXO8aIBRWv7LxVffXrUDuyHxJnVLv41xQuYNjPUuskM' returned '{"status":"0"}' in 111 ms
2020-09-27 20:49:58.236 [TRACE] [.zm.internal.handler.ZmBridgeHandler] - Bridge: Http GET of 'https://localhost.localdomain/zm/api/events/index/MonitorId:3.json?sort=StartTime&direction=desc&limit=1&token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJab25lTWluZGVyIiwiaWF0IjoxNjAxMjUzNzA5LCJleHAiOjE2MDEyNjA5MDksInVzZXIiOiJvcGVuaGFiIiwidHlwZSI6ImFjY2VzcyJ9.EXO8aIBRWv7LxVffXrUDuyHxJnVLv41xQuYNjPUuskM' returned '{"events":[{"Event":{"Id":"4918","MonitorId":"3","StorageId":"3","SecondaryStorageId":"0","Name":"Event- 4918","Cause":"Motion","StartTime":"2020-09-27 20:08:43","EndTime":"2020-09-27 20:09:26","Width":"2592","Height":"1520","Length":"42.99","Frames":"413","AlarmFrames":"1","DefaultVideo":"4918-video.mp4","SaveJPEGs":"0","TotScore":"1","AvgScore":"1","MaxScore":"1","Archived":"0","Videoed":"0","Uploaded":"0","Emailed":"0","Messaged":"0","Executed":"0","Notes":"Motion: PoolHouse Door","StateId":"1","Orientation":"ROTATE_0","DiskSpace":"86151824","Scheme":"Medium","Locked":false,"MaxScoreFrameId":"11337150","FileSystemPath":"\/mnt\/recDisk1\/zm\/3\/2020-09-27\/4918"}}],"pagination":{"page":1,"current":1,"count":1522,"prevPage":false,"nextPage":true,"pageCount":1522,"order":{"Event.StartTime":"desc"},"limit":1,"options":{"limit":1,"order":{"Event.StartTime":"desc"},"sort":"StartTime","direction":"desc"},"paramType":"querystring","queryScope":null}}' in 17 ms
2020-09-27 20:49:58.339 [TRACE] [.zm.internal.handler.ZmBridgeHandler] - Bridge: Http GET of 'https://localhost.localdomain/zm/api/monitors/alarm/id:5/command:status.json?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJab25lTWluZGVyIiwiaWF0IjoxNjAxMjUzNzA5LCJleHAiOjE2MDEyNjA5MDksInVzZXIiOiJvcGVuaGFiIiwidHlwZSI6ImFjY2VzcyJ9.EXO8aIBRWv7LxVffXrUDuyHxJnVLv41xQuYNjPUuskM' returned '{"status":"0"}' in 103 ms
2020-09-27 20:49:58.348 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 20:49:58.357 [TRACE] [.zm.internal.handler.ZmBridgeHandler] - Bridge: Http GET of 'https://localhost.localdomain/zm/api/events/index/MonitorId:5.json?sort=StartTime&direction=desc&limit=1&token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJab25lTWluZGVyIiwiaWF0IjoxNjAxMjUzNzA5LCJleHAiOjE2MDEyNjA5MDksInVzZXIiOiJvcGVuaGFiIiwidHlwZSI6ImFjY2VzcyJ9.EXO8aIBRWv7LxVffXrUDuyHxJnVLv41xQuYNjPUuskM' returned '{"events":[{"Event":{"Id":"4920","MonitorId":"5","StorageId":"4","SecondaryStorageId":"0","Name":"Event- 4920","Cause":"Motion","StartTime":"2020-09-27 20:48:00","EndTime":"2020-09-27 20:48:20","Width":"2592","Height":"1520","Length":"20.75","Frames":"415","AlarmFrames":"3","DefaultVideo":"4920-video.mp4","SaveJPEGs":"0","TotScore":"221","AvgScore":"73","MaxScore":"106","Archived":"0","Videoed":"0","Uploaded":"0","Emailed":"0","Messaged":"0","Executed":"0","Notes":"Motion: Close deck, Pool House Door","StateId":"1","Orientation":"ROTATE_0","DiskSpace":"42078061","Scheme":"Medium","Locked":false,"MaxScoreFrameId":"11337976","FileSystemPath":"\/mnt\/recDisk2\/zm\/5\/2020-09-27\/4920"}}],"pagination":{"page":1,"current":1,"count":1496,"prevPage":false,"nextPage":true,"pageCount":1496,"order":{"Event.StartTime":"desc"},"limit":1,"options":{"limit":1,"order":{"Event.StartTime":"desc"},"sort":"StartTime","direction":"desc"},"paramType":"querystring","queryScope":null}}' in 17 ms
2020-09-27 20:49:58.357 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 20:49:58.425 [TRACE] [.zm.internal.handler.ZmBridgeHandler] - Bridge: Http GET of 'https://localhost.localdomain/zm/api/monitors/alarm/id:6/command:status.json?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJab25lTWluZGVyIiwiaWF0IjoxNjAxMjUzNzA5LCJleHAiOjE2MDEyNjA5MDksInVzZXIiOiJvcGVuaGFiIiwidHlwZSI6ImFjY2VzcyJ9.EXO8aIBRWv7LxVffXrUDuyHxJnVLv41xQuYNjPUuskM' returned '{"status":"0"}' in 67 ms
2020-09-27 20:49:58.439 [TRACE] [.zm.internal.handler.ZmBridgeHandler] - Bridge: Http GET of 'https://localhost.localdomain/zm/api/events/index/MonitorId:6.json?sort=StartTime&direction=desc&limit=1&token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJab25lTWluZGVyIiwiaWF0IjoxNjAxMjUzNzA5LCJleHAiOjE2MDEyNjA5MDksInVzZXIiOiJvcGVuaGFiIiwidHlwZSI6ImFjY2VzcyJ9.EXO8aIBRWv7LxVffXrUDuyHxJnVLv41xQuYNjPUuskM' returned '{"events":[],"pagination":{"page":1,"current":0,"count":0,"prevPage":false,"nextPage":false,"pageCount":0,"order":{"Event.StartTime":"desc"},"limit":1,"options":{"limit":1,"order":{"Event.StartTime":"desc"},"sort":"StartTime","direction":"desc"},"paramType":"querystring","queryScope":null}}' in 13 ms
2020-09-27 20:49:58.439 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 3: Updating: id=3, name=PoolHouse-North, function=Modect, enabled=true, status=Connected, alarm=false, state=IDLE, events=(15,191,1522,1522,1522)
2020-09-27 20:49:58.440 [TRACE] [zm.internal.handler.ZmMonitorHandler] - Monitor 3: Id:4918, Frames:413, AlarmFrames:1, Length:42.99
2020-09-27 20:49:58.440 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 5: Updating: id=5, name=PoolHouse-South, function=Modect, enabled=true, status=Connected, alarm=false, state=IDLE, events=(10,234,1496,1496,1496)
2020-09-27 20:49:58.440 [TRACE] [zm.internal.handler.ZmMonitorHandler] - Monitor 5: Id:4920, Frames:415, AlarmFrames:3, Length:20.75
2020-09-27 20:49:58.440 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating: id=6, name=PoolHouse-North-LowRES, function=Monitor, enabled=true, status=Connected, alarm=false, state=IDLE, events=(0,0,0,0,0)
2020-09-27 20:49:59.349 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 20:49:59.350 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 20:50:00.349 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 20:50:00.351 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 20:50:01.349 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 20:50:01.351 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
2020-09-27 20:50:02.349 [DEBUG] [zm.internal.handler.ZmMonitorHandler] - Monitor 6: Updating image channel
2020-09-27 20:50:02.351 [DEBUG] [.zm.internal.handler.ZmBridgeHandler] - HTTP GET failed: 404, Not Found
One other thing you can look at, assuming you’re running Zoneminder behind an apache web server…
The URL for images is slightly different than the URL for the API. If your apache server isn’t configured for this, it might give you a 404.
The typical API call looks like this.
http://your.host/zm/api/monitors/1.json
While the API to get an image looks like this.
http://your.host/zm/cgi-bin/zms?monitor=1&mode=jpeg
Beyond this, I’m out of ideas.
yields an expected:
{"success":false,"data":{"name":"Not Authenticated","message":"Not Authenticated","url":"\/zm\/api\/monitors\/1.json","exception":{"class":"UnauthorizedException","code":401,"message":"Not Authenticated"}}}
now this is intresting…this produces a 404 error…
here is the http.d/zonminder.conf file which looks somewhat right, but it looks like zm’s default should be /cgi-bin-zm/ ? however when I try
http://your.host/cgi-bin-zm/zms?monitor=1&mode=jpeg
I get 500 internal server error.
#
# ZoneMinder Apache configuration file
# With SSLRequire and HTTPS auto redirect
# Modify this configuration to suit your requirements
#
# Auto Redirect HTTP requests to HTTPS
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^/?(zm)(.*) https://%{SERVER_NAME}/$1$2 [R,L]
# Order matters. This alias must come first.
Alias /zm/cache "/var/cache/zoneminder"
<Directory "/var/cache/zoneminder">
# SSLRequireSSL
Options -Indexes +MultiViews +FollowSymLinks
AllowOverride None
<IfModule mod_authz_core.c>
# Apache 2.4
Require all granted
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order deny,allow
Allow from all
</IfModule>
</Directory>
Alias /zm "/usr/share/zoneminder/www"
<Directory "/usr/share/zoneminder/www">
# explicitly set index.php as the only directoryindex
DirectoryIndex disabled
DirectoryIndex index.php
# SSLRequireSSL
Options -Indexes +MultiViews +FollowSymLinks
AllowOverride None
<IfModule mod_authz_core.c>
# Apache 2.4
Require all granted
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order deny,allow
Allow from all
</IfModule>
</Directory>
ScriptAlias /cgi-bin-zm "/usr/libexec/zoneminder/cgi-bin"
<Directory "/usr/libexec/zoneminder/cgi-bin">
# SSLRequireSSL
AllowOverride None
Options +ExecCGI +FollowSymLinks
<IfModule mod_authz_core.c>
# Apache 2.4
Require all granted
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order deny,allow
Allow from all
</IfModule>
</Directory>
# For better visibility, the following directives have been migrated from the
# default .htaccess files included with the CakePHP project.
# Parameters not set here are inherited from the parent directive above.
<Directory "/usr/share/zoneminder/www/api">
RewriteEngine on
RewriteRule ^$ app/webroot/ [L]
RewriteRule (.*) app/webroot/$1 [L]
RewriteBase /zm/api
</Directory>
<Directory "/usr/share/zoneminder/www/api/app">
RewriteEngine on
RewriteRule ^$ webroot/ [L]
RewriteRule (.*) webroot/$1 [L]
RewriteBase /zm/api
</Directory>
<Directory "/usr/share/zoneminder/www/api/app/webroot">
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
RewriteBase /zm/api
</Directory>=
EDIT
PROGRESS!!!
if I take the token from the openhab log file and append it like so:
http://your.host/cgi-bin-zm/zms?monitor=1&mode=jpeg&token=tokenstring
I get the monitor feed JPEG!!!
Edit 2
for a temporary fix I created a mod_rewrite rule to take the URI that it was looking for and redirect the path.
Hello,
Does this binding work with openHAB 2.4.0-1?
I installed the org.openhab.binding.zm-2.5.9-SNAPSHOT.jar and received this error/warning message:
2020-11-03 15:26:46.385 [WARN ] [org.apache.felix.fileinstall ] - Error while starting bundle: file:/usr/share/openhab2/addons/org.openhab.binding.zm-2.5.9-SNAPSHOT.jar
org.osgi.framework.BundleException: Could not resolve module: org.openhab.binding.zm [272]
Unresolved requirement: Import-Package: org.openhab.core.automation.annotation; resolution:="optional"
Unresolved requirement: Import-Package: com.google.gson; version="[2.8.0,3.0.0)"
at org.eclipse.osgi.container.Module.start(Module.java:444) ~[?:?]
at org.eclipse.osgi.internal.framework.EquinoxBundle.start(EquinoxBundle.java:383) ~[?:?]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundle(DirectoryWatcher.java:1260) [10:org.apache.felix.fileinstall:3.6.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundles(DirectoryWatcher.java:1233) [10:org.apache.felix.fileinstall:3.6.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.doProcess(DirectoryWatcher.java:520) [10:org.apache.felix.fileinstall:3.6.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:365) [10:org.apache.felix.fileinstall:3.6.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:316) [10:org.apache.felix.fileinstall:3.6.4]
Should I update to openHAB 2.5?
Thank you
Unresolved requirement: Import-Package: org.openhab.core.automation.annotation; resolution:="optional"
Unresolved requirement: Import-Package: com.google.gson; version="[2.8.0,3.0.0)"
No, the binding won’t work with 2.4 as some of the core libraries were upgraded between 2.4 and 2.5.
Hi @mhilbush Mark,
Is there a workaround to temporarily use the old 2.4 binding with Zoneminder version 1.34?
I plan to update to OH 2.5 eventually but need sometime to back things up first before I do so.
Meanwhile, I would like to have my existing rules and items to work with Zoneminder 1.34.
Thank you.