GithubHelp home page GithubHelp logo

donavanbecker / homebridge-august Goto Github PK

View Code? Open in Web Editor NEW
33.0 6.0 7.0 1.03 MB

The Homebridge August plugin allows you to access your August/Yale Locks from HomeKit with Homebridge.

License: ISC License

HTML 16.28% TypeScript 83.72%
homebridge homebridge-plugin homekit

homebridge-august's Introduction

homebridge-verified

Homebridge August

The Homebridge August plugin allows you to access your August & Yale Lock(s) from HomeKit with Homebridge.

Installation

  1. Search for "August" on the plugin screen of Homebridge Config UI X.
  2. Click Install.

Configuration

  1. Input your August E-mail/Phone Number into the August Account Info.

  2. August Validate code will be sent after restarting Homebridge.

  3. Input your Validate Code into the August Account Info.

  4. Finally Restart Homebridge.

Supported August Devices

  • August Smart lock (AUG-SL04-C03-N04)
  • August Smart Lock Pro 3rd Gee (AUG-SL03-C02-G03-C)
  • August WiFi Smart Lock (Gen 4)
  • Yale Assure Lock (AUG-MD01)
  • Yale Assure Lock 2 (YDR410)
  • Yale Assure Lock SL (YDR256)

Thanks

Thank you to hufftheweevil for the august-api module.

homebridge-august's People

Contributors

donavanbecker avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

homebridge-august's Issues

Country Codes?

Describe Your Problem

I live in the UK, I’ve set the country code to “UK”, everything seems to work (ish) the logs contain repeated “[August] Country code: UK”. Is this correct? I ask because I’m trying to see the logs for another issue I have, want to make sure everything is set up correctly before I try to work out the other problems I’m seeing.
I looked at the API and couldn’t work out what is expected when it comes to country codes, I’ve also tried the +44 (international dialling code) to see if that works, but I see the same log. Any ideas or suggestions would be appreciated.

As for the problem in having, I get notifications from HomeKit periodically telling me that the door is locked/unlocked (when the state hasn’t changed) is the August plugin triggering those alerts? If so should it only trigger an alert when the state changes from locked to unlocked (and vice versa)?

Looking closer at the Home App I can see the lock reports “Unknown” and then the actual status, so I’m guessing it’s the “actual state” > “unknown state” > “actual state” transition that triggers the alert, any suggestions on why I might be getting and unknown state report periodically would be appreciated (especially if it’s the country code that’s wrong).

Relevant log output

No response

Config for homebridge-august

"name": "August",
            "credentials": {
                "augustId": "[email protected]",
                "password": "password",
                "countryCode": "UK",
                "installId": "uuid",
                "isValidated": true,
                "notice": "Keep your tokens a secret!"
            },
            "options": {
                "refreshRate": 360,
                "pushRate": 5,
                "logging": "standard"
            },

Screenshots

IMG_9493

Device & Model

Yale Conexis with Yale Connect Bridge

Node.js Version

v20.10.0

NPM Version

10.2.3

Homebridge Version

V1.7.0

Homebridge August Plugin Version

V1.3.3

Homebridge Config UI X Plugin Version

V4.54.1

Operating System

Raspbian

Discover Devices 2: TypeError: Cannot read properties of undefined (reading 'LockID')

Describe Your Problem

Updated to 2.0 after having issues logging in and now have an issue with LockID.

Relevant log output

[1/31/2024, 8:47:49 AM] [August] Launched child bridge with PID 3065
[1/31/2024, 8:47:52 AM] Registering platform 'homebridge-august.August'
[1/31/2024, 8:47:52 AM] [August] Loaded homebridge-august v2.0.0 child bridge successfully
[1/31/2024, 8:47:53 AM] Loaded 0 cached accessories from cachedAccessories.0EC6D894D1CC.
[1/31/2024, 8:47:53 AM] [August] [DEBUG] Using Config Logging: debug
[1/31/2024, 8:47:53 AM] [August] Finished initializing platform: August
[1/31/2024, 8:47:53 AM] [August] Platform Config: {"logging":"debug"}
[1/31/2024, 8:47:53 AM] [August] [DEBUG] Using Default Refresh Rate (5 minutes).
[1/31/2024, 8:47:53 AM] [August] [DEBUG] Config OK
[1/31/2024, 8:47:53 AM] [August] [DEBUG] Executed didFinishLaunching callback
[1/31/2024, 8:47:53 AM] [August] [DEBUG] augustId: <username>, installId: <UUID>, password: <password>, isValidated: true
[1/31/2024, 8:47:53 AM] [August] [DEBUG] countryCode: US
[1/31/2024, 8:47:53 AM] [August] [DEBUG] August Credentials: {"installId":"<UUID>","augustId":"<username>","password":"<password>","countryCode":"US"}
[1/31/2024, 8:47:53 AM] [August] [DEBUG] August Credentials: {"config":{"apiKey":"79fd0eb6-381d-4adf-95a0-47721289d1d9","pnSubKey":"sub-c-1030e062-0ebe-11e5-a5c2-0619f8945a4f","installId":"<UUID>","idType":"email","augustId":"<username>","password":"<password>","countryCode":"US"}}
[1/31/2024, 8:47:53 AM] Homebridge v1.7.0 (HAP v0.11.1) (August) is running on port 46769.
FetchError: Status 400 (undefined): undefined
[1/31/2024, 8:47:54 AM] [August] Discover Devices 2: TypeError: Cannot read properties of undefined (reading 'LockID')

Config for homebridge-august

{
    "name": "August",
    "credentials": {
        "augustId": "<username>",
        "password": "<password>",
        "countryCode": "US",
        "installId": "<UUID>",
        "isValidated": true,
        "notice": "Keep your tokens a secret!"
    },
    "options": {
        "logging": "debug"
    },
    "_bridge": {
        "username": "0E:C6:D8:94:D1:CC",
        "port": 46769
    },
    "platform": "August"
}

Screenshots

No response

Device & Model

Yale Conexis L2

Node.js Version

v20.11.0

NPM Version

v

Homebridge Version

v1.7.0

Homebridge August Plugin Version

v1.3.5

Homebridge Config UI X Plugin Version

No response

Operating System

Docker

Bug: Log produces errors when DoorSense is not configured/in use. "Lock: Front Door doorState: init, closed: false, open: false"

Describe The Bug

I use a thread based door sensor for automations as it is much faster than the August DoorSense, therefore I attempted to remove the DoorSense from my August setup. Log produces errors when DoorSense is not configured/in use. "Lock: Front Door doorState: init, closed: false, open: false" Issue persists if plugin is configured to hide sensor.

To Reproduce

Remove DoorSense from lock setup in August app so no DoorSense is detected.

Expected behavior

No error is reported if there is no DoorSense. (Or a one time log notification on startup)

Relevant log output

[10/11/2022, 11:05:00 AM] [August] Lock: Front Door doorState: init, closed: false, open: false

Config for homebridge-august

"name": "August",
            "credentials": {
                "augustId": "[email protected]",
                "password": "xxxxxx",
                "validateCode": "xxxxx",
                "notice": "Keep your tokens a secret!"
            },
            "options": {
                "logging": "standard"
            },
            "platform": "August"

Screenshots

Screenshot 2022-10-11 at 11 05 02 AM

Device & Model

August WiFi Smart Lock

Node.js Version

16.17.1

NPM Version

8.5.0

Homebridge Version

oznu/homebridge:latest

Homebridge August Plugin Version

1.0.5

Homebridge Config UI X Plugin Version

4.50.1

Operating System

Docker

Bug: Can’t discover 3rd gen lock with august connect

Describe The Bug

The device cannot be added to the plugin with the error [August] Discover Devices: TypeError: Cannot convert undefined or null to object

To Reproduce

install homebridge on pi4, install the plugin. input username/password, restart homebridge,input verification code sent from August, restart homebridge.

Expected behavior

Device discovered, controllable through HomeKit

Relevant log output

17/12/2022, 19:55:14] [AugustLocks] [August] getting locks ...
[17/12/2022, 19:55:14] [AugustLocks] [August] Could not communicate with August API: Config errors found:
Missing config.installID or AUGUST_INSTALLID env var

Config for homebridge-august

{
            "name": "August",
            "credentials": {
                "augustId": "********@me.com",
                "password": "*********",
                "installId": "********,
                "notice": "Keep your tokens a secret!",
                "isValidated": true
            },
            "platform": "August"
        }

Screenshots

No response

Device & Model

August lock 3rd gen with August Connect

Node.js Version

V18.12.1

NPM Version

V8.19.2

Homebridge Version

V1.6.0

Homebridge August Plugin Version

V1.1.0

Homebridge Config UI X Plugin Version

v4.50.2

Operating System

Raspbian bullseye (11)

Bug: if validation code starts with zero it fails

Describe The Bug

if validation code starts with zero it fails with "if validation code starts with zero it fails"

To Reproduce

Assume Yale / August sends a code starting with 0

Expected behavior

It should wrap the 0 in quotes probably?

Relevant log output

[August] Validated Error: Error: Validation code is invalid, should be six digits

Config for homebridge-august

Default

Screenshots

Removing the install ID and redoing auth where I got a different code from Yale fixed this.

Also, you can add compatibility in your repo to say it works with:
YDR 414a
YDR 50GA

and the Yale Access App.

Device & Model

Yale

Node.js Version

Node.js v18.15.0

NPM Version

x

Homebridge Version

x

Homebridge August Plugin Version

1.1.0

Homebridge Config UI X Plugin Version

4.5

Operating System

Ubuntu

Support Request:

Describe Your Problem

Persistent ’unlocking…’ state on Conexis L1 via Yale Connect Bridge

Relevant log output

No response

Config for homebridge-august

No response

Screenshots

C05C05A6-DD1B-4AD8-8463-4944676081D3
15C667B9-038A-4AE0-9300-86E70F1BAE1F
555B1922-EB33-4417-A772-37FD264A0DEC

Device & Model

Raspberry Pi

Node.js Version

16.15.0

NPM Version

Unsure

Homebridge Version

1.6.0

Homebridge August Plugin Version

1.1.10

Homebridge Config UI X Plugin Version

4.50.2

Operating System

Raspberry Pi

Support Request:Discover Devices Issue

Describe Your Problem

It appears the plug-in is unable to grab my locks. Logs in ok and I get the code from August

Relevant log output

No response

Config for homebridge-august

"name": "August",
            "credentials": {
                "augustId": "xxxx",
                "password": "xxxx",
                "installId": "xxxxx",
                "notice": "Keep your tokens a secret!",
                "isValidated": true
            },
            "platform": "August",
            "_bridge": {
                "username": "0E:E3:99:81:xx:xx",
                "port": xxxxx
            }
        }

Screenshots

/
IMG_2075

Device & Model

Raspberry pi

Node.js Version

V18

NPM Version

V

Homebridge Version

V1.6

Homebridge August Plugin Version

Beta

Homebridge Config UI X Plugin Version

Latest

Operating System

Bullseye

Discover Devices: ReferenceError: Config errors found: Missing config.installId or AUGUST_INSTALL_ID env var

Describe Your Problem

Homebridge providing log error on startup.

Relevant log output

Discover Devices: ReferenceError: Config errors found:
Missing config.installId or AUGUST_INSTALL_ID env var

Config for homebridge-august

{
            "name": "August",
            "credentials": {
                "augustId": "xxxxxxxxxxxxx",
                "password": "xxxxxxxxxxxxx",
                "notice": "Keep your tokens a secret!",
                "isValidated": true
            },
            "options": {
                "devices": [
                    {
                        "lockId": "xxxxxxxxxxxxxx",
                        "configLockName": "Front Door",
                        "hide_device": false,
                        "lock": {
                            "hide_lock": true
                        }
                    }
                ]
            },
            "platform": "August"
        }

Screenshots

No response

Device & Model

Raspberry Pi 3B

Node.js Version

v18.12.1

NPM Version

v8.19.2

Homebridge Version

v1.6.0

Homebridge August Plugin Version

v1.1.0

Homebridge Config UI X Plugin Version

No response

Operating System

Raspbian

Feature Request: List of unsupported devices

Problem

Unclear if support for certain devices have yet to be considered or not possible at all. For example August Smart Lock 3rd Generation (not pro) with Connect Hub

Solution

List of unsupported devices for example August Smart Lock 3rd Generation (not pro) with Connect Hub

Alternatives

No response

Additional context

No response

Bug: Log reports error reading properties, Home.app then reports lock "was jammed"

Describe The Bug

Home.aLog reports error reading properties, Home.app then sends notification lock "was jammed"pp reports lock "was jammed" despite lock not being jammed. August app and other plugins do not report jam.

To Reproduce

Error is random with no seeming correlation to time since lock or unlock.

Expected behavior

No error, no Home.app notification.

Relevant log output

[10/8/2022, 6:26:09 PM] [August] TypeError: Cannot read properties of undefined (reading 'retryCount')
[10/8/2022, 6:26:09 PM] [August] Lock: Front Door failed lockStatus (refreshStatus), Error Message: "Cannot read properties of undefined (reading 'retryCount')"

Config for homebridge-august

"name": "August",
            "credentials": {
                "augustId": "[email protected]",
                "password": "xxxxxx",
                "validateCode": "xxxxx",
                "notice": "Keep your tokens a secret!"
            },
            "options": {
                "logging": "standard"
            },
            "platform": "August"

Screenshots

IMG_B63930AD8B1F-1

Device & Model

AugusAugust WiFi Smart Lock

Node.js Version

16.17.1

NPM Version

8.5.0

Homebridge Version

oznu/homebridge:latest

Homebridge August Plugin Version

4.50.1

Homebridge Config UI X Plugin Version

1.0.4

Operating System

Docker

Feature Request: New Yale Home app. Will it break anything?

Problem

More an awareness thing. As of today, Yale are transitioning away from Yale Access app, to Yale home app. Not sure if this will break homebridge support with this plugin or not.

Solution

Maybe as simple as adding updated links in code to new Yale domains?

Alternatives

To login via web, my app pushes me to https://account.aaecosystem.com/?brand=yale , whereas previously I'd used account.august.com to register the lock and get the verification pin.

Additional context

I have migrated my account to new Yale home, but not yet home to confirm if its broken the plugin. Thanks Donavan.

Bug: "Validated Error: Error: Validation code is invalid, should be six digits" if validateCode begins with zero

Describe The Bug

If the validation code received from August begins with a zero, the plugin throws an error.

To Reproduce

This will only occur if August happens to generate a code beginning with zero.

Expected behavior

The plugin should accept any six-digit validation code, even one beginning with zero.

Relevant log output

1/27/2023, 12:51:25 PMDoor Access BridgeAugustERRORValidated Error: Error: Validation code is invalid, should be six digits

Config for homebridge-august

{
    "platform": "August",
    "name": "August",
    "credentials": {
        "augustId": "xxx@xxx",
        "password": "xxx",
        "notice": "Keep your tokens a secret!",
        "logging": "debug",
        "validateCode": "012345"
    },
    "options": {
        "devices": [
            {
                "lockId": "xxx",
                "hide_device": false,
                "lock": {
                    "hide_contactsensor": true
                }
            }
        ]
    }
}

Screenshots

No response

Device & Model

any

Node.js Version

v16.19.0

NPM Version

v8.19.3

Homebridge Version

v1.5.0

Homebridge August Plugin Version

v1.1.0

Homebridge Config UI X Plugin Version

n/a

Operating System

Linux hoobs 5.10.103-v7l+ #1529 SMP Tue Mar 8 12:24:00 GMT 2022 armv7l GNU/Linux

Lock not being detected. "Total August Locks Found: undefined" "TypeError: deviceLists.map is not a function"

Current Situation

  • Installed latest beta to test api based events; homebridge-august v0.1.0-beta.18
  • Plugin appeared to authenticate as 2FA code was received and added to plugin config.
  • August WiFi Smart Lock (Gen 4) does not appear in accessories within Homebridge.
  • Attempted both directly connected to WiFi, and connected via August Bridge (preferred to save battery life.)
  • Lock does not appear in either WiFi setup method. (Works via August app and other Homebridge August plugins.)

Logs

[10/6/2022, 9:31:08 PM] [August] Total August Locks Found: undefined
[10/6/2022, 9:31:08 PM] [August] TypeError: deviceLists.map is not a function

Configuration

{
            "name": "August",
            "credentials": {
                "augustId": "[email protected]",
                "password": "xxxxxxxxx",
                "validateCode": "xxxxxxx",
                "notice": "Keep your tokens a secret!"
            },
            "options": {
                "logging": "standard"
            },
            "platform": "August"
        },

Environment

Additional Context

No response

Feature Request: Push Button

Problem

Push button rather than a switch for unlock state

Solution

Push button or single click button maybe?

Alternatives

Hello, Great plugin, it works with the YALE Keyless Connect, but as this auto-locks after 10 seconds when you unlock it its a fixed switch in either the locked or unlocked position, this then throws an error that re occurs in HomeKit. Thanks!

Additional context

[03/11/2022, 22:38:57] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:38:58] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:39:01] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:39:03] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:39:05] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:39:07] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:39:17] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:39:21] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:39:23] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:39:25] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:39:26] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:39:29] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:39:33] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:39:36] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:39:37] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:39:42] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:39:46] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:39:49] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:39:53] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:39:55] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:40:02] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:40:07] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:40:13] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:40:15] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:40:20] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:40:22] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:40:23] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:40:25] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:40:27] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:40:30] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:40:32] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:40:34] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:40:36] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:40:38] [August] Lock: Side Gate doorState: init, closed: false, open: false [03/11/2022, 22:40:43] [August] Lock: Side Gate doorState: init, closed: false, open: false

Bug:

Describe The Bug

API default poll rate 1800s is incosistent with text 5m/360s

To Reproduce

change the default refresh rate

Expected behavior

text default/value should match values

Relevant log output

warning message is sent if you change the default refresh rate ....
code shows the inconsistency:
platform.ts
if (!this.config.options.refreshRate) {
      // default 1800 seconds (30 minutes)
      this.config.options!.refreshRate! = 1800;
      this.debugWarnLog('Using Default Refresh Rate (5 minutes).');
    } else if (this.config.options.refreshRate < 1800) {
      this.config.options.refreshRate = 1800;
      this.warnLog('Refresh Rate cannot be set to lower the 5 mins, as Lock detail (battery level, etc) are unlikely to change within that period');
    }

Config for homebridge-august

"lockId": "BBA8ACA18E424FEDB6AB40AE84A0FAE1",
                        "configLockName": "Front Door",
                        "lock": {
                            "hide_contactsensor": true
                        },
                        "refreshRate": 360

Screenshots

IMG_2648

Device & Model

rpi

Node.js Version

v20.11.1

NPM Version

???

Homebridge Version

v1.7.0

Homebridge August Plugin Version

v2.0.0

Homebridge Config UI X Plugin Version

No response

Operating System

Debian GNU/Linux Bookworm (12)

Bug: MFA Code bug and UX inconsistency

Describe The Bug

After inputting email and password, hitting save, and receiving the MFA Auth key via email, going back to the config page to enter it works, but when I hit save, it just sends me another code, thereby invalidating the previous one.

To Reproduce

Followed instructions in readme

Expected behavior

it should have accepted the code and then brought up my lock when I scan the QR

Relevant log output

n/a

Config for homebridge-august

it was the standard initial json, with the addition of my credentials, nothing else

Screenshots

No response

Device & Model

RPI4

Node.js Version

latest

NPM Version

latest

Homebridge Version

latest

Homebridge August Plugin Version

latest

Homebridge Config UI X Plugin Version

latest

Operating System

Raspbian

Bug: V2.0 Validated Error: TypeError: Cannot read properties of undefined

Describe The Bug

Clean install with version 2.0. I go through the setup process (add email address and password), recieve the email code, set the country to GB from dropdown selector, add the validation code, restart HB and in the logs receive the error message. Gave the plugin a go about a week ago for the first time but had similar issues so waited for the update

To Reproduce

See above

Expected behavior

No error message/devices detected

Relevant log output

[1/31/2024, 8:16:19 AM] [August] Initializing August platform...
[1/31/2024, 8:16:19 AM] [August] [DEBUG] Using Config Logging: debug
[1/31/2024, 8:16:19 AM] [August] Finished initializing platform: August
[1/31/2024, 8:16:19 AM] [August] Platform Config: {"logging":"debug"}
[1/31/2024, 8:16:19 AM] [August] [DEBUG] Using Default Refresh Rate (5 minutes).
[1/31/2024, 8:16:19 AM] [August] [DEBUG] Config OK
[1/31/2024, 8:16:19 AM] Loading 1 accessories...
[1/31/2024, 8:16:19 AM] Ignoring config for the accessory "HomebridgeMessenger" in your config.json as the plugin "homebridge-messenger" has been disabled.
[1/31/2024, 8:16:19 AM] [August] [DEBUG] Executed didFinishLaunching callback
[1/31/2024, 8:16:19 AM] [August] [DEBUG] isValidated: false
[1/31/2024, 8:16:19 AM] [August] [DEBUG] countryCode: GB
[1/31/2024, 8:16:19 AM] [August] [DEBUG] August Credentials: {"installId":"XXXXXXXX","augustId":"XXXXXXXXX","password":"XXXXXXX","countryCode":"GB"}
[1/31/2024, 8:16:19 AM] [August] [DEBUG] August Credentials: {"config":{"apiKey":"XXXXXXXX","pnSubKey":"XXXXXXXXX","installId":"XXXXXXXX","idType":"email","augustId":"XXXXXXXX","password":"XXXXXXX","countryCode":"GB"}}
Setup Payload:
X-HM://0024CU0GDKMPP
Enter this code with your HomeKit app on your iOS device to pair with Homebridge:
                       
    ┌────────────┐     
    │ 535-82-285 │     
    └────────────┘     
                       
[1/31/2024, 8:16:19 AM] Homebridge v1.7.0 (HAP v0.11.1) (Homebridge 5CF5) is running on port 51295.
[1/31/2024, 8:16:19 AM] [August] Validated Error: TypeError: Cannot read properties of undefined (reading 'x-august-access-token')

Config for homebridge-august

{
    "name": "August",
    "credentials": {
        "augustId": "XXXXXXXX",
        "password": "XXXXXXXX",
        "countryCode": "GB",
        "installId": "XXXXXX",
        "validateCode": "XXXXX",
        "isValidated": true,
        "notice": "Keep your tokens a secret!"
    },
    "options": {
        "logging": "debug"
    },
    "platform": "August"
}

Screenshots

No response

Device & Model

Yale Conexis L2 with Connect wifi bridge

Node.js Version

v20.10.0

NPM Version

unknown

Homebridge Version

v1.7.0

Homebridge August Plugin Version

v2.0.0

Homebridge Config UI X Plugin Version

v4.55.1

Operating System

Debian GNU/Linux Bookworm (12)

Feature Request: Add August authentication info to debug log

Problem

When troubleshooting issues related to the authentication with the August cloud, it would be helpful to have transactional data in the debug log.

Solution

Add transactional info to the debug log, e.g. sending validateCode 123456, received reply, set installID 123-456-789-000, etc.

Alternatives

No response

Additional context

No response

Feature Request:

Problem

ReadMe Updates - Never received validation code from "Configuration step August Validate code will be sent after restarting Homebridge."

Solution

Folks instead can go to account.august.com and sign in, receive the verification code, and then input that verification code on the first pass/step 1 of config. I tried step 2 multiple times and never got a code, so I had to get creative.

Alternatives

This eliminates one step of the config, increasing velocity of onboarding :)

Additional context

Feel free to ask me any questions.

Bug:Yale Home migration breaks lock access

Describe The Bug

Yale has migrated all non-us-users to a new platform. This breaks access to all locks

To Reproduce

Log in to non-us account

Expected behavior

Locks should appear

Relevant log output

[August] Discover Devices: TypeError: Cannot convert undefined or null to object

Config for homebridge-august

{
            "name": "August",
            "credentials": {
                "augustId": "[email protected]",
                "password": "xxxxx",
                "installId": "xxxxx
                "notice": "Keep your tokens a secret!",
                "isValidated": true
            },
            "platform": "August"
        }

Screenshots

No response

Device & Model

Yale Linus, Yale L3

Node.js Version

v18.16.0

NPM Version

v9.6.5

Homebridge Version

v1.6.1

Homebridge August Plugin Version

v1.1.0

Homebridge Config UI X Plugin Version

v4.50.4

Operating System

macOS

Feature Request: Yale Conexis L1 Support

Problem

Getting an error with the above lock

Solution

Add support foe the above lock

Alternatives

No response

Additional context

This is the error I get [29/01/2023, 00:03:04] [August] Lock: Front Door doorState: unknown, closed: undefined, open: undefined FetchError: Status 422 (98): Bridge is offline

Bug: Cannot find my 4th Gen lock

Describe The Bug

The device cannot be added to the plugin with the error [August] Discover Devices: TypeError: Cannot convert undefined or null to object

To Reproduce

install home bridge on mac, install the plugin. Add the device with serial number, restart home bridge

Expected behavior

The device is found and i can control it with home bridge.

Relevant log output

FetchError: Status 401 (undefined): undefined
[August] Discover Devices: TypeError: Cannot convert undefined or null to object

Config for homebridge-august

{
    "bridge": {
        "name": "Homebridge 3926",
        "username": "********",
        "port": 51934,
        "pin": "841-**-***",
        "advertiser": "bonjour-hap"
    },
    "accessories": [],
    "platforms": [
        {
            "name": "Config",
            "port": 8581,
            "platform": "config"
        },
        {
            "devices": [
                {
                    "type": "bot",
                    "name": "Hallway Light",
                    "address": "***********",
                    "autoTurnOffInPressMode": false
                }
            ],
            "name": "SwitchbotBluetoothPlatform",
            "_bridge": {
                "username": "**********",
                "port": 41029
            },
            "platform": "SwitchbotBluetoothPlatform"
        },
        {
            "name": "August",
            "credentials": {
                "augustId": "[email protected]",
                "password": "mypassword",
                "installId": "1",
                "validateCode": "******",
                "isValidated": true,
                "notice": "Keep your tokens a secret!"
            },
            "options": {
                "devices": [
                    {
                        "lockId": "**********",
                        "configLockName": "Door",
                        "logging": "debug"
                    }
                ],
                "logging": "debug"
            },
            "platform": "August"
        }
    ]
}

Screenshots

No response

Device & Model

4th Gen Lock

Node.js Version

v19.3.0

NPM Version

9.2.0

Homebridge Version

v1.6.0

Homebridge August Plugin Version

v1.1.0

Homebridge Config UI X Plugin Version

No response

Operating System

macOS

Feature Request: August DoorbellCam reboot

Problem

I have to tell you, this plugin is fantastic. It pulls DoorSense, battery status, everything. I love it. The ONE THING (isn't there always one thing?) that would be amazingly useful in an August plugin is the ability to trigger a reboot of the Doorbell Cam. It's do-able in the August Home app by drilling down to the doorbell settings and selecting the "reboot doorbell" option -- and the DC needs rebooting fairly often, especially when pulling RTSP streams into things like Scrypted or homebridge-camera-ffmpeg. It's not in the reverse-engineered API list, as hufftheweevil didn't have a Doorbell Cam for testing.

Solution

I have a (used, clean) Doorbell Cam Pro ready to use for API scraping. I can work with someone, or send this Doorbell Cam to them.

Alternatives

The only alternative is to use the August Home app to manually trigger a reboot, which is very...manual.

Additional context

IMG_0932

Errors after migration to new host device

Describe The Bug

I migrated my HomeBridge from one RPi to another RPi and now HB won't startup. Was working fine before. I tried deleting all the configuration information but I still get the error.

To Reproduce

Backup HB, restore HB on a new device

Expected behavior

HB be able to startup and August Lock plugin to continue working

Relevant log output

[30/12/2023, 12:42:26] [August] Initializing August platform...
[30/12/2023, 12:42:26] [August] Platform Config: {"logging":"standard"}
[30/12/2023, 12:42:26] [B-Hyve] Initializing bhyve platform...
[30/12/2023, 12:42:26] [B-Hyve] Starting Orbit Platform using homebridge API 2.7
[30/12/2023, 12:42:26] [B-Hyve] Getting Account info...
[30/12/2023, 12:42:26] [August] Input Your August email verification code into the validateCode config and restart Homebridge.
FetchError: Status 429 (undefined): undefined
[30/12/2023, 12:42:26] TypeError: Cannot read properties of undefined (reading 'x-august-access-token')
    at August.session (/var/lib/homebridge/node_modules/homebridge-august/node_modules/august-api/src/util/session.js:28:34)
    at processTicksAndRejections (node:internal/process/task_queues:95:5)
    at August.#start (/var/lib/homebridge/node_modules/homebridge-august/node_modules/august-api/src/index.js:49:19)
    at August.authorize (/var/lib/homebridge/node_modules/homebridge-august/node_modules/august-api/src/methods/authorize.js:9:13)
[30/12/2023, 12:42:26] Got SIGTERM, shutting down Homebridge...

Config for homebridge-august

{
            "name": "August",
            "credentials": {
                "augustId": "my personal [email protected]",
                "password": "my august password",
                "isValidated": false,
                "notice": "Keep your tokens a secret!",
                "installId": "bcade58e-5b96-4003-91b6-fc2242460185"
            },
            "options": {
                "logging": "standard"
            },
            "platform": "August"
        },

Screenshots

No response

Device & Model

Unsure of model of August locks - though I have two

Node.js Version

v20.10.0

NPM Version

v10.2.3

Homebridge Version

Homebridge v1.7.0 (HAP v0.11.1)

Homebridge August Plugin Version

v1.3.3

Homebridge Config UI X Plugin Version

No response

Operating System

Debian GNU/Linux 12 (bookworm) [64 bit]

Bug: Discover Devices 2: TypeError: Cannot convert undefined or null to object with both 1.3.5-beta.5 & v2.0.0

Describe The Bug

When the plugin starts, it gave "Discover Devices 2: TypeError: Cannot convert undefined or null to object".

To Reproduce

Install either 1.3.5-beta.5 or v2.0.0 and restart the plugin

Expected behavior

Without this error and device is able to show in homebridge.

Relevant log output

[1/30/2024, 9:31:37 PM] [August] Launched child bridge with PID 47609
[1/30/2024, 9:31:37 PM] Registering platform 'homebridge-august.August'
[1/30/2024, 9:31:37 PM] [August] Loaded homebridge-august v1.3.5-beta.5 child bridge successfully
[1/30/2024, 9:31:37 PM] Loaded 0 cached accessories from cachedAccessories.0E67EC312ADF.
[1/30/2024, 9:31:37 PM] [August] [DEBUG] Using Config Logging: debug
[1/30/2024, 9:31:37 PM] [August] Finished initializing platform: August
[1/30/2024, 9:31:37 PM] [August] Platform Config: {"logging":"debug"}
[1/30/2024, 9:31:37 PM] [August] [DEBUG] Using Default Refresh Rate (5 minutes).
[1/30/2024, 9:31:37 PM] [August] [DEBUG] Config OK
[1/30/2024, 9:31:37 PM] [August] [DEBUG] Executed didFinishLaunching callback
[1/30/2024, 9:31:37 PM] [August] [DEBUG] augustId: [email protected], installId: XXXXXXXXXXXXXXXXXXXX, password: XXXXXXXX, isValidated: true
[1/30/2024, 9:31:37 PM] [August] [DEBUG] countryCode: US
[1/30/2024, 9:31:37 PM] [August] [DEBUG] August Credentials: {"installId”:”XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX,”augustId":"[email protected]","password”:”XXXXXXX”,”countryCode":"US"}
[1/30/2024, 9:31:37 PM] [August] [DEBUG] August Credentials: {"config":{"apiKey”:”XXXXXXXXXXXXXXXXXX,”pnSubKey":"sub-c-XXXXXXXXXXXXXXXXXXXXXX”,”installId”:”XXXXXXXXXXXXXXXXXXXXXXXXXXXX”X,”idType":"email","augustId":"[email protected]","password”:”XXXXXXX”,”countryCode":"US"}}
[1/30/2024, 9:31:37 PM] Homebridge v1.7.0 (HAP v0.11.1) (August) is running on port 43273.
FetchError: Status 401 (undefined): undefined
[1/30/2024, 9:31:38 PM] [August] Discover Devices 2: TypeError: Cannot convert undefined or null to object



[1/30/2024, 9:36:42 PM] [August] Restarting child bridge...
[1/30/2024, 9:36:42 PM] Got SIGTERM, shutting down child bridge process...
[1/30/2024, 9:36:47 PM] [August] Child bridge process ended
[1/30/2024, 9:36:47 PM] [August] Process Ended. Code: 143, Signal: null
[1/30/2024, 9:36:54 PM] [August] Restarting Process...
[1/30/2024, 9:36:54 PM] [August] Launched child bridge with PID 48074
[1/30/2024, 9:36:55 PM] Registering platform 'homebridge-august.August'
[1/30/2024, 9:36:55 PM] [August] Loaded homebridge-august v2.0.0 child bridge successfully
[1/30/2024, 9:36:55 PM] Loaded 0 cached accessories from cachedAccessories.0E67EC312ADF.
[1/30/2024, 9:36:55 PM] [August] [DEBUG] Using Config Logging: debug
[1/30/2024, 9:36:55 PM] [August] Finished initializing platform: August
[1/30/2024, 9:36:55 PM] [August] Platform Config: {"logging":"debug"}
[1/30/2024, 9:36:55 PM] [August] [DEBUG] Using Default Refresh Rate (5 minutes).
[1/30/2024, 9:36:55 PM] [August] [DEBUG] Config OK
[1/30/2024, 9:36:55 PM] [August] [DEBUG] Executed didFinishLaunching callback
[1/30/2024, 9:36:55 PM] [August] [DEBUG] augustId: [email protected], installId: XXXXXXXXXXXXXXXXXXXXXXXX, password: XXXXXXX, isValidated: true
[1/30/2024, 9:36:55 PM] [August] [DEBUG] countryCode: US
[1/30/2024, 9:36:55 PM] [August] [DEBUG] August Credentials: {"installId”:”XXXXXXXXXXXXXXXXXXXXXX,”augustId":"[email protected]","password”:”XXXXXXXX,”countryCode":"US"}
[1/30/2024, 9:36:55 PM] [August] [DEBUG] August Credentials: {"config":{"apiKey”:”XXXXXXXXXXXXXXXXXXXXXX,”pnSubKey":"sub-c-XXXXXXXXXXXXXXXXXXXX","installId”:”XXXXXXXXXXXXXXXXXXXXXXXXX”,”idType":"email","augustId":"[email protected]","password”:”XXXXXXXX”,”countryCode":"US"}}
[1/30/2024, 9:36:55 PM] Homebridge v1.7.0 (HAP v0.11.1) (August) is running on port 43273.
FetchError: Status 401 (undefined): undefined
[1/30/2024, 9:36:55 PM] [August] Discover Devices 2: TypeError: Cannot convert undefined or null to object

Config for homebridge-august

{
            "name": "August",
            "credentials": {
                "augustId": "[email protected]",
                "password": "XXXXXXXX",
                "contryCode": "US",
                "installId": "XXXXXXXXXXXXXXXXXXXXXXXX",
                "isValidated": true,
                "notice": "Keep your tokens a secret!"
            },
            "options": {
                "logging": "debug"
            },
            "_bridge": {
                "username": "XXXXXXXXXXXX",
                "port": 43273
            },
            "platform": "August"
        }

Screenshots

No response

Device & Model

Lock Model YR C/D 226/246/256

Node.js Version

20.11.0

NPM Version

10.2.4

Homebridge Version

v1.7.0

Homebridge August Plugin Version

v2.0.0

Homebridge Config UI X Plugin Version

v4.54.1

Operating System

macOS Ventura

Support Request:

Describe Your Problem

August Plugin not triggering 2FA request

Relevant log output

Hi - no matter what I do, I cannot get the plugin to generate the request for the 2FA code.

I've tried doing it myself (i.e. logging into August via web client, requesting the code, and entering that into the plugin UI/restarting etc), but no joy.

I don't think it's related, but August seems to have 2 authentication sites:

https://account.august.com/login
https://auth.august.com/

The second site will generate a 2FA code, but then fails to login and leads to a 404 error. The first site works as expected (but the 2FA code it generates doesn't seem to work for the plugin).

Config for homebridge-august

{
            "name": "August",
            "credentials": {
                "augustId": "[email protected]",
                "password": "<redacted>",
                "installId": "e57cdcbd-7af5-4da4-b014-d60237d01d60",
                "isValidated": false,
                "notice": "Keep your tokens a secret!"
            },
            "options": {
                "logging": "debug"
            },
            "platform": "August"
        }
    ]
}

Screenshots

No response

Device & Model

n/a

Node.js Version

18.16.0

NPM Version

??

Homebridge Version

1.6.0

Homebridge August Plugin Version

1.1.0

Homebridge Config UI X Plugin Version

No response

Operating System

Raspbian

Feature Request: doorbell

Problem

Get push notifications on doorbell pushes

Solution

As i can read in the august api theres a way to Get doorbell status.

Alternatives

No response

Additional context

No response

Bug: [August] Discover Devices: TypeError: Cannot convert undefined or null to object

Describe The Bug

Locks not functioning

To Reproduce

Install 2 August Door locks without Door Sense, make them available of WiFi. Installed this home bridge extension. Setup according to instructions. See issues as reported by #21, so set configuration for each lock as shown in bug report. Restart Homebridge.

Expected behavior

Extension not report errors, and locks are functional.

Relevant log output

7/24/2023, 10:20:56 PM] [August] Initializing August platform...
[7/24/2023, 10:20:56 PM] [August] [DEBUG] Using Config Logging: debug
[7/24/2023, 10:20:56 PM] [August] [DEBUG] Finished initializing platform: August
[7/24/2023, 10:20:56 PM] [August] Platform Config: {"logging":"debug"}
[7/24/2023, 10:20:56 PM] [August] [DEBUG] Using Default Refresh Rate (5 minutes).
[7/24/2023, 10:20:56 PM] [August] [DEBUG] Config OK
[7/24/2023, 10:20:56 PM] [August] [DEBUG] Loading accessory from cache: Garage Door
[7/24/2023, 10:20:56 PM] [August] [DEBUG] Loading accessory from cache: Front Door
[7/24/2023, 10:20:56 PM] [August] [DEBUG] Executed didFinishLaunching callback
[7/24/2023, 10:20:56 PM] [August] [DEBUG] augustId: [email protected], installId: xxxx, password: xxx, isValidated: true
[7/24/2023, 10:20:56 PM] [August] [DEBUG] August Credentials: {"config":{"apiKey":"79xxxx","pnSubKey":"sub-c-xxxx","installId":"xxxx","idType":"email","augustId":"[email protected]","password":"xxx"}}
...
FetchError: Status 429 (undefined): undefined
[7/24/2023, 10:20:57 PM] [August] Discover Devices: TypeError: Cannot convert undefined or null to object

Config for homebridge-august

{
            "name": "August",
            "credentials": {
                "augustId": "[email protected]",
                "password": "xxxx",
                "installId": "xxxx",
                "isValidated": true,
                "notice": "Keep your tokens a secret!"
            },
            "options": {
                "devices": [
                    {
                        "lockId": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
                        "configLockName": "Front Door",
                        "hide_device": false,
                        "lock": {
                            "hide_contactsensor": true
                        },
                        "logging": "debug"
                    },
                    {
                        "lockId": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
                        "configLockName": "Garage Door",
                        "hide_device": false,
                        "lock": {
                            "hide_contactsensor": true
                        },
                        "logging": "debug"
                    }
                ],
                "logging": "debug"
            },
            "platform": "August"

Screenshots

No response

Device & Model

AUG-SL04-M01-G04

Node.js Version

v18.16.0

NPM Version

9.6.3

Homebridge Version

v1.6.1

Homebridge August Plugin Version

1.2.0-beta.2

Homebridge Config UI X Plugin Version

v4.50.4

Operating System

Debian GNU/Linux Bullseye (11)

Feature Request: Hide specific locks

Problem

I have access to several locks in different homes in my August app. I would like to be able to hide all locks except those that are mine in the Home app.

Solution

Option to expose only certain locks to HomeKit.

Alternatives

No response

Additional context

No response

Feature Request: Hide Lock Mechanism

Discussed in #24

Originally posted by Phixius5968 November 2, 2022
Hi there,
Since I have the lock added to HomeKit natively, adding it via homebridge-august double the buttons in the HomeKit. I'm actually looking for a way to hide the lock button but not the device entirely.
My motivation is to be able to monitor the doorsense and the battery level of the lock but to simply have one lock button in the HomeKit.

Thank you!

Support Request: Settings UI Blank

Describe Your Problem

When I use the Settings button on in the plugins section of the UI for this plugin, the options come up blank

Relevant log output

There doesn't seem to be any relevant log output

Config for homebridge-august

{
    "bridge": {
        "name": "Homebridge",
        "username": "0E:36:B1:22:75:CB",
        "port": 51520,
        "pin": "673-49-500",
        "advertiser": "bonjour-hap"
    },
    "accessories": [
        {
            "accessory": "Kuna",
            "name": "Porch Light",
            "email": "EMAIL",
            "password": "PASSWORD",
            "serial": "SERIAL",
            "_bridge": {
                "username": "0E:99:0C:5D:C1:7A",
                "port": 56879
            }
        }
    ],
    "platforms": [
        {
            "name": "Config",
            "port": 8581,
            "platform": "config"
        },
        {
            "auth_mode": "token",
            "refresh_token": "REFRESH_TOKEN",
            "country": "CA",
            "language": "en-CA",
            "thinq1": false,
            "platform": "LGThinQ",
            "name": "LGThinQ",
            "devices": [
                {
                    "id": "ID",
                    "name": "Top Load Washer",
                    "type": "WASHER",
                    "serial_number": "SERIAL",
                    "washer_trigger": false,
                    "washer_door_lock": false
                }
            ],
            "refresh_interval": 60,
            "_bridge": {
                "username": "0E:99:0C:5D:C1:7B",
                "port": 38610
            }
        },
        {
            "token": "TOKEN",
            "capabilityLogging": true,
            "registerApplications": false,
            "registerPictureModes": true,
            "registerSoundModes": true,
            "registerVolumeSlider": true,
            "platform": "smartthings-tv",
            "_bridge": {
                "username": "0E:5E:C9:15:B8:41",
                "port": 56874
            }
        },
        {
            "name": "August",
            "credentials": {
                "augustId": "EMAIL",
                "password": "PASSWORD",
                "installId": "INSTALLID",
                "isValidated": true,
                "notice": "Keep your tokens a secret!"
            },
            "options": {
                "logging": "debug"
            },
            "platform": "August",
            "_bridge": {
                "username": "0E:5E:48:CD:8D:36",
                "port": 56977
            }
        },
        {
            "services": [
                {
                    "logFoundServices": false,
                    "proxyAll": false,
                    "enableHistory": true,
                    "historyInterval": 600
                }
            ],
            "_bridge": {
                "username": "0E:DB:19:16:CB:2A",
                "port": 38824
            },
            "platform": "HomekitControl"
        }
    ],
    "disabledPlugins": [
        "homebridge-homekit-control"
    ]
}

Screenshots

image

Device & Model

August WiFi 4th Generation Smart Lock

Node.js Version

v18.18.1

NPM Version

v9.8.1

Homebridge Version

v1.6.1

Homebridge August Plugin Version

homebridge-august v1.2.1

Homebridge Config UI X Plugin Version

homebridge-config-ui-x v4.50.6

Operating System

Ubuntu Jammy Jellyfish (22.04.3 LTS) (within docker)

Feature Request: Reduce the number of calls to the August API.

Problem

Every time the status of the lock is requested, two calls are made to the August API. I see homebridge-august making these calls to august-api when it refreshes the state of the lock:
lockStatus:
const lockStatus = await this.platform.august.status(this.device.lockId);
which calls through to the august-api status object, which then does this:
let { body } = await this.put(/remoteoperate/${lockId}/status)
and lockDetails:
const lockDetails = await this.platform.august.details(this.device.lockId);
which calls through to august-api details object, which then does this:
let { body } = await this.get(/locks/${lockId})

Solution

Almost all the data is available in the lockDetails call, except for if the lock is jammed (retryCount > 1). We should just use lockDetails and work out another way to handle a jammed lock.

Alternatives

No response

Additional context

Calls to the August API is rate limited, so reducing the number of calls to the API is a good thing in general. Also some people are running into issues when they have multiple locks, they hit the rate limit.

August Lock Plug-in Error

Describe Your Problem

Hello, I am trying to an August WiFi lock via Homebridge, and have installed your August Plugin and after trying various Node.js versions (14.18.0 suggested didn't work but the Homebridge Logs stated than I needed 14.20.1 which got me closer. Now I have one remaining Error message:

Relevant log output

[August] Discover Devices: TypeError: Cannot convert undefined or null to object

Config for homebridge-august

{
    "name": "August",
    "credentials": {
        "augustId": "****.***@icloud.com",
        "password": "***@*********",
        "validateCode": "******",
        "notice": "Keep your tokens a secret!"
    },
    "platform": "August"
}

Screenshots

No response

Device & Model

August WiFi Lock

Node.js Version

v14.20.1

NPM Version

V6.14.17

Homebridge Version

v1.5.1

Homebridge August Plugin Version

v1.0.5

Homebridge Config UI X Plugin Version

No response

Operating System

macOS Ventura

Bug: Discover Devices 2: TypeError: Cannot convert undefined or null to object

Describe Your Problem

I’ve had the plugin working before but I installed a fresh copy of homebridge and now it doesn’t work. Thank you

Relevant log output

Devices 2: TypeError: Cannot convert undefined or null to object

Config for homebridge-august

No response

Screenshots

No response

Device & Model

I have 12 locks. 1 Yale Conexis 11 Yale connected

Node.js Version

V18.17.1

NPM Version

9

Homebridge Version

V1.61

Homebridge August Plugin Version

V1.21

Homebridge Config UI X Plugin Version

4.60.6

Operating System

Pi

Bug:With debugging turned on, the full JSON object of the AugustEvent isn't printed

Describe The Bug

It is difficult to debug what is going on when the AugustEvent is printed to the console.

To Reproduce

Turn on debugging, and observe August Event log entry

Expected behavior

The full JSON AugustEvent is printed.

Relevant log output

[7/26/2023, 1:27:01 PM] [August] [DEBUG] Lock: Garage Door AugustEvent: "16904032209277141"

Config for homebridge-august

N/A for this issue

Screenshots

No response

Device & Model

N/A

Node.js Version

N/A

NPM Version

N/A

Homebridge Version

N/A

Homebridge August Plugin Version

v1.2.0-beta.2

Homebridge Config UI X Plugin Version

N/A

Operating System

N/A

Handle Rate limiting from August APIs

Problem

With 3 locks, I got rate limited (429 error) within minutes of setup (was trying to setup 2 duplicate child bridges with the same account so 6 locks in total). I also have to restart the bridge if discovery fails at startup. Had to wait nearly an hour for August to unblock my IP to try again.

If August blocks an IP, they don't allow even the first validation SMS to go out..

Solution

Perhaps we can disable any unnecessary API calls, or delay status updates? Present homebridge-august settings are at 360 seconds refresh interval.

Alternatives

  • Retry calls after a few minutes
  • Handle these errors more gracefully with a notification on HomeBridge / ios?

Additional context

I get these errors when the IP is ratelimited.
FetchError: Status 429 (undefined): undefined
FetchError: Status 429 (undefined): undefined
[13/04/2023, 12:30:56] [August] Discover Devices: TypeError: Cannot convert undefined or null to object

Bug: Lock status continually shows as "Unlocking"

Describe The Bug

When a lock is manually unlocked, it shows in HomeKit as "Unlocking" until I hit the unlock button, at which point it immediately changes to "Unlocked." The same thing happens when the lock is manually locked, but it shows "Locking" until I hit the button, and it changes to "Locked."

To Reproduce

Setup the plugin, get the lock into HomeKit, manually unlock or lock the lock.

Expected behavior

The status in HomeKit should reflect actual current status of the lock.

Relevant log output

I don't see any standard log output for this condition, but I can enable debug & see what happens, if that is needed.

Config for homebridge-august

{
    "platform": "August",
    "name": "August",
    "credentials": {
        "augustId": "xxxx",
        "password": "xxxx",
        "validateCode": "xxxx"
    },
    "options": {
        "devices": [
            {
                "lockId": "xxxxxxxxxxxxxxxxxxx",
                "hide_device": true
            }
        ]
    }
}

Screenshots

No response

Device & Model

We have six AUG-SL04-M01-S04 locks, and one Gen 4 WiFi lock (hidden since it's HomeKit native)

Node.js Version

v16.18.0

NPM Version

v8.19.2

Homebridge Version

1.5.0

Homebridge August Plugin Version

v1.0.5

Homebridge Config UI X Plugin Version

HOOBS 4.2.8

Operating System

Linux hoobs 5.10.103-v7l+ #1529 SMP Tue Mar 8 12:24:00 GMT 2022 armv7l GNU/Linux

Support Request:

Describe Your Problem

after multiple tries it won't connect to v4 lock

Relevant log output

FetchError: Status 429 (undefined): undefined
[04/05/2023, 14:21:39] [August] Discover Devices: TypeError: Cannot convert undefined or null to object

Config for homebridge-august

"name": "August",
            "credentials": {
                "augustId": "[email protected]",
                "password": "xxxxx",
                "installId": "xxx",
                "isValidated": true,
                "notice": "Keep your tokens a secret!"

Screenshots

No response

Device & Model

August smartlock v4

Node.js Version

v18.16.0

NPM Version

1.1.0

Homebridge Version

1.6.1

Homebridge August Plugin Version

v1.1.0

Homebridge Config UI X Plugin Version

v

Operating System

Raspbian

Bug: 2FA code for mobile phone never arrives

Describe The Bug

After entering phone number and password, I am told to check for the auth code but it never arrives

To Reproduce

Install plugin, enter phone number + password, restart Homebridge, see log stating "Check +447930XXXXXX for your validation code"

Expected behavior

Auth code is sent

Relevant log output

After rebooting Homebridge, this is what I see:

[18/01/2023, 16:45:09] [August] Input Your August email verification code into the validateCode config and restart Homebridge.
[18/01/2023, 16:45:09] Homebridge v1.6.0 (HAP v0.11.0) (Homebridge C193) is running on port 51867.
FetchError: Status 403 (undefined): undefined
Check +447930XXXXXX for your validation code

Note I obfuscated the complete phone number with XXXXXX.

--

Note: I have tried with email and password instead of phone number and password. It seems to start off better, after entering email & password in the augustId and password field I see this in the logs:

[18/01/2023, 16:57:10] [August] Input Your August email verification code into the validateCode config and restart Homebridge.
[18/01/2023, 16:57:10] Homebridge v1.6.0 (HAP v0.11.0) (Homebridge C193) is running on port 51867.
Check [email protected] for your validation code

I then receive an email with the following from August "Your August email verification code is XXXXXX"

I enter that code into the August plugin and restart Homebridge, and then get this in the logs:

FetchError: Status 401 (undefined): undefined
[18/01/2023, 16:58:13] [August] Discover Devices: TypeError: Cannot convert undefined or null to object

When I then look at my config I see that isValidated is true:

       {
            "name": "August",
            "credentials": {
                "augustId": "[email protected]",
                "password": "XXXXXXX",
                "installId": "0f8ef282-9381-4a6b-8a86-XXXXXXXXXX",
                "notice": "Keep your tokens a secret!",
                "isValidated": true
            },
            "platform": "August"
        }

Config for homebridge-august

{
    "bridge": {
        "name": "Homebridge C193",
        "username": "XXXXXX",
        "port": 51867,
        "pin": "XXX-XXX-XXX",
        "advertiser": "avahi"
    },
    "accessories": [],
    "platforms": [
        {
            "name": "Config",
            "port": 8581,
            "platform": "config"
        },
        {
            "name": "Meross",
            "username": "[email protected]",
            "password": "XXXXXXXX",
            "connection": "default",
            "platform": "Meross"
        },
        {
            "name": "August",
            "credentials": {
                "augustId": "+447930XXXXXX",
                "password": "XXXXXXXX",
                "notice": "Keep your tokens a secret!",
                "installId": "0f8ef282-9381-4a6b-8a86-XXXXXXXXX"
            },
            "platform": "August"
        }
    ]
}

Screenshots

No response

Device & Model

Raspberry Pi with Homebridge image

Node.js Version

v18.12.1

NPM Version

Unknown

Homebridge Version

Up To Date v1.6.0

Homebridge August Plugin Version

v1.1.0

Homebridge Config UI X Plugin Version

v4.50.2

Operating System

Raspbian GNU/Linux Bullseye (11)

Support Request: Status 401

Describe Your Problem

I suddenly can't access my device. If I change my country to UK, I get an error status 403. I did previous see api-access-request something or other further up but can't see it now.

Relevant log output

[1/22/2024, 9:51:15 PM] [August] Initializing August platform...
[1/22/2024, 9:51:15 PM] [August] Initializing child bridge 0E:15:72:70:46:C6
[1/22/2024, 9:51:19 PM] [August] Launched child bridge with PID 2392
[1/22/2024, 9:51:19 PM] Registering platform 'homebridge-plugin-ewelink-cube.eWeLinkCUBEPlatform'
[1/22/2024, 9:51:23 PM] [August] Loaded homebridge-august v1.3.5-beta.1 child bridge successfully
[1/22/2024, 9:51:24 PM] Homebridge v1.7.0 (HAP v0.11.1) (August) is running on port 48976.
FetchError: Status 401 (undefined): undefined
[1/22/2024, 9:51:24 PM] [August] Discover Devices 2: TypeError: Cannot convert undefined or null to object

Config for homebridge-august

{
    "name": "August",
    "credentials": {
        "augustId": "myusername",
        "password": "mypassword",
        "installId": "mystring",
        "notice": "Keep your tokens a secret!",
        "isValidated": true
    },
    "platform": "August",
    "_bridge": {
        "username": "0E:15:72:70:46:C6",
        "port": 48976
    }
}

Screenshots

No response

Device & Model

Yale Conexis L2

Node.js Version

v20.10.0

NPM Version

v

Homebridge Version

v1.7.0

Homebridge August Plugin Version

v1.3.5

Homebridge Config UI X Plugin Version

No response

Operating System

Docker

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.