const result = await db.collection("collection").findOne({colID: 1});
const res = await db.collection('collectiontwo').insertOne({title: result.title});
client.close();
updates.setHearFallbackHandler(async (context, next) => {
await context.send('Такой команды нет :(');
});
let getTaskSolution = (src) => {
return new Promise((resolve, reject) => {
anticaptcha.getBalance(async (err, balance) => {
if (err) {
reject(err);
return;
}
anticaptcha.setMinLength(5);
if (balance > 0) {
anticaptcha.createImageToTextTask({
case: true, // or params can be set for every captcha specially
body: await image2base64(src).catch(reject)
}, (err, taskId) => {
if (err) {
reject(err);
return;
}
anticaptcha.getTaskSolution(taskId, (err, taskSolution) => {
if (err) {
reject(err);
return;
}
resolve(taskSolution)
});
});
}
});
});
};
(async () => {
setUTitle("Loading app");
if (!VK_TOKEN) {
let succ = await initToken();
if (!succ) {
process.exit();
}
}
vk.token = VK_TOKEN;
vk.captchaHandler = async ({src, type}, retry) => {
let key = await getTaskSolution(src).catch((error) => console.log(error));
try {
await retry(key);
con('Всё ок.');
} catch (e) {
con("Всё фигово. " + e.message, true);
}
};
})();
anticaptcha.getBalance(async function(err, balance) {
// ...
const API_URL = 'https://api.vk.com/captcha.php?sid=405226711931&s=1';
const body = await image2base64(API_URL).catch((error) => console.log(error));
if (balance > 0) {
anticaptcha.createImageToTextTask({
case: true, // or params can be set for every captcha specially
body
},
// ...
}
});
let users = await vk.api.messages.getConversationMembers({peer_id: context.peerId});
let user = users.items.find((item) => item.member_id === context.senderId);
if (user.is_admin) {
// админ
} else {
// не админ
}
Account.findOne({username: req.user}).select('token').exec()
.then((token) => {
// ...
});
как сделать последовательную операцию, что бы при определенном запросе в браузере не нужно было постоянно оборачивать все в функции и устраивать колбехелл
if (!this.products.find((item) => res.code === item.code)) {
this.products.push(res);
}
postHTTP(url, info) {
return new Promise((resolve, reject) => {
this.http.post(url, info, httpOptions).subscribe((data) => {
resolve(data);
console.log("POST Request is successful ", data);
}, (error) => {
reject(error);
console.log("Error", error);
});
});
}
async function f() {
let payload = {};
let schedule = await parser();
payload.message = schedule[0].date;
return payload;
}
// использование
f().then((payload) => {
console.log(payload);
});
async function getRoot(startPath) {
return new Promise(async (resolve, reject) => {
fs.access(`${startPath}/package.json`, fs.constants.F_OK, (err) => {
if (!err) {
resolve(startPath);
} else {
const arr = startPath.split('/');
arr.pop();
const newRoot = arr.join('/');
resolve(await (getRoot(newRoot)));
}
});
});
}
getRoot(process.env.PWD).then((data) => console.log(data));