Skip to content

nimroddolev/akuvox

Repository files navigation

hacs_badge version Community Forum

Akuvox SmartPlus Integration for Home Assistant

Integrate your Akuvox SmartPlus mobile app with Home Assistant. With this integration you can access you door camera feeds, trigger door relays to open doors, be notified when doors are opened, and view your temporary keys (support for adding temporary keys comming soon).

Disclaimer: This integration is not affiliated with or endorsed by Akuvox. It is a community-contributed project and is provided as-is without any warranty or guarantee. Use it at your own discretion and responsibility.

For troubleshooting and general discussion please join the discussion in the Home Assistant forum.


Show Your Support

If you find this integration useful, consider showing your support: Buy Me A Coffee


Table of Contents


Features

Door Camera Feeds

You door camera feeds are accessible as camera entities in Home Assistant.

Relay Button Control

Your door's relays are added as buttons in Home Assistant which allow you to trigger your doors to open remotely.

Temporary Keys

You can view your temporary access keys from the SmartPlus app in Home Assistant.

Door Bell & Door Open Events

Whenever any of your doors are rung or opened, the akuvox_door_update event is fired in Home Assistant. When you use the akuvox_door_update even as an automation trigger, you will have access to data associated with the specific door ring/open event, accessible under: trigger.event.data.

1. trigger.event.data.Location

The Location value represents the name of the Akuvox door that was rung or opened, eg: Front Door, Side Door, etc.

2. trigger.event.data.CallType

The CallType value represents the door event type:

CallType Value Meaning
Call Someone rang the door.
Face Unlock The door was opened via facial recognition.
Unlock on SmartPlus The door opened by a SmartPlus app account.

3. trigger.event.data.Initiator

The Initiator value represents the name of the individual that triggered the event.

Scenario Value
Door opened by a SmartPlus account holder John Smith
Door rung by an unknown individual Visitor

4. trigger.event.data.PicUrl

The PicUrl value contains a URL to the camera screenshot image taken at the time of the door ring/open event.

5. trigger.event.data.RelayName

The RelayName value represents the name of the door relay that was opened (useful if your door has multiple relays), eg: Relay1, Relay2, etc.


YAML Examples
Example 1: Play a sound effect and announce that a door was rung
trigger:
  - platform: event
    event_type: akuvox_door_update
    event_data:
      CaptureType: Call
    variables:
      door_name: "{{ trigger.event.data.Location }}"

condition: []

action:

  # Play Ding Dong
  - service: media_player.play_media
    target:
      entity_id: media_player.kitchen_speaker
    data:
      media_content_id: media-source://media_source/local/sounds/ding_dong.mp3
      media_content_type: audio/mpeg
    metadata:
      title: ding_dong.mp3
      media_class: music
      navigateIds:
        - {}
        - media_content_type: app
          media_content_id: media-source://media_source
        - media_content_type: ""
          media_content_id: media-source://media_source/local/sounds

  # Wait 3 seconds
  - delay:
      hours: 0
      minutes: 0
      seconds: 3
      milliseconds: 0

  # Announce which door was rung
  - service: tts.google_say
    data:
      entity_id: media_player.macbook_pro
      message: Someone's at the {{ door_name }}
      language: en
Example 2: Send a notification when a door is opened
trigger:
  - platform: event
    event_type: akuvox_door_update
action:
  - service: notify.notify
    data:
      title: Door Opened
      mwessage: >-
        {{ trigger.event.data.Location }} door opened by {{ trigger.event.data.Initiator }}

notification


Installation

The easiest way to install Akuvox is though HACS (the Home Assistant Community Store)

Via HACS (Recommended)

  1. If you don't have HACS installed yet, follow the official installation guide.

  2. Add the Akuvox SmartPlus repository to HACS by clicking here:

  3. Click ADD:

  1. Restart Home Assistant.

Or:

Manual Installation

  1. Using your file browser of choice open the directory for your HA configuration (where you find configuration.yaml).
  2. Create a custom_components directory if it does not already exist.
  3. Add a subdirectory inside custom_components named akuvox.
  4. Download all the files from the custom_components/akuvox/ directory in this repository.
  5. Place them into the new custom_components/akuvox directory you created.
  6. Restart Home Assistant.

Adding the Akuvox Integration

  1. Click this button: Open your Home Assistant instance and start setting up a new integration. to add the integration.

  2. Click OPEN LINK

  3. Click OK:

  1. Select a sign in method:

Method 1: SMS Verification (Recommended)

Sigining in via SMS verification will sign you out from the SmartPlus app on your device. If you wish to stay signed in on the app and also use the integration in Home Assistant please use the App Tokens sign in method.

  1. Select Continue sign-in with SMS Verification and click NEXT

  1. Enter your phone number and click NEXT to receive your SMS verification code

  1. Enter your code and click SUBMIT

Method 2: App Tokens (Advanced)

Sigining in using your SmartLife app tokens will allow you to remain signed in to the SmartLife app on your device.

  1. Obtain your auth_token and token values (for help with finding your tokens, please refer to the Finding you SmartPlus Account Tokens section below).

  2. Enter your phone number, auth_token and token values and click SUBMIT:

You should now have one device per Akuvox door camera with a camera and door relay button/s entity

Once configured, Akuvox cameras & door buttons will appear as a device with a camera entity and a button entity, which when pressed triggers the door relay and opens the doors directly from Home Assistant.

Configuration

Via the integration's CONFIGURE button you can adjust the following:

  1. Update your SmartLife account's tokens used to communicate with the Akuvox API. This is particularly useful if you logged into the SmartLife app on your device after adding the integration. For help accessing your account's tokens, please refer to the Finding you SmartPlus Account Tokens section below.

  2. Choose between two options for akuvox_door_update event handling:

    • Wait for camera screenshots to become available before triggering the event.
    • Receive the event as soon as it is generated, without waiting for camera screenshots.

Finding your SmartPlus Account Tokens

To obtain your SmartPlus account tokens you can use an HTTP proxy (such as mitmproxy)

  1. Connect your device to your HTTP proxy

  2. Log out from your SmartPlus app, and then log in with your phone number and SMS code

  3. Search for akuvox, and you should see the servers_list request. Click on it and in the Requests tab you should find your auth_token and token values:

NOTE: If you see passwd instead of auth_token, please use the passwd value as your auth_token.

mitmproxy