예제 #1
0
        public async Task <JsonResult> PostMessage([FromForm] NewRequest newRequest)
        {
            if (!ModelState.IsValid)
            {
                return(new JsonResult(new Status("bad data")));
            }

            MessageToService messageToService = JsonConvert.DeserializeObject <MessageToService>(newRequest.Message);

            var message = new Message()
            {
                MessageText = messageToService.messageText,
                Autor       = messageToService.autor,
                Date        = DateTime.Now.ToString(),
                RequestTask = await _repositoryRequest.GetRequestTasksAsync(messageToService.requestTaskId),
                Pictures    = newRequest.Files != null ? await _imageService.SavePictures(newRequest.Files) : null,
            };

            return(new JsonResult(await _repository.CreateMessagesAsync(message)));
        }
예제 #2
0
        public void SendTextMessage(MessageToService message)
        {
            if (!_users.Contains(message.UserId))
            {
                return;
            }

            string username = _users[message.UserId].Name;

            NotifyUsers((user) =>
            {
                if (user.IsReady)
                {
                    user.ReceiveTextMessage(new MessageToUser()
                    {
                        Username = username, Text = message.Text
                    });
                }
            });
        }