UPDATE 12-ago-2025

This commit is contained in:
PAVEL PALMA
2025-08-12 16:09:32 -06:00
parent 55fcf3b7d6
commit 849095374f
74 changed files with 2656 additions and 669 deletions

View File

@@ -0,0 +1,32 @@
/*
* Copyright 2025 Google. This software is provided as-is, without warranty or representation for any use or purpose.
* Your use of it is subject to your agreement with Google.
*/
package com.example.dto.dialogflow.notification;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import java.time.Instant;
import java.util.Map;
import java.util.Objects;
/**
* Represents a notification record to be stored in Firestore and cached in
* Redis.
*/
@JsonIgnoreProperties(ignoreUnknown = true) // Ignorar campos adicionales durante la deserialización
public record NotificationDTO(
String idNotificacion, // ID único para esta notificación (ej. el sessionId usado con Dialogflow)
String telefono,
Instant timestampCreacion, // Momento en que la notificación fue procesada
String texto, // 'texto' original de NotificationRequestDTO (si aplica)
String nombreEventoDialogflow, // Nombre del evento enviado a Dialogflow (ej. "tu Estado de cuenta listo")
String codigoIdiomaDialogflow, // Código de idioma usado para el evento
Map<String, Object> parametros // Parámetros de sesión finales después del procesamiento de// Dialogflow
) {
public NotificationDTO {
Objects.requireNonNull(idNotificacion, "Notification ID cannot be null.");
Objects.requireNonNull(timestampCreacion, "Notification timestamp cannot be null.");
Objects.requireNonNull(nombreEventoDialogflow, "Dialogflow event name cannot be null.");
Objects.requireNonNull(codigoIdiomaDialogflow, "Dialogflow language code cannot be null.");
}
}