A reasonably simple, yet secure proxy for protobufs with an easy to implement API (simple RabbitMQ).
- Download the latest stable build for your platform from our releases page, or get bleeding edge builds from our build server.
- Set the binary as executable if you are on a *nix platform.
$ chmod +x cliotesky-$PLATFORM-$ARCH
- Run the binary to generate the config file in the same directory. Read the configuration section to learn how to configure the instance.
- Generate certs for ssl if needed. Here's an example with openssl:
$ openssl genrsa -out server.key 2048
$ openssl req -new -x509 -sha256 -key server.key -out server.crt -days 3650
The install is now complete! Simply run the binary to start the program.
Initial config.yml file:
port = 36000
master_key_location = "./masterkey.key"
cert_file_path = "./server.crt"
key_file_path = "./server.key"
Setting | Description |
---|---|
port | The port that the instance should run on. |
master_key_location | Location of the password file that is auto-magically generated. |
cert_file_path | Location of the cert file (for ssl). |
key_file_path | Location of the key file (for ssl). |
This project has been built with go1.10+. Make sure that go is installed.
Clone this project into a directory.
$ git clone https://github.com/EstiNet/ClioteSky.git
Obtain these dependencies:
$ go get google.golang.org/grpc
$ go get github.com/BurntSushi/toml
Run the buildEverything.sh script to build the binaries and place them in the bin folder.
$ ./buildEverything.sh
Note: This assumes that the developer has knowledge of GRPC.
Creating a client requires an implementation of GRPC in the client language. The library abstracts method calls over sockets, allowing for simple API definitions.
Once you have added GRPC to your project, be sure to generate a protobuf spec file and a grpc spec file from the ClioteSky protocol definition (this file).
Type | Description |
---|---|
String | Simple wrapper for a string object. |
Boolean | Simple wrapper for a boolean object. |
Empty | Empty variable |
Token | Contains a string that specifies the user token. |
ClioteMessage | Contains data (bytes), identifier (string), and sender (string). |
ClioteSend | Contains |
AuthRequest |