Orquestación de FRR
A4SWIFT implementa FRR a través de la orquestación FRR. La orquestación determina si el token de correlación de la respuesta FIN coincide con el identificador de mensaje del mensaje original. Procesa el mensaje en paralelo con las funciones de envío realizadas por el puerto de envío que envía el mensaje a SAA y con las funciones de recepción realizadas por la ubicación de recepción que recibe el mensaje de SAA.
En el nivel más alto, una instancia de la orquestación realiza el siguiente procesamiento:
Almacena en caché una copia del mensaje de salida original enlazado a SAA mediante la escucha en el Cuadro de mensajes.
Nota
BizTalk Server crea una instancia de la orquestación cuando A4SWIFT enruta el mensaje original al cuadro de mensajes.
Espera a que A4SWIFT publique una respuesta FIN de SAA en el cuadro de mensajes.
Establece las propiedades promocionadas de la copia del mensaje original en función de la naturaleza de la respuesta FIN.
Publica la copia del mensaje original en el Cuadro de mensajes. A continuación, los controladores personalizados pueden suscribirse, recuperar y controlar el mensaje según sea necesario.
Suscripción a mensajes salientes
La orquestación FRR se enlaza directamente al cuadro de mensajes. La orquestación FRR se suscribe a todos los mensajes salientes enlazados a la red SWIFT que no contienen errores de validación mediante la suscripción a las siguientes propiedades:
A4SWIFT_Failed==False (según lo establecido por el proceso de validación del desensamblador de SWIFT)
A4SWIFT_Swiftbound==True (según lo establecido por el proceso de configuración del desensamblador de SWIFT)
Correlación de mensajes y respuestas
BizTalk Server correlaciona el mensaje FIN de salida original con el mensaje de respuesta FIN entrante comparando las siguientes propiedades:
La propiedad de contexto MQMD_CorrelID de la respuesta FIN
La propiedad A4SWIFT_FRRCorrelationToken del mensaje MTXYY de salida. Esta propiedad se promueve mediante la fase de resolución de entidad de la canalización de recepción.
Los valores de estas propiedades deben ser idénticos. La fase del codificador de la canalización de envío para los mensajes enlazados a SWIFT establece la propiedad MQMD_MsgID del mensaje saliente en el valor de la propiedad A4SWIFT_FRRCorrelationToken. SAA establece la propiedad MQMD_CorrelID del mensaje de respuesta en el valor de MQMD_MsgID.
Configuración de propiedades promocionadas
Después de recibir una respuesta FIN y correlacionarla con la copia del mensaje original, la orquestación FRR establece las siguientes propiedades promocionadas de la copia del mensaje original según la naturaleza de la respuesta:
A4SWIFT_FRRFailed a True si la respuesta era una ACK o False si la respuesta era una NAK
A4SWIFT_FRRFailedReason a uno de los siguientes valores, si la respuesta era una NAK:
<ErrorCode> (del campo 405 del mensaje de confirmación negativa MTS21_FIN_ACKNAK)
TransportError (desde un mensaje PAN/NAN de la serie MQ)
DelayedNAK (desde un mensaje MT015 (DNK)
AbortReceived (desde un mensaje MT019 (Anular notificación)
A4SWIFT_FRRFailedReason a TimedOut si A4SWIFT no recibió una respuesta dentro del período de tiempo de espera. Para obtener más información sobre el tiempo de espera de retraso de FRR, consulte la sección "Tiempo de espera de conciliación" a continuación o Establecimiento del tiempo de espera de retraso de FRR.
A4SWIFT_SendingServiceType a A4SWIFT_FrrService
BTS. Operación en el valor correspondiente al tipo de respuesta del mensaje. Para obtener más información, vea Crear los puertos de envío de FRR para enviar a los controladores personalizados.
A4SWIFT_FrrSendTransport para un mensaje PAN/NAN de la serie MQ (ACK/NAK de nivel de transporte de la serie MQ)
A4SWIFT_FrrSend010NDW para un mensaje MT010 (advertencia de no entrega)
A4SWIFT_FrrSend011Delivered para un mensaje MT011 (notificación de entrega)
A4SWIFT_FrrSend012SenderACK de un mensaje MT012 (notificación del remitente)
A4SWIFT_FrrSend015DNK para un mensaje MT015 (DNK o NAK retrasado)
A4SWIFT_FrrSend019Abort de un mensaje MT019 (anular notificación)
A4SWIFT_FrrSendS21ACK para un mensaje de confirmación de MTS21_FIN_ACKNAK (ACK de un mensaje FIN enviado por un LT)
A4SWIFT_FrrSendS21NAK para un mensaje de confirmación negativa MTS21_FIN_ACKNAK (NAK de un mensaje FIN enviado por un LT)
Enlace directo
Las suscripciones que realiza la orquestación definen las entradas de recepción para la orquestación. Las propiedades de contexto y los valores promovidos por la orquestación definen las salidas de envío para un mensaje que la orquestación publica en el Cuadro de mensajes. Debido a este enlace directo al Cuadro de mensajes, la orquestación se desacopla de lo siguiente:
Ubicaciones de recepción físicas que reciben mensajes salientes de la aplicación back-end para el enrutamiento a SAA
Puertos de envío que envían mensajes FIN salientes de A4SWIFT a SWIFT Alliance Access (SAA)
Las ubicaciones de recepción que reciben mensajes de respuesta FIN entrantes de SAA
Las colas físicas de MQSeries en las que SAA deposita las respuestas FIN
Time-Out de conciliación
Cuando BizTalk Server crea una nueva instancia de la orquestación FRR, la orquestación comienza a esperar respuestas FIN. En tiempo de ejecución, debe configurar la orquestación para agotar el tiempo de espera después de una duración, de modo que no espere indefinidamente la respuesta. Cuando expira la duración del tiempo de espera, la orquestación FRR promueve la propiedad A4SWIFT_FRRFailedReason y la establece en TimedOut. A continuación, publica mensajes en el Cuadro de mensajes y finaliza. Si agota el tiempo de espera, el identificador de correlación ha desaparecido.
Puede crear un controlador personalizado para procesar mensajes con tiempo de espera (la copia del mensaje de salida original). A4SWIFT lograría esto mediante una forma De escucha en la orquestación. Para obtener más información, consulte Establecimiento del tiempo de espera de retraso de FRR.