fwestenberg / reolink_dev

Home Assistant Reolink addon
MIT License
550 stars 102 forks source link

Person & Vehicle Detection only working on Channel 1 #379

Open youngc01 opened 2 years ago

youngc01 commented 2 years ago

Person & Vehicle Detection only working on Channel 1. I have tried resetting cameras and NVR with no success. All motion sensors are marked as clear on the other channels even when there is motion.

Cameras: RLC-820A Firmware: v3.0.0.494 NVR: RLN8-410 Firmware: v3.0.0.0.148

cpainchaud commented 2 years ago

Hi,

Was it working before or is it a new behavior?

youngc01 commented 2 years ago

Hi,

This is my first time implementing this plugin. I have never been able to get it to work. I have been messing around with for the last 3 days trying to fix it. I reset all cameras and NVR. I also tried to downgrading the firmware and that did not work. When I took a second look, regular motion detection is also not working on cameras that are not channel 1. Do you have any ideas on what to do to fix it?

Thanks!

cpainchaud commented 2 years ago

@ptyers couldn't that be linked to that change you were you check it's NVR and the -1 thing ?

ptyers commented 2 years ago

I dont believe so. I went nowhere near the sensor module. The check only should affect creation of toggles and I couldnot see any interaction with the binary motion sensor detection. On my system they (motion sensors) are created for both channels BUT because I run https internally they are not operational on chans 1 or 2. In fact if he is running NVR there should have been no change at all. The if statement proves TRUE if is_nvr() is TRUE

atryan81 commented 2 years ago

new to this GitHub issues stuff so please tell me if I should not be adding this info? All motion sensors are working fine for me on latest v0.42.

Cameras: RLC-810A Firmware: v3.0.0.494 NVR: RLN8-410 Firmware: v3.0.0.0.148

ptyers commented 2 years ago

All input is useful. Particularly when new facilities are being Introduced.

Youngc01 can you provide more info please

youngc01 commented 2 years ago

@ptyers I have the cameras hooked directly into the NVR

I am currently using 3 cameras

Using HTTPS(port 443)

Cameras are set on h264, ext, rtmp

The motion sensor delay is also not working when using vehicle/person detection. I get motion alerts on channel 1, that are seconds apart, not 60 seconds.

ptyers commented 2 years ago

@atryan81 whzt settings are you using?

I am not a guru re the webhooks for motion detection but isn't there a problem if you run SSL locally? Are the motion sensors driven by a getMdstate or by the webhooks? Someone other than I will need to confirm this.

atryan81 commented 2 years ago

@ptyers Cameras arehooked directly into the NVR i am currently using 2 camera (but can test with another 2 i have not installed yet if needed one of new ones is RLC-820A) using HTTPS(port 443) rtmp, ext, h265 (h265 is reqired for the 4k cameras i believe)

my Home Assistant is accessable via both HTTP (local IP) and HTTPS domain name) on local network (pretty sure the webhook will only respond over HTTP not HTTPS)

atryan81 commented 2 years ago

@ptyers The motion detection is webhooks and requires your home assistant to be accessable via local HTTP not HTTPS.

rico0260 commented 2 years ago

Small inform that I have never read: I noticed that the numbering of the ethernet port behind the NVR does not correspond to the port in the application !!!!

priank commented 2 years ago

Just wanted to drop a message saying that I am experiencing same issue as OP.

I have same hardware/firmware as OP (8x cameras) my HA is accessible via HTTP and HTTPS (via ngnix) I have tried adding the cameras using both HTTPS and HTTP addresses (port 443 and 80 respectively) OVNIF is enabled in the NVR

First channel provides alerts when motion is detected, other channels have been clear since i set it up - even when the reolink app sends me a notification

not sure what else to try at this point. at the moment, i am just relying on the reolink app. If anyone has any ideas im all ears

ibielopolskyi commented 2 years ago

Same here. Additionally, I double checked by directly subscribing to a separate webhook via reolink api that reolink_dev uses.

One camera instantly receives the notifications without any issues. Second one does not report anything at all.

Test script:

import logging

logging.basicConfig(level=logging.DEBUG)

import asyncio
import sys
from flask import Flask, request, abort
from reolink.subscription_manager import Manager
import traceback
from reolink.subscription_manager import _LOGGER
_LOGGER.setLevel(logging.DEBUG)
app = Flask(__name__)
manager = Manager('10.0.0.52', '8000', 'admin', '***************')
loop = asyncio.get_event_loop()

async def subscriber():
    await manager.unsubscribe()
    await manager.subscribe('http://10.0.0.2:5001/webhook')

@app.route('/webhook', methods=['POST', 'GET'])
def webhook():
    print(request.get_data())
    return '',200

def main():
    loop.run_until_complete(subscriber())
    app.run(host='10.0.0.2', port='5001', debug=True)

if __name__ == '__main__':

    try:
        main()
    except:
        traceback.print_exc()
        loop.run_until_complete(manager.unsubscribe())
priank commented 2 years ago

thanks for the script ibielopolskyi-godaddy - I wasnt sure how to test this outside the Reolink_dev addon. I will have a go with this script. But it does sound like the issue is with the Reolink NVR not sending the alerts. I think will raise this issue with Reolink as well after I have had the chance to test your code.

priank commented 2 years ago

as an update to this, the motion detection is still patchy, but now i get triggers from about 5/8 of my cameras. As the triggers work with the important cams, I will keep using the solution.

ibielopolskyi commented 2 years ago

Did you update the NVR or something?

Because in the meantime I had to re-wire my cameras to be on the LAN instead of being connected to the NVR. I'd rather have them in their own network, but I can't because of the bug in here.

priank commented 2 years ago

no, i had already setup notifications for the cameras that were not working before. One day i started to receive notifications for two three other cameras as well. Having said that, the only reliable channel is still the first camera, sometimes the other cameras work and sometimes it doesnt. I am mostly using the reolink app nowadays.

priank commented 2 years ago

consider raising the issues with the webhooks directly with reolink as it may be the case that the nvr may not be very robust in the implementation of the notification outside the app

ibielopolskyi commented 2 years ago

consider raising the issues with the webhooks directly with reolink as it may be the case that the nvr may not be very robust in the implementation of the notification outside the app

That makes me wonder what is the difference between how the app does it vs the API. Have anyone took a look in that angle? Because app seems to work flawlessly, but it should be implementing the same webhook functionality. Maybe the issue is that too many webhooks are created? Just guessing here.