Merge branch 'dev'

This commit is contained in:
mercury
2024-05-18 17:05:44 +04:00
5 changed files with 47 additions and 40 deletions
+33 -30
View File
@@ -948,22 +948,17 @@ class Bot
public function checkBackup()
{
$c = time();
$conf = $this->getPacConf();
$time = $conf['backup'];
if ($time) {
preg_match('~(\d+\s\w+)(?:\s+)?/(?:\s+)?(\d{2}:\d{2})~', $time, $m);
$period = strtotime($m[1]) - $c;
$start = strtotime($m[2]);
$last = $conf['pinbackup'];
if ($last) {
[$pin, $time] = explode('/', $last);
if ($c - $time >= $period) {
$this->pinAdmin($pin, 1);
$this->pinBackup();
return;
$c = $this->getPacConf();
$now = strtotime(date('Y-m-d H:i'));
if (!empty($c['backup'])) {
[$start, $period] = explode('/', $c['backup']);
$start = strtotime($start);
$period = strtotime($period, 0);
(var_dump($now, $start, $period, ($now - $start) % $period));
if ($now - $start >= $period && ($now - $start) % $period == 0) {
if (!empty($c['pinbackup'])) {
$this->pinAdmin($c['pinbackup'], 1);
}
} elseif ($c - $start > 0 && $c - $start < 30) {
$this->pinBackup();
}
}
@@ -984,10 +979,10 @@ class Bot
require __DIR__ . '/config.php';
$conf = $this->getPacConf();
$bot = $this->request('getMyName', [])['result']['name'];
$pin = $this->upload("{$bot}_export_" . date('d_m_Y_H_i') . '.json', $this->export(), $c['admin'][0])['result']['message_id'];
$conf['pinbackup'] = "$pin/" . time();
$conf['pinbackup'] = $this->upload("{$bot}_export_" . date('d_m_Y_H_i') . '.json', $this->export(), $c['admin'][0])['result']['message_id'];
$conf['backup'] = implode(' / ', [date('Y-m-d H:i'), trim(explode('/', $conf['backup'])[1])]);
$this->setPacConf($conf);
$this->pinAdmin($pin);
$this->pinAdmin($conf['pinbackup']);
}
public function checkVersion()
@@ -1005,7 +1000,14 @@ class Bot
$diff = array_slice($diff, 0, 10);
if (!empty($diff)) {
foreach ($c['admin'] as $k => $v) {
$this->send($v, implode("\n", $diff));
$this->send($v, implode("\n", $diff), 0, [
[
[
'text' => 'changelog',
'web_app' => ['url' => "https://raw.githubusercontent.com/mercurykd/vpnbot/$b/version"],
]
]
]);
}
}
}
@@ -4700,15 +4702,17 @@ DNS-over-HTTPS with IP:
'text' => $this->i18n('export'),
'callback_data' => "/export",
],
[
'text' => $this->i18n('backup') . ': ' . (implode(' / ', explode('/', $conf['backup'])) ?: $this->i18n('off')),
'callback_data' => "/backup",
],
[
'text' => $this->i18n('import'),
'callback_data' => "/import",
],
];
$data[] = [
[
'text' => $this->i18n('backup') . ': ' . (implode(' / ', explode('/', $conf['backup'])) ?: $this->i18n('off')),
'callback_data' => "/backup",
],
];
$data[] = [
[
'text' => $this->i18n('logs'),
@@ -4911,16 +4915,15 @@ DNS-over-HTTPS with IP:
public function setBackup($text)
{
$text = trim($text);
$c = $this->getPacConf();
$c = $this->getPacConf();
if (empty($text)) {
$c['backup'] = '';
} elseif (preg_match('~(\d+\s\w+)(?:\s+)?/(?:\s+)?(\d{2}:\d{2})~', $text, $m)) {
$period = $m[1];
$start = $m[2];
$c['backup'] = $text;
} else {
[$start, $period] = explode('/', $text);
$c['backup'] = implode(' / ', [date('Y-m-d H:i', strtotime($start)), trim($period)]);
}
if ($pin = explode('/', $c['pinbackup'])[0]) {
$this->pinAdmin($pin, 1);
if ($c['pinbackup']) {
$this->pinAdmin($c['pinbackup'], 1);
$c['pinbackup'] = '';
}
$this->setPacConf($c);
+3 -3
View File
@@ -191,7 +191,7 @@ services:
- oc
- np
proxy:
image: mercurykd/vpnbot-ss:1.1
image: mercurykd/vpnbot-ss:1.2
build:
dockerfile: dockerfile/shadowsocks.dockerfile
args:
@@ -338,7 +338,7 @@ services:
entrypoint: ["/bin/sh", "/start_ad.sh"]
logging: *default-logging
ss:
image: mercurykd/vpnbot-ss:1.1
image: mercurykd/vpnbot-ss:1.2
build:
dockerfile: dockerfile/shadowsocks.dockerfile
args:
@@ -399,7 +399,7 @@ services:
ipv4_address: 10.10.0.8
logging: *default-logging
xr:
image: mercurykd/vpnbot-xr:1.2
image: mercurykd/vpnbot-xr:1.3
build:
dockerfile: dockerfile/xray.dockerfile
args:
+6 -6
View File
@@ -2,16 +2,16 @@ ARG image
FROM $image
RUN apk add openssh git xz \
&& mkdir /root/.ssh \
&& wget https://github.com/shadowsocks/shadowsocks-rust/releases/download/v1.15.3/shadowsocks-v1.15.3.x86_64-unknown-linux-musl.tar.xz \
&& tar -xf shadowsocks-v1.15.3.x86_64-unknown-linux-musl.tar.xz \
&& wget https://github.com/teddysun/v2ray-plugin/releases/download/v5.7.0/v2ray-plugin-linux-amd64-v5.7.0.tar.gz \
&& tar -xf v2ray-plugin-linux-amd64-v5.7.0.tar.gz \
&& wget -O shadowsocks-rust.x86_64-unknown-linux-musl.tar.xz $(wget -q -O - https://api.github.com/repos/shadowsocks/shadowsocks-rust/releases/latest | grep browser_download_url | cut -d\" -f4 | egrep '.x86_64-unknown-linux-musl.tar.xz$') \
&& tar -xf shadowsocks-rust.x86_64-unknown-linux-musl.tar.xz \
&& wget -O v2ray-plugin-linux-amd64.tar.gz $(wget -q -O - https://api.github.com/repos/teddysun/v2ray-plugin/releases/latest | grep browser_download_url | cut -d\" -f4 | egrep 'v2ray-plugin-linux-amd64') \
&& tar -xf v2ray-plugin-linux-amd64.tar.gz \
&& mv sslocal /usr/bin/ \
&& mv ssserver /usr/bin/ \
&& mv ssmanager /usr/bin/ \
&& mv ssservice /usr/bin/ \
&& mv ssurl /usr/bin/ \
&& mv v2ray-plugin_linux_amd64 /usr/bin/v2ray-plugin \
&& rm v2ray-plugin-linux-amd64-v5.7.0.tar.gz\
&& rm shadowsocks-v1.15.3.x86_64-unknown-linux-musl.tar.xz
&& rm v2ray-plugin-linux-amd64.tar.gz \
&& rm shadowsocks-rust.x86_64-unknown-linux-musl.tar.xz
ENV ENV="/root/.ashrc"
+1 -1
View File
@@ -2,7 +2,7 @@ ARG image
FROM $image
RUN apk add openssh openssl jq \
&& mkdir /root/.ssh \
&& wget https://github.com/XTLS/Xray-core/releases/download/v1.8.10/Xray-linux-64.zip \
&& wget -O Xray-linux-64.zip $(wget -q -O - https://api.github.com/repos/XTLS/Xray-core/releases/latest | grep browser_download_url | cut -d\" -f4 | egrep 'Xray-linux-64.zip$') \
&& unzip Xray-linux-64.zip \
&& mv xray /usr/bin/ \
&& rm Xray-linux-64.zip \
+4
View File
@@ -1,3 +1,7 @@
18.05.2024 v1.39
- изменен автобэкап
04.05.2024 v1.38
- changelog в сообщении новой версии
04.05.2024 v1.37.1
- warp на образе alpine (thx @zmeyzloy)
- фикс выбора шаблона singbox