Proposal 1 Command line tool - GobySoft/goby3 GitHub Wiki
It would be great to have a unified goby
command line tool, with various subcommands, e.g.
goby publish
: Publish a message from the command linegoby subscribe
: Latch for some period of time and write the subscription to the terminal windowgoby log
: Tools for reading the goby_logger files- etc.
goby publish
It should be possible to publish a message from the command line. This could be the API used by shell scripts, web GUIs, etc. for interacting with a Goby3-based system.
I envision a tool that reads from standard input and is invoked something like:
goby publish --platform my_vehicle [--transport IPC] [--layer interprocess] --group asdf --scheme protobuf --type foo.protobuf.Message "a: 4 b: 6 c: 7"
It would be up to the sender of the message to pack it in the appropriate format corresponding to the scheme. For Protobuf, this would be TextFormat.
goby subscribe
Subscribe to the given group(s)/scheme(s)/type(s) for a period of time (or until CTRL-C) and write them to the terminal window. Might need to be ncurses based.
goby subscribe --platform my_vehicle [--transport IPC] [--layer interprocess] --group "nav::.*" --scheme protobuf --type ".*"
goby log
Unified front-end to goby_log_tool
and goby_hdf5
.