0.1.0 • Published 3 years ago

homebridge-sesame-smart-lock v0.1.0

Weekly downloads
8
License
MIT
Repository
github
Last release
3 years ago

homebridge-sesame-smart-lock

npm version

Control and monitor your Sesame smart lock with HomeKit integration.

Prerequisites

  • Installation of Homebridge
  • iOS 11 or later
  • Sesame lock with enabled cloud integration
  • Sesame Wifi Access Point

Functionality

  • Automatic discovery of all connected locks
  • Lock control
  • WebHook support
  • Reports battery percentage levels
  • Alerting when battery runs low

Installation

npm install -g homebridge-sesame

Obtain an API Token

This plugin now uses v3 of the Sesame API which requires an existing API token.

To create an API token, log into the Sesame Dashboard and click on "API Settings" in the sidebar. The token you create will be used in your homebridge config file.

Using WebHooks

This plugin can respond to WebHooks sent from the Sesame API which allows locks to update in the background when a lock or unlock action occurs outside of the Home app. Please note this requires the IP address of your homebridge host to be exposed to the outside world via port forwarding, etc.

Setting up the WebHook

  • Log into the Sesame Dashboard and click on "API Settings" in the sidebar.
  • Under "Services", click the edit button next to "Webhook" and select "POST" from the dropdown.
  • Enter the publicly-accessible IP address of your homebridge server and the port used by this plugin (default: 33892). For example: http://<IP address>:33892.

When the plugin receives a WebHook request, the corresponding lock in HomeKit will update its locked state accordingly.

Troubleshooting

If the lock always returns 'Not responding' in HomeKit but successfully locks/unlocks this can be due to Homebridge timing out the request.

To avoid this error, set skip_wait to true in the config. This will instantly set the new status in HomeKit and not wait for a response.

Configuration

Example config

At a minimum, you just need to provide your API token in the token field:

{
  "platforms": [
    {
      "platform": "Sesame",
      "token": "YOUR_API_TOKEN"
    }
  ]
}

The plugin will discover your connected locks when homebridge is restarted.

Fields

VariableDescription
tokenYour Sesame API token (required)
portThe port of the WebHook listener (default: 33892)
debugSet to true to enable additional debug logging (default: false)
skip_waitSet to true to update lock in Home without waiting for task confirmation (default: false)

Example config changing default values

{
  "platforms": [
    {
      "platform": "Sesame",
      "token": "YOUR_API_TOKEN",
      "port": 55901,
      "debug": true,
      "skip_wait": true
    }
  ]
}