Completed removing SET, implemented GIVE
[tpg/opendispense2.git] / proto.txt
index ac2d139..c27ff06 100644 (file)
--- a/proto.txt
+++ b/proto.txt
@@ -35,6 +35,9 @@ If the client is connecting from a trusted machine on a root port then
 automatic authentication is allowed
 c      AUTOAUTH <username>\n
 s      200 Auth OK\n or 404 Bad Username\n or 401 Untrusted\n
+--- Set effective user (User in `dispense -u`) ---
+c      SETEUSER <username>\n
+s      200 User set\n or 403 Not in coke\n or 404 User not found\n
 
 === Commands ===
 --- Dispense an item ---
@@ -46,23 +49,33 @@ s   200 Give OK\n or 402 Poor You\n or 404 Bad User\n
 --- Alter balance ---
 c      ADD <user> <ammount> <reason>\n
 s      200 Add OK\n or 402 No balance\n or 403 Not Coke\n or 404 Bad User\n
---- Set balance ---
-c      SET <user> <ammount> <reason>\n
-s      200 Set OK\n or 403 Not Coke\n or 404 Bad User\n
 
 --- Get Item list ---
 c      ENUM_ITEMS\n
-s      201 Items <count> <item_id> <item_id> ...\n
+s      201 Items <count>\n
+s      202 Item <item_id> <price> <description>\n
+    ...
+s      200 List End\n
 --- Get Item Information ---
 c      ITEM_INFO <item_id>\n
 s      202 Item <item_id> <price> <description>\n
+
 --- Get Users' Balances ---
  <max balance> and <min balance> can be '-' to indicate "none"
 c      ENUM_USERS[ <min balance> [<max balance>]]\n
 s      201 Users <count>\n
 s      202 User <username> <balance> <flags>\n
     ...
-s   200 List End\n
+s      200 List End\n
 --- Get a User's Balance ---
 c      USER_INFO\n
 s      202 User <username> <balance> <flags>\n
+
+--- Add a new user ---
+c      USER_ADD <username>\n
+s      200 User Added\n or 403 Not Wheel\n or 404 User Exists\n
+--- Set user flags ---
+ <flags> is a comma-separated list of flag values (optionally preceded by
+ - to remove the flag) Valid values are: user,coke,wheel,meta,disabled,door
+c      USER_FLAGS <username> <flags>\n
+s      200 User Updated\n or 403 Not Wheel\n or 404 Bad User\n or 407 Unknown Flags\n

UCC git Repository :: git.ucc.asn.au