Files
omnisupport-ai/backend/index.js
2026-02-17 00:38:21 +01:00

55 lines
1.3 KiB
JavaScript

import express from 'express';
import cors from 'cors';
import { checkConnection, query, initDb } from './db.js';
const app = express();
const PORT = process.env.PORT || 3000;
app.use(cors());
app.use(express.json());
// Health Check & DB Init trigger
app.get('/api/health', async (req, res) => {
const dbStatus = await checkConnection();
res.json({
status: 'ok',
database: dbStatus ? 'connected' : 'disconnected',
timestamp: new Date().toISOString()
});
});
// --- API ENDPOINTS EXAMPLES (To replace Mock Data) ---
// Get All Agents
app.get('/api/agents', async (req, res) => {
try {
const agents = await query('SELECT * FROM agents');
res.json(agents);
} catch (e) {
res.status(500).json({ error: e.message });
}
});
// Get Tickets
app.get('/api/tickets', async (req, res) => {
try {
const tickets = await query('SELECT * FROM tickets ORDER BY created_at DESC');
res.json(tickets);
} catch (e) {
res.status(500).json({ error: e.message });
}
});
// Avvio del server
const startServer = async () => {
// Attendi inizializzazione DB (creazione tabelle se necessario)
await initDb();
app.listen(PORT, () => {
console.log(`🚀 Backend Server running on port ${PORT}`);
checkConnection(); // Initial check
});
};
startServer();