Releases: tropicoo/hikvision-camera-bot
Release 2.0
Release info
Version: 2.0
Release date: February 17, 2025
Important
Added Timelapse camera config section. This is a breaking change.
If you have a previous configuration file, you need to update it.
Check updated template in the config_template.json file.
New features
Timelapse camera feature.
Each camera can be configured to take a picture at a specific interval,
save the image to a specific folder and create a timelapse video.
Camera supports multiple timelapse configurations if needed.
{
"timelapse": [
{
"enabled": true, # Enable timelapse feature (true/false)
"name": "Kitchen view", # Timelapse name
"start_hour": 7, # Start hour (24h format)
"end_hour": 18, # End hour (24h format)
"snapshot_period": 10, # Camera snapshot period in seconds
"video_length": 120, # Final timelapse video length in seconds
"video_framerate": 30, # Timelapse video framerate
"channel": 102, # Camera channel to take snapshots from
"timezone": "Europe/Kyiv", # Server timezone
"tmp_storage": "/data/timelapses", # Temporary storage for snapshots
"storage": "/data/timelapses", # Final storage for timelapse video and optionally for snapshots
"keep_stills": true, # Keep snapshots after timelapse video creation (true/false)
"ffmpeg_log_level": "error", # FFMPEG log level
"image_quality": 30, # FFMPEG video codec image quality (-crf)
"video_codec": "libx264", # FFMPEG video codec (libx264, libx265, vp9)
"pix_fmt": "yuv420p", # FFMPEG pixel format (yuv420p, yuv422p, yuv444p)
"custom_ffmpeg_args": "-preset ultrafast", # Custom FFMPEG arguments
"nice_value": 19, # FFMPEG process nice value (integer or null to disable
"threads": 1 # FFMPEG process threads (integer or null to disable)
}
]
}Misc
Use pydantic-settings for .env file validation.
Release 1.9
Release 1.9
Release 1.8
Release info
Version: 1.8
Release date: May 6, 2023
Important
- Add a new config variable
nvrtoconfig.jsonfor each of your cameras. - This update can break things. Open a new issue if you find something.
New features
-
Added new config variable
nvrfor your camera. Checkconfig-template.json. It's
for a case when your camera(s) is behind the NVR host so detecting alert (alarm)
event types requires the available NVR channel name for the camera since the NVR
Alert Stream will produce events for all cameras, and it needs to be properly parsed."nvr": { "is_behind": false, "channel_name": "" }
Misc
N/A
Release 1.7
Release info
Version: 1.7
Release date: October 19, 2022
Important
- Add a new config variable to
config.jsonfor each of your cameras.
New features
- Added new authentication config variable
typeinauthsection.
Could be one ofbasic,digest, ordigest_cached. Default isdigest_cached.
"auth": {
"user": "dummy-user",
"password": "dummy-password",
"type": "digest_cached"
}Misc
N/A
Release 1.6
Release info
Version: 1.6
Release date: October 18, 2022
Important
- Full reconfiguration is required (or manual editing of your current
config.jsonconfig file)
New features
- Added new boolean config variable
send_textto control sending an alert text message for every type of detection
...
"alert": {
"motion_detection": {
...
"send_text": true
},
"line_crossing_detection": {
...
"send_text": true
},
"intrusion_detection": {
...
"send_text": true
}
},
...- Added a new config section
pictureto control which channel is used for taking pictures. Useful when several cameras are accessible through one IP address or host.
...
"picture": {
"on_demand": {
"channel": 101
},
"on_alert": {
"channel": 101
}
},
...Misc
N/A
Release 1.5.2
Release info
Version: 1.5.2
Release date: October 17, 2022
Important
- Added required
portconfig variable for camera API section. Defaults to80in theconfig-template.jsontemplate. Just add it to your existing config and you're good.
...
"camera_list": {
"cam_1": {
"api": {
"host": "http://192.168.1.1",
"port": 80,
...New features
N/A
Misc
N/A
Release 1.5
Release info
Version: 1.5
Release date: September 22, 2022
Important
- This is bugfix and maintenance release (fixes bug #48 with new ffmpeg 5).
New features
N/A
Misc
- Bumped packages in
requirements.txtto their latest versions. - Added dependabot for scanning for the latest package versions.
- SRS dev team now provides Docker images for all platforms, no need to compile.
- Bot and SRS configs are now mounted in volumes.
Release 1.4
Release info
Version: 1.4
Release date: April 30, 2022
Important
- Bot needs full re-configuration (again) due to changed config templates with new items.
Back up your config files and perform a clean setup.
New features
- Introduced three new config variables
chat_users,alert_usersandstartup_message_usersto replaceallowed_user_idsfor more granular access setup:chat_users- user/group IDs which can interact with bot. Cannot be empty.alert_users- user/channel/group IDs where alerts will be sent if turned on. Cannot be empty.startup_message_users- user/channel/group IDs where startup message is sent. Can be empty to remain silent.
- Introduced new per camera config variable
groupand command/groupsto group cameras. - Added new commands
/version,/ver,/vto check the latest bot version.
Misc
- Bumped Python version from 3.9 to 3.10 in Dockerfile.
- If a text message from the bot exceeds max size it will be split and sent in smaller chunks.
- SRS re-stream is now disabled by default in the config template.
Release 1.3
Release info in releases/release_1.3.md.