Beispiel #1
0
        public async Task <IActionResult> SendMessage(SendMessageDto dto)
        {
            var message = new Message()
            {
                SenderUserId   = dto.SenderUserId,
                ReceiverUserId = dto.ReceiverUserId,
                Content        = dto.Content,
            };

            var server = await _trackerService.GetCurrentClientServerByUserId(dto.ReceiverUserId);

            if (_configuration["MyIP"] != server.ServerIp)
            {
                await _messagerService.PassThroughMessage(server.ServerIp, message);

                return(Ok());
            }

            await _dbContext.AddAsync(message);

            await _dbContext.SaveChangesAsync();

            return(Ok());
        }