| 1234567891011121314151617181920212223242526272829 |
- const socketIO = require('socket.io');
- const RabbitMQListener = require('./utils/RabbitMQListener');
- const EventEmitter = require('events');
- const { createLogger } = require('./utils/logger');
- const log = createLogger('socket');
- const socketEmitter = new EventEmitter();
- const rabbitMQListener = new RabbitMQListener();
- rabbitMQListener.listenToQueue('formattedMessages', (messages) => {
- log.info({ action: 'message_received', queue: 'formattedMessages', outcome: 'success' });
- socketEmitter.emit('formattedMessages', messages);
- });
- const io = socketIO(8084);
- io.on('connection', (socket) => {
- log.info({ action: 'client_connect', socketId: socket.id });
- socket.on('disconnect', () => {
- log.info({ action: 'client_disconnect', socketId: socket.id });
- });
- socketEmitter.on('formattedMessages', (messages) => {
- if (socket.connected) {
- socket.send(messages);
- }
- });
- });
|