[APP][Pro] Support for ONVIF compatible cameras (Release 2.0.41)

One small gamechanger idea:

In the settings after integration this field is not editable. Can you make this field editable? (for changing url to https or portchange or whatever.).

image

You can override it in the User URL field below it. If that field is empty it uses the data received from the camera, else it will use the user input.

1 Like

It doesn’t work properly with my Anke Cams (HikVision Label), if I want to send a snapshot, it takes forever or the app always crashes.

c0112a76-d8cc-4dba-b6b9-e9dddefdd02b

Hi Adrian,

The onvif experimental versions work for my mobotix camera’s. Unfortunately the official version of the app doesn’t.

For some reason when refreshing the snapshot or movement, the snapshot or movement image which is send via a flow to my telegram account after refresh is still tje old image when the onvif app was first activated but not the latest.

I send you a log. Any idea what is going wrong?

The log shows everything is working as expected.
Does the image in the Homey device update OK?
Could you show the flow you are using?

The log has lots of errors:
2023-11-04T07:12:27.643Z [log] [MyApp] SnapShot error (Cam Garten): request to http://192.168.178.89/onvif-http/snapshot?Profile_1 failed, reason: socket hang up

socket hang up means the camera is not responding to the request. could you try putting that URL into a web browser to see if you see an image?

Please see the flow in Dutch language.
The snapshot updates fine when looking im the onvif app. It’s when i try to send the snapshot via telegram, then it is sending the first old snapshot. Is there a way to check what snapshot image homey is seeing/storing.

I can’t see what triggers the Flow, but I see you then update the snapshot. That takes a bit of time so the following commands probably run before it has fetched it
There are two solutions:

  1. Put the commands to send the snapshot in another Flow that is triggered by the snapshot is ready card.
  2. Use the condition card “Motion snapshot is ready within” card as that will block the Flow until either the snapshot is ready or times out.

With the URL directly from the camera, I can see the screenshot without any problems

That is strange. Have you tried rebooting Homey to see if that helps?
The other issue I see in the log is a lot of storage failed events coming from the camera,. However, the camera hasn’t reported that it supports those events, so the alarm capabilities wasn’t created. That appears to be the cause of the crash as it makes the app uses too much CPU time.
I have made a fix that I will publish that partially overcomes that by adding the capability on the fly so it no longer reports an error but if the events keep hitting the app at the current rate it might still crash it.

Hello @Adrian_Rockall,

Any news ?

Best,
JĂ©rĂŽme

Well, in fact I just test again and
it works! I dont know if it’s related to your last update or not


Best,
JĂ©rĂŽme

1 Like

Hi everyone,
I am trying to get the sabotage event triggered. What can I do?

I have a reolink poe doorbell and when I open it and/or remove the lan cable it does not fire any event. Motion and Visitor events are send.

Does anybody have an idea how to fix this?

AFAIK the doorbell doesn’t have any tamper detection.

Also, how would the camera be able to fire an event when you remote the LAN cable, which also provides it with power?

Thanks for the reply. I was hoping that it somehow detects the opening of the case.

Doesn’t look like it, my WiFi Doorbell doesn’t emit anything when I pop it from the holder.


Hi, want to start out with a thanks for the app.
Have recently added a reolink NVR and two CX410 which works well with the app.

Question; sometimes the ‘person’ card disappears for one of the cameras, is there some logic to this?
Also, would it be possible to have a smart detection card like the ubiquiti system I have?
This would make for a ‘cleaner’ flow in my case.


Some of the capabilities are added on the fly base on the information that is received. I will take a look to see why it disappears.

What do you mean by a smart detection card?

Thanks, tried restarting the apps and homey but that does not cure it.

It has disappeared before but after a while it came back in the list. just strange that it happens for the one camera, and there is 2 identical ones running on a nvr (channel 1 and 2).

The ubiquiti app has a card for smart detection, if it is a vehicle or person identified by either of the cameras (not including motion alarms which I don’t want, and ubiquiti does not support pet detection sadly.) it will activate.
If the onvif app had a similiar card one could add events like vehicle/pet/person/visitor with one card for several cameras?

So the person alarm is removed if the camera does not report it supports that option:

        if (notificationTypes.indexOf('PERSON') >= 0)
        {
            if (!this.hasCapability('alarm_person'))
            {
                this.addCapability('alarm_person')
                    .then(() =>
                    {
                        this.setCapabilityValue('alarm_person', false).catch(this.error);
                    })
                    .catch(this.error);
            }
        }
        else
        {
            if (this.hasCapability('alarm_person'))
            {
                this.removeCapability('alarm_person').catch(this.error);
            }
        }

I will look into adding an app based trigger for motion that has a tag for the type of motion that was detected.