diff --git a/src/workers/CommandorPage.js b/src/workers/CommandorPage.js index 9e69227..b93d26f 100644 --- a/src/workers/CommandorPage.js +++ b/src/workers/CommandorPage.js @@ -329,7 +329,11 @@ class CommandorPage { log("audioBtn found") audioBtn.click() let captchaSolver = new GeoCaptchaSolver(this.page) - await captchaSolver.solve() + await captchaSolver.solve((isSuccessful) => { + if (!isSuccessful) { + this.isTerminated = true + } + }) } else { log("audioBtn not found") } diff --git a/src/workers/GeoCaptchaSolver.js b/src/workers/GeoCaptchaSolver.js index c65d2f3..736873d 100644 --- a/src/workers/GeoCaptchaSolver.js +++ b/src/workers/GeoCaptchaSolver.js @@ -56,7 +56,7 @@ class GeoCaptchaSolver { } - async solve() { + async solve(onResult) { console.log("solve() called.") console.log("play audio") let iframeHandler = await this.page.frameLocator("body > iframe"); @@ -76,6 +76,11 @@ class GeoCaptchaSolver { // fieldInputs[i].value = number_list[i]; await delay(2000 + getRandomWaitTime()); } + if (number_list.isEmpty()) { + onResult(false) + } else { + onResult(true) + } } ) }