mirror of
https://github.com/LightZirconite/Microsoft-Rewards-Bot.git
synced 2026-01-10 09:16:16 +00:00
Improved interactive mode: added an automatic job reset option for scheduled tasks and improved stealth mode to bypass CAPTCHAs.
This commit is contained in:
24
src/index.ts
24
src/index.ts
@@ -171,9 +171,27 @@ export class MicrosoftRewardsBot {
|
||||
}
|
||||
|
||||
private async promptResetJobState(): Promise<boolean> {
|
||||
// Skip prompt in non-interactive environments (Docker, CI, scheduled tasks)
|
||||
if (!process.stdin.isTTY) {
|
||||
log('main','TASK','Non-interactive environment detected - keeping job state', 'warn')
|
||||
// Check if auto-reset is enabled in config (for scheduled tasks)
|
||||
if (this.config.jobState?.autoResetOnComplete === true) {
|
||||
log('main','TASK','Auto-reset enabled (jobState.autoResetOnComplete=true) - resetting and rerunning all accounts', 'log', 'green')
|
||||
return true
|
||||
}
|
||||
|
||||
// Check environment variable override
|
||||
const envAutoReset = process.env.REWARDS_AUTO_RESET_JOBSTATE
|
||||
if (envAutoReset === '1' || envAutoReset?.toLowerCase() === 'true') {
|
||||
log('main','TASK','Auto-reset enabled (REWARDS_AUTO_RESET_JOBSTATE) - resetting and rerunning all accounts', 'log', 'green')
|
||||
return true
|
||||
}
|
||||
|
||||
// Detect non-interactive environments more reliably
|
||||
const isNonInteractive = !process.stdin.isTTY ||
|
||||
process.env.CI === 'true' ||
|
||||
process.env.DOCKER === 'true' ||
|
||||
process.env.SCHEDULED_TASK === 'true'
|
||||
|
||||
if (isNonInteractive) {
|
||||
log('main','TASK','Non-interactive environment detected - keeping job state (set jobState.autoResetOnComplete=true to auto-rerun)', 'warn')
|
||||
return false
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user