Merge branch 'master' into feature/scheduler
This commit is contained in:
+1
-1
@@ -141,7 +141,7 @@ async function scheduleBookWithNumbers(startNumber, endNumber, selectedStore, pa
|
||||
})
|
||||
}
|
||||
|
||||
async function startBookWithNumbers(startNumber, endNumber, selectedStore, pathToExcelFile = '/Users/lpan/Desktop/contact_all.xlsx', audioAnalyse = false, alertBeep = false) {
|
||||
async function startBookWithNumbers(startNumber, endNumber, selectedStore, pathToExcelFile = '/Users/lpan/Desktop/contact_all.xlsx', audioAnalyse = true, alertBeep = false) {
|
||||
let allContactList = excelUtil.readContacts(pathToExcelFile);
|
||||
let contactList;
|
||||
if (endNumber <= allContactList.length) {
|
||||
|
||||
@@ -8,8 +8,6 @@ class ExcelUtil {
|
||||
let contactList = [];
|
||||
workSheetsFromFile[0].data.forEach(
|
||||
(info, index, list) => {
|
||||
// console.log("info:" + info)
|
||||
// console.log("index:" + index)
|
||||
if (index > 0 && info.length > 0) {
|
||||
// console.log(info)
|
||||
let name = info[0].split(" ")
|
||||
|
||||
@@ -9,8 +9,9 @@ const AUDIO_CAPTCHA_TRACK = ".audio-captcha-track";
|
||||
const CAPTCHA_CONTAINER = "#captcha-container";
|
||||
const WAV_URL_REGEX = "https:.+.wav";
|
||||
const re = new RegExp(WAV_URL_REGEX);
|
||||
// const SPEECH_TO_TEXT_HOST = "http://appointment.lpaconsulting.fr:8000"
|
||||
const SPEECH_TO_TEXT_HOST = "http://127.0.0.1:8000"
|
||||
const SPEECH_TO_TEXT_HOST = "http://appointment.lpaconsulting.fr:8000"
|
||||
|
||||
// const SPEECH_TO_TEXT_HOST = "http://127.0.0.1:8000"
|
||||
|
||||
function delay(delayInMs) {
|
||||
return new Promise(resolve => {
|
||||
@@ -66,6 +67,17 @@ class GeoCaptchaSolver {
|
||||
this.device = device;
|
||||
}
|
||||
|
||||
async clearLastDigit(iframeHandler) {
|
||||
let selector = "#captcha__audio > div.audio-captcha-input-container > input:nth-child(" + 6 + ")"
|
||||
let lastDigit = await iframeHandler.locator(selector).inputValue()
|
||||
if (lastDigit !== "") {
|
||||
console.log(this.device.model() + ":last digit is not empty, clear it")
|
||||
await iframeHandler.locator(selector).fill("")
|
||||
} else {
|
||||
console.log(this.device.model() + ":last digit is empty, do nothing")
|
||||
}
|
||||
}
|
||||
|
||||
async solve(onResult) {
|
||||
console.log(this.device.model() + ":solve() called.")
|
||||
console.log(this.device.model() + ":play audio")
|
||||
@@ -89,6 +101,9 @@ class GeoCaptchaSolver {
|
||||
// console.log("selector is " + selector)
|
||||
try {
|
||||
await iframeHandler.locator(selector).focus()
|
||||
if (i === 5) {
|
||||
await this.clearLastDigit(iframeHandler)
|
||||
}
|
||||
await iframeHandler.locator(selector).fill("" + number_list[i - 1])
|
||||
} catch (e) {
|
||||
console.log(e)
|
||||
@@ -100,7 +115,7 @@ class GeoCaptchaSolver {
|
||||
try {
|
||||
|
||||
let content = await captcha_container.innerHTML()
|
||||
console.log("inner container is " + content)
|
||||
console.log(this.device.model() + ":inner container is " + content)
|
||||
try {
|
||||
if (number_list.length === 0) {
|
||||
onResult(false)
|
||||
@@ -144,7 +159,7 @@ class GeoCaptchaSolver {
|
||||
}
|
||||
|
||||
async resetBrowser() {
|
||||
console.log("will reset browser")
|
||||
console.log(this.device.model() + ":will reset browser")
|
||||
await this.device.shell("pm clear com.android.chrome")
|
||||
await delay(1000)
|
||||
await this.device.shell("am set-debug-app --persistent com.android.chrome")
|
||||
|
||||
Reference in New Issue
Block a user