Home Assistant integration to send ptz commands to ICSee/XMEye/DVR-IP/NetSurveillance/Sofia cameras.
It can also set presets and recall them and synchronize the camera clock.
HACS
> Integrations
> ⋮
> Custom Repositories
Repository
: paste the url of this repoCategory
: IntegrationAdd
Custom Repositories
modal+ EXPLORE & DOWNLOAD REPOSITORIES
icsee
Download
icsee_ptz
folder inside custom_components
of this repo to /config/custom_components
in your Home Assistant instanceGo to the integration and add an entry for each of your cameras
This integration exposes services for PTZ and a motion alarm entity.
First make sure to enable and configure motion alarms in the standard camera application (e.g ICSee or XMEye). Then, you can use the provided entity in your automations.
icsee_ptz.move: move, zoom and set/goto preseets.
Requires:
alias: Notify camera motion alarm
description: ""
trigger:
- platform: state
entity_id:
- binary_sensor.garden_motion_alarm
to: "on"
condition: []
action:
- service: notify.mobile_app_pixel_7
data:
message: TTS
data:
tts_text: Attention: motion detected in garden
ttl: 0
priority: high
mode: single
# lovelace card
type: custom:webrtc-camera
url: garden_dvrip
ui: true
shortcuts:
services:
- name: Sync
icon: mdi:clock-check
service: icsee_ptz.synchronize_clock
service_data:
entity_id: binary_sensor.garten_motion_alarm
- name: Force frame
icon: mdi:play
service: icsee_ptz.force_frame
service_data:
entity_id: binary_sensor.garten_motion_alarm
ptz:
service: icsee_ptz.move
data_home:
entity_id: binary_sensor.garten_motion_alarm
cmd: GotoPreset
preset: 0
data_long_home:
entity_id: binary_sensor.garten_motion_alarm
cmd: SetPreset
preset: 0
data_start_left:
entity_id: binary_sensor.garten_motion_alarm
cmd: DirectionLeft
data_end_left:
entity_id: binary_sensor.garten_motion_alarm
cmd: Stop
data_start_right:
entity_id: binary_sensor.garten_motion_alarm
cmd: DirectionRight
data_end_right:
entity_id: binary_sensor.garten_motion_alarm
cmd: Stop
data_start_down:
entity_id: binary_sensor.garten_motion_alarm
cmd: DirectionDown
data_end_down:
entity_id: binary_sensor.garten_motion_alarm
cmd: Stop
data_start_up:
entity_id: binary_sensor.garten_motion_alarm
cmd: DirectionUp
data_end_up:
entity_id: binary_sensor.garten_motion_alarm
cmd: Stop
# go2rtc.yaml
streams:
garden_dvrip:
- dvrip://admin:my_password@192.168.178.104:34567
garden_dvrip_mini:
- dvrip://admin:my_password@192.168.178.104:34567?channel=0&subtype=1
garden: # try this if the video is choppy or audio is out of synch
- ffmpeg:garden_dvrip#audio=copy#async#video=copy#async
[!NOTE]
There are some disabled entities, But you can enable them on
Settings -> Devices & Services -> ICSee -> Configure -> Enable experimental entities
Entity | Description | Enabled by default |
---|---|---|
switch.*_blinddetect_enabled |
No | |
select.*_white_light |
You can control camera's lights. | No |
switch.*_humandetection_enabled |
No | |
switch.*_lossdetect_enabled |
No | |
binary_sensor.*_varanda_motion_alarm |
It will be trigged when someone pass on front of camera. | Yes |
switch.*_motiondetect_enabled |
No |
With https://xmeye.org/xmeye-for-pc/ you can configure the fps and encoding params of ICSee cameras.
in device config
/ encode config
select:
in device config
/ camera param
select: