This plugin is meant to be an improvement over the existing homebridge-qsesame plugin which hasn't been updated in a long time and has some limitations that I wanted to address, namely not being able to configure multiple locks and receiving periodic unhelpful error messages. Although I do really appreciate all the work that the creator of homebridge-qsesame has put into it!

New Plugin Advantages:

The plugin runs as a Homebridge platform rather than a single accessory which allows auto-discovery of multiple Sesame locks

Improved error handling and messaging

Noticeable performance improvements

Reduced amount of API calls

Of course, it also includes battery status reporting and low battery warnings.

Nice work @andrew.schaper! I had written a platform based plugin as well, but I like your approach much better. So nice and clean.

The only feature my new version has that this doesn't is an option to poll the API for updates. Its been helpful for me because I don't have to open Home or the Control Center to get new state. Obviously this isn't as nice as something like a websockets integration, but it works. Would you consider adding something like that?

Thank you for the kind words @brendan! That's awesome to hear your plugin is now platform-based!

I had been considering polling the API for updates primarily because I wanted the state to be updated when the lock is manually locked or unlocked. Unfortunately, based on my testing the API itself doesn't update when manually controlled (which appears to be a known issue).

Exactly! Manual locks / unlocks is why I pursued it in the first place. I gave up eventually and just turned on auto lock, but the dream lives on haha.

The API state was really bad until quite recently. In the past few weeks it has become much more accurate, though, and now it usually updates within 20 seconds. In my plugin I used a long poll / short poll strategy. So normally it was on long poll mode where it would check every few minutes (to save API calls), but after a lock or unlock request it would check every 5 seconds (because state is about to change). The longPoll and shortPoll times are configurable.

Honestly though... I don't see the harm in just polling the API frequently. Maybe it will encourage our friends at CANDYHOUSE to do provide a websockets or some other push like integration. I have done some tests and haven't found any rate-limiting issues etc.

@andrew.schaper Thanks for your work on the plugin! We've added it to our list here, let us know if you'd like us to change the attribution or link and we'd be happy to change it for you.

Regarding manual lock/unlock, the API status should be updated within 5-15 seconds after the manual event. Could you try again to see if you notice the status updating with latency or if it doesn't update at all? If it's the latter, please let us know your Sesame ID so we can check the logs and see what's going wrong. Thanks so much! - CANDY HOUSE

Oops, so sorry about the error! It should be fixed now, please refresh the page and you should see your name properly attributed now. We apologize for the mistake.

Thanks for letting us know that the manual change is updating correctly! That's what we expect to see and it's good to know it's working. Let us know if you notice any further issues with the API so we can take a look. Thanks! - CANDY HOUSE

Thanks so much for this! I got it working with Sesame appearing in the Home App and even able to unlock with Siri.But... After I run the Homebridge plugin on my mac, it works fine. But the moment I close my mac or shut it down, the connection to Sesame is no longer happening through the home app. Is it possible to get Homebridge running constantly? Or do I have to have my mac always on?

Ideally, homebridge will work best when it's running a machine that is always on. A very popular option is to have it running on a dedicated Raspberry Pi so you wouldn't have to worry about keeping homebridge on your Mac.