update queue
This commit is contained in:
parent
6ea0c8702c
commit
08deba1baa
5
index.js
5
index.js
|
|
@ -1,3 +1,6 @@
|
||||||
const robot = require('./robot/robot');
|
const robot = require('./robot/robot');
|
||||||
|
const queue = require('./queue/queue');
|
||||||
|
|
||||||
robot('hello', 'edu.vn')
|
(async function start() {
|
||||||
|
await queue(robot('hello', 'spotify.com'))
|
||||||
|
}())
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@ const CONNECT_RABBIT_STR = "amqp://rabbit:rabbit123@rabbitmq";
|
||||||
const QUEUE = "browser";
|
const QUEUE = "browser";
|
||||||
const QUEUE_NOTIFY = "browser-notify";
|
const QUEUE_NOTIFY = "browser-notify";
|
||||||
|
|
||||||
async function processMessage(channel, message) {
|
async function processMessage(channel, message, processCallback) {
|
||||||
const timestamp = Date.now();
|
const timestamp = Date.now();
|
||||||
const response = JSON.parse(message.content.toString());
|
const response = JSON.parse(message.content.toString());
|
||||||
const socketioStart = io.connect(CONNECT_SOCKET_STR, {
|
const socketioStart = io.connect(CONNECT_SOCKET_STR, {
|
||||||
|
|
@ -32,7 +32,11 @@ async function processMessage(channel, message) {
|
||||||
},
|
},
|
||||||
}).close();
|
}).close();
|
||||||
// TODO run script
|
// TODO run script
|
||||||
// do something
|
if (typeof processCallback === 'function') {
|
||||||
|
await processCallback()
|
||||||
|
} else {
|
||||||
|
throw new Error('processCallback is not function')
|
||||||
|
}
|
||||||
// !TODO
|
// !TODO
|
||||||
const socketioEnd = io.connect(CONNECT_SOCKET_STR, {
|
const socketioEnd = io.connect(CONNECT_SOCKET_STR, {
|
||||||
transports: ["websocket"],
|
transports: ["websocket"],
|
||||||
|
|
@ -58,7 +62,7 @@ async function processMessage(channel, message) {
|
||||||
channel.ack(message);
|
channel.ack(message);
|
||||||
}
|
}
|
||||||
|
|
||||||
module.exports = async function() {
|
module.exports = async function(processCallback) {
|
||||||
const conn = await amqplib.connect(CONNECT_RABBIT_STR);
|
const conn = await amqplib.connect(CONNECT_RABBIT_STR);
|
||||||
const channelProcess = await conn.createChannel();
|
const channelProcess = await conn.createChannel();
|
||||||
|
|
||||||
|
|
@ -67,7 +71,7 @@ module.exports = async function() {
|
||||||
await channelProcess.prefetch(1);
|
await channelProcess.prefetch(1);
|
||||||
await channelProcess.consume(QUEUE,
|
await channelProcess.consume(QUEUE,
|
||||||
async (message) => {
|
async (message) => {
|
||||||
await processMessage(channelProcess, message);
|
await processMessage(channelProcess, message, processCallback);
|
||||||
},
|
},
|
||||||
{noAck: false}
|
{noAck: false}
|
||||||
);
|
);
|
||||||
|
|
|
||||||
|
|
@ -7,10 +7,14 @@ const robotjs = require('robotjs')
|
||||||
const tesseract = require('tesseract.js')
|
const tesseract = require('tesseract.js')
|
||||||
const jsdom = require('jsdom')
|
const jsdom = require('jsdom')
|
||||||
const Jimp = require('jimp')
|
const Jimp = require('jimp')
|
||||||
|
const CONFIG = {
|
||||||
|
SCALE_IMAGE: 1.5,
|
||||||
|
SCROLL_COUNT: 8,
|
||||||
|
}
|
||||||
|
|
||||||
module.exports = async function(keywordSearch, keywordToClick, scale = 1.5, fileScreenshot = 'screenshot.jpg', waitSearch = 2000) {
|
module.exports = async function(keywordSearch, keywordToClick, scale = CONFIG.SCALE_IMAGE, fileScreenshot = 'screenshot.jpg', waitSearch = 2000) {
|
||||||
if(!scale) {
|
if(!scale) {
|
||||||
scale = 1.5
|
scale = CONFIG.SCALE_IMAGE
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!fileScreenshot) {
|
if(!fileScreenshot) {
|
||||||
|
|
@ -72,9 +76,11 @@ module.exports = async function(keywordSearch, keywordToClick, scale = 1.5, file
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
robotjs.keyTap('down')
|
// scroll to 8 times
|
||||||
robotjs.keyTap('down')
|
for (let i = 1; i < CONFIG.SCROLL_COUNT; i++) {
|
||||||
return rejToAgain(false)
|
robotjs.keyTap('down')
|
||||||
|
}
|
||||||
|
rejToAgain(false)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue