// startup like fastapi similar | |
import { Database } from '../database/database.js'; | |
import { InitBot } from '../bot/telegrambot.js'; | |
import { | |
IsTelegramBot, | |
UsernameDB, | |
PasswordDB | |
} from '../config.js'; | |
import mongoose from 'mongoose'; | |
const port = 7860 | |
const startup = async () => { | |
try { | |
if (IsTelegramBot) { | |
await InitBot(); | |
} | |
mongoose.connect(`mongodb+srv://${UsernameDB}:${PasswordDB}@cluster0.1asx6h1.mongodb.net/AkenoXJs?retryWrites=true&w=majority`); | |
console.log("Mongoose connected successful."); | |
const dbClient = new Database("AkenoXJs"); | |
console.log("Starting application..."); | |
await dbClient.connect(); | |
console.log("MongoDB connected successfully."); | |
} catch (error) { | |
console.error("Error during startup:", error.message); | |
process.exit(1); | |
} | |
}; | |
const startServer = async (app) => { | |
await startup(); | |
app.listen(port, "0.0.0.0", () => { | |
console.log(`Server running on http://localhost:${port}`); | |
}); | |
}; | |
export { startServer }; |