Alcance CSM (Reachability) - Cambios y Correcciones
Esta página cubre los cambios y correcciones proporcionados a CSM Reachability en la versión IPF-2025.2.0
API de CSM Reachability
Nuevo
-
Nuevos atributos de solicitud para el endpoint
determine-processing-entity-deriveDirectParticipantycsmAgentId. -
Cuando
deriveDirectParticipantse establece en true, el servicio CSM Reachability buscará un participante directo asociado con el identificador de entidad proporcionado antes de usar el identificador del participante directo derivado para derivar la Entidad de Proceso. El valor predeterminado es false.
CSM Reachability
Nuevo
-
Nuevo campo buscable
agentParticipantCsmAgentIdpara AgentSettings. -
Nuevo atributo de configuración que se utiliza para la generación de todos los endpoints de API para una configuración en particular. También se utilizan en la construcción index-config.<setting-type> que se describe a continuación.
-
Processing Entity: SETTING_TYPE = "processingentity".
-
Party Entity: SETTING_TYPE = "partyentity".
-
Generic Processing Settings: SETTING_TYPE = "genericprocessingsettings".
-
Agent Clearing Settings: SETTING_TYPE = "agentclearingsettings".
-
Cs Agent Selection Settings: SETTING_TYPE = "csagentselectionsettings".
-
Agent Settings: SETTING_TYPE = "agentsettings".
-
Agent Settlement Settings: SETTING_TYPE = "agentsettlementsettings".
-
Participant Settings: SETTING_TYPE = "participant".
-
Exclusion List Settings: SETTING_TYPE = "exclusionlist".
-
IbanPlus Settings: SETTING_TYPE = "ibanplus"
-
IbanStructure Settings: SETTING_TYPE = ibanstructure"
-
BicDir2018 Settings: SETTING_TYPE = "bicdir2018"
-
-
DPS v2 permite configurar índices a través de configuración HOCON. Todos los índices existentes para cada configuración se agregan mediante nuevos parámetros de configuración:
-
ipf.dps.mongodb.index-config.processingentity -
ipf.dps.mongodb.index-config.partyentity -
ipf.dps.mongodb.index-config.genericprocessingsettings -
ipf.dps.mongodb.index-config.agentclearingsetting -
ipf.dps.mongodb.index-config.csagentselectionsetting -
ipf.dps.mongodb.index-config.agentsettingsettings -
ipf.dps.mongodb.index-config.agentsettlementsettings -
ipf.dps.mongodb.index-config.participant -
ipf.dps.mongodb.index-config.exclusionlist -
ipf.dps.mongodb.index-config.ibanplus -
ipf.dps.mongodb.index-config.ibanstructure -
ipf.dps.mongodb.index-config.bicdir2018
-
-
Los índices pueden añadirse mediante estas propiedades. Tenga en cuenta que los campos dentro del payload de la configuración deben definirse como ["values.payload.fields"]. Ejemplo de creación de índice:
ipf.dps.mongodb.index-config.agentsettlementsettings.index-3 = ["values.payload.agentUniqueId:ASC"]
-
Nuevas propiedades para habilitar notificaciones a nivel de configuración:
ipf.csm-reachability.should-send-notification.agent-clearing-settings-settings = false
ipf.csm-reachability.should-send-notification.agent-settings-settings = false
ipf.csm-reachability.should-send-notification.agent-settlement-settings-settings = false
ipf.csm-reachability.should-send-notification.cs-agent-selection-settings-settings = false
ipf.csm-reachability.should-send-notification.generic-processing-settings-settings = false
ipf.csm-reachability.should-send-notification.participant-settings = false
ipf.csm-reachability.should-send-notification.party-entity-settings = false
ipf.csm-reachability.should-send-notification.processing-entity-settings = false
ipf.csm-reachability.should-send-notification.exclusion-list-settings = false
ipf.csm-reachability.should-send-notification.iban-plus-settings = false
ipf.csm-reachability.should-send-notification.iban-structure-settings = false
ipf.csm-reachability.should-send-notification.bicdir2018-settings = false
-
Estas notificaciones están deshabilitadas por defecto para cada una de estas configuraciones.
CAMBIOS INCOMPATIBLES
-
Los módulos de repositorio de configuración se eliminan del proyecto CSM Reachability. Toda la configuración ahora está bajo los módulos de dominio de configuración.
-
Se eliminan los siguientes módulos:
-
setting-processingentity-repository -
setting-partyentity-repository -
setting-genericprocessingsettings-repository -
setting-agentclearingsettings-repository -
setting-csagentselectionsettings-repository -
setting-agentsettings-repository -
setting-agentsettlementsettings-repository -
setting-participant-repository -
setting-ibanplus-repository -
setting-exclusionlist-repository -
setting-ibanstructure-repository -
setting-bicvalidationfilehandling-repository
-
-
Dado que DPS v2 proporciona conectores y consultas directas de fábrica, se elimina la siguiente configuración de conectores de csm-reachability:
-
ipf.csm-reachability.settings-api.connector.processing-entity
-
ipf.csm-reachability.settings-api.connector.party-entity
-
ipf.csm-reachability.settings-api.connector.generic-processing-settings
-
ipf.csm-reachability.settings-api.connector.agent-clearing-settings
-
ipf.csm-reachability.settings-api.connector.cs-agent-selection-settings
-
ipf.csm-reachability.settings-api.connector.agent-settings
-
ipf.csm-reachability.settings-api.connector.agent-settlement-settings
-
ipf.csm-reachability.settings-api.connector.participant
-
ipf.csm-reachability.settings-api.connector.participant-batch
-
ipf.csm-reachability.settings-api.connector.participant-get-ids
-
ipf.csm-reachability.settings-api.connector.exclusion-list
-
ipf.csm-reachability.settings-api.connector.exclusion-list-batch
-
ipf.csm-reachability.settings-api.connector.exclusion-list-get-ids
-
ipf.csm-reachability.settings-api.connector.get-all-iban-plus
-
ipf.csm-reachability.settings-api.connector.get-all-iban-structure
-
ipf.csm-reachability.settings-api.connector.get-batch-iban-structure
-
-
Se usa esta configuración en su lugar:
ipf.dps-api {
http.client {
host = "localhost"
endpoint-url = "/settings-objects/"
port = 8080
}
http.client = ${?settings-api.http.client}
connection = http
connection = ${?settings-api.connection}
connector {
search-setting = ${ipf.dps-api.default-connector}
search-ids-setting = ${ipf.dps-api.default-connector}
search-request-setting = ${ipf.dps-api.default-connector}
delete-setting = ${ipf.dps-api.default-connector}
get-scheduled-settings = ${ipf.dps-api.default-connector}
get-scheduled-setting = ${ipf.dps-api.default-connector}
delete-scheduled-setting = ${ipf.dps-api.default-connector}
update-scheduled-setting = ${ipf.dps-api.default-connector}
create-setting = ${ipf.dps-api.default-connector}
update-setting = ${ipf.dps-api.default-connector}
get-setting = ${ipf.dps-api.default-connector}
setting-schemas = ${ipf.dps-api.default-connector}
history-settings = ${ipf.dps-api.default-connector}
approve-settings = ${ipf.dps-api.default-connector}
get-approvals-setting = ${ipf.dps-api.default-connector}
get-approval-setting = ${ipf.dps-api.default-connector}
reject-setting = ${ipf.dps-api.default-connector}
}
default-connector {
resiliency-settings {
# Determina el número máximo de reintentos. Incluye el primer intento fallido.
max-attempts = 2
# Reintenta si el código de error HTTP está en la lista
retryable-status-codes = [500, 503]
# Número mínimo de llamadas (en una ventana deslizante) antes de que el disyuntor calcule la tasa de error para determinar la salud del transporte.
minimum-number-of-calls = 10
}
resiliency-settings = ${?csm-reachability-api.resiliency-settings}
}
}
-
La propiedad
ipf.csm-reachability.settings-api.http.clientse elimina y se usa la siguiente configuración para gestionar las APIs de gestión de configuraciones:
ipf.dps-api {
http.client {
host = "localhost"
endpoint-url = "/settings-objects/"
port = 8080
}
}
-
En cada creación de configuración, DPS v2 consulta la colección
settings-approvalspara verificar si esa configuración ya fue creada y está esperando aprobación. Por lo tanto, debe crearse la colecciónsettings-approvals. -
DPS v2 introduce configuraciones programadas y utiliza Persistent Scheduler para su mantenimiento. Para configurar correctamente el programador persistente es necesario crear dos nuevas colecciones y sus índices.
-
Debe añadirse la siguiente configuración a su base de datos (ejemplo cosmos-schema.yaml):
- name: settings-approvals
shard_key: _id
throughput: 10000
additional_indexes:
- keys:
- entityId
unique: false
- keys:
- resolvedStatus
unique: false
- keys:
- entityCollection
unique: false
- keys:
- lastUpdatedAt
unique: false
- name: jobSpecification
throughput: 400
default_ttl_seconds: 3600 # should be tied to deleteTime
additional_indexes:
- keys:
- deleteTime
unique: false
- keys:
- _id.jobSpecificationId
- _id.lastUpdated
unique: false
- name: jobExecutionStatus
throughput: 400
default_ttl_seconds: 3600 # should be tied to deleteTime
additional_indexes:
- keys:
- deleteTime
unique: false
- keys:
- _id.jobSpecificationId
- _id.lastUpdated
unique: false
NOTA: Los clientes que usan Cosmos deben desactivar la creación automática de índices estableciendo la siguiente propiedad:
ipf.mongodb.create-indexes = false
Ingesta de Datos
Cambiado
-
DPS v2 proporciona conectores y consultas directas, y en csm-reachability usamos esa implementación (se elimina la implementación personalizada de csm-reachability).
-
Para configurar correctamente la ingesta de archivos, debemos establecer las siguientes propiedades:
# opciones posibles ['direct' | 'connector'], el valor por defecto es 'direct' desde DpsClientDirectAutoConfiguration y DpsClientConnectorAutoConfiguration respectivamente
ipf.dps-api.client-type = "direct"
# opciones posibles ['direct' | 'http'], el valor por defecto es 'direct' desde ApiDirectQueryConfiguration y CsmSettingsApiConnectorConfiguration respectivamente
ipf.csm-reachability.settings-api.connection = "direct"
# opciones posibles ['direct' | 'http'], el valor por defecto es 'direct' desde GenericFileConverterConfiguration
ipf.csm-reachability.settings-api.file-handling.connection = "direct"
-
Las dos primeras propiedades deben coincidir (direct-direct o connector-http) para configurar correctamente las consultas directas o la implementación del conector de DPS v2.
Corregido
-
La convención de nombres de archivos para TIPS File Ingestion se corrige, el formato es
TIPSXXXTTTTYYYYMMDD.-
TTTT es el tipo, p. ej. FULL para la versión completa y DLTA para la versión delta. XXX es la moneda relacionada con los registros incluidos en el directorio; YYYYMMDD especifica año, mes y día de validez del Directorio TIPS.
-
CAMBIOS INCOMPATIBLES
-
Dado que DPS v2 proporciona conectores y consultas directas de fábrica, se elimina la siguiente configuración de csm-reachability-data-ingestion:
-
ipf.csm-reachability.settings-api.connector.settings-api-rr -
ipf.csm-reachability.settings-api.http.client
-
-
Se usa esta configuración en su lugar:
ipf.dps-api {
http.client {
host = "localhost"
endpoint-url = "/settings-objects/"
port = 8080
}
}