Files
Microsoft-Rewards-Script/src/functions/activities/Poll.ts
TheNetsky ffe00ff3b8 1.0.4
2023-09-30 20:29:42 +02:00

31 lines
1.0 KiB
TypeScript

import { Page } from 'puppeteer'
import { MorePromotion, PromotionalItem } from '../../interface/DashboardData'
import { getLatestTab } from '../../BrowserUtil'
import { log } from '../../util/Logger'
import { randomNumber, wait } from '../../util/Utils'
export async function doPoll(page: Page, data: PromotionalItem | MorePromotion) {
log('POLL', 'Trying to complete poll')
try {
const selector = `[data-bi-id="${data.offerId}"]`
// Wait for page to load and click to load the quiz in a new tab
await page.waitForSelector(selector, { timeout: 5000 })
await page.click(selector)
const pollPage = await getLatestTab(page)
const buttonId = `#btoption${Math.floor(randomNumber(0, 1))}`
await pollPage.waitForSelector(buttonId)
await pollPage.click(buttonId)
await wait(2000)
await pollPage.close()
log('POLL', 'Completed the poll successfully')
} catch (error) {
log('POLL', 'An error occurred:' + error, 'error')
}
}