From 688c1210623f9ecf0467b9244fbfe5b3261f9537 Mon Sep 17 00:00:00 2001 From: William Floyd Date: Tue, 3 Jul 2018 10:22:58 -0500 Subject: [PATCH] rice: Add time setting in API, sort. --- content/post/smart-rice-cooker.md | 17 ++- src/connections.dot | 19 ++- static/images/rice/connections.svg | 232 +++++++++++++++-------------- 3 files changed, 139 insertions(+), 129 deletions(-) diff --git a/content/post/smart-rice-cooker.md b/content/post/smart-rice-cooker.md index 87b1e62..0ac0d7a 100644 --- a/content/post/smart-rice-cooker.md +++ b/content/post/smart-rice-cooker.md @@ -51,24 +51,25 @@ I tentatively (with no real experience designing them) plan on my API being some *Italicized* = Description -- `/sensor/temperature` - *Returns temperature* - `/action/light/kill` - *Stops all light activity* - `/action/light/set` - *Change lighting mode, with optional duration* - `/action/temperature/kill` - *Stops all heating/cooling, lets the cooker cool to room temperature alone* - `/action/temperature/set` - *Heat/cool to given temperature, then hold. Should allow setting a target heat/cool rate. Should allow setting a hold duration* -- `/routine/cook/list` - *List known cooking routines* *(proxy to `/settings/cook/recipe/list`)* -- `/routine/cook/start` - *Start a routine* - `/routine/cook/kill` - *Kill any current running routine* +- `/routine/cook/list` - *List known cooking routines* - `/routine/cook/schedule/list` - *List any scheduled routines* - `/routine/cook/schedule/set` - *Submit/modify/delete a scheduled routine* -- `/settings/lighting/list` - *List lighting modes* -- `/settings/lighting/set` - *Submit/modify/delete a lighting mode* -- `/settings/cook/warm/temperature` - *Set post-cook warming temperature* -- `/settings/cook/warm/set` - *Turn post-cook warming on/off* -- `/settings/cook/warm/duration` - *Determine post-cook warming duration* +- `/routine/cook/start` - *Start a routine* +- `/sensor/temperature` - *Returns temperature* - `/settings/cook/recipe/list` - *List known cooking routines* - `/settings/cook/recipe/set` - *Submit/modify/delete a cooking routine* +- `/settings/cook/warm/duration` - *Determine post-cook warming duration* +- `/settings/cook/warm/set` - *Turn post-cook warming on/off* +- `/settings/cook/warm/temperature` - *Set post-cook warming temperature* +- `/settings/lighting/list` - *List lighting modes* +- `/settings/lighting/set` - *Submit/modify/delete a lighting mode* +- `/settings/time` - *Set/read date and time* # Cooking schedule definition specifications diff --git a/src/connections.dot b/src/connections.dot index c10e315..9c8c91b 100644 --- a/src/connections.dot +++ b/src/connections.dot @@ -98,6 +98,8 @@ digraph { subgraph cluster_settings { + "/api/settings/time"[label="time"] + subgraph cluster_lighting { "/api/settings/lighting/list"[label="list"] @@ -144,23 +146,24 @@ digraph { // Description checklist /////////////////////////////////////////////////////// -"/api/sensor/temperature"[documented] "/api/action/light/kill"[documented] "/api/action/light/set"[documented] "/api/action/temperature/kill"[documented] "/api/action/temperature/set"[documented] -"/api/routine/cook/list"[documented] -"/api/routine/cook/start"[documented] "/api/routine/cook/kill"[documented] +"/api/routine/cook/list"[documented] "/api/routine/cook/schedule/list"[documented] "/api/routine/cook/schedule/set"[documented] -"/api/settings/lighting/list"[documented] -"/api/settings/lighting/set"[documented] -"/api/settings/cook/warm/temperature"[documented] -"/api/settings/cook/warm/set"[documented] -"/api/settings/cook/warm/duration"[documented] +"/api/routine/cook/start"[documented] +"/api/sensor/temperature"[documented] "/api/settings/cook/recipe/list"[documented] "/api/settings/cook/recipe/set"[documented] +"/api/settings/cook/warm/duration"[documented] +"/api/settings/cook/warm/set"[documented] +"/api/settings/cook/warm/temperature"[documented] +"/api/settings/lighting/list"[documented] +"/api/settings/lighting/set"[documented] +"/api/settings/time"[documented] "Temperature"[documented] "Heat"[documented] diff --git a/static/images/rice/connections.svg b/static/images/rice/connections.svg index 95db509..fef52cf 100644 --- a/static/images/rice/connections.svg +++ b/static/images/rice/connections.svg @@ -4,303 +4,309 @@ - - + + %3 - + cluster_key - -Key + +Key cluster_doc - + cluster_sub - + cluster_directives - -Directives + +Directives cluster_api - -api + +api cluster_action - -action + +action cluster_light - -light + +light cluster_temperature - -temperature + +temperature cluster_sensor - -sensor + +sensor cluster_routine - -routine + +routine cluster_routine_cook - -cook + +cook cluster_schedule - -schedule + +schedule cluster_settings - -settings + +settings cluster_lighting - -lighting + +lighting cluster_settings_cook - -cook + +cook cluster_warm - -warm + +warm cluster_recipe - -recipe + +recipe Done - -Done + +Done Documented - -Documented + +Documented Undocumented - -Undocumented + +Undocumented Depend on value - -Depend on value + +Depend on value Node - -Node + +Node Depend on value->Node - - + + Proxy to value - -Proxy to value + +Proxy to value Proxy to value->Node - - + + Depend on function - -Depend on function + +Depend on function Depend on function->Node - - + + Sleep - -Sleep + +Sleep Heat - -Heat + +Heat Cool - -Cool + +Cool Temperature - -Temperature + +Temperature Temperature->Sleep - - + + Temperature->Heat - - + + Temperature->Cool - - + + /api/action/light/kill - -kill + +kill /api/action/light/set - -set + +set /api/action/temperature/kill - -kill + +kill /api/action/temperature/set - -set + +set /api/sensor/temperature - -temperature + +temperature /api/routine/cook/list - -list + +list - + /api/settings/cook/recipe/list - -list + +list /api/routine/cook/list->/api/settings/cook/recipe/list - - + + /api/routine/cook/start - -start + +start /api/routine/cook/kill - -kill + +kill /api/routine/cook/schedule/list - -list + +list /api/routine/cook/schedule/set - -set + +set + + + +/api/settings/time + +time - + /api/settings/lighting/list - -list + +list - + /api/settings/lighting/set - -set + +set - + /api/settings/cook/warm/temperature - -temperature + +temperature - + /api/settings/cook/warm/set - -set + +set - + /api/settings/cook/warm/duration - -duration + +duration - + /api/settings/cook/recipe/set - -set + +set