Fix send message and ban message
This commit is contained in:
parent
74d0594246
commit
0bbaef0cb5
@ -2,25 +2,21 @@ import {IRoomManagerServer} from "./Messages/generated/messages_grpc_pb";
|
|||||||
import {
|
import {
|
||||||
AdminGlobalMessage,
|
AdminGlobalMessage,
|
||||||
AdminMessage,
|
AdminMessage,
|
||||||
AdminPusherToBackMessage, BanMessage,
|
AdminPusherToBackMessage,
|
||||||
ClientToServerMessage, EmptyMessage,
|
EmptyMessage,
|
||||||
ItemEventMessage,
|
ItemEventMessage,
|
||||||
JoinRoomMessage,
|
JoinRoomMessage,
|
||||||
PlayGlobalMessage,
|
PlayGlobalMessage,
|
||||||
PusherToBackMessage,
|
PusherToBackMessage,
|
||||||
QueryJitsiJwtMessage,
|
QueryJitsiJwtMessage,
|
||||||
ReportPlayerMessage,
|
|
||||||
RoomJoinedMessage,
|
|
||||||
ServerToAdminClientMessage,
|
ServerToAdminClientMessage,
|
||||||
ServerToClientMessage,
|
ServerToClientMessage,
|
||||||
SilentMessage,
|
SilentMessage,
|
||||||
UserMovesMessage,
|
UserMovesMessage,
|
||||||
ViewportMessage,
|
|
||||||
WebRtcSignalToServerMessage,
|
WebRtcSignalToServerMessage,
|
||||||
ZoneMessage
|
ZoneMessage
|
||||||
} from "./Messages/generated/messages_pb";
|
} from "./Messages/generated/messages_pb";
|
||||||
import grpc, {sendUnaryData, ServerDuplexStream, ServerUnaryCall, ServerWritableStream} from "grpc";
|
import {sendUnaryData, ServerDuplexStream, ServerUnaryCall, ServerWritableStream} from "grpc";
|
||||||
import {Empty} from "google-protobuf/google/protobuf/empty_pb";
|
|
||||||
import {socketManager} from "./Services/SocketManager";
|
import {socketManager} from "./Services/SocketManager";
|
||||||
import {emitError} from "./Services/MessageHelpers";
|
import {emitError} from "./Services/MessageHelpers";
|
||||||
import {User, UserSocket} from "./Model/User";
|
import {User, UserSocket} from "./Model/User";
|
||||||
@ -74,6 +70,16 @@ const roomManager: IRoomManagerServer = {
|
|||||||
socketManager.handleReportMessage(client, message.getReportplayermessage() as ReportPlayerMessage);*/
|
socketManager.handleReportMessage(client, message.getReportplayermessage() as ReportPlayerMessage);*/
|
||||||
} else if (message.hasQueryjitsijwtmessage()){
|
} else if (message.hasQueryjitsijwtmessage()){
|
||||||
socketManager.handleQueryJitsiJwtMessage(user, message.getQueryjitsijwtmessage() as QueryJitsiJwtMessage);
|
socketManager.handleQueryJitsiJwtMessage(user, message.getQueryjitsijwtmessage() as QueryJitsiJwtMessage);
|
||||||
|
}else if (message.hasSendusermessage()) {
|
||||||
|
const sendUserMessage = message.getSendusermessage();
|
||||||
|
if(sendUserMessage !== undefined) {
|
||||||
|
socketManager.handlerSendUserMessage(user, sendUserMessage);
|
||||||
|
}
|
||||||
|
}else if (message.hasBanusermessage()) {
|
||||||
|
const banUserMessage = message.getBanusermessage();
|
||||||
|
if(banUserMessage !== undefined) {
|
||||||
|
socketManager.handlerBanUserMessage(room, user, banUserMessage);
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
throw new Error('Unhandled message type');
|
throw new Error('Unhandled message type');
|
||||||
}
|
}
|
||||||
|
@ -1,24 +1,16 @@
|
|||||||
import {GameRoom} from "../Model/GameRoom";
|
import {GameRoom} from "../Model/GameRoom";
|
||||||
import {CharacterLayer} from "_Model/Websocket/CharacterLayer";
|
import {CharacterLayer} from "_Model/Websocket/CharacterLayer";
|
||||||
import {
|
import {
|
||||||
GroupDeleteMessage,
|
|
||||||
GroupUpdateMessage,
|
|
||||||
ItemEventMessage,
|
ItemEventMessage,
|
||||||
ItemStateMessage,
|
ItemStateMessage,
|
||||||
PlayGlobalMessage,
|
PlayGlobalMessage,
|
||||||
PointMessage,
|
PointMessage,
|
||||||
PositionMessage,
|
|
||||||
RoomJoinedMessage,
|
RoomJoinedMessage,
|
||||||
ServerToClientMessage,
|
ServerToClientMessage,
|
||||||
SetPlayerDetailsMessage,
|
|
||||||
SilentMessage,
|
SilentMessage,
|
||||||
SubMessage,
|
SubMessage,
|
||||||
ReportPlayerMessage,
|
|
||||||
UserJoinedMessage,
|
|
||||||
UserLeftMessage,
|
|
||||||
UserMovedMessage,
|
UserMovedMessage,
|
||||||
UserMovesMessage,
|
UserMovesMessage,
|
||||||
ViewportMessage,
|
|
||||||
WebRtcDisconnectMessage,
|
WebRtcDisconnectMessage,
|
||||||
WebRtcSignalToClientMessage,
|
WebRtcSignalToClientMessage,
|
||||||
WebRtcSignalToServerMessage,
|
WebRtcSignalToServerMessage,
|
||||||
@ -28,24 +20,23 @@ import {
|
|||||||
SendUserMessage,
|
SendUserMessage,
|
||||||
JoinRoomMessage,
|
JoinRoomMessage,
|
||||||
Zone as ProtoZone,
|
Zone as ProtoZone,
|
||||||
BatchMessage,
|
|
||||||
BatchToPusherMessage,
|
BatchToPusherMessage,
|
||||||
SubToPusherMessage,
|
SubToPusherMessage,
|
||||||
UserJoinedZoneMessage, GroupUpdateZoneMessage, GroupLeftZoneMessage, UserLeftZoneMessage, AdminMessage, BanMessage
|
UserJoinedZoneMessage, GroupUpdateZoneMessage, GroupLeftZoneMessage, UserLeftZoneMessage, BanUserMessage
|
||||||
} from "../Messages/generated/messages_pb";
|
} from "../Messages/generated/messages_pb";
|
||||||
import {User, UserSocket} from "../Model/User";
|
import {User, UserSocket} from "../Model/User";
|
||||||
import {ProtobufUtils} from "../Model/Websocket/ProtobufUtils";
|
import {ProtobufUtils} from "../Model/Websocket/ProtobufUtils";
|
||||||
import {Group} from "../Model/Group";
|
import {Group} from "../Model/Group";
|
||||||
import {cpuTracker} from "./CpuTracker";
|
import {cpuTracker} from "./CpuTracker";
|
||||||
import {ADMIN_API_URL, GROUP_RADIUS, JITSI_ISS, MINIMUM_DISTANCE, SECRET_JITSI_KEY} from "../Enum/EnvironmentVariable";
|
import {GROUP_RADIUS, JITSI_ISS, MINIMUM_DISTANCE, SECRET_JITSI_KEY} from "../Enum/EnvironmentVariable";
|
||||||
import {Movable} from "../Model/Movable";
|
import {Movable} from "../Model/Movable";
|
||||||
import {PositionInterface} from "../Model/PositionInterface";
|
import {PositionInterface} from "../Model/PositionInterface";
|
||||||
import {adminApi, CharacterTexture, FetchMemberDataByUuidResponse} from "./AdminApi";
|
import {adminApi, CharacterTexture} from "./AdminApi";
|
||||||
import Jwt from "jsonwebtoken";
|
import Jwt from "jsonwebtoken";
|
||||||
import {JITSI_URL} from "../Enum/EnvironmentVariable";
|
import {JITSI_URL} from "../Enum/EnvironmentVariable";
|
||||||
import {clientEventsEmitter} from "./ClientEventsEmitter";
|
import {clientEventsEmitter} from "./ClientEventsEmitter";
|
||||||
import {gaugeManager} from "./GaugeManager";
|
import {gaugeManager} from "./GaugeManager";
|
||||||
import {AdminSocket, ZoneSocket} from "../RoomManager";
|
import {ZoneSocket} from "../RoomManager";
|
||||||
import {Zone} from "_Model/Zone";
|
import {Zone} from "_Model/Zone";
|
||||||
import Debug from "debug";
|
import Debug from "debug";
|
||||||
import {Admin} from "_Model/Admin";
|
import {Admin} from "_Model/Admin";
|
||||||
@ -119,7 +110,7 @@ export class SocketManager {
|
|||||||
//const things = room.setViewport(client, viewport);
|
//const things = room.setViewport(client, viewport);
|
||||||
|
|
||||||
const roomJoinedMessage = new RoomJoinedMessage();
|
const roomJoinedMessage = new RoomJoinedMessage();
|
||||||
|
roomJoinedMessage.setTagList(joinRoomMessage.getTagList());
|
||||||
/*for (const thing of things) {
|
/*for (const thing of things) {
|
||||||
if (thing instanceof User) {
|
if (thing instanceof User) {
|
||||||
const player: ExSocketInterface|undefined = this.sockets.get(thing.id);
|
const player: ExSocketInterface|undefined = this.sockets.get(thing.id);
|
||||||
@ -626,6 +617,33 @@ export class SocketManager {
|
|||||||
user.socket.write(serverToClientMessage);
|
user.socket.write(serverToClientMessage);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public handlerSendUserMessage(user: User, sendUserMessageToSend: SendUserMessage){
|
||||||
|
const sendUserMessage = new SendUserMessage();
|
||||||
|
sendUserMessage.setMessage(sendUserMessageToSend.getMessage());
|
||||||
|
sendUserMessage.setType(sendUserMessageToSend.getType());
|
||||||
|
|
||||||
|
const serverToClientMessage = new ServerToClientMessage();
|
||||||
|
serverToClientMessage.setSendusermessage(sendUserMessage);
|
||||||
|
user.socket.write(serverToClientMessage);
|
||||||
|
}
|
||||||
|
|
||||||
|
public handlerBanUserMessage(room: GameRoom, user: User, banUserMessageToSend: BanUserMessage){
|
||||||
|
const banUserMessage = new BanUserMessage();
|
||||||
|
banUserMessage.setMessage(banUserMessageToSend.getMessage());
|
||||||
|
banUserMessage.setType(banUserMessageToSend.getType());
|
||||||
|
|
||||||
|
const serverToClientMessage = new ServerToClientMessage();
|
||||||
|
serverToClientMessage.setSendusermessage(banUserMessage);
|
||||||
|
user.socket.write(serverToClientMessage);
|
||||||
|
|
||||||
|
setTimeout(() => {
|
||||||
|
// Let's leave the room now.
|
||||||
|
room.leave(user);
|
||||||
|
// Let's close the connection when the user is banned.
|
||||||
|
user.socket.end();
|
||||||
|
}, 10000);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Merges the characterLayers received from the front (as an array of string) with the custom textures from the back.
|
* Merges the characterLayers received from the front (as an array of string) with the custom textures from the back.
|
||||||
*/
|
*/
|
||||||
@ -748,7 +766,7 @@ export class SocketManager {
|
|||||||
recipient.socket.write(subToPusherMessage);
|
recipient.socket.write(subToPusherMessage);
|
||||||
}
|
}
|
||||||
|
|
||||||
public banUser(roomId: string, recipientUuid: string): void {
|
public banUser(roomId: string, recipientUuid: string, message: string): void {
|
||||||
const room = this.rooms.get(roomId);
|
const room = this.rooms.get(roomId);
|
||||||
if (!room) {
|
if (!room) {
|
||||||
console.error("In banUser, could not find room with id '" + roomId + "'. Maybe the room was closed a few milliseconds ago and there was a race condition?");
|
console.error("In banUser, could not find room with id '" + roomId + "'. Maybe the room was closed a few milliseconds ago and there was a race condition?");
|
||||||
@ -765,6 +783,7 @@ export class SocketManager {
|
|||||||
room.leave(recipient);
|
room.leave(recipient);
|
||||||
|
|
||||||
const sendUserMessage = new SendUserMessage();
|
const sendUserMessage = new SendUserMessage();
|
||||||
|
sendUserMessage.setMessage(message);
|
||||||
sendUserMessage.setType('banned');
|
sendUserMessage.setType('banned');
|
||||||
|
|
||||||
const subToPusherMessage = new SubToPusherMessage();
|
const subToPusherMessage = new SubToPusherMessage();
|
||||||
|
@ -193,6 +193,11 @@ message SendUserMessage{
|
|||||||
string message = 2;
|
string message = 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
message BanUserMessage{
|
||||||
|
string type = 1;
|
||||||
|
string message = 2;
|
||||||
|
}
|
||||||
|
|
||||||
message ServerToClientMessage {
|
message ServerToClientMessage {
|
||||||
oneof message {
|
oneof message {
|
||||||
BatchMessage batchMessage = 1;
|
BatchMessage batchMessage = 1;
|
||||||
@ -207,6 +212,7 @@ message ServerToClientMessage {
|
|||||||
TeleportMessageMessage teleportMessageMessage = 10;
|
TeleportMessageMessage teleportMessageMessage = 10;
|
||||||
SendJitsiJwtMessage sendJitsiJwtMessage = 11;
|
SendJitsiJwtMessage sendJitsiJwtMessage = 11;
|
||||||
SendUserMessage sendUserMessage = 12;
|
SendUserMessage sendUserMessage = 12;
|
||||||
|
BanUserMessage banUserMessage = 13;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -273,6 +279,8 @@ message PusherToBackMessage {
|
|||||||
StopGlobalMessage stopGlobalMessage = 9;
|
StopGlobalMessage stopGlobalMessage = 9;
|
||||||
ReportPlayerMessage reportPlayerMessage = 10;
|
ReportPlayerMessage reportPlayerMessage = 10;
|
||||||
QueryJitsiJwtMessage queryJitsiJwtMessage = 11;
|
QueryJitsiJwtMessage queryJitsiJwtMessage = 11;
|
||||||
|
SendUserMessage sendUserMessage = 12;
|
||||||
|
BanUserMessage banUserMessage = 13;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -289,6 +297,7 @@ message SubToPusherMessage {
|
|||||||
UserLeftZoneMessage userLeftZoneMessage = 5;
|
UserLeftZoneMessage userLeftZoneMessage = 5;
|
||||||
ItemEventMessage itemEventMessage = 6;
|
ItemEventMessage itemEventMessage = 6;
|
||||||
SendUserMessage sendUserMessage = 7;
|
SendUserMessage sendUserMessage = 7;
|
||||||
|
BanUserMessage banUserMessage = 8;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -91,18 +91,11 @@ export class IoSocketController {
|
|||||||
|
|
||||||
if(message.event === 'user-message') {
|
if(message.event === 'user-message') {
|
||||||
const messageToEmit = (message.message as { message: string, type: string, userUuid: string });
|
const messageToEmit = (message.message as { message: string, type: string, userUuid: string });
|
||||||
switch (message.message.type) {
|
if(messageToEmit.type === 'banned'){
|
||||||
case 'ban': {
|
socketManager.emitBan(messageToEmit.userUuid, messageToEmit.message, messageToEmit.type);
|
||||||
socketManager.emitSendUserMessage(messageToEmit.userUuid, messageToEmit.message, roomId);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case 'banned': {
|
|
||||||
socketManager.emitBan(messageToEmit.userUuid, messageToEmit.message, roomId);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
default: {
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
|
if(messageToEmit.type === 'ban') {
|
||||||
|
socketManager.emitSendUserMessage(messageToEmit.userUuid, messageToEmit.message, messageToEmit.type);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}catch (err) {
|
}catch (err) {
|
||||||
|
@ -76,8 +76,8 @@ class JWTTokenManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private verifyBanUser(userUuid: string, ipAddress: string, room: string): Promise<AdminBannedData> {
|
private verifyBanUser(userUuid: string, ipAddress: string, room: string): Promise<AdminBannedData> {
|
||||||
room = room.split('/').join('_');
|
const world = room.split('/')[1]; //check by world
|
||||||
return adminApi.verifyBanUser(userUuid, ipAddress, room).then((data: AdminBannedData) => {
|
return adminApi.verifyBanUser(userUuid, ipAddress, world).then((data: AdminBannedData) => {
|
||||||
if (data && data.is_banned) {
|
if (data && data.is_banned) {
|
||||||
throw new Error('User was banned');
|
throw new Error('User was banned');
|
||||||
}
|
}
|
||||||
|
@ -2,11 +2,8 @@ import {PusherRoom} from "../Model/PusherRoom";
|
|||||||
import {CharacterLayer, ExSocketInterface} from "../Model/Websocket/ExSocketInterface";
|
import {CharacterLayer, ExSocketInterface} from "../Model/Websocket/ExSocketInterface";
|
||||||
import {
|
import {
|
||||||
GroupDeleteMessage,
|
GroupDeleteMessage,
|
||||||
GroupUpdateMessage,
|
|
||||||
ItemEventMessage,
|
ItemEventMessage,
|
||||||
ItemStateMessage,
|
|
||||||
PlayGlobalMessage,
|
PlayGlobalMessage,
|
||||||
PointMessage,
|
|
||||||
PositionMessage,
|
PositionMessage,
|
||||||
RoomJoinedMessage,
|
RoomJoinedMessage,
|
||||||
ServerToClientMessage,
|
ServerToClientMessage,
|
||||||
@ -14,23 +11,18 @@ import {
|
|||||||
SilentMessage,
|
SilentMessage,
|
||||||
SubMessage,
|
SubMessage,
|
||||||
ReportPlayerMessage,
|
ReportPlayerMessage,
|
||||||
UserJoinedMessage,
|
|
||||||
UserLeftMessage,
|
UserLeftMessage,
|
||||||
UserMovedMessage,
|
|
||||||
UserMovesMessage,
|
UserMovesMessage,
|
||||||
ViewportMessage,
|
ViewportMessage,
|
||||||
WebRtcDisconnectMessage,
|
|
||||||
WebRtcSignalToClientMessage,
|
|
||||||
WebRtcSignalToServerMessage,
|
WebRtcSignalToServerMessage,
|
||||||
WebRtcStartMessage,
|
|
||||||
QueryJitsiJwtMessage,
|
QueryJitsiJwtMessage,
|
||||||
SendJitsiJwtMessage,
|
SendJitsiJwtMessage,
|
||||||
SendUserMessage,
|
|
||||||
JoinRoomMessage,
|
JoinRoomMessage,
|
||||||
CharacterLayerMessage,
|
CharacterLayerMessage,
|
||||||
PusherToBackMessage,
|
PusherToBackMessage,
|
||||||
AdminPusherToBackMessage,
|
AdminPusherToBackMessage,
|
||||||
ServerToAdminClientMessage, AdminMessage, BanMessage
|
ServerToAdminClientMessage,
|
||||||
|
AdminMessage, SendUserMessage, BanUserMessage
|
||||||
} from "../Messages/generated/messages_pb";
|
} from "../Messages/generated/messages_pb";
|
||||||
import {PointInterface} from "../Model/Websocket/PointInterface";
|
import {PointInterface} from "../Model/Websocket/PointInterface";
|
||||||
import {ProtobufUtils} from "../Model/Websocket/ProtobufUtils";
|
import {ProtobufUtils} from "../Model/Websocket/ProtobufUtils";
|
||||||
@ -142,7 +134,6 @@ export class SocketManager implements ZoneEventListener {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async handleJoinRoom(client: ExSocketInterface): Promise<void> {
|
async handleJoinRoom(client: ExSocketInterface): Promise<void> {
|
||||||
const position = client.position;
|
|
||||||
const viewport = client.viewport;
|
const viewport = client.viewport;
|
||||||
try {
|
try {
|
||||||
|
|
||||||
@ -152,6 +143,7 @@ export class SocketManager implements ZoneEventListener {
|
|||||||
joinRoomMessage.setRoomid(client.roomId);
|
joinRoomMessage.setRoomid(client.roomId);
|
||||||
joinRoomMessage.setName(client.name);
|
joinRoomMessage.setName(client.name);
|
||||||
joinRoomMessage.setPositionmessage(ProtobufUtils.toPositionMessage(client.position));
|
joinRoomMessage.setPositionmessage(ProtobufUtils.toPositionMessage(client.position));
|
||||||
|
joinRoomMessage.setTagList(client.tags);
|
||||||
for (const characterLayer of client.characterLayers) {
|
for (const characterLayer of client.characterLayers) {
|
||||||
const characterLayerMessage = new CharacterLayerMessage();
|
const characterLayerMessage = new CharacterLayerMessage();
|
||||||
characterLayerMessage.setName(characterLayer.name);
|
characterLayerMessage.setName(characterLayer.name);
|
||||||
@ -538,51 +530,54 @@ export class SocketManager implements ZoneEventListener {
|
|||||||
client.send(serverToClientMessage.serializeBinary().buffer, true);
|
client.send(serverToClientMessage.serializeBinary().buffer, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
public async emitSendUserMessage(userUuid: string, message: string, roomId: string): Promise<void> {
|
public async emitSendUserMessage(userUuid: string, message: string, type: string): Promise<void> {
|
||||||
|
const client = this.searchClientByUuid(userUuid);
|
||||||
|
if(!client){
|
||||||
|
throw Error('client not found');
|
||||||
|
}
|
||||||
|
|
||||||
const backConnection = await apiClientRepository.getClient(roomId);
|
const adminMessage = new SendUserMessage();
|
||||||
|
|
||||||
const adminMessage = new AdminMessage();
|
|
||||||
adminMessage.setRecipientuuid(userUuid);
|
|
||||||
adminMessage.setMessage(message);
|
adminMessage.setMessage(message);
|
||||||
adminMessage.setRoomid(roomId);
|
adminMessage.setType(type);
|
||||||
|
const pusherToBackMessage = new PusherToBackMessage();
|
||||||
|
pusherToBackMessage.setSendusermessage(adminMessage);
|
||||||
|
client.backConnection.write(pusherToBackMessage);
|
||||||
|
|
||||||
|
/*const backConnection = await apiClientRepository.getClient(client.roomId);
|
||||||
|
const adminMessage = new AdminMessage();
|
||||||
|
adminMessage.setMessage(message);
|
||||||
|
adminMessage.setRoomid(client.roomId);
|
||||||
|
adminMessage.setRecipientuuid(client.userUuid);
|
||||||
backConnection.sendAdminMessage(adminMessage, (error) => {
|
backConnection.sendAdminMessage(adminMessage, (error) => {
|
||||||
if (error !== null) {
|
if (error !== null) {
|
||||||
console.error('Error while sending admin message', error);
|
console.error('Error while sending admin message', error);
|
||||||
}
|
}
|
||||||
});
|
});*/
|
||||||
/*
|
|
||||||
const socket = this.searchClientByUuid(messageToSend.userUuid);
|
|
||||||
if(!socket){
|
|
||||||
throw 'socket was not found';
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const sendUserMessage = new SendUserMessage();
|
public async emitBan(userUuid: string, message: string, type: string): Promise<void> {
|
||||||
sendUserMessage.setMessage(messageToSend.message);
|
const client = this.searchClientByUuid(userUuid);
|
||||||
sendUserMessage.setType(messageToSend.type);
|
if(!client){
|
||||||
|
throw Error('client not found');
|
||||||
const serverToClientMessage = new ServerToClientMessage();
|
|
||||||
serverToClientMessage.setSendusermessage(sendUserMessage);
|
|
||||||
|
|
||||||
if (!socket.disconnecting) {
|
|
||||||
socket.send(serverToClientMessage.serializeBinary().buffer, true);
|
|
||||||
}
|
|
||||||
return socket;*/
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public async emitBan(userUuid: string, message: string, roomId: string): Promise<void> {
|
const banUserMessage = new BanUserMessage();
|
||||||
const backConnection = await apiClientRepository.getClient(roomId);
|
banUserMessage.setMessage(message);
|
||||||
|
banUserMessage.setType(type);
|
||||||
|
const pusherToBackMessage = new PusherToBackMessage();
|
||||||
|
pusherToBackMessage.setBanusermessage(banUserMessage);
|
||||||
|
client.backConnection.write(pusherToBackMessage);
|
||||||
|
|
||||||
const banMessage = new BanMessage();
|
/*const backConnection = await apiClientRepository.getClient(client.roomId);
|
||||||
banMessage.setRecipientuuid(userUuid);
|
const adminMessage = new AdminMessage();
|
||||||
banMessage.setRoomid(roomId);
|
adminMessage.setMessage(message);
|
||||||
|
adminMessage.setRoomid(client.roomId);
|
||||||
backConnection.ban(banMessage, (error) => {
|
adminMessage.setRecipientuuid(client.userUuid);
|
||||||
|
backConnection.sendAdminMessage(adminMessage, (error) => {
|
||||||
if (error !== null) {
|
if (error !== null) {
|
||||||
console.error('Error while sending ban message', error);
|
console.error('Error while sending admin message', error);
|
||||||
}
|
}
|
||||||
});
|
});*/
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
Reference in New Issue
Block a user