/// <summary> /// Returns a list with recent messages between 2 given users /// </summary> /// <param name="actualRequest">the client request to be handled</param> /// <returns>the response to the given request</returns> private ActualRequest GetConversationForUsers(ActualRequest actualRequest) { List <int> integers = JsonSerializer.Deserialize <List <int> >(actualRequest.Request.Argument.ToString()); List <MessageSocketsModel> messages = chatRepo.GetConversationForUsers(integers[0], integers[1], integers[2]); Request response = new Request { ActionType = ActionType.MESSAGE_GET_CONVERSATION.ToString(), Argument = JsonSerializer.Serialize(messages) }; List <byte[]> messageImages = new List <byte[]>(); if (messages != null && messages.Count > 0) { foreach (var message in messages) { if (message.HasImage) { try { var readImageFile = File.ReadAllBytes($"{FILE_PATH}/Messages/{message.Id}.jpg"); messageImages.Add(readImageFile); } catch (Exception e) { Console.WriteLine("No picture found for message " + message.Id); } } } } return(new ActualRequest { Request = response, Images = messageImages }); }