Skip to content

Releases: twrecked/hass-aarlo

version 0.7.1.3

01 Jul 12:45
1af24d8

Choose a tag to compare

Better schedule handling.
Handle events in the background thread.

version 0.7.1.2

09 Jun 15:08

Choose a tag to compare

Add video_url to last_capture sensor.
Cache session details to reduce authentications.
Added GO camera support.

Add save_session: False if authentication caches fails or you run into problems.

version 0.7.1

03 Jun 02:07
4c39f73

Choose a tag to compare

Changes

  • Another fix for wirefree doorbell duplicate entities
  • Support quoted-printable 2fa emails from Arlo
  • Fix camera service for latest Home Assistant beta.
  • Fix for wirefree doorbell duplicate entities
  • Fix for wirefree doorbell drain
  • Handle new mode return value
  • Fixed auth issue, I need to use cloudscraper to access the cloudflare sites.
  • Fixed plugged in icon issue.

Non Ascii Characters

FUTURE BREAKING CHANGE

Recent builds of Home Assistant have changed the way I have to access the camera record facility
and this has exposed a long-standing bug in aarlo, it allows non-ascii characters in camera IDs.
I have a fix in place to deal with this and will be making this the default behavior in a later release.
But for now, if you use non-ascii characters, for example Haustür, and you wish to try the new
behavior add this to your config.

  no_squash_unicode: False

When I do make this behavior default you will be able to revert to the current behavior with:

  no_squash_unicode: True

User Agents

The code is now much smarter when it comes to user agents. I used to think that
the agent you used to log in had to be the same as the agent you used to start a
stream. After some testing, I found this is not the case.

What this means is aarlo can select the best user agent for the task.

  • The camera.record service will use arlo agent so Home Assistant can save
    the stream as mp4.
  • The camera.play_stream service will use arlo agent so Home Assistant can
    convert the stream to hls.
  • The arlo_stream_url web service will use the linux agent to return a URL
    to an mpeg-dash stream.

Those camera.play_stream and arlo_stream_url changes are important, they
allow the aarlo-glance Lovelace card to choose direct or non-direct streams
regardless of the user agent you configured.

This also fixes the recording duration problem with the
aarlo.camera_start_recording service if you used linux as your user agent.

The user agent you configure is used in all other cases. This means, for
example, the one you set is picked for snapshot operations.

Essential Internal Camera Support

Thanks to @jesserockz for this.

Saving Media

(Straight from the README.)

If you use the save_media_to parameter to specify a file naming scheme aarlo will use that to save all media - videos and snapshots - locally. You can use the following substitutions:

  • SN; the device serial number
  • N; the device name
  • Y; the year of the recording, include century
  • m; the month of the year as a number (range 01 to 12)
  • d; the day of the month as a number (range 01 to 31)
  • H; the hour of the day (range 00 to 23)
  • M; the minute of the hour (range 00 to 59)
  • S; the seconds of the minute (range 00 to 59)
  • F; a short cut for Y-m-d
  • T; a short cut for H:M:S
  • t; a short cut for H-M-S
  • s; the number of seconds since the epoch

You specify the substitution by prefixing it with a $ in the format string. You can optionally use curly brackets to remove any ambiguity. For example, the following configuration will save all media under /config/media organised by serial number then date. The code will add the correct file extension.

  save_media_to: "/config/media/${SN}/${Y}/${m}/${d}/${T}"

The first time you configure save_media_to the system can take several minutes to download all the currently available media. The download is throttled to not overload Home Assistant or Arlo. Once the initial download is completed updates should happen a lot faster.

The code doesn't provide any management of the downloads, it will keep downloading them until your device is full. It also doesn't provide a NAS interface, you need to mount the NAS device and point save_media_to at it.

version 0.7.1.beta.15

25 May 16:42
5f946af

Choose a tag to compare

Changes

  • Suport quoted-printable 2fa emails from Arlo
  • Fix camera service for latest Home Assistant beta.
  • Fix for wirefree doorbell duplicate entities
  • Fix for wirefree doorbell drain
  • Handle new mode return value
  • Fixed auth issue, I need to use cloudscraper to access the cloudflare sites.
  • Fixed plugged in icon issue.

Non Ascii Characters

FUTURE BREAKING CHANGE

Recent builds of Home Assistant have changed the way I have to access the camera record facility
and this has exposed a long-standing bug in aarlo, it allows non-ascii characters in camera IDs.
I have a fix in place to deal with this and will be making this the default behavior in a later release.
But for now, if you use non-ascii characters, for example Haustür, and you wish to try the new
behavior add this to your config.

  no_squash_unicode: False

When I do make this behavior default you will be able to revert to the current behavior with:

  no_squash_unicode: True

User Agents

The code is now much smarter when it comes to user agents. I used to think that
the agent you used to log in had to be the same as the agent you used to start a
stream. After some testing, I found this is not the case.

What this means is aarlo can select the best user agent for the task.

  • The camera.record service will use arlo agent so Home Assistant can save
    the stream as mp4.
  • The camera.play_stream service will use arlo agent so Home Assistant can
    convert the stream to hls.
  • The arlo_stream_url web service will use the linux agent to return a URL
    to an mpeg-dash stream.

Those camera.play_stream and arlo_stream_url changes are important, they
allow the aarlo-glance Lovelace card to choose direct or non-direct streams
regardless of the user agent you configured.

This also fixes the recording duration problem with the
aarlo.camera_start_recording service if you used linux as your user agent.

The user agent you configure is used in all other cases. This means, for
example, the one you set is picked for snapshot operations.

Essential Internal Camera Support

Thanks to @jesserockz for this.

Saving Media

(Straight from the README.)

If you use the save_media_to parameter to specify a file naming scheme aarlo will use that to save all media - videos and snapshots - locally. You can use the following substitutions:

  • SN; the device serial number
  • N; the device name
  • Y; the year of the recording, include century
  • m; the month of the year as a number (range 01 to 12)
  • d; the day of the month as a number (range 01 to 31)
  • H; the hour of the day (range 00 to 23)
  • M; the minute of the hour (range 00 to 59)
  • S; the seconds of the minute (range 00 to 59)
  • F; a short cut for Y-m-d
  • T; a short cut for H:M:S
  • t; a short cut for H-M-S
  • s; the number of seconds since the epoch

You specify the substitution by prefixing it with a $ in the format string. You can optionally use curly brackets to remove any ambiguity. For example, the following configuration will save all media under /config/media organised by serial number then date. The code will add the correct file extension.

  save_media_to: "/config/media/${SN}/${Y}/${m}/${d}/${T}"

The first time you configure save_media_to the system can take several minutes to download all the currently available media. The download is throttled to not overload Home Assistant or Arlo. Once the initial download is completed updates should happen a lot faster.

The code doesn't provide any management of the downloads, it will keep downloading them until your device is full. It also doesn't provide a NAS interface, you need to mount the NAS device and point save_media_to at it.

version 0.7.1.beta.14

29 Apr 03:13
177faf0

Choose a tag to compare

Changes

  • Fix camera service for latest Home Assistant beta.
  • Fix for wirefree doorbell duplicate entities
  • Fix for wirefree doorbell drain
  • Handle new mode return value
  • Fixed auth issue, I need to use cloudscraper to access the cloudflare sites.
  • Fixed plugged in icon issue.

Non Ascii Characters

FUTURE BREAKING CHANGE

Recent builds of Home Assistant have changed the way I have to access the camera record facility
and this has exposed a long-standing bug in aarlo, it allows non-ascii characters in camera IDs.
I have a fix in place to deal with this and will be making this the default behavior in a later release.
But for now, if you use non-ascii characters, for example Haustür, and you wish to try the new
behavior add this to your config.

  no_squash_unicode: False

When I do make this behavior default you will be able to revert to the current behavior with:

  no_squash_unicode: True

User Agents

The code is now much smarter when it comes to user agents. I used to think that
the agent you used to log in had to be the same as the agent you used to start a
stream. After some testing, I found this is not the case.

What this means is aarlo can select the best user agent for the task.

  • The camera.record service will use arlo agent so Home Assistant can save
    the stream as mp4.
  • The camera.play_stream service will use arlo agent so Home Assistant can
    convert the stream to hls.
  • The arlo_stream_url web service will use the linux agent to return a URL
    to an mpeg-dash stream.

Those camera.play_stream and arlo_stream_url changes are important, they
allow the aarlo-glance Lovelace card to choose direct or non-direct streams
regardless of the user agent you configured.

This also fixes the recording duration problem with the
aarlo.camera_start_recording service if you used linux as your user agent.

The user agent you configure is used in all other cases. This means, for
example, the one you set is picked for snapshot operations.

Essential Internal Camera Support

Thanks to @jesserockz for this.

Saving Media

(Straight from the README.)

If you use the save_media_to parameter to specify a file naming scheme aarlo will use that to save all media - videos and snapshots - locally. You can use the following substitutions:

  • SN; the device serial number
  • N; the device name
  • Y; the year of the recording, include century
  • m; the month of the year as a number (range 01 to 12)
  • d; the day of the month as a number (range 01 to 31)
  • H; the hour of the day (range 00 to 23)
  • M; the minute of the hour (range 00 to 59)
  • S; the seconds of the minute (range 00 to 59)
  • F; a short cut for Y-m-d
  • T; a short cut for H:M:S
  • t; a short cut for H-M-S
  • s; the number of seconds since the epoch

You specify the substitution by prefixing it with a $ in the format string. You can optionally use curly brackets to remove any ambiguity. For example, the following configuration will save all media under /config/media organised by serial number then date. The code will add the correct file extension.

  save_media_to: "/config/media/${SN}/${Y}/${m}/${d}/${T}"

The first time you configure save_media_to the system can take several minutes to download all the currently available media. The download is throttled to not overload Home Assistant or Arlo. Once the initial download is completed updates should happen a lot faster.

The code doesn't provide any management of the downloads, it will keep downloading them until your device is full. It also doesn't provide a NAS interface, you need to mount the NAS device and point save_media_to at it.

version 0.7.1.beta.13

28 Apr 01:42
99c7c8f

Choose a tag to compare

Changes

  • Fix for wirefree doorbell duplicate entities
  • Fix for wirefree doorbell drain
  • Handle new mode return value
  • Fixed auth issue, I need to use cloudscraper to access the cloudflare sites.
  • Fixed plugged in icon issue.

Non Ascii Characters

FUTURE BREAKING CHANGE

Recent builds of Home Assistant have changed the way I have to access the camera record facility
and this has exposed a long-standing bug in aarlo, it allows non-ascii characters in camera IDs.
I have a fix in place to deal with this and will be making this the default behavior in a later release.
But for now, if you use non-ascii characters, for example Haustür, and you wish to try the new
behavior add this to your config.

  no_squash_unicode: False

When I do make this behavior default you will be able to revert to the current behavior with:

  no_squash_unicode: True

User Agents

The code is now much smarter when it comes to user agents. I used to think that
the agent you used to log in had to be the same as the agent you used to start a
stream. After some testing, I found this is not the case.

What this means is aarlo can select the best user agent for the task.

  • The camera.record service will use arlo agent so Home Assistant can save
    the stream as mp4.
  • The camera.play_stream service will use arlo agent so Home Assistant can
    convert the stream to hls.
  • The arlo_stream_url web service will use the linux agent to return a URL
    to an mpeg-dash stream.

Those camera.play_stream and arlo_stream_url changes are important, they
allow the aarlo-glance Lovelace card to choose direct or non-direct streams
regardless of the user agent you configured.

This also fixes the recording duration problem with the
aarlo.camera_start_recording service if you used linux as your user agent.

The user agent you configure is used in all other cases. This means, for
example, the one you set is picked for snapshot operations.

Essential Internal Camera Support

Thanks to @jesserockz for this.

Saving Media

(Straight from the README.)

If you use the save_media_to parameter to specify a file naming scheme aarlo will use that to save all media - videos and snapshots - locally. You can use the following substitutions:

  • SN; the device serial number
  • N; the device name
  • Y; the year of the recording, include century
  • m; the month of the year as a number (range 01 to 12)
  • d; the day of the month as a number (range 01 to 31)
  • H; the hour of the day (range 00 to 23)
  • M; the minute of the hour (range 00 to 59)
  • S; the seconds of the minute (range 00 to 59)
  • F; a short cut for Y-m-d
  • T; a short cut for H:M:S
  • t; a short cut for H-M-S
  • s; the number of seconds since the epoch

You specify the substitution by prefixing it with a $ in the format string. You can optionally use curly brackets to remove any ambiguity. For example, the following configuration will save all media under /config/media organised by serial number then date. The code will add the correct file extension.

  save_media_to: "/config/media/${SN}/${Y}/${m}/${d}/${T}"

The first time you configure save_media_to the system can take several minutes to download all the currently available media. The download is throttled to not overload Home Assistant or Arlo. Once the initial download is completed updates should happen a lot faster.

The code doesn't provide any management of the downloads, it will keep downloading them until your device is full. It also doesn't provide a NAS interface, you need to mount the NAS device and point save_media_to at it.

version 0.7.1.beta.12

14 Apr 03:07
af7dfc1

Choose a tag to compare

Changes

  • Fix for wirefree doorbell drain
  • Handle new mode return value
  • Fixed auth issue, I need to use cloudscraper to access the cloudflare sites.
  • Fixed plugged in icon issue.

Non Ascii Characters

FUTURE BREAKING CHANGE

Recent builds of Home Assistant have changed the way I have to access the camera record facility
and this has exposed a long-standing bug in aarlo, it allows non-ascii characters in camera IDs.
I have a fix in place to deal with this and will be making this the default behavior in a later release.
But for now, if you use non-ascii characters, for example Haustür, and you wish to try the new
behavior add this to your config.

  no_squash_unicode: False

When I do make this behavior default you will be able to revert to the current behavior with:

  no_squash_unicode: True

User Agents

The code is now much smarter when it comes to user agents. I used to think that
the agent you used to log in had to be the same as the agent you used to start a
stream. After some testing, I found this is not the case.

What this means is aarlo can select the best user agent for the task.

  • The camera.record service will use arlo agent so Home Assistant can save
    the stream as mp4.
  • The camera.play_stream service will use arlo agent so Home Assistant can
    convert the stream to hls.
  • The arlo_stream_url web service will use the linux agent to return a URL
    to an mpeg-dash stream.

Those camera.play_stream and arlo_stream_url changes are important, they
allow the aarlo-glance Lovelace card to choose direct or non-direct streams
regardless of the user agent you configured.

This also fixes the recording duration problem with the
aarlo.camera_start_recording service if you used linux as your user agent.

The user agent you configure is used in all other cases. This means, for
example, the one you set is picked for snapshot operations.

Essential Internal Camera Support

Thanks to @jesserockz for this.

Saving Media

(Straight from the README.)

If you use the save_media_to parameter to specify a file naming scheme aarlo will use that to save all media - videos and snapshots - locally. You can use the following substitutions:

  • SN; the device serial number
  • N; the device name
  • Y; the year of the recording, include century
  • m; the month of the year as a number (range 01 to 12)
  • d; the day of the month as a number (range 01 to 31)
  • H; the hour of the day (range 00 to 23)
  • M; the minute of the hour (range 00 to 59)
  • S; the seconds of the minute (range 00 to 59)
  • F; a short cut for Y-m-d
  • T; a short cut for H:M:S
  • t; a short cut for H-M-S
  • s; the number of seconds since the epoch

You specify the substitution by prefixing it with a $ in the format string. You can optionally use curly brackets to remove any ambiguity. For example, the following configuration will save all media under /config/media organised by serial number then date. The code will add the correct file extension.

  save_media_to: "/config/media/${SN}/${Y}/${m}/${d}/${T}"

The first time you configure save_media_to the system can take several minutes to download all the currently available media. The download is throttled to not overload Home Assistant or Arlo. Once the initial download is completed updates should happen a lot faster.

The code doesn't provide any management of the downloads, it will keep downloading them until your device is full. It also doesn't provide a NAS interface, you need to mount the NAS device and point save_media_to at it.

version 0.7.1.beta.11

08 Apr 14:31
70f866e

Choose a tag to compare

Changes

  • Handle new mode return value
  • Fixed auth issue, I need to use cloudscraper to access the cloudflare sites.
  • Fixed plugged in icon issue.

Non Ascii Characters

FUTURE BREAKING CHANGE

Recent builds of Home Assistant have changed the way I have to access the camera record facility
and this has exposed a long-standing bug in aarlo, it allows non-ascii characters in camera IDs.
I have a fix in place to deal with this and will be making this the default behavior in a later release.
But for now, if you use non-ascii characters, for example Haustür, and you wish to try the new
behavior add this to your config.

  no_squash_unicode: False

When I do make this behavior default you will be able to revert to the current behavior with:

  no_squash_unicode: True

User Agents

The code is now much smarter when it comes to user agents. I used to think that
the agent you used to log in had to be the same as the agent you used to start a
stream. After some testing, I found this is not the case.

What this means is aarlo can select the best user agent for the task.

  • The camera.record service will use arlo agent so Home Assistant can save
    the stream as mp4.
  • The camera.play_stream service will use arlo agent so Home Assistant can
    convert the stream to hls.
  • The arlo_stream_url web service will use the linux agent to return a URL
    to an mpeg-dash stream.

Those camera.play_stream and arlo_stream_url changes are important, they
allow the aarlo-glance Lovelace card to choose direct or non-direct streams
regardless of the user agent you configured.

This also fixes the recording duration problem with the
aarlo.camera_start_recording service if you used linux as your user agent.

The user agent you configure is used in all other cases. This means, for
example, the one you set is picked for snapshot operations.

Essential Internal Camera Support

Thanks to @jesserockz for this.

Saving Media

(Straight from the README.)

If you use the save_media_to parameter to specify a file naming scheme aarlo will use that to save all media - videos and snapshots - locally. You can use the following substitutions:

  • SN; the device serial number
  • N; the device name
  • Y; the year of the recording, include century
  • m; the month of the year as a number (range 01 to 12)
  • d; the day of the month as a number (range 01 to 31)
  • H; the hour of the day (range 00 to 23)
  • M; the minute of the hour (range 00 to 59)
  • S; the seconds of the minute (range 00 to 59)
  • F; a short cut for Y-m-d
  • T; a short cut for H:M:S
  • t; a short cut for H-M-S
  • s; the number of seconds since the epoch

You specify the substitution by prefixing it with a $ in the format string. You can optionally use curly brackets to remove any ambiguity. For example, the following configuration will save all media under /config/media organised by serial number then date. The code will add the correct file extension.

  save_media_to: "/config/media/${SN}/${Y}/${m}/${d}/${T}"

The first time you configure save_media_to the system can take several minutes to download all the currently available media. The download is throttled to not overload Home Assistant or Arlo. Once the initial download is completed updates should happen a lot faster.

The code doesn't provide any management of the downloads, it will keep downloading them until your device is full. It also doesn't provide a NAS interface, you need to mount the NAS device and point save_media_to at it.

version 0.7.1b10

04 Apr 16:14

Choose a tag to compare

Changes

  • Fixed auth issue, I need to use cloudscraper to access the cloudflare sites.
  • Fixed plugged in icon issue.

Non Ascii Characters

FUTURE BREAKING CHANGE

Recent builds of Home Assistant have changed the way I have to access the camera record facility
and this has exposed a long-standing bug in aarlo, it allows non-ascii characters in camera IDs.
I have a fix in place to deal with this and will be making this the default behavior in a later release.
But for now, if you use non-ascii characters, for example Haustür, and you wish to try the new
behavior add this to your config.

  no_squash_unicode: False

When I do make this behavior default you will be able to revert to the current behavior with:

  no_squash_unicode: True

User Agents

The code is now much smarter when it comes to user agents. I used to think that
the agent you used to log in had to be the same as the agent you used to start a
stream. After some testing, I found this is not the case.

What this means is aarlo can select the best user agent for the task.

  • The camera.record service will use arlo agent so Home Assistant can save
    the stream as mp4.
  • The camera.play_stream service will use arlo agent so Home Assistant can
    convert the stream to hls.
  • The arlo_stream_url web service will use the linux agent to return a URL
    to an mpeg-dash stream.

Those camera.play_stream and arlo_stream_url changes are important, they
allow the aarlo-glance Lovelace card to choose direct or non-direct streams
regardless of the user agent you configured.

This also fixes the recording duration problem with the
aarlo.camera_start_recording service if you used linux as your user agent.

The user agent you configure is used in all other cases. This means, for
example, the one you set is picked for snapshot operations.

Essential Internal Camera Support

Thanks to @jesserockz for this.

Saving Media

(Straight from the README.)

If you use the save_media_to parameter to specify a file naming scheme aarlo will use that to save all media - videos and snapshots - locally. You can use the following substitutions:

  • SN; the device serial number
  • N; the device name
  • Y; the year of the recording, include century
  • m; the month of the year as a number (range 01 to 12)
  • d; the day of the month as a number (range 01 to 31)
  • H; the hour of the day (range 00 to 23)
  • M; the minute of the hour (range 00 to 59)
  • S; the seconds of the minute (range 00 to 59)
  • F; a short cut for Y-m-d
  • T; a short cut for H:M:S
  • t; a short cut for H-M-S
  • s; the number of seconds since the epoch

You specify the substitution by prefixing it with a $ in the format string. You can optionally use curly brackets to remove any ambiguity. For example, the following configuration will save all media under /config/media organised by serial number then date. The code will add the correct file extension.

  save_media_to: "/config/media/${SN}/${Y}/${m}/${d}/${T}"

The first time you configure save_media_to the system can take several minutes to download all the currently available media. The download is throttled to not overload Home Assistant or Arlo. Once the initial download is completed updates should happen a lot faster.

The code doesn't provide any management of the downloads, it will keep downloading them until your device is full. It also doesn't provide a NAS interface, you need to mount the NAS device and point save_media_to at it.

version 0.7.1.beta.9

03 Apr 03:01
1a6e3e2

Choose a tag to compare

Changes

  • Fixed auth issue, I need to use cloudscraper to access the cloudflare sites.

Non Ascii Characters

FUTURE BREAKING CHANGE

Recent builds of Home Assistant have changed the way I have to access the camera record facility
and this has exposed a long-standing bug in aarlo, it allows non-ascii characters in camera IDs.
I have a fix in place to deal with this and will be making this the default behavior in a later release.
But for now, if you use non-ascii characters, for example Haustür, and you wish to try the new
behavior add this to your config.

  no_squash_unicode: False

When I do make this behavior default you will be able to revert to the current behavior with:

  no_squash_unicode: True

User Agents

The code is now much smarter when it comes to user agents. I used to think that
the agent you used to log in had to be the same as the agent you used to start a
stream. After some testing, I found this is not the case.

What this means is aarlo can select the best user agent for the task.

  • The camera.record service will use arlo agent so Home Assistant can save
    the stream as mp4.
  • The camera.play_stream service will use arlo agent so Home Assistant can
    convert the stream to hls.
  • The arlo_stream_url web service will use the linux agent to return a URL
    to an mpeg-dash stream.

Those camera.play_stream and arlo_stream_url changes are important, they
allow the aarlo-glance Lovelace card to choose direct or non-direct streams
regardless of the user agent you configured.

This also fixes the recording duration problem with the
aarlo.camera_start_recording service if you used linux as your user agent.

The user agent you configure is used in all other cases. This means, for
example, the one you set is picked for snapshot operations.

Essential Internal Camera Support

Thanks to @jesserockz for this.

Saving Media

(Straight from the README.)

If you use the save_media_to parameter to specify a file naming scheme aarlo will use that to save all media - videos and snapshots - locally. You can use the following substitutions:

  • SN; the device serial number
  • N; the device name
  • Y; the year of the recording, include century
  • m; the month of the year as a number (range 01 to 12)
  • d; the day of the month as a number (range 01 to 31)
  • H; the hour of the day (range 00 to 23)
  • M; the minute of the hour (range 00 to 59)
  • S; the seconds of the minute (range 00 to 59)
  • F; a short cut for Y-m-d
  • T; a short cut for H:M:S
  • t; a short cut for H-M-S
  • s; the number of seconds since the epoch

You specify the substitution by prefixing it with a $ in the format string. You can optionally use curly brackets to remove any ambiguity. For example, the following configuration will save all media under /config/media organised by serial number then date. The code will add the correct file extension.

  save_media_to: "/config/media/${SN}/${Y}/${m}/${d}/${T}"

The first time you configure save_media_to the system can take several minutes to download all the currently available media. The download is throttled to not overload Home Assistant or Arlo. Once the initial download is completed updates should happen a lot faster.

The code doesn't provide any management of the downloads, it will keep downloading them until your device is full. It also doesn't provide a NAS interface, you need to mount the NAS device and point save_media_to at it.