From 07708f24161cd2226b1e0bd08051d019fb6594f6 Mon Sep 17 00:00:00 2001 From: kslr Date: Sun, 5 Sep 2021 15:19:23 +0800 Subject: [PATCH 1/3] add vmess --- docs/0003-open-online-config-v1-vmess.md | 42 ++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 docs/0003-open-online-config-v1-vmess.md diff --git a/docs/0003-open-online-config-v1-vmess.md b/docs/0003-open-online-config-v1-vmess.md new file mode 100644 index 0000000..72496d3 --- /dev/null +++ b/docs/0003-open-online-config-v1-vmess.md @@ -0,0 +1,42 @@ +# Open Online Config 1: VMess + +## 1. Overview + +This document defines the JSON document format for VMess AEAD configurations in Open Online Config 1. + +## 2. API Specification + +Request: + +``` http +GET //ooc/v1/ +``` + +Response JSON: + +``` json +{ + "protocols": [ "vmess" ], + "vmess": [ + { + "id": "27b8a625-4f4b-4428-9f0f-8a2317db7c79", + "name": "ServerName", + "address": "example.com", + "port": 8388, + "security": "auto", + "password": "example" + } + ] +} +``` + +The protocol name is `vmess`. Custom fields are allowed but MUST NOT be related to the protocol itself. + +Required fields: + +- `id`: UUID of the server. Used by clients to distinguish and persist servers when reloading. +- `name`: Server name. +- `address`: Server address. Do not enclose IPv6 addresses in brackets. Examples: `example.com`, `1.1.1.1`, `2001:db8::1`. +- `port`: Server port number. +- `security`: encryption method. Valid values: `auto`, `zero`, `none`, `aes-128-gcm`, `chacha20-poly1305`. +- `password`: Password. Not the derived key. \ No newline at end of file From 312e5827037b8def8dfd1d6a889428cd3e962b42 Mon Sep 17 00:00:00 2001 From: kslr Date: Sun, 5 Sep 2021 17:38:34 +0800 Subject: [PATCH 2/3] add stream and mux --- docs/0003-open-online-config-v1-vmess.md | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/docs/0003-open-online-config-v1-vmess.md b/docs/0003-open-online-config-v1-vmess.md index 72496d3..9588ebb 100644 --- a/docs/0003-open-online-config-v1-vmess.md +++ b/docs/0003-open-online-config-v1-vmess.md @@ -24,7 +24,12 @@ Response JSON: "address": "example.com", "port": 8388, "security": "auto", - "password": "example" + "password": "example", + "stream": { + "network": "tcp", + "security": "none", + }, + "mux": 0, } ] } @@ -39,4 +44,11 @@ Required fields: - `address`: Server address. Do not enclose IPv6 addresses in brackets. Examples: `example.com`, `1.1.1.1`, `2001:db8::1`. - `port`: Server port number. - `security`: encryption method. Valid values: `auto`, `zero`, `none`, `aes-128-gcm`, `chacha20-poly1305`. -- `password`: Password. Not the derived key. \ No newline at end of file +- `password`: Password. Not the derived key. + +Optional fields: + +- `stream`: StreamSettingsObject. + - `network`: Stream Netwokr Type. Valid values: `tcp`, `kcp`, `ws`, `http`, `quic`, `grpc`. + - `security`: Transport layer encryption. Valid values: `none`, `tls`. +- `mux`: 0 Means disabled. Used by clients to distinguish and persist servers when reloading. \ No newline at end of file From 75790d09d37ca50af2512b615debf6b0a3299b7b Mon Sep 17 00:00:00 2001 From: kslr Date: Sun, 5 Sep 2021 17:39:43 +0800 Subject: [PATCH 3/3] update mux description --- docs/0003-open-online-config-v1-vmess.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/0003-open-online-config-v1-vmess.md b/docs/0003-open-online-config-v1-vmess.md index 9588ebb..cbef78b 100644 --- a/docs/0003-open-online-config-v1-vmess.md +++ b/docs/0003-open-online-config-v1-vmess.md @@ -51,4 +51,4 @@ Optional fields: - `stream`: StreamSettingsObject. - `network`: Stream Netwokr Type. Valid values: `tcp`, `kcp`, `ws`, `http`, `quic`, `grpc`. - `security`: Transport layer encryption. Valid values: `none`, `tls`. -- `mux`: 0 Means disabled. Used by clients to distinguish and persist servers when reloading. \ No newline at end of file +- `mux`: 0 Means disabled. Available range 1 - 8. \ No newline at end of file