home-assistant.io/source/_components/camera.push.markdown
Jorim Tielemans db30e60a44 More various improvements (#6991)
Things starting with 'ca'
2018-10-21 17:03:41 +02:00

2.8 KiB

layout title description date sidebar comments sharing footer logo ha_category ha_iot_class ha_release
page Push Instructions how to use Push Camera within Home Assistant. 2018-06-26 23:50 true false true true camcorder.png Camera Local Push 0.74

The push camera platform allows you to integrate images sent over HTTP POST to Home Assistant as a camera. External applications/daemons/scripts are therefore able to "stream" images through Home Assistant.

Optionally the Push Camera can buffer a given number of images, creating an animation of the detected motion after the event has been recorded.

Images are cleared on new events, and events are separated by a soft (configurable) timeout.

{% linkable_title Integration with motionEye %}

The push camera can as an example be used with motionEye a web frontend for the motion daemon. motionEye is usually configured to save/record files only when motion is detected. It provides a hook to run a command whenever an image is saved, which can be used together with cURL to send the motion detected images to the push camera, as shown in this example:

In motionEye, under File Storage -> Run A Command type in:

curl -X POST -F "image=@%f" http://my.hass.server.com:8123/api/camera_push/camera.push_camera?token=12345678

Optionally configure motionEye to save only motion triggered images by going into Still Images -> Capture Mode and setting Motion Triggered. Tune your preferences under Motion Detection.

In this setup, you can configure the push camera to continuously replay the last motion triggered event using a configuration such as:

camera:
  - platform: push
    name: MotionEye Outdoor
    buffer: 3
    timeout: 5
    token: 12345678

{% linkable_title Configuration %}

To enable this camera in your installation, add the following to your configuration.yaml file:

# Example configuration.yaml entry
camera:
  - platform: push
    name: My Push Camera
    token: 12345678

{% configuration %} name: description: The name you would like to give to the camera. required: false type: string default: Push Camera buffer: description: Number of images to buffer per event. Be conservative, large buffers will starve your system memory. required: false type: string default: 1 timeout: description: Amount of time after which the event is considered to have finished. required: false type: time default: 5 seconds token: description: User provided token acting as access control, should be a large string (more then 8 chars). Required if you can't use HA new auth system (0.77). required: false type: string field: description: HTTP POST field containing the image file required: false type: string default: image {% endconfiguration %}