Spaces:
Paused
Paused
| exports.callRequestController = (io, socket) => { | |
| socket.on( | |
| "user:callRequest", | |
| async ({ chatRoomId, signalData, userId, callType }, acknowledgementFn) => { | |
| // If call receiver is not in room | |
| const socketsInChatRoom = io.in(chatRoomId).allSockets(); | |
| if (socketsInChatRoom.size === 1) { | |
| acknowledgementFn(false); | |
| return; | |
| } | |
| // Emit to other user about call request | |
| socket | |
| .to(chatRoomId) | |
| .timeout(5000) | |
| .emit( | |
| "user:callRequest", | |
| { chatRoomId, signalData, userId, callType }, | |
| (err) => { | |
| if (err) { | |
| console.log("How?"); | |
| } else { | |
| acknowledgementFn(true); | |
| } | |
| } | |
| ); | |
| } | |
| ); | |
| }; | |
| exports.callAcceptedController = (io, socket) => { | |
| socket.on("user:callAccepted", ({ chatRoomId, signalData }) => { | |
| socket.to(chatRoomId).emit("user:callAccepted", { signalData }); | |
| }); | |
| }; | |
| exports.endCallController = (io, socket) => { | |
| socket.on("user:endCall", ({ chatRoomId }) => { | |
| io.to(chatRoomId).emit("user:endCall"); | |
| }); | |
| }; | |
| exports.callDeniedController = (io, socket) => { | |
| socket.on("user:callDenied", ({ chatRoomId }) => { | |
| io.to(chatRoomId).emit("user:callDenied"); | |
| }); | |
| }; | |