one time use sockets
This commit is contained in:
parent
4f9cfd81ef
commit
06bfa08154
1 changed files with 39 additions and 13 deletions
|
|
@ -3,9 +3,11 @@
|
|||
const logger = require("winston");
|
||||
|
||||
module.exports = (
|
||||
/** @type {import('socket.io').Server} */
|
||||
io,
|
||||
lnd,
|
||||
) => {
|
||||
|
||||
const Mediator = require("../services/gunDB/Mediator/index.js");
|
||||
const EventEmitter = require("events");
|
||||
|
||||
|
|
@ -42,17 +44,40 @@ module.exports = (
|
|||
io.on("connection", socket => {
|
||||
logger.info(`io.onconnection`)
|
||||
|
||||
// this is where we create the websocket connection
|
||||
// with the GunDB service.
|
||||
Mediator.createMediator(socket);
|
||||
|
||||
logger.info(`socket after createmediator`)
|
||||
|
||||
logger.info("socket.handshake", socket.handshake);
|
||||
|
||||
/** printing out the client who joined */
|
||||
logger.info("New socket client connected (id=" + socket.id + ").");
|
||||
|
||||
const isOneTimeUseSocket = !!socket.handshake.query.IS_GUN_AUTH
|
||||
|
||||
if (isOneTimeUseSocket) {
|
||||
logger.info('New socket is one time use')
|
||||
socket.on('IS_GUN_AUTH', () => {
|
||||
try {
|
||||
const isGunAuth = Mediator.isAuthenticated()
|
||||
socket.emit('IS_GUN_AUTH', {
|
||||
ok: true,
|
||||
msg: {
|
||||
isGunAuth
|
||||
},
|
||||
origBody: {}
|
||||
})
|
||||
socket.disconnect()
|
||||
} catch (err) {
|
||||
socket.emit('IS_GUN_AUTH', {
|
||||
ok: false,
|
||||
msg: err.message,
|
||||
origBody: {}
|
||||
})
|
||||
socket.disconnect()
|
||||
}
|
||||
})
|
||||
} else {
|
||||
logger.info('New socket is NOT one time use')
|
||||
// this is where we create the websocket connection
|
||||
// with the GunDB service.
|
||||
Mediator.createMediator(socket);
|
||||
registerSocketListeners(socket);
|
||||
|
||||
/** listening if client has disconnected */
|
||||
|
|
@ -60,7 +85,8 @@ module.exports = (
|
|||
unregisterSocketListeners(socket);
|
||||
logger.info("client disconnected (id=" + socket.id + ").");
|
||||
});
|
||||
});
|
||||
}
|
||||
})
|
||||
|
||||
return mySocketsEvents;
|
||||
};
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue