Gem Version Build Status Coverage Status

Sesame

This gem provides a simple Ruby wrapper around the CANDY HOUSE Sesame API to control Sesame Bluetooth and Internet-connected locks.

Installation

Add this line to your application's Gemfile:

gem 'sesame-ruby'

And then execute:

$ bundle

Or install it yourself as:

$ gem install sesame-ruby

Usage

# Log into the API
> client = Sesame::Client.new(email: '[email protected]', password: 'super-strong-password')
=> #<Sesame::Client:0x007fa1a81771d0 user: [email protected]>

# Get an array of all API-enabled devices associated with the account
> client.sesames
=> [#<Sesame::Sesame:0x007fa1aa3bb188 device_id: ABC1234567, nickname: Front door, is_unlocked: true, api_enabled: true, battery: 100>,
#<Sesame::Sesame:0x007fa1aa3bb160 device_id: DEF7654321, nickname: Back door, is_unlocked: false, api_enabled: false, battery: 80>]

# Get a single device
> sesame = client.sesame(device_id: 'ABC1234567')
=> #<Sesame::Sesame:0x007fa1aa3bb188 device_id: ABC1234567, nickname: Front door, is_unlocked: true, api_enabled: true, battery: 100>

# Control the device
> sesame.unlock
=> true
> sesame.lock
=> true

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

License

The gem is available as open source under the terms of the Apache License, Version 2.0.