@apocaliss92/scrypted-advanced-notifier 3.3.7 → 3.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +10 -0
- package/README.md +63 -21
- package/dist/plugin.zip +0 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
@@ -1,9 +1,19 @@
|
|
1
1
|
<details>
|
2
2
|
<summary>Changelog</summary>
|
3
3
|
|
4
|
+
### 3.4.1
|
5
|
+
|
6
|
+
- Add setting to enable snoozing actions on a notifier (Pushover and homeassistant)
|
7
|
+
|
8
|
+
### 3.4.0
|
9
|
+
|
10
|
+
- Latest snapshots webhook changed, add a Webhook section to the README with all the possible snapshots available
|
11
|
+
- Added POST webhook for detections, set multiple URL and preferred cameras to send images to external services
|
12
|
+
|
4
13
|
### 3.3.7
|
5
14
|
|
6
15
|
- Add setting to disable notifications for a specific camera, on MQTT as well
|
16
|
+
- Implement snooze actions on Homeassistant notifiers
|
7
17
|
|
8
18
|
### 3.3.6
|
9
19
|
|
package/README.md
CHANGED
@@ -3,23 +3,28 @@
|
|
3
3
|
https://github.com/apocaliss92/scrypted-advanced-notifier - For requests and bugs
|
4
4
|
|
5
5
|
# Getting started
|
6
|
+
|
6
7
|
## MQTT
|
8
|
+
|
7
9
|
To enable MQTT exporting:
|
10
|
+
|
8
11
|
- enable `MQTT enabled` in the general -> general tab
|
9
12
|
- setup the authentication parameters in the tab general -> MQTT, check the `Use MQTT plugin credentials` to use the credentials set on the MQTT plugin
|
10
|
-
- Check `Use NVR detections` if you want the images stored on MQTT to be the clipped ones from NVR.
|
13
|
+
- Check `Use NVR detections` if you want the images stored on MQTT to be the clipped ones from NVR.
|
11
14
|
- Check `Audio pressure (dB) detection` if you want a continuous reporting of the audio kept by the camera (dBs)
|
12
15
|
- Set a positive number to `Check objects occupancy in seconds` to regularly check the static objects on the frame
|
13
16
|
- Cameras enabled to the plugin will be automatically enabled to MQTT. Can be disabled in the camera's section Advanced notifier -> Report to MQTT
|
14
17
|
|
15
18
|
The plugin will export to MQTT the following entities:
|
19
|
+
|
16
20
|
- PTZ controls
|
17
21
|
- Restart control
|
22
|
+
- Notifications enabled
|
18
23
|
- Basic detection information (motion, animal, person, vehicle, face, plate, generic object). Same information will be available for every rule associated to a camera
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
24
|
+
- Latest image
|
25
|
+
- Triggered
|
26
|
+
- Last trigger time (disabled by default)
|
27
|
+
- Amount of objects (if enabled)
|
23
28
|
- Online status
|
24
29
|
- Sleeping status
|
25
30
|
- Battery status
|
@@ -27,28 +32,36 @@ The plugin will export to MQTT the following entities:
|
|
27
32
|
- Current dBs (if enabled)
|
28
33
|
|
29
34
|
## Notifications
|
35
|
+
|
30
36
|
The plugin provides customized way to deliver notifications. It is based on rules. Each rule can be activated based on several factors, i.e. active sensors, time ranges, security system status. Any notifier can be used but the only fully supported currently are (can be extended for any other):
|
37
|
+
|
31
38
|
- Homeassistant push notifications
|
32
39
|
- Pushover
|
33
|
-
It's useful to use both notifiers, homeassistant as push rich notification and pushover as low priority just to store all the events
|
34
|
-
Set the following parameters to allow rich notifications
|
35
|
-
|
36
|
-
|
40
|
+
It's useful to use both notifiers, homeassistant as push rich notification and pushover as low priority just to store all the events
|
41
|
+
Set the following parameters on the plugin page to allow rich notifications
|
42
|
+
- `Scrypted token`: Token stored on the scrypted entity on homeassistant
|
43
|
+
- `NVR url`: Url pointing to the NVR instance, should be accessible from outside
|
44
|
+
|
45
|
+
It's also possible to enable snoozing actions enabling the `Add snoozing actions` settings on the notifier page (experimental, it will open a browser tab. Will probably require an automation importing in future to use homeassistant actions)
|
46
|
+
Notifications can be disabled for a specific camera on the camera page, Advanced notifier => Notifier => `Notifications enabled` (available on MQTT as well)
|
37
47
|
|
38
48
|
Rules can be of following types: Detection, Occupancy, Audio, Timelapse. These properties are in common with all, some are hidden until the `Show more configurations` gets activated
|
49
|
+
|
39
50
|
- `Activation type`: when the rule shoul be active
|
40
|
-
|
41
|
-
|
42
|
-
|
51
|
+
- Always
|
52
|
+
- Schedule, defined in a time range during the day
|
53
|
+
- OnActive, will be active only if the camera will be listed in the `"OnActive" devices` selector (plugin => rules => general). This selector can be driven by MQTT with a topic specified in `Active entities topic` under General => MQTT. The message to this topic can contain either a list of device IDs, names or homeassistant entityId (check homeassistant section)
|
43
54
|
- `Notifiers`: notifiers to notify, additional properties will be applied depending on the selected ones
|
44
|
-
|
45
|
-
|
55
|
+
- `Pushover priority` priority to use on pushover
|
56
|
+
- `Homeassistant Actions` actions to show on the homessistant push notifications, of type `{"action":"open_door","title":"Open door","icon":"sfsymbols:door"}`, check homeassistant documentation for further info
|
46
57
|
- `Open sensors` which sensors should be open to enable the rule
|
47
58
|
- `Closed sensors` which sensors should be closed to enable the rule
|
48
|
-
- `Alarm modes` which alarm states should enable the rule. The alarm system device can be defined in the plugin page under Rules => `Security system`
|
59
|
+
- `Alarm modes` which alarm states should enable the rule. The alarm system device can be defined in the plugin page under Rules => `Security system`
|
49
60
|
|
50
61
|
### Detection
|
62
|
+
|
51
63
|
These rules can be created for multiple cameras (on the plugin page) or per single camera. They allow to specify which object detections should trigger a notification:
|
64
|
+
|
52
65
|
- Create a new rule adding a new text in the `Detection rules` selector and hit save. A new tab will appear
|
53
66
|
- Set the activation type
|
54
67
|
- Set the notifiers to notify on the detection
|
@@ -63,7 +76,9 @@ These rules can be created for multiple cameras (on the plugin page) or per sing
|
|
63
76
|
- Check `Enable AI to generate descriptions` if you want to let AI generate a description text out of the image. AI settings are available on the plugin page under the AI, currently supported: GoogleAi, OpenAi, Claude, Groq
|
64
77
|
|
65
78
|
### Occupancy (only on camera)
|
79
|
+
|
66
80
|
These rules will monitor a specific area to mark it as occupied or not
|
81
|
+
|
67
82
|
- Make sure to set an object detector on the plugin page under Rules => `Object Detector`
|
68
83
|
- Create a new rule adding a new text in the `Occupancy rules` selector and hit save. A new tab will appear
|
69
84
|
- Set the activation type
|
@@ -72,8 +87,8 @@ These rules will monitor a specific area to mark it as occupied or not
|
|
72
87
|
- Set the camera zone to monitor, must be an `Observe` type zone defined in the `Object detection` section of the camera
|
73
88
|
- (Optional) set a capture zone to reduce the frame used for the detection, may increase success rate
|
74
89
|
- Set `Zone type`
|
75
|
-
|
76
|
-
|
90
|
+
- `Intersect` if the objects can be considered detected if falling in any portion of the zone
|
91
|
+
- `Contain` if the objects should be completely included in the detection zone
|
77
92
|
- Set a `Score threshold`, in case of static detections should be pretty low (default 0.3)
|
78
93
|
- Set `Occupancy confirmation`, it's a confirmation period in seconds to avoid false results. Set it depending on your specific case
|
79
94
|
- Set `Force update in seconds` to force an occupancy check if no detection happens. Any detection running on the camera will anyways check all the occupancy rules
|
@@ -81,19 +96,23 @@ These rules will monitor a specific area to mark it as occupied or not
|
|
81
96
|
- Set a text in both `Zone occupied text` and `Zone not occupied text` for the notification texts
|
82
97
|
|
83
98
|
### Timelapse (only on camera)
|
99
|
+
|
84
100
|
Define a timeframe, the plugin will collect frames from the camera and generate a clip out of it at the end of the defined range. All the generated timelapses will be available as videoclip on the NVR app, only if the `Enable Camera` on the plugin page will be enabled.
|
101
|
+
|
85
102
|
- Create a new rule adding a new text in the `Timelapse rules` selector and hit save. A new tab will appear
|
86
103
|
- Define the week days and the start/end times. i.e. start at 11pm and end at 8am
|
87
104
|
- Set the notifiers to notify the generated clip
|
88
|
-
|
105
|
+
- If an homeassistant notifier is used and the final clip will be <50bm, the clip will be shown as preview of the push notification!
|
89
106
|
- Set a `Notification text` for the notification message
|
90
107
|
- Set a `Frames acquisition delay`, a frame will be generated according to this. Each non-motion detection will always add a frame
|
91
|
-
|
108
|
+
- In future will be possible to add frames based on specific detection classes and even small clips
|
92
109
|
- Set a `Timelapse framerate`, this will depend on the timespan you will chose and how long you want the final clip to be
|
93
110
|
- Use the `Generate now` button to reuse the frames collected the previous session. They will be stored until the following session starts
|
94
111
|
|
95
112
|
### Audio (only on camera)
|
113
|
+
|
96
114
|
Audio rules will monitor the audio received by the camera
|
115
|
+
|
97
116
|
- Create a new rule adding a new text in the `Audio rules` selector and hit save. A new tab will appear
|
98
117
|
- Set the notifiers to notify the event
|
99
118
|
- Set a `Notification text` for the notification message
|
@@ -101,11 +120,14 @@ Audio rules will monitor the audio received by the camera
|
|
101
120
|
- Set `Duration in seconds` if the audio should last at least these seconds to trigger a notification. Leave blank to notify right away
|
102
121
|
|
103
122
|
## Stored images
|
123
|
+
|
104
124
|
The plugin will store on filesystem, if configured, images for every basic detection and rule. Set the following configurations on the plugin page under the Storage tab
|
105
|
-
|
106
|
-
|
125
|
+
|
126
|
+
- `Storage path`: If set, the images used to populate MQTT topic will be also stored on the drive path
|
127
|
+
- `Images name`: The name pattern to use to generate image files. The placeholders ${name} and ${timestamp} will be available. Using only ${name} will ensure the image to be overriden on every detection instead of saving one additional copy
|
107
128
|
|
108
129
|
## Additional camera settings
|
130
|
+
|
109
131
|
- `Minimum snapshot acquisition delay`, minimum seconds to wait until a new snapshot can be taken from a camera, keep it around 5 seconds for cameras with weak hardware
|
110
132
|
- `Off motion duration`, amount of seconds to consider motion as ended for rules/detections affecting the camera. It will override the motion off events
|
111
133
|
- `Snapshot from Decoder`, take snapshots from the camera decoded stream, use it only if you have many timeout errors and cannot rely on updated images on MQTT, this is CPU intensive
|
@@ -113,4 +135,24 @@ The plugin will store on filesystem, if configured, images for every basic detec
|
|
113
135
|
- Set `Minimum MQTT publish delay` to debounce the image update on MQTT for this basic detections
|
114
136
|
|
115
137
|
## Homeassistant
|
138
|
+
|
116
139
|
It's possbile to configure an homeassistant connection (or utilize the one configured in the `Homeassistant` plugin) to fetch configured entity IDs which are identified by one of the `Entity regex patterns`. The entities fetched will be available as selection on each camera/sensor to alias them with an homeassistant entity. This helps the `OnActive` rules to send entityIds instead of Scrypted identifiers.
|
140
|
+
|
141
|
+
## Webhooks
|
142
|
+
|
143
|
+
Some basic webhooks are available
|
144
|
+
|
145
|
+
# Latest snapshot
|
146
|
+
|
147
|
+
Will provide the latest registered image for each type, on the camera settings will be provided the basic url, {IMAGE_NAME} should be replaced with one of the following:
|
148
|
+
|
149
|
+
- `object-detection-{ motion | any_object | animal | person | vehicle }` (full frame images)
|
150
|
+
- `object-detection-{ motion | any_object | animal | person | vehicle }-NVR` (cropped images from NVR)
|
151
|
+
- `object-detection-face-{ known person label }` (full frame images)
|
152
|
+
- `object-detection-face-{ known person label }-NVR` (cropped images from NVR)
|
153
|
+
- `rule-{ rule name }`
|
154
|
+
|
155
|
+
# POST detection images
|
156
|
+
|
157
|
+
Provide multiple urls, for each detection, POST a b64 image with some additional metadata. Filter
|
158
|
+
on some classes and define a minimum delay.
|
package/dist/plugin.zip
CHANGED
Binary file
|
package/package.json
CHANGED