CLI Reference¶
The brain-computer-interface.rest package provides a command line interface:
$ python -m brain_computer_interface.rest --help
Usage: brain_computer_interface.rest [OPTIONS] COMMAND [ARGS]...
Options:
--version Show the version and exit.
-q, --quiet
-t, --traceback
--help Show this message and exit.
Commands:
error
get
run-rest-server
The top-level options include:
-q,--quietThis option suppresses the output.
-t,--tracebackThis option shows the full traceback when an exception is raised (by default, only the error message is printed, and the program exits with a non-zero code).
The run-rest-server Command¶
Runs the rest on host:port which listens to minds and forwarding them to the driver corresponding to the --publish-scheme argument.
$ python -m brain_computer_interface.rest run-rest-server --help
Usage: brain_computer_interface.rest run-rest-server [OPTIONS]
Options:
-h, --host TEXT [default: 0.0.0.0]
-p, --port INTEGER [default: 8000]
-d, --database-scheme TEXT [default: postgresql://postgres:password@127.0.0
.1:5432/mind]
--help Show this message and exit.
The top level get Command¶
Top level command to stimulate restfull requests. You may provide host and port to which the requests will be made.
$ python -m brain_computer_interface.rest get --help
Usage: brain_computer_interface.rest get [OPTIONS] COMMAND [ARGS]...
Options:
-h, --host TEXT [default: 127.0.0.1]
-p, --port INTEGER [default: 8000]
--help Show this message and exit.
Commands:
user
user-snapshot
user-snapshot-topic
user-snapshot-topic-data
user-snapshots
users
The user sub-command¶
Get the user information.
$ python -m brain_computer_interface.rest get user --help
USAGE: brain_computer_interface.rest get user [OPTIONS] ID
The user-snapshot sub-command¶
Get the user’s snapshot information.
$ python -m brain_computer_interface.rest get user-snapshot --help
USAGE: brain_computer_interface.rest get user-snapshot [OPTIONS] ID DATETIME
The user-snapshot-topic sub-command¶
Get the user’s snapshot’s topic information.
$ python -m brain_computer_interface.rest get user-snapshot-topic --help
USAGE: brain_computer_interface.rest get user-snapshot-topic [OPTIONS] ID DATETIME TOPIC
The user-snapshot-topic-data sub-command¶
Get the user’s snapshot’s topic’s data (available for color_image and depth_image).
$ python -m brain_computer_interface.rest get user-snapshot-topic-data --help
USAGE: brain_computer_interface.rest get user-snapshot-topic-data [OPTIONS] ID DATETIME TOPIC
The user-snapshots sub-command¶
Get the user’s snapshots.
$ python -m brain_computer_interface.rest get user-snapshots --help
USAGE: brain_computer_interface.rest get user-snapshots [OPTIONS] ID
The users sub-command¶
Get all users.
$ python -m brain_computer_interface.rest get users --help
USAGE: brain_computer_interface.rest get users [OPTIONS]
The error Command¶
Raises an exception and prints it to the screen.
$ python -m brain_computer_interface.rest error --help
Usage: brain_computer_interface.rest error [OPTIONS]
Options:
--help Show this message and exit.
All commands accept the -q or –quiet flag to suppress output, and the -t or –traceback flag to show the full traceback when an exception is raised (by default, only the error message is printed, and the program exits with a non-zero code).
To showcase these options, consider error command, which raises an exception:
$ python -m brain_computer_interface.rest error
ERROR: something went terribly wrong :[
$ python -m brain_computer_interface.rest -q error # suppress output
$ python -m brain_computer_interface.rest -t error # show full traceback
ERROR: something went terribly wrong :[
Traceback (most recent call last):
...
RuntimeError: something went terrible wrong :[
Do note that each command’s options should be passed to that command, for example the -q and -t options should be passed to brain_computer_interface.rest and not to run-rest-server.
$ python -m brain_computer_interface.rest run-rest-server -q # this doesn't work
ERROR: no such option: -q
$ python -m brain_computer_interface.rest -q run-rest-server # this does work