mirror of
https://github.com/home-assistant/home-assistant.io.git
synced 2025-05-31 23:36:50 +00:00

There is no motion_detection but there is motion_detect as per: grep motion_detect lib/python3.8/site-packages/homeassistant/components/android_ip_webcam/__init __.py "motion_detect": "Motion Detection", "motion_detect", This replaces the switch name with a correct one and adds it to the config example. The switch is confirmed to work. Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
203 lines
5.3 KiB
Markdown
203 lines
5.3 KiB
Markdown
---
|
|
title: Android IP Webcam
|
|
description: Connect Android devices as an IP webcam to Home Assistant
|
|
ha_category:
|
|
- Hub
|
|
- Binary Sensor
|
|
- Camera
|
|
- Sensor
|
|
- Switch
|
|
ha_release: '0.40'
|
|
ha_iot_class: Local Polling
|
|
ha_domain: android_ip_webcam
|
|
---
|
|
|
|
The `android_ip_webcam` integration turns any Android phone or tablet into a network camera with multiple viewing options.
|
|
|
|
It's setup as an MJPEG camera and all settings as switches inside of Home Assistant. You can also expose the sensors. If you have multiple phones, you can use all options inside a list.
|
|
|
|
There is currently support for the following device types within Home Assistant:
|
|
|
|
- Binary Sensor
|
|
- Camera
|
|
- Sensor
|
|
- Switch
|
|
|
|
## Setup
|
|
|
|
Download [the Android IP Webcam app](https://play.google.com/store/apps/details?id=com.pas.webcam) and launch the app. When you press 'Start Server', it will start streaming video from your phone and the IP address of the device will be shown on screen.
|
|
|
|
## Configuration
|
|
|
|
To set up the component, add the following information to your `configuration.yaml` file:
|
|
|
|
```yaml
|
|
# Example configuration.yaml entry
|
|
android_ip_webcam:
|
|
- host: 192.168.1.10
|
|
```
|
|
|
|
{% configuration %}
|
|
host:
|
|
description: The IP address of the phone on the network.
|
|
required: true
|
|
type: string
|
|
port:
|
|
description: The port the IP Webcam listens on.
|
|
required: false
|
|
default: 8080
|
|
type: integer
|
|
name:
|
|
description: Override the name of the phone.
|
|
required: false
|
|
default: IP Webcam
|
|
type: string
|
|
username:
|
|
description: The username to access the phone. If username is specified then password must be also.
|
|
required: inclusive
|
|
type: string
|
|
password:
|
|
description: The password to access the phone. If password is specified then username must be also.
|
|
required: inclusive
|
|
type: string
|
|
scan_interval:
|
|
description: Defines the update interval of the phone.
|
|
required: false
|
|
default: 10
|
|
type: integer
|
|
sensors:
|
|
description: List of sensor entities to be created by this component.
|
|
required: false
|
|
type: list
|
|
keys:
|
|
audio_connections:
|
|
description: The audio connections
|
|
battery_level:
|
|
description: The battery level
|
|
battery_temp:
|
|
description: The battery temperature
|
|
battery_voltage:
|
|
description: The battery voltage
|
|
light:
|
|
description: The light level
|
|
motion:
|
|
description: Analog (not binary) amount of motion detected
|
|
pressure:
|
|
description: The current pressure
|
|
proximity:
|
|
description: The proximity
|
|
sound:
|
|
description: The sound level
|
|
video_connections:
|
|
description: The video connections
|
|
switches:
|
|
description: List of switch entities to be created by this component.
|
|
required: false
|
|
type: list
|
|
keys:
|
|
exposure_lock:
|
|
description: Control the exposure lock
|
|
ffc:
|
|
description: Control the front-facing camera.
|
|
focus:
|
|
description: Control the focus.
|
|
gps_active:
|
|
description: Control the GPS.
|
|
motion_detect:
|
|
description: Control the motion detector.
|
|
night_vision:
|
|
description: Control the night vision.
|
|
overlay:
|
|
description: Control the overlay.
|
|
torch:
|
|
description: Control the torch.
|
|
whitebalance_lock:
|
|
description: Control the white balance lock.
|
|
video_recording:
|
|
description: Control the video recording.
|
|
motion_sensor:
|
|
description: Create a binary_sensor.<name>_motion_active entity. Note that `auto_discovery` may also create this sensor.
|
|
required: false
|
|
type: boolean
|
|
default: false
|
|
{% endconfiguration %}
|
|
|
|
<div class='note'>
|
|
|
|
You need to enable logging in the Android app (`Data logging` > `Enable data logging`), if you wish to see the sensor states in Home Assistant. The sensor states stays as `unknown`, until it's enabled.
|
|
|
|
</div>
|
|
|
|
## Full example
|
|
|
|
```yaml
|
|
# Example configuration.yaml entry
|
|
android_ip_webcam:
|
|
- host: 192.168.1.202
|
|
port: 8000
|
|
sensors:
|
|
- audio_connections
|
|
- battery_level
|
|
- battery_temp
|
|
- battery_voltage
|
|
- light
|
|
- motion
|
|
- pressure
|
|
- proximity
|
|
- sound
|
|
- video_connections
|
|
switches:
|
|
- exposure_lock
|
|
- ffc
|
|
- focus
|
|
- gps_active
|
|
- motion_detect
|
|
- night_vision
|
|
- overlay
|
|
- torch
|
|
- whitebalance_lock
|
|
- video_recording
|
|
- host: 192.168.1.203
|
|
port: 8000
|
|
sensors:
|
|
- light
|
|
switches:
|
|
- torch
|
|
```
|
|
|
|
## Alternate Configuration Method
|
|
|
|
The configuration described above will cause the `android_ip_webcam` binary sensor platform to automatically create and configure the devices automatically. Alternatively you can omit the `android_ip_webcam` component from your `configuration.yaml` file and add individual devices instead.
|
|
|
|
### Binary Sensor
|
|
|
|
You can setup the binary motion sensor with the following in your `configuration.yaml` file:
|
|
|
|
{% raw %}
|
|
|
|
```yaml
|
|
binary_sensor:
|
|
- platform: rest
|
|
name: Kitchen Motion
|
|
sensor_class: motion
|
|
resource: http://IP_ADDRESS:PORT/sensors.json?sense=motion_active
|
|
value_template: '{{ value_json.motion_active.data[0][1][0] | round(0) }}'
|
|
```
|
|
|
|
{% endraw %}
|
|
|
|
### Camera
|
|
|
|
To enable only the camera in your installation, add the following to your `configuration.yaml` file:
|
|
|
|
```yaml
|
|
# Example configuration.yaml entry
|
|
camera:
|
|
- platform: mjpeg
|
|
mjpeg_url: http://IP_ADDRESS:PORT/video
|
|
```
|
|
|
|
### Other Sensors
|
|
|
|
You can setup your own sensors by examining the JSON file from the webcam server: `http://IP:8080/sensors.json`
|