Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update documentation to reflect Axis config flow support #9016

Merged
merged 2 commits into from
Mar 25, 2019
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
122 changes: 7 additions & 115 deletions source/_components/axis.markdown
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
layout: page
title: "Axis"
description: "Instructions on how to setup devices from Axis Communications within Home Assistant."
description: "Integration between network devices from Axis Communications with Home Assistant."
date: 2017-04-30 23:04
sidebar: true
comments: false
Expand All @@ -11,143 +11,35 @@ logo: axis.png
ha_category:
- Camera
- Binary Sensor
ha_config_flow: true
ha_release: 0.45
ha_iot_class: Local Polling
ha_iot_class: Local Push
redirect_from:
- /components/binary_sensor.axis/
- /components/camera.axis/
---

[Axis Communications](https://www.axis.com/) devices are surveillance cameras and other security-related network connected hardware. Sensor API works with firmware 5.50 and newer.
[Axis Communications](https://www.axis.com/) devices are surveillance cameras, speakers, access control and other security-related network connected hardware. Event API works with firmware 5.50 and newer.

Home Assistant will automatically discover their presence on your network.

## {% linkable_title Configuration %}

You can also manually configure your devices by adding the following lines to your `configuration.yaml` file:

```yaml
# Example configuration.yaml entry
axis:
m1065lw:
host: IP ADDRESS
include:
- camera
```

{% configuration %}
device:
description: A unique name
required: true
type: string
host:
description: The IP address to your Axis device.
required: true
type: string
username:
description: The username to your Axis device.
required: false
type: string
default: root
password:
description: The password to your Axis device.
required: false
type: string
default: pass
trigger_time:
description: Minimum time (in seconds) a sensor should keep its positive value.
required: false
type: integer
default: 0
port:
description: Configure port web server of device is accessible from.
required: false
type: integer
default: 80
location:
description: Physical location of your Axis device.
required: false
type: string
include:
description: This cannot be empty else there would be no use adding the device at all.
required: true
type: map
keys:
camera:
description: Stream MJPEG video to Home Assistant.
motion:
description: The built-in motion detection in Axis cameras.
vmd3:
description: ACAP Motion Detection app which has better algorithms for motion detection.
pir:
description: PIR sensor that can trigger on a motion.
sound:
description: Sound detector.
daynight:
description: Certain cameras have day/night mode if they have built-in IR lights.
tampering:
description: Signals when camera believes that it has been tampered with.
input:
description: Trigger on whatever you have connected to device input port.
{% endconfiguration %}

A full configuration example could look like this:

```yaml
# Example configuration.yaml entry
axis:
m1065lw:
host: IP ADDRESS
username: USERNAME
password: PASSWORD
include:
- camera
- motion
- pir
- sound
- daynight
trigger_time: 0
location: köket
```

<p class='note'>
Any specific levels for triggers needs to be configured on the device.
</p>
For configuration go to the `Integrations pane` on your Home Assistant instance.

<p class='note'>
It is recommended that you create a user on your Axis device specifically for Home Assistant. For all current functionality, it is enough to create a user belonging to user group viewer.
</p>

## {% linkable_title Device services %}

Available services: `vapix_call`.

### {% linkable_title Service `axis/vapix_call` %}

Send a command using [Vapix](https://www.axis.com/support/developer-support/vapix). For details please read the API specifications.

| Service data attribute | Optional | Description |
|---------------------------|----------|--------------------------------------------------|
| `name` | no | Name of device to communicate with. |
| `param` | no | What parameter to operate on. |
| `cgi` | yes | Which cgi to call on the device. Default is `param.cgi`. |
| `action` | yes | What type of call. Default is `update`. |

Response to call can be subscribed to on event `vapix_call_response`

## {% linkable_title Troubleshooting discovery %}

If a `169.x.x.x` address is discovered. On your camera, go to **System Options** -> **Advanced** -> **Plain Config**. Change the drop-down box to `network` and click `Select Group`. If `Network Interface I0 ZeroConf` contains the `169.x.x.x` IP address, unchecked the box next to `Enabled` for this section and click `Save`.
If your device is not discovered. On your camera, go to **System Options** -> **Advanced** -> **Plain Config**. Change the drop-down box to `network` and click `Select Group`. If `Network Interface I0 ZeroConf` contains the `169.x.x.x` IP address, unchecked the box next to `Enabled` for this section and click `Save`.

## {% linkable_title Binary Sensor %}

The `Axis` platform allows you to get data from your [Axis](https://www.axis.com/) devices from within Home Assistant.

The following sensor types are supported:

- Motion detection
- Motion detection (VMD3/VMD4)
- Passive IR motion detection
- Sound detection
- Day/night mode
- Tampering detection
- Input port