From d5c29b61ff62d38fb9f20f6b1054bcac9145b0bc Mon Sep 17 00:00:00 2001 From: jie65535 Date: Mon, 23 May 2022 20:03:33 +0800 Subject: [PATCH] Update README_en-US.md --- README_en-US.md | 57 ++++++++++++++++++++++++++++++++----------------- 1 file changed, 37 insertions(+), 20 deletions(-) diff --git a/README_en-US.md b/README_en-US.md index 80dbf2b..6997b53 100644 --- a/README_en-US.md +++ b/README_en-US.md @@ -4,24 +4,30 @@ A plugin that opens the GC command execution interface for third-party clients -# Server installation +## Server installation 1. Download the `jar` in [Release](https://github.com/jie65535/gc-opencommand-plugin/releases) 2. Put it in the `plugins` folder -# Build +## Console connection +1. When starting for the first time, a `opencommand-plugin` directory will be generated under the `plugins` directory, open and edit `config.json` +2. Set the value of `consoleToken` to your connection key. It is recommended to use a long random string of at least 32 characters. +3. Restart the server to take effect +4. Select the console identity in the client, and fill in your `consoleToken` to run the command as the console identity + +## Build 1. `git clone https://github.com/jie65535/gc-opencommand-plugin` 2. `cd gc-opencommand-plugin` 3. `mkdir lib` 4. `mv path/to/grasscutter-1.x.x-dev.jar ./lib` 5. `gradle build` -# Player +## Player 1. Fill in the service address in the client to confirm whether it supports 2. Fill in the UID and send the verification code 3. Fill in the **4-digit integer verification code** received in the game into the client verification 4. Enjoy the convenience! -# Client request +## Client request 1. `ping` to confirm whether the `opencommand` plugin is supported 2. `sendCode` sends a verification code to the specified player (re-send is not allowed within 1 minute), and save the returned `token` 3. Send `verify` check using `token` and **4-digit integer verification code** @@ -29,13 +35,24 @@ A plugin that opens the GC command execution interface for third-party clients --- -# API `/opencommand/api` +## `config.json` +```json +{ + "consoleToken": "", + "codeExpirationTime_S": 60, + "tempTokenExpirationTime_S": 300, + "tokenLastUseExpirationTime_H": 48 +} +``` + + +## API `/opencommand/api` Example ``` https://127.0.0.1/opencommand/api ``` -# Request +## Request ```java public final class JsonRequest { public String token = ""; @@ -44,7 +61,7 @@ public final class JsonRequest { } ``` -# Response +## Response ```java public final class JsonResponse { public int retcode = 200; @@ -53,27 +70,27 @@ public final class JsonResponse { } ``` -# Actions -## `ping` +## Actions +### `ping` data = null -## `sendCode` -### Request +### `sendCode` +#### Request data = uid (int) -### Response +#### Response data = token (string) -## `verify`: Requires `token` -### Request +### `verify`: Requires `token` +#### Request data = code (int) -### Response -#### Success: +#### Response +##### Success: code = 200 -#### Verification failed: +##### Verification failed: code = 400 -## `command`: Requires `token` -### Request +### `command`: Requires `token` +#### Request data = command (string) -### Response +#### Response data = message (string)