Added browser start and kill function
This commit is contained in:
parent
8f402058ad
commit
7244a4ceaa
@ -1,13 +1,31 @@
|
|||||||
const exec = require('node:child_process');
|
const { spawn } = require('node:child_process')
|
||||||
|
|
||||||
// run the `ls` command using exec
|
let command;
|
||||||
exec('ls ./', (err, output) => {
|
let browserOpen = false;
|
||||||
// once the command has completed, the callback function is called
|
|
||||||
if (err) {
|
async function openBrowser() {
|
||||||
// log and return if we encounter an error
|
if(!browserOpen) {
|
||||||
console.error("could not execute command: ", err)
|
// const command = spawn("chromium-browser --display=:0 --noerrors --disable-session-crashed-bubble --disable-infobars --start-fullscreen http://localhost:3000 &")
|
||||||
return
|
command = spawn('chromium-browser', ['--display=:0', '--incognito', '--noerrors', '--hide-crash-restore-bubble', '--disable-infobars', '--kiosk', 'http://localhost:3000']);
|
||||||
|
|
||||||
|
command.stdout.on('data', data => {
|
||||||
|
console.log("stdout: ", data.toString());
|
||||||
|
});
|
||||||
|
|
||||||
|
command.stderr.on('data', data => {
|
||||||
|
console.log("sterr: ", data.toString());
|
||||||
|
});
|
||||||
|
browserOpen = true;
|
||||||
}
|
}
|
||||||
// log the output received from the command
|
}
|
||||||
console.log("Output: \n", output)
|
|
||||||
})
|
async function killBrowser() {
|
||||||
|
if(browserOpen) {
|
||||||
|
command.kill();
|
||||||
|
browserOpen = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
openBrowser, killBrowser
|
||||||
|
}
|
||||||
@ -132,6 +132,14 @@ async function refreshMonitor() {
|
|||||||
const response = await fetch("/admin/refreshMonitor"); // Call API Endpoint /admin/timerStart
|
const response = await fetch("/admin/refreshMonitor"); // Call API Endpoint /admin/timerStart
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async function openBrowser() {
|
||||||
|
const response = await fetch("/admin/openBrowser"); // Call API Endpoint /admin/openBrowser
|
||||||
|
}
|
||||||
|
|
||||||
|
async function killBrowser() {
|
||||||
|
const response = await fetch("/admin/killBrowser"); // Call API Endpoint /admin/killBrowser
|
||||||
|
}
|
||||||
|
|
||||||
// ######################################################################################################################################################
|
// ######################################################################################################################################################
|
||||||
// Timerfunctions
|
// Timerfunctions
|
||||||
// ######################################################################################################################################################
|
// ######################################################################################################################################################
|
||||||
|
|||||||
@ -4,6 +4,7 @@ const io = require('../controllers/socketio');
|
|||||||
|
|
||||||
const timer = require('../controllers/timer');
|
const timer = require('../controllers/timer');
|
||||||
const score = require('../controllers/score');
|
const score = require('../controllers/score');
|
||||||
|
const cli = require('../controllers/cli');
|
||||||
const db = require('../controllers/db');
|
const db = require('../controllers/db');
|
||||||
|
|
||||||
// ######################################################################################################################################################
|
// ######################################################################################################################################################
|
||||||
@ -18,8 +19,16 @@ router.get('/refreshMonitor', function(req, res, next) {
|
|||||||
res.send(); // send empty response
|
res.send(); // send empty response
|
||||||
});
|
});
|
||||||
|
|
||||||
// Express router endpoint to do cli stuff
|
// Express router endpoint to open browser
|
||||||
router.get('/cli', function(req, res, next) {
|
router.get('/openBrowser', function(req, res, next) {
|
||||||
|
cli.openBrowser();
|
||||||
|
res.status(200); // Set http status code to 200 (success)
|
||||||
|
res.send(); // send empty response
|
||||||
|
});
|
||||||
|
|
||||||
|
// Express router endpoint to kill browser
|
||||||
|
router.get('/killBrowser', function(req, res, next) {
|
||||||
|
cli.killBrowser();
|
||||||
res.status(200); // Set http status code to 200 (success)
|
res.status(200); // Set http status code to 200 (success)
|
||||||
res.send(); // send empty response
|
res.send(); // send empty response
|
||||||
});
|
});
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user