fix: check new version

This commit is contained in:
linyuchen 2024-03-20 18:52:44 +08:00
parent 51e332ec38
commit 965aa48729
6 changed files with 23 additions and 14 deletions

View File

@ -3,5 +3,5 @@ export const CHANNEL_SET_CONFIG = 'llonebot_set_config'
export const CHANNEL_LOG = 'llonebot_log' export const CHANNEL_LOG = 'llonebot_log'
export const CHANNEL_ERROR = 'llonebot_error' export const CHANNEL_ERROR = 'llonebot_error'
export const CHANNEL_UPDATE = 'llonebot_update' export const CHANNEL_UPDATE = 'llonebot_update'
export const CHANNEL_CHECKVERSION = 'llonebot_checkversion' export const CHANNEL_CHECK_VERSION = 'llonebot_check_version'
export const CHANNEL_SELECT_FILE = 'llonebot_select_ffmpeg' export const CHANNEL_SELECT_FILE = 'llonebot_select_ffmpeg'

View File

@ -8,17 +8,22 @@ import compressing from "compressing";
const downloadMirrorHosts = ["https://mirror.ghproxy.com/"]; const downloadMirrorHosts = ["https://mirror.ghproxy.com/"];
const checkVersionMirrorHosts = ["https://521github.com"]; const checkVersionMirrorHosts = ["https://521github.com"];
export async function checkVersion() { export async function checkNewVersion() {
const latestVersionText = await getRemoteVersion(); const latestVersionText = await getRemoteVersion();
const latestVersion = latestVersionText.split("."); const latestVersion = latestVersionText.split(".");
log("llonebot last version", latestVersion); log("llonebot last version", latestVersion);
const currentVersion: string[] = version.split("."); const currentVersion: string[] = version.split(".");
log("llonebot current version", currentVersion);
for (let k of [0, 1, 2]) { for (let k of [0, 1, 2]) {
if (parseInt(latestVersion[k]) > parseInt(currentVersion[k])) { if (parseInt(latestVersion[k]) > parseInt(currentVersion[k])) {
return { result: false, version: latestVersionText }; log("")
return { result: true, version: latestVersionText };
}
else if (parseInt(latestVersion[k]) < parseInt(currentVersion[k])) {
break;
} }
} }
return { result: true, version: version }; return { result: false, version: version };
} }
export async function upgradeLLOneBot() { export async function upgradeLLOneBot() {

View File

@ -7,7 +7,7 @@ import {
CHANNEL_ERROR, CHANNEL_ERROR,
CHANNEL_GET_CONFIG, CHANNEL_GET_CONFIG,
CHANNEL_LOG, CHANNEL_LOG,
CHANNEL_CHECKVERSION, CHANNEL_CHECK_VERSION,
CHANNEL_SELECT_FILE, CHANNEL_SELECT_FILE,
CHANNEL_SET_CONFIG, CHANNEL_SET_CONFIG,
CHANNEL_UPDATE, CHANNEL_UPDATE,
@ -41,7 +41,7 @@ import {NTQQUserApi} from "../ntqqapi/api/user";
import {NTQQGroupApi} from "../ntqqapi/api/group"; import {NTQQGroupApi} from "../ntqqapi/api/group";
import {registerPokeHandler} from "../ntqqapi/external/ccpoke"; import {registerPokeHandler} from "../ntqqapi/external/ccpoke";
import {OB11FriendPokeEvent, OB11GroupPokeEvent} from "../onebot11/event/notice/OB11PokeEvent"; import {OB11FriendPokeEvent, OB11GroupPokeEvent} from "../onebot11/event/notice/OB11PokeEvent";
import {checkVersion, upgradeLLOneBot} from "../common/utils/upgrade"; import {checkNewVersion, upgradeLLOneBot} from "../common/utils/upgrade";
import {log} from "../common/utils/log"; import {log} from "../common/utils/log";
import {getConfigUtil} from "../common/config"; import {getConfigUtil} from "../common/config";
import {checkFfmpeg} from "../common/utils/video"; import {checkFfmpeg} from "../common/utils/video";
@ -53,8 +53,8 @@ let running = false;
// 加载插件时触发 // 加载插件时触发
function onLoad() { function onLoad() {
log("llonebot main onLoad"); log("llonebot main onLoad");
ipcMain.handle(CHANNEL_CHECKVERSION, async (event, arg) => { ipcMain.handle(CHANNEL_CHECK_VERSION, async (event, arg) => {
return checkVersion(); return checkNewVersion();
}); });
ipcMain.handle(CHANNEL_UPDATE, async (event, arg) => { ipcMain.handle(CHANNEL_UPDATE, async (event, arg) => {
return upgradeLLOneBot(); return upgradeLLOneBot();

View File

@ -61,7 +61,7 @@ let receiveHooks: Array<{
export function hookNTQQApiReceive(window: BrowserWindow) { export function hookNTQQApiReceive(window: BrowserWindow) {
const originalSend = window.webContents.send; const originalSend = window.webContents.send;
const patchSend = (channel: string, ...args: NTQQApiReturnData) => { const patchSend = (channel: string, ...args: NTQQApiReturnData) => {
console.log("hookNTQQApiReceive", channel, args) // console.log("hookNTQQApiReceive", channel, args)
let isLogger = false let isLogger = false
try { try {
isLogger = args[0]?.eventName?.startsWith("ns-LoggerApi") isLogger = args[0]?.eventName?.startsWith("ns-LoggerApi")
@ -122,7 +122,7 @@ export function hookNTQQApiCall(window: BrowserWindow) {
const proxyIpcMsg = new Proxy(ipc_message_proxy, { const proxyIpcMsg = new Proxy(ipc_message_proxy, {
apply(target, thisArg, args) { apply(target, thisArg, args) {
console.log(thisArg, args); // console.log(thisArg, args);
let isLogger = false let isLogger = false
try { try {
isLogger = args[3][0].eventName.startsWith("ns-LoggerApi") isLogger = args[3][0].eventName.startsWith("ns-LoggerApi")
@ -156,7 +156,11 @@ export function hookNTQQApiCall(window: BrowserWindow) {
} }
}); });
let ret = target.apply(thisArg, args); let ret = target.apply(thisArg, args);
HOOK_LOG && log("call NTQQ invoke api return", ret) try {
HOOK_LOG && log("call NTQQ invoke api return", ret)
}catch (e) {
}
return ret; return ret;
} }
}); });

View File

@ -5,7 +5,7 @@ import {
CHANNEL_ERROR, CHANNEL_ERROR,
CHANNEL_GET_CONFIG, CHANNEL_GET_CONFIG,
CHANNEL_LOG, CHANNEL_LOG,
CHANNEL_CHECKVERSION, CHANNEL_CHECK_VERSION,
CHANNEL_SELECT_FILE, CHANNEL_SELECT_FILE,
CHANNEL_SET_CONFIG, CHANNEL_SET_CONFIG,
CHANNEL_UPDATE, CHANNEL_UPDATE,
@ -19,7 +19,7 @@ const llonebot = {
ipcRenderer.send(CHANNEL_LOG, data); ipcRenderer.send(CHANNEL_LOG, data);
}, },
checkVersion:async (): Promise<CheckVersion> => { checkVersion:async (): Promise<CheckVersion> => {
return ipcRenderer.invoke(CHANNEL_CHECKVERSION); return ipcRenderer.invoke(CHANNEL_CHECK_VERSION);
}, },
updateLLOneBot:async (): Promise<boolean> => { updateLLOneBot:async (): Promise<boolean> => {
return ipcRenderer.invoke(CHANNEL_UPDATE); return ipcRenderer.invoke(CHANNEL_UPDATE);

View File

@ -336,7 +336,7 @@ async function onSettingWindowCreated(view: Element) {
}); });
return; return;
} }
if (ResultVersion.result) { if (!ResultVersion.result) {
view.querySelector(".llonebot-update-title").innerHTML = "当前已是最新版本 V" + ResultVersion.version; view.querySelector(".llonebot-update-title").innerHTML = "当前已是最新版本 V" + ResultVersion.version;
view.querySelector(".llonebot-update-button").innerHTML = "无需更新"; view.querySelector(".llonebot-update-button").innerHTML = "无需更新";
} else { } else {