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

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.

Where you able to recover the requests for the login?

yes. and when i tried to use that info for HA id gave this error

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.

Can you please send me the screenshot for the login request and response?


Is this what you need?

If you follow the steps in the guide I posted above you should see these requests highlighted:

For each one, please take a screenshot of the request & response.










Thank you.

I can’t see the full response for the rest_server request.
Can you please change the view to JSON and send another screenshot / copy-paste the text?

{
    "datas": {
        "gate_srv_net_https": "https://gate.ucloud.akuvox.com:8600",
        "gate_srv_net_ipv6_https": "https://gate6.ucloud.akuvox.com:8600",
        "rest_server": "ucloud.akuvox.com:8080",
        "rest_server_https": "ucloud.akuvox.com:8443",
        "rest_server_https_ipv6": "2600:1f1c:19d:ef00:55a2:5f88:f6ba:1e8:8443",
        "rest_server_ipv6": "2600:1f1c:19d:ef00:55a2:5f88:f6ba:1e8:8080"
    },
    "message": "success",
    "result": 0
}