ROS API for Sesame smart lock made by CANDY HOUSE, Inc.
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.
This package supports catkin_virtualenv
.
So pip dependencies written in requirements.txt
will be automatically installed into venv while building.
Script for listing your Sesames.
auth_token
: Your authorization token. Path to its file is also supported.
Node for controlling your Sesame.
-
~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
orfloat
, optional): Timeout for executing commands. Default is 60 [sec].
-
~get_status
(sesame_ros/Status
) -
~lock
(sesame_ros/Command
) -
~unlock
(sesame_ros/Command
) -
~force_sync
(sesame_ros/Command
)
- 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
- Build this package.
$ cd YOUR_CATKIN_WS
$ catkin build sesame_ros
$ source YOUR_CATKIN_WS/devel/setup.bash
- Start service server.
$ roscore
$ rosrun sesame_ros sesame_server.py _auth_token:=YOUR_AUTH_TOKEN _device_id:=YOUR_SESAME's_UUID
-
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