* Added Logi Circle platform, camera and sensor * Integrated with Logo Circle API’s feature detection to exclude sensors not supported by device. Added services for recording livestream and taking a snapshot from the livestream. * Migrated livestream snapshot and recording functionality out of home assistant components and into the logi circle API wrapper. Added services.yaml entries for logi services. * Added new Logi sensor types, updated to latest version of `logi_circle` and tidy up in preparation for pull request. - Renamed `logi_set_mode` to `logi_set_config`. - Live stream recording and snapshot methods now respect whitelisted path configuration. - Added `streaming_mode` and `speaker_volume` sensors. - Moved model-specific turn on/off logic to `logi_circle` library. * Renamed `logi` component domain to `logi_circle`. * Updates based on PR feedback * Added timeout of 15s to logi_circle initial setup requests (login and grabbing cameras). * Added unique ID (uses MAC address for camera platform, MAC address + sensor type for sensor platform). * Added battery level and battery charging attributes to camera. * Removed static attributes from device_state_attributes. * Replaced STATE_UNKNOWN with None, replaced ‘on’ & ‘off’ with STATE_ON and STATE_OFF. * Removed redundant SCAN_INTERVAL in sensor, removed redundant hass param from async_setup_platform in camera and sensor. * Style tweaks. * Replaced `asyncio.wait_for` with `async_timeout` to be consistent with other components.
102 lines
3.1 KiB
YAML
102 lines
3.1 KiB
YAML
# Describes the format for available camera services
|
|
|
|
turn_off:
|
|
description: Turn off camera.
|
|
fields:
|
|
entity_id:
|
|
description: Entity id.
|
|
example: 'camera.living_room'
|
|
|
|
turn_on:
|
|
description: Turn on camera.
|
|
fields:
|
|
entity_id:
|
|
description: Entity id.
|
|
example: 'camera.living_room'
|
|
|
|
enable_motion_detection:
|
|
description: Enable the motion detection in a camera.
|
|
fields:
|
|
entity_id:
|
|
description: Name(s) of entities to enable motion detection.
|
|
example: 'camera.living_room_camera'
|
|
|
|
disable_motion_detection:
|
|
description: Disable the motion detection in a camera.
|
|
fields:
|
|
entity_id:
|
|
description: Name(s) of entities to disable motion detection.
|
|
example: 'camera.living_room_camera'
|
|
|
|
snapshot:
|
|
description: Take a snapshot from a camera.
|
|
fields:
|
|
entity_id:
|
|
description: Name(s) of entities to create snapshots from.
|
|
example: 'camera.living_room_camera'
|
|
filename:
|
|
description: Template of a Filename. Variable is entity_id.
|
|
example: '/tmp/snapshot_{{ entity_id }}'
|
|
|
|
local_file_update_file_path:
|
|
description: Update the file_path for a local_file camera.
|
|
fields:
|
|
entity_id:
|
|
description: Name(s) of entities to update.
|
|
example: 'camera.local_file'
|
|
file_path:
|
|
description: Path to the new image file.
|
|
example: '/images/newimage.jpg'
|
|
|
|
onvif_ptz:
|
|
description: Pan/Tilt/Zoom service for ONVIF camera.
|
|
fields:
|
|
entity_id:
|
|
description: Name(s) of entities to pan, tilt or zoom.
|
|
example: 'camera.living_room_camera'
|
|
pan:
|
|
description: "Direction of pan. Allowed values: LEFT, RIGHT."
|
|
example: 'LEFT'
|
|
tilt:
|
|
description: "Direction of tilt. Allowed values: DOWN, UP."
|
|
example: 'DOWN'
|
|
zoom:
|
|
description: "Zoom. Allowed values: ZOOM_IN, ZOOM_OUT"
|
|
example: "ZOOM_IN"
|
|
|
|
logi_circle_set_config:
|
|
description: Set a configuration property.
|
|
fields:
|
|
entity_id:
|
|
description: Name(s) of entities to apply the operation mode to.
|
|
example: "camera.living_room_camera"
|
|
mode:
|
|
description: "Operation mode. Allowed values: BATTERY_SAVING, LED, PRIVACY_MODE."
|
|
example: "PRIVACY_MODE"
|
|
value:
|
|
description: "Operation value. Allowed values: true, false"
|
|
example: true
|
|
|
|
logi_circle_livestream_snapshot:
|
|
description: Take a snapshot from the camera's livestream. Will wake the camera from sleep if required.
|
|
fields:
|
|
entity_id:
|
|
description: Name(s) of entities to create snapshots from.
|
|
example: "camera.living_room_camera"
|
|
filename:
|
|
description: Template of a Filename. Variable is entity_id.
|
|
example: "/tmp/snapshot_{{ entity_id }}.jpg"
|
|
|
|
logi_circle_livestream_record:
|
|
description: Take a video recording from the camera's livestream.
|
|
fields:
|
|
entity_id:
|
|
description: Name(s) of entities to create recordings from.
|
|
example: "camera.living_room_camera"
|
|
filename:
|
|
description: Template of a Filename. Variable is entity_id.
|
|
example: "/tmp/snapshot_{{ entity_id }}.mp4"
|
|
duration:
|
|
description: Recording duration in seconds.
|
|
example: 60
|