TheNetsky / Microsoft-Rewards-Script

Automated Microsoft Rewards script, using TypeScript, Cheerio and Playwright.
232 stars 52 forks source link

Mobile Searches are not working #155

Closed DestroyerV closed 1 week ago

DestroyerV commented 1 month ago

After the update to 1.4.11 the mobile search are not working. If the desktop searches complete the script reopen the chromium in desktop mode not in mobile browser mode because of this the mobile search point is not getting collected.

badcaf3 commented 1 month ago

Under the new Microsoft Rewards rules, for some restricted accounts, points will only be awarded for 3 searches every 15 minutes. it will return to normal after a few days, and then just don't search too fast.

yieskoW commented 1 month ago

I preferred to modify the Search.ts and add some lines of code and a condition:

if (this.bot.isMobile && mobileSearchCount >= maxMobileSearches) {
    this.bot.log('SEARCH-BING-MOBILE', 'Reached max searches on mobile, waiting 15 minutes...')
    await this.bot.utils.wait(15 * 60 * 1000)
    mobileSearchCount = 0
}

And it works perfectly, it usually finishes in two hours or less with the default settings in config.json. I'm just sharing my way of doing it, not sure if it's the most appropriate, but I know it works perfectly and consistently. I hope it helps in some way, this is not the full code, but if anyone is interested, I can share it

TheNetsky commented 1 month ago

I mean I think you can just set the min and max for mobile to 15min, to achieve the same thing.

mgrimace commented 1 month ago

I preferred to modify the Search.ts and add some lines of code and a condition:

if (this.bot.isMobile && mobileSearchCount >= maxMobileSearches) {
    this.bot.log('SEARCH-BING-MOBILE', 'Reached max searches on mobile, waiting 15 minutes...')
    await this.bot.utils.wait(15 * 60 * 1000)
    mobileSearchCount = 0
}

And it works perfectly, it usually finishes in two hours or less with the default settings in config.json. I'm just sharing my way of doing it, not sure if it's the most appropriate, but I know it works perfectly and consistently. I hope it helps in some way, this is not the full code, but if anyone is interested, I can share it

Is the idea here that the script can detect if you’ve reached max searches, then only implement the delay as needed? If so, that’s great vs., using a cooldown all the time.

TheNetsky commented 1 week ago

I preferred to modify the Search.ts and add some lines of code and a condition:

if (this.bot.isMobile && mobileSearchCount >= maxMobileSearches) {
    this.bot.log('SEARCH-BING-MOBILE', 'Reached max searches on mobile, waiting 15 minutes...')
    await this.bot.utils.wait(15 * 60 * 1000)
    mobileSearchCount = 0
}

And it works perfectly, it usually finishes in two hours or less with the default settings in config.json. I'm just sharing my way of doing it, not sure if it's the most appropriate, but I know it works perfectly and consistently. I hope it helps in some way, this is not the full code, but if anyone is interested, I can share it

Is the idea here that the script can detect if you’ve reached max searches, then only implement the delay as needed? If so, that’s great vs., using a cooldown all the time.

I mean you can also set it to min3 and max4, so even if it "failed" you have to only wait 3-4min in general. This has worked fine for me in general.