diff --git a/packages/geek-auto-start-chat-with-boss/sage-time.mjs b/packages/geek-auto-start-chat-with-boss/sage-time.mjs index cd45cf5..5a6445d 100644 --- a/packages/geek-auto-start-chat-with-boss/sage-time.mjs +++ b/packages/geek-auto-start-chat-with-boss/sage-time.mjs @@ -1,16 +1,38 @@ +import { readConfigFile } from './runtime-file-utils.mjs' import { sleep } from "@geekgeekrun/utils/sleep.mjs" +let { + isSageTimeEnabled, + sageTimeOpTimes, + sageTimePauseMinute, +} = readConfigFile('boss.json') +isSageTimeEnabled = isSageTimeEnabled ?? true +sageTimeOpTimes = + isNaN(parseInt(sageTimeOpTimes)) || + parseInt(sageTimeOpTimes) < 1 + ? 50 + : parseInt(sageTimeOpTimes) +sageTimePauseMinute = + isNaN(parseFloat(sageTimePauseMinute)) || + parseFloat(sageTimePauseMinute) < 0 + ? 5 + : parseFloat(sageTimePauseMinute) +if (parseFloat(sageTimePauseMinute) === 0) { + isSageTimeEnabled = false +} let totalEnabledTimes = 0 - let recordedOpCount = 0 export const waitForSageTimeOrJustContinue = async ({ tag } = {}) => { + if (!isSageTimeEnabled) { + return + } const tagText = tag ? ` ${tag}` : '' - if (recordedOpCount > 50) { + if (recordedOpCount > sageTimeOpTimes) { totalEnabledTimes++ console.log(`[SageTime${tagText}] 请求已达限制,开启;当前记录次数 ${recordedOpCount};第 ${totalEnabledTimes} 次开启`) - await sleep(5 * 60 * 1000) + await sleep(sageTimePauseMinute * 60 * 1000) console.log(`[SageTime${tagText}] 请求限制已解除,关闭;当前记录次数 ${recordedOpCount};第 ${totalEnabledTimes} 次关闭`) recordedOpCount = 0 } diff --git a/packages/ui/src/main/flow/OPEN_SETTING_WINDOW/ipc/index.ts b/packages/ui/src/main/flow/OPEN_SETTING_WINDOW/ipc/index.ts index a3f78b3..5b30682 100644 --- a/packages/ui/src/main/flow/OPEN_SETTING_WINDOW/ipc/index.ts +++ b/packages/ui/src/main/flow/OPEN_SETTING_WINDOW/ipc/index.ts @@ -166,6 +166,15 @@ export default function initIpc() { bossConfig.staticCombineRecommendJobFilterConditions = payload.staticCombineRecommendJobFilterConditions } + if (hasOwn(payload, 'isSageTimeEnabled')) { + bossConfig.isSageTimeEnabled = payload.isSageTimeEnabled + } + if (hasOwn(payload, 'sageTimeOpTimes')) { + bossConfig.sageTimeOpTimes = payload.sageTimeOpTimes + } + if (hasOwn(payload, 'sageTimePauseMinute')) { + bossConfig.sageTimePauseMinute = payload.sageTimePauseMinute + } promiseArr.push(writeConfigFile('boss.json', bossConfig)) diff --git a/packages/ui/src/renderer/src/page/MainLayout/GeekAutoStartChatWithBoss/index.vue b/packages/ui/src/renderer/src/page/MainLayout/GeekAutoStartChatWithBoss/index.vue index 1298296..d9fca57 100644 --- a/packages/ui/src/renderer/src/page/MainLayout/GeekAutoStartChatWithBoss/index.vue +++ b/packages/ui/src/renderer/src/page/MainLayout/GeekAutoStartChatWithBoss/index.vue @@ -8,7 +8,7 @@