Akuvox SmartPlus - View door camera feeds, open doors and manage temporary keys

Are you able to sign in to the app using the SMS code?
Which country is your phone number registered to?

yes, I can log in to the application without any problems using the SMS code. my account is registered in Poland, country code +48

It’s possible that the SMS verification works differently in Poland.

I recommend you try the sign in method using your app tokens.

Is there a way to get notifications when someone rings the doorbell?

Hi Tala,

Yes, when someone rings the bell the akuvox_door_update event is fired, with CaptureType = “Call”.

Here’s an example automation to play a sound effect and then announce that someone’s at the specific door:

alias: Door Ring
description: Play a sound effect and then announce that someone's at the specific door
trigger:
  - platform: event
    event_type: akuvox_door_update
    event_data:
      CaptureType: Call
    variables:
      door_name: "{{ trigger.event.data.Location }}"
    alias: When a doorbell is rung
condition: []
action:
  - 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
    alias: Play "Ding Dong"
  - delay:
      hours: 0
      minutes: 0
      seconds: 3
      milliseconds: 0
  - service: tts.google_say
    data:
      entity_id: media_player.macbook_pro
      message: Someone's at the {{ door_name }}
      language: en
    enabled: true
    alias: Announce which door was rung
mode: single

Hi,
Thank you for answering…
I have an AKUVOX E12 video door phone, I tried following your example got the notification part to work but not the trigger, how do I get the event_type for this specific Doorbell?

Can you recommend me some working tutorial for installing mitmproxy for PC or raspberry? I tried to install on Raspberry but unfortunately I failed

The Akuvox SmartPlus integration fires an event called akuvox_door_update whenever your SmartPlus doors are rung or opened.

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.

Key Data Values

Here are some key data values which you can use in your automations:

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.

You don’t need to run mitmproxy on your raspberry pi. You need to run it on a computer, and configure your phone to route its network traffic to the mitmproxy’s proxy.

I suggest you review the “getting started” documentation for mitmproxy, but there are also a number of guides on YouTube which you could also follow.

Getting an error that the sms failed and i should check phone number. what is the format of the number because im entering it correctly

There is no special format to use. Another user had the same issue. It’s possible that the API behaves differently between regions.

I suggest you try to log in using your app tokens instead.

is there any other way to get the token info. i dont get the info needed when logging in with my phone i only get the token not the password.

Would you mind sharing a censored screenshot of the response from mitmproxy?

I just tried with an iphone and i got the token and auth token. but when i try to use it it gives an error.

This error originated from a custom integration.

Logger: custom_components.akuvox
Source: custom_components/akuvox/api.py:616
Integration: Akuvox SmartPlus (documentation, issues)
First occurred: December 18, 2023 at 2:27:56 PM (15 occurrences)
Last logged: 11:31:27 AM

:face_with_raised_eyebrow: Response: {‘result’: -1, ‘message’: “Mobile Number doesn’t exist”}
:face_with_raised_eyebrow: Response: {‘result’: -1, ‘message’: ‘AreaCode Error’}
:face_with_raised_eyebrow: Response: {‘message’: ‘request is invalid’, ‘result’: -1}

Also getting this error now

This error originated from a custom integration.

Logger: custom_components.akuvox
Source: custom_components/akuvox/api.py:356
Integration: Akuvox SmartPlus (documentation, issues)
First occurred: 11:27:37 AM (7 occurrences)
Last logged: 11:37:46 AM

:x: Unable to retrieve server list.

I think the API must have regional differences. In order to add support for your region I will need to see the API requests & responses. In order to get the relevant data from you I prepared a guide for you to follow:

Prepare SmartPlus & mitmproxy

  1. Sign out from the app on your iPhone and close the app

  2. Connect your iPhone with mitmproxy

  3. In mitmproxy, click Start and then:

    • Enter in the search field: akuvox

    • Enter in the highlight field: rest_server | send_mobile_checkcode | sms_login | servers_list | userconf | getDoorLog | getPersonalTempKeyList

Make the relevant API calls

  1. Launch the SmartPlus app from your phone connected to mitmproxy, and sign in
  2. Navigate to the Temp Key section
  3. Navigate to the Activities section
  4. In mitmproxy, you should now see the following flows highlighted:

Capture the data for each API Request and Response

  1. For each highlighted line, you should take a screenshot of the Request and Response data:

    A. Request:

    • Click the line to select it

    • Select Request on the right-hand-side preview

    • Take a screenshot of the request details

    B. Response:

    • Click Response on the right-hand-side preview

    • Change the View to JSON

    • Take a screenshot of the response details

  2. Repeat these steps for each highlighted line

Can you please follow this guide in order for me to add support for your region?

when i try i get this error

https://maintenance.akuvox.com:8483/v1/AppReportAlarm

Can you please explain the exact steps you did?

1.Connected to proxy
2. Logged in with phone number which worked.
3. tried to go to the temp key section and i got this error as well as a splash screen in the app saying Woops! unable to load the page! Please check your conection and try again.
4. tried to go into the activities area and had the same thing happen.