Skip to content

YutoUchimi/sesame_ros

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

sesame_ros

GitHub version Build Status

ROS API for Sesame smart lock made by CANDY HOUSE, Inc.

API key

You have to create your authorization token by logging into the CANDY HOUSE Dashboard: https://my.candyhouse.co/

Note that you must be the owner of your Sesame in order to use Web API.

Please make sure you can see the list of Sesames on CANDY HOUSE Dashboard.

Python Package Requirements

This package supports catkin_virtualenv.

So pip dependencies written in requirements.txt will be automatically installed into venv while building.

list_sesames.py

Script for listing your Sesames.

Arguments

  • auth_token: Your authorization token. Path to its file is also supported.

sesame_server.py

Node for controlling your Sesame.

Parameters

  • ~auth_token (string, required): Your authorization token. Path to its file is also supported.

  • ~device_id (string, optional): UUID of your Sesame.

  • ~nickname (string, optional): Nickname of your Sesame.

~device_id and ~nickname are used for searching Sesame from your Sesame list.

If neither of them matches or is specified, the first found Sesame will be used.

  • ~command_timeout (int or float, optional): Timeout for executing commands. Default is 60 [sec].

Advertising services

  • ~get_status (sesame_ros/Status)

  • ~lock (sesame_ros/Command)

  • ~unlock (sesame_ros/Command)

  • ~force_sync (sesame_ros/Command)

Defined service list

  • sesame_ros/Status
---
string nickname
string serial
string device_id
int32 battery
bool locked
bool responsive
  • sesame_ros/Command
---
string status
bool successful
string error

Usage

  1. Build this package.
$ cd YOUR_CATKIN_WS
$ catkin build sesame_ros
$ source YOUR_CATKIN_WS/devel/setup.bash
  1. Start service server.
$ roscore
$ rosrun sesame_ros sesame_server.py _auth_token:=YOUR_AUTH_TOKEN _device_id:=YOUR_SESAME's_UUID
  1. Call service.

    • To get Sesame status:
    $ rosservice call /sesame_server/get_status
    
    • To lock Sesame:
    $ rosservice call /sesame_server/lock
    
    • To unlock Sesame:
    $ rosservice call /sesame_server/unlock
    
    • To force the server to update Sesame status:
    $ rosservice call /sesame_server/force_sync
    

About

ROS wrapper of Sesame smart lock API version 3

Resources

Stars

Watchers

Forks

Packages

No packages published