using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.Text; using System.Text.Json.Serialization; using gehGassi.Dto.Common; namespace gehGassi.Dto.Messages { /// /// DTO für eine Nachricht /// public class MessageDto : SyncEntityDto { /// /// Id der Konversation /// [Required] [MaxLength(128)] [JsonPropertyName("conversationId")] public string ConversationId { get; set; } /// /// Sender der Nachricht /// [MaxLength(128)] [JsonPropertyName("senderId")] public string SenderId { get; set; } /// /// Empfänger der Nachricht /// [MaxLength(128)] [JsonPropertyName("receiverId")] public string ReceiverId { get; set; } /// /// Inhalt Nachricht /// [MaxLength(500)] [JsonPropertyName("content")] public string Content { get; set; } } /// /// Dto für die Bestätigung des erfolgreichen Erhalts von Nachrichten /// public class MessageConfirmationDto { /// /// Sender der Nachricht /// [MaxLength(128)] [JsonPropertyName("senderId")] public string SenderId { get; set; } /// /// Letztes update /// [JsonPropertyName("lastUpdate")] public DateTimeOffset? LastUpdate { get; set; } /// /// Id der Konversation /// [MaxLength(128)] [JsonPropertyName("conversationId")] public string ConversationId { get; set; } } }