Ejemplo n.º 1
0
        private async Task AnnounceNewUser(Guid userId)
        {
            var message = new SocketMessageResponseDto <string>
            {
                Type    = MessageType.UserConnected,
                Content = userId.ToString()
            };

            await SendToAllSockets(JsonConvert.SerializeObject(message));
        }
Ejemplo n.º 2
0
        private void SendSocketUserInfo(WebSocket socket, Guid userConnectedId)
        {
            var connectedUserResponse = new SocketMessageResponseDto <Guid>()
            {
                Content = userConnectedId,
                Type    = MessageType.SocketUserInfo
            };

            var connectedUserInfoPayload = JsonConvert.SerializeObject(connectedUserResponse);

            SendToSocket(connectedUserInfoPayload, socket);
        }
Ejemplo n.º 3
0
        private async Task SendMessagesToSingleSocket(WebSocket socket)
        {
            var messages = (await _messagesService.GetAll()).ToList();

            if (messages.Any())
            {
                var response = new SocketMessageResponseDto <List <Message> >()
                {
                    Content = messages,
                    Type    = MessageType.AllMessages
                };
                await SendToSocket(JsonConvert.SerializeObject(response), socket);
            }
        }
Ejemplo n.º 4
0
        private async Task HandleNewMessage(string bufferAsString)
        {
            var socketMessageRequestDto =
                JsonConvert.DeserializeObject <SocketMessageResponseDto <PostMessageRequestDto> >(
                    bufferAsString);
            var newMessage = await _messagesService.PostNewMessage(socketMessageRequestDto.Content);

            var socketMessageResponseDto = new SocketMessageResponseDto <Message>()
            {
                Content = newMessage,
                Type    = MessageType.NewMessage
            };

            await SendToAllSockets(JsonConvert.SerializeObject(socketMessageResponseDto));
        }