vertification
This commit is contained in:
parent
8ab8d0363f
commit
8cdace4079
|
@ -1,9 +1,24 @@
|
|||
import Hero from "@ulixee/hero";
|
||||
import * as telegram from 'telegram';
|
||||
import { sleep } from "telegram/Helpers";
|
||||
import { AccountInterface } from "./interfaces/databaseInterface";
|
||||
import { waitNewMessages } from "./utils";
|
||||
|
||||
|
||||
|
||||
export const vertification=async function vertification(worker: AccountInterface,hero: Omit<Hero, "then">,url: string) {
|
||||
await hero.goto(url);
|
||||
export const vertification=async function vertification(client: telegram.TelegramClient,worker: AccountInterface,hero: Omit<Hero, "then">,url: string,botEntity: telegram.Api.Chat | telegram.Api.User,idOfLastMessage: number) {
|
||||
await hero.goto(url,{timeoutMs:180_000});
|
||||
await hero.waitForLoad('AllContentLoaded');
|
||||
const captchaButton=hero.document.querySelector('button.g-recaptcha.btn.btn-primary');
|
||||
if (captchaButton!=null){
|
||||
let verify=hero.document.querySelector('body > section > h2');
|
||||
while (verify!=null && (await verify.textContent)!.includes('All right!')==false){
|
||||
await hero.interact({click:{element: captchaButton, verification: 'exactElement'}});
|
||||
await sleep(5000);
|
||||
verify=hero.document.querySelector('body > section > h2');
|
||||
}
|
||||
|
||||
} else {
|
||||
throw new Error('Cant find captcha button');
|
||||
}
|
||||
}
|
53
index.ts
53
index.ts
|
@ -219,47 +219,42 @@ const farm: ()=>Promise<void>=async ()=>{
|
|||
await client.sendMessage(botEntity,{message:`/start`});
|
||||
logger.debug(`${worker.phoneNumber} | First start of ${botEntity.username}`);
|
||||
}
|
||||
logger.info(`${worker.phoneNumber} | Sending earn message...`);
|
||||
}
|
||||
logger.info(`${worker.phoneNumber} | Sending earn message...`);
|
||||
const requestTasksMessage=await client.sendMessage(botEntity,{message:settings.botButtons.earn});
|
||||
await waitNewMessages(client,worker,botEntity,requestTasksMessage.id)
|
||||
let tasksSelector:telegram.Api.Message=(await client.getMessages(botEntity,{
|
||||
minId:requestTasksMessage.id,
|
||||
// search: settings.botMessages.tasksSelector,
|
||||
}))[0];
|
||||
if (tasksSelector.message.includes(settings.botMessages.verification)==true){
|
||||
const url: string=tasksSelector.buttons![0][0].url!;
|
||||
await vertification(client,worker,hero,url,botEntity,tasksSelector.id);
|
||||
const requestTasksMessage=await client.sendMessage(botEntity,{message:settings.botButtons.earn});
|
||||
await waitNewMessages(client,worker,botEntity,requestTasksMessage.id)
|
||||
let tasksSelector:telegram.Api.Message;
|
||||
try {
|
||||
tasksSelector=(await client.getMessages(botEntity,{
|
||||
minId:requestTasksMessage.id,
|
||||
search: settings.botMessages.tasksSelector,
|
||||
}))[0];
|
||||
} catch (err){
|
||||
try{
|
||||
tasksSelector=(await client.getMessages(botEntity,{
|
||||
minId:requestTasksMessage.id,
|
||||
search: settings.botMessages.verification,
|
||||
}))[0];
|
||||
const url: string=tasksSelector.buttons![0][0].url!;
|
||||
await vertification(worker,hero,url);
|
||||
} catch (err){
|
||||
logger.error(`Check ${worker.phoneNumber} for last message`);
|
||||
throw new Error("Unknow message was found");
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
tasksSelector=(await client.getMessages(botEntity,{
|
||||
minId:requestTasksMessage.id,
|
||||
// search: settings.botMessages.tasksSelector,
|
||||
}))[0];
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
await hero.close();
|
||||
await miner.close();
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
container.kill();
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -27,8 +27,8 @@
|
|||
},
|
||||
"scripts": {
|
||||
"test": "yarn run build && node build/database.js",
|
||||
"build": "tsc -p .",
|
||||
"start": "tsc -p . && node build/index.js"
|
||||
"build": "yarn run tsc -p .",
|
||||
"start": "yarn run tsc -p . && node build/index.js"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
"strictNullChecks": true,
|
||||
"strictFunctionTypes": true,
|
||||
"esModuleInterop": true,
|
||||
"skipLibCheck": true, // due @ulixee
|
||||
// "allowSyntheticDefaultImports":true,
|
||||
"outDir": "build"
|
||||
|
||||
|
|
2
utils.ts
2
utils.ts
|
@ -127,7 +127,7 @@ export const startNewTorDocker=async function(proxyPort: number,socksPort: numbe
|
|||
await container.kill();
|
||||
progressBar.terminate();
|
||||
logger.warn(`Docker ${container.id} is unhealthy.Recreating...`);
|
||||
return await startNewTorDocker(proxyPort,socksPort,controlPort,timeout);
|
||||
return await startNewTorDocker(proxyPort,socksPort,controlPort,timeout/2);
|
||||
}
|
||||
progressBar.tick();
|
||||
await sleep(2000);
|
||||
|
|
Loading…
Reference in New Issue