Files
simple-kurir/index.ts

101 lines
2.4 KiB
TypeScript
Executable File

// ini adalah file utama dari aplikasi ini
import express, { type Request, type Response } from 'express';
import http from 'http';
import * as socket from './socket';
const socket_client = socket.clientSocket;
// import formData from 'express-form-data';
import fileUpload from 'express-fileupload';
import {testDatabaseConnection} from './connection';
import path from 'path';
import adminRouter from './routes/admin_router';
import userRouter from './routes/user_router';
import kurirRouter from './routes/kurir_router';
// this is for dotenv
import { config } from 'dotenv';
config();
console.log("diatas untuk dotenv");
const app = express();
const port = process.env.PORT || 3011;
const server = http.createServer(app);
const io = socket.init(server);
// Serve static files from the 'assets' directory
app.use(express.static(path.join(__dirname, 'assets')));
// Middleware for express-form-data
// app.use(formData.parse());
app.use(fileUpload({
createParentPath: true, // Creates the parent directory if it doesn't exist
}));
app.use(express.json());
app.use(express.urlencoded({ extended: true }));
testDatabaseConnection();
// create an admin route
app.use('/admin', adminRouter);
app.use('/kurir', kurirRouter);
app.use('/', userRouter);
io.on('connection', (socket) => {
const userID = socket.id;
// console.log('A user connected: ' + userID);
socket.on('scan_dia', (data: any) => {
console.log('Received scan_dia event: ' + data);
io.emit('scan_dia_lagi', "coba");
// socket.broadcast.emit('scan_dia_lagi', "coba");
// // cobadulu();
// io.emit('scan_dia_lagi', 'ini coba');
});
socket.on('scan_dia_lagi', (data: any) => {
console.log('Received scan_dia_lagi event: ' + data);
});
socket.on('disconnect', () => {
// console.log('User disconnected: ' + userID);
});
});
// function cobadulu(){
// console.log("coba");
// socket_client.emit('scan_dia_lagi', 'ini coba');
// }
// app.post('/submit', (req: Request, res: Response) => {
// console.log('Received form data:', req.body);
// res.json({ message: 'Form data received!', data: req.body });
// });
// app.listen(port, async () => {
// console.log(`Server is running on port ${port}`);
// });
server.listen(port, () => {
console.log(`Server running on port ${port}`);
});
export default { app, server, io };