Compare commits
5 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5aa69588fb | ||
|
|
28b028d056 | ||
|
|
4ac04d4457 | ||
|
|
9d137b6b52 | ||
|
|
79110bdb1c |
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "legica-dana",
|
"name": "legica-dana",
|
||||||
"version": "2.0.3",
|
"version": "2.0.5",
|
||||||
"main": "src/app.ts",
|
"main": "src/app.ts",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"start": "bun src/app.ts"
|
"start": "bun src/app.ts"
|
||||||
|
|||||||
52
src/app.ts
52
src/app.ts
@@ -29,6 +29,55 @@ async function jobRunner() {
|
|||||||
logger.error(err);
|
logger.error(err);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
const botPlugin = new Elysia({ prefix: "/bot" })
|
||||||
|
.use(
|
||||||
|
basicAuth({
|
||||||
|
users: [
|
||||||
|
{
|
||||||
|
username: "admin",
|
||||||
|
password: config.PASSWORD,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
errorMessage: "Unauthorized",
|
||||||
|
})
|
||||||
|
)
|
||||||
|
.get(
|
||||||
|
"/",
|
||||||
|
() => ({
|
||||||
|
uptime: client.uptime,
|
||||||
|
readyAt: client.readyAt,
|
||||||
|
readyTimestamp: client.readyTimestamp,
|
||||||
|
}),
|
||||||
|
{
|
||||||
|
detail: {
|
||||||
|
summary: "Get BOT status",
|
||||||
|
},
|
||||||
|
}
|
||||||
|
)
|
||||||
|
.post(
|
||||||
|
"/",
|
||||||
|
() => {
|
||||||
|
client.login(config.TOKEN);
|
||||||
|
return "Bot logged in started";
|
||||||
|
},
|
||||||
|
{
|
||||||
|
detail: {
|
||||||
|
summary: "Start BOT if it is not running",
|
||||||
|
},
|
||||||
|
}
|
||||||
|
)
|
||||||
|
.delete(
|
||||||
|
"/",
|
||||||
|
() => {
|
||||||
|
client.destroy();
|
||||||
|
return "Bot logged out";
|
||||||
|
},
|
||||||
|
{
|
||||||
|
detail: {
|
||||||
|
summary: "Stops the BOT.",
|
||||||
|
},
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
const taskPlugin = new Elysia({ prefix: "/job" })
|
const taskPlugin = new Elysia({ prefix: "/job" })
|
||||||
.use(
|
.use(
|
||||||
@@ -138,7 +187,7 @@ const taskPlugin = new Elysia({ prefix: "/job" })
|
|||||||
"/send",
|
"/send",
|
||||||
async ({ set, body }) => {
|
async ({ set, body }) => {
|
||||||
try {
|
try {
|
||||||
const url = body.url;
|
const url = body?.url;
|
||||||
if (url) {
|
if (url) {
|
||||||
await sendDiscordMessage(client, url);
|
await sendDiscordMessage(client, url);
|
||||||
} else {
|
} else {
|
||||||
@@ -212,6 +261,7 @@ const app = new Elysia()
|
|||||||
)
|
)
|
||||||
.use(staticPlugin())
|
.use(staticPlugin())
|
||||||
.use(taskPlugin)
|
.use(taskPlugin)
|
||||||
|
.use(botPlugin)
|
||||||
.listen(config.PORT);
|
.listen(config.PORT);
|
||||||
|
|
||||||
client.login(config.TOKEN);
|
client.login(config.TOKEN);
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ const config: ProjectConfig = {
|
|||||||
APP_VERSION: version,
|
APP_VERSION: version,
|
||||||
LEGICA_URL: "https://sib.net.hr/legica-dana",
|
LEGICA_URL: "https://sib.net.hr/legica-dana",
|
||||||
TIMEZONE: process.env.TIMEZONE || "utc",
|
TIMEZONE: process.env.TIMEZONE || "utc",
|
||||||
LEGICA_DATE_FORMAT: process.env.LEGICA_DATE_FORMAT || "DD.MM.YYYY",
|
LEGICA_DATE_FORMAT: process.env.LEGICA_DATE_FORMAT || "D.M.YYYY",
|
||||||
};
|
};
|
||||||
|
|
||||||
export { config };
|
export { config };
|
||||||
|
|||||||
Reference in New Issue
Block a user