From d8ee3c6c519c72d6c99a98acd90ac0acac9a79a4 Mon Sep 17 00:00:00 2001 From: Beta Soft Date: Thu, 23 Jul 2020 09:59:17 +0800 Subject: [PATCH] shadowrocket: remark space issue fixes, add shadowrocket STATUS feature Signed-off-by: Beta Soft --- app/Http/Controllers/Client/ClientController.php | 8 ++++++-- app/Utils/Shadowrocket.php | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/app/Http/Controllers/Client/ClientController.php b/app/Http/Controllers/Client/ClientController.php index e8eb92d5..b085a2f8 100644 --- a/app/Http/Controllers/Client/ClientController.php +++ b/app/Http/Controllers/Client/ClientController.php @@ -73,8 +73,12 @@ class ClientController extends Controller private function shadowrocket($user, $vmess = [], $trojan = []) { $uri = ''; - //TODO: display remaining traffic and expire date - //$uri .= 'STATUS=' . 'Traffic:' . 'Expiry:' . '\r\n'; + //display remaining traffic and expire date + $upload = round($user->u / (1024*1024*1024), 2); + $download = round($user->d / (1024*1024*1024), 2); + $totalTraffic = round($user->transfer_enable / (1024*1024*1024), 2); + $expiredDate = date('Y-m-d', $user->expired_at); + $uri .= "STATUS=🚀↑:{$upload}GB,↓:{$download}GB,TOT:{$totalTraffic}GB💡Expires:{$expiredDate}\r\n"; foreach ($vmess as $item) { $uri .= Shadowrocket::buildVmess($user->uuid, $item); } diff --git a/app/Utils/Shadowrocket.php b/app/Utils/Shadowrocket.php index b52315da..0f0f919c 100644 --- a/app/Utils/Shadowrocket.php +++ b/app/Utils/Shadowrocket.php @@ -23,7 +23,7 @@ class Shadowrocket if (isset($wsSettings->path)) $config['path'] = $wsSettings->path; if (isset($wsSettings->headers->Host)) $config['obfsParam'] = $wsSettings->headers->Host; } - $query = http_build_query($config); + $query = http_build_query($config, null, '&', PHP_QUERY_RFC3986); $uri = "vmess://{$userinfo}?{$query}&tfo=1"; $uri .= "\r\n"; return $uri;