json-rpc-shell ============== `json-rpc-shell' is a simple shell for running JSON-RPC 2.0 queries. This software has been created as a replacement for the following shell, which is written in Java: http://software.dzhuvinov.com/json-rpc-2.0-shell.html Supported transports -------------------- - HTTP - HTTPS - WebSocket - WebSocket over TLS WebSockets ---------- The WebSocket transport is rather experimental. As the JSON-RPC 2.0 spec doesn't say almost anything about the underlying transports, I'll shortly describe the way it's implemented: every request is sent as a single text message. If it has an "id" field, i.e. it's not just a notification, the client waits for a message from the server in response. There's no support so far for any protocol extensions, nor for specifying the higher-level protocol (the "Sec-Ws-Protocol" HTTP field). Building and Running -------------------- Build dependencies: CMake, pkg-config, help2man, liberty (included), http-parser (included) Runtime dependencies: libev, Jansson, cURL, readline, openssl $ git clone https://github.com/pjanouch/json-rpc-shell.git $ git submodule init $ git submodule update $ mkdir build $ cd build $ cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Debug $ make To install the application, you can do either the usual: # make install Or you can try telling CMake to make a package for you. For Debian it is: $ cpack -G DEB # dpkg -i json-rpc-shell-*.deb Note that for versions of CMake before 2.8.9, you need to prefix cpack with `fakeroot' or file ownership will end up wrong. Run the program with `--help' to obtain usage information. License ------- `json-rpc-shell' is written by Přemysl Janouch