diff --git a/app/Http/Controllers/V1/Client/ClientController.php b/app/Http/Controllers/V1/Client/ClientController.php index b8349b0..a72463d 100644 --- a/app/Http/Controllers/V1/Client/ClientController.php +++ b/app/Http/Controllers/V1/Client/ClientController.php @@ -27,6 +27,7 @@ class ClientController extends Controller 'vmess' => '[vmess]', 'trojan' => '[trojan]', 'tuic' => '[tuic]', + 'socks' => '[socks]', ]; // 支持hy2 的客户端版本列表 diff --git a/app/Http/Controllers/V1/Server/UniProxyController.php b/app/Http/Controllers/V1/Server/UniProxyController.php index 25f2545..36c358c 100644 --- a/app/Http/Controllers/V1/Server/UniProxyController.php +++ b/app/Http/Controllers/V1/Server/UniProxyController.php @@ -147,6 +147,9 @@ class UniProxyController extends Controller 'zero_rtt_handshake' => false, 'heartbeat' => "3s", ], + 'socks' => [ + 'server_port' => (int) $serverPort, + ], default => [] }; diff --git a/app/Http/Requests/Admin/ServerSave.php b/app/Http/Requests/Admin/ServerSave.php index 4587519..54fc40e 100644 --- a/app/Http/Requests/Admin/ServerSave.php +++ b/app/Http/Requests/Admin/ServerSave.php @@ -52,6 +52,8 @@ class ServerSave extends FormRequest 'reality_settings.public_key' => 'nullable|string', 'reality_settings.private_key' => 'nullable|string', 'reality_settings.short_id' => 'nullable|string', + ], + 'socks' => [ ] ]; @@ -81,7 +83,7 @@ class ServerSave extends FormRequest { $type = $this->input('type'); $rules = $this->getBaseRules(); - + foreach (self::PROTOCOL_RULES[$type] ?? [] as $field => $rule) { $rules['protocol_settings.' . $field] = $rule; } diff --git a/app/Http/Resources/PlanResource.php b/app/Http/Resources/PlanResource.php index 1f9a57c..366e89a 100644 --- a/app/Http/Resources/PlanResource.php +++ b/app/Http/Resources/PlanResource.php @@ -80,7 +80,7 @@ class PlanResource extends JsonResource */ protected function formatContent(): string { - $content = $this->resource['content']; + $content = $this->resource['content'] ?? ''; $replacements = [ '{{transfer}}' => $this->resource['transfer_enable'], diff --git a/app/Models/Server.php b/app/Models/Server.php index 8fba83e..02b51da 100644 --- a/app/Models/Server.php +++ b/app/Models/Server.php @@ -18,7 +18,7 @@ class Server extends Model public const TYPE_VMESS = 'vmess'; public const TYPE_TUIC = 'tuic'; public const TYPE_SHADOWSOCKS = 'shadowsocks'; - + public const TYPE_SOCKS = 'socks'; public const STATUS_OFFLINE = 0; public const STATUS_ONLINE_NO_PUSH = 1; public const STATUS_ONLINE = 2; @@ -52,6 +52,7 @@ class Server extends Model self::TYPE_VMESS, self::TYPE_TUIC, self::TYPE_SHADOWSOCKS, + self::TYPE_SOCKS, ]; protected $table = 'v2_server';