Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Este servicio genera un Json con la estructura completa del PNR cada vez que sufre un cambio. La estructura es la siguiente:

...

Table of Contents
minLevel1
maxLevel6
outlinefalse
typelist
printablefalse

Introducción

KIU SNAPSHOTS (PNR) es un servicio para el envío de PNRs que permitirá mantener sincronizado con el PSS el estado de todos los PNR en tiempo real. Cada vez que un PNR es creado, modificado, dividido o purgado se enviará un archivo JSON con el o los PNRs afectados.

Estructura del archivo

El nombre del archivo json generado contiene como prefijo PNRS_ y el timestamp en UTC, quedando el siguiente patrón PNRS_YYYYMMDDTHHMMSSFFFZ.json, por ejemplo PNRS_20230512T105030923Z.json

Internamente, el archivo contiene un objeto “event_details” que da detalles sobre el evento que generó el cambio y una lista de PNR[1..n] afectados por el mismo. Cada objeto del array representa un PNR y la estructura del mismo está representada en el schema de la api get_booking_information (con la excepción del evento de purga).

Ejemplo de archivo

Code Block
{
  “event_details”: {...},
  "pnr_list": [
                     {  {objetos json de PNR
según schema api get_booking_information}               "record_locator_version_information": {},
     ] }

Al schema de la api mencionada solo se agrega un nuevo elemento “event_details” que agrega data sobre el evento que generó la modificación. Abajo describimos al estructura y las consideraciones en cada evento en particular.

Asi queda la esctructura de cada PNR informado:

Code Block
{        “event_details”: {},   "record_locator_version_information": {},
              "record_locator_information": {},   "passengers_information": {},
                  "flights_segment_information": {},
                  "flights_origin_destination_information": {},
                  "contacts_list": [],
                  ...
                },
               "pricing_information": {...}
        }

Procesos que generan un evento para el servicio

...

Proceso Grabar PNR (comando E), emisión y void

  • application: KIU_COMMAND si output = 0 sino es OTHER (a mejorar)

  • origin: AGENT o WEBSERVICES (si output = 0 es agente, sino es webservices -incluye las apis-) (a mejorar)

  • device: el que genera la transacción

  • agent: el que genera la transacción

Proceso de Creación de Reservas, Modificación de Reservas y División de Reservas por webservices (v1 y v2)

...

application: OTHER (a mejorar)

...

origin: WEBSERVICES (a mejorar)

...

device: el que genera la transacción

...

      ]
}

Estructura event_details

El objeto event_details tiene la sieguiente estrucura:

Key

Tipo Dato

Valores posibles

Descripción

Ejemplo

Observaciones

system_from

string(2:3)

C1 o código operador de aerolinea, depende si es terminal de PSS o de Kiu GDS

Z8

company

string(4)

Código único de la empresa, aerolinea o agencia, dentro de Kiu

00Z8

channel

string

HOST, GDS

HOST

subchannel

string

En el caso de GDS es el código de gds (C1, 1A, etc). En el caso de HOST, es el valor que se configuró en la tabla de oficinas, comando DNO / BI STAT.SUB-CHANNEL

SALES OFFICE

device

string(0:10)

Dispositivo de Kiu que generó la transacción

LPB00Z8205

agent

string(0:9)

Dispositivo de Kiu que generó la transacción.

HDQ00Z8SM

pnr_action

string

CREATE, MODIFY, SPLIT, DELETE

Identifica si el evento es de creación o modificación o división

CREATE

El SPLIT se aplicará a los 2 PNR (el creado y el modificado en ese proceso).

transaction_type

string

DIRECT, INDIRECT

Identifica si la modificación sobre el pnr se da por una intervención directa de un usuario/api o si la modificación es indirecta relacionada a otro proceso.

origin

string

  • AGENT

  • WEBSERVICES

  • FROM_EXTERNAL_MESSAGE

  • INTERNAL_PROCESS

Identifica el origen que desencadena la modificación relacionado al transaction_type.

Si es DIRECT, este campo podrá ser:

AGENT → cambio desde KiuCommand/algunos escenarios de click)

WEBSERVICES → cambio desde WS/APIS/ algunos escenarios de click

FROM_EXTERNAL_MESSAGE → procesamiento de mensajeria TTY Type B/Type A

Si es INDIRECT, este campo podrá ser:

INTERNAL_PROCESS → cambio que afecta la reserva por un proceso interno del sistema, por ejemplo ajustes del robot time limit, cancelación de servicios, etc

FROM_EXTERNAL_MESSAGE → procesamiento de mensajeria TTY Type B

application

string

  • KIU_COMMAND

  • OTHER

  • PRL_PROCESS

  • PFS_PROCESS

  • CONFIRM_WAITLIST_PROCESS

Detallado en “Origen y Aplicaciones”

timestamp

datetime

2023-04-20T22:02:32.750Z

Origen y Aplicaciones

Al existir distintos escenarios en los cuales un PNR puede ser modificado, se optó por clasificación en base al tipo de transacción, directa o indirecta, el origen de la modificaión y la aplicación que la desencadenó.

En base a estas variables se construyen las siguientes combinaciones:

Plantumlcloud
toolbarbottom
filenameorigin.svg
originalHeight1038
datahVLLbsIwEPyaXHqKKn5gcTawwo9o7QR6WkWFAwdSBLn07+uUIAhx1Ystz8zOju3NFvm1by/96djtT+05y4ssh7fsPe8vbXdtP/vjVyf99/kwMgNVEKMKd2BAYIX2AQzIhmpRzhiwxQR3YY0c9+fqLS49ckMKfUL7JCzZGcFdQLagxaD3sfGkZMSkYhfd/FNosvPY//tVpX/1uuGsZ/hvk9ErVbMBMzmzW7oggQyKJkPT92uMa2bXGJlgkgTuqnjDQiiQRQYmTGdXzpbERrZAQZMPSZFXayxqnY5w/y2BOjgDgZQosAr1VOVZyDZxMhx/pH2i4mGRUpSukgY0FVHh7B9hIAh4T6sXflwX+SGO9m28fwA=
compressedtrue
originalWidth783
revision7

origin

application

agent

descripción

AGENT/WEBSERVICES

KIU_COMMAND / OTHER

el que genera la transacción

Procesos de Creación de Reservas, Modificación, División, Guardardao, Emisión, Void por comandos o Apis

WEBSERVICES

OTHER

el que genera la transacción

Proceso de Creación de Reservas, Modificación de Reservas y División de Reservas por

...

application: KIU_COMMAND si output = 0 sino es OTHER (a mejorar)

...

origin: AGENT o WEBSERVICES (si output = 0 es agente, sino es webservices -incluye las apis-) (a mejorar)

...

device: el que genera la transacción

...

webservices (v1 y v2)

FROM_EXTERNAL_MESSAGE

MESSAGE_PROCESS

KIUSYSTEM

Proceso de Creación, Modificación de Reservas y División de Reservas por mensajería TTY Type B/Type A

...

application: MESSAGE_PROCESS

...

origin: FROM_EXTERNAL_MESSAGE

...

application: SCHEDULE_PROCESS

...

. En este caso el device será el de la oficina configurada para el host con terminal address 00

...

agent: KIUSYSTEM

Cambios de reservas por schedule change (reacomodación)

FROM_EXTERNAL_MESSAGE

PFS_PROCESS

...

Proceso de confirmación automática de lista de espera

...

application: CONFIRM_WAITLIST_PROCESS

...

origin: INTERNAL_PROCESS

...

KIUSYSTEM

...

Cambios de reservas por comando VMOVE (reacomodación)

  • application: VMOVE_PROCESS

  • origin: INTERNAL_PROCESS

  • agent: KIUSYSTEM

...

Cambios de reservas por comando VMTM (cambio de horario), si el carrier tiene activada esa función.

  • application: VMTM_PROCESS

  • origin: INTERNAL_PROCESS

  • agent: KIUSYSTEM

...

Ajustes por los mensajes post-departure (PFS, PRL)

FROM_EXTERNAL_MESSAGE

PRL_PROCESS

KIUSYSTEM

Ajustes por los mensajes post-departure (PFS, PRL)

INTERNAL_PROCESS

KAM

el que genera la acción en el KAM

Proceso de gestión de cupos KAM (PNRs de inventario)

INTERNAL_PROCESS

ROBOT_TIME_LIMIT

KIUSYSTEM

Ajustes del robot time limit

...

application: ROBOT_TIME_LIMIT

INTERNAL_PROCESS

VMOVE_PROCESS

...

Proceso de gestión de cupos KAM (PNRs de inventario)

...

application: KAM

...

device: el que genera la acción en el KAM

...

KIUSYSTEM

...

Ajustes por los mensajes post-departure (PFS, PRL)

  • application: PFS_PROCESS / PRL_PROCESS

  • origin: INTERNAL_PROCESS

  • agent: KIUSYSTEM

Cambios de reservas por comando VMOVE (reacomodación)

INTERNAL_PROCESS

VMTM_PROCESS

KIUSYSTEM

Cambios de reservas por comando VMTM (cambio de horario), si el carrier tiene activada esa función.

INTERNAL_PROCESS

EXPIRED_ITINERARIES_PROCESS

KIUSYSTEM

Proceso de cancelación de itinerarios activos expirados (aquellos que pasaron mas de 40 horas desde su fecha de vuelo)

...

application: EXPIRED_ITINERARIES_PROCESS

...

origin: INTERNAL_PROCESS

...

INTERNAL_PROCESS

CONFIRM_WAITLIST_PROCESS

KIUSYSTEM

Proceso de confirmación automática de lista de espera

INTERNAL_PROCESS

SCHEDULE_PROCESS

KIUSYSTEM

Cambios de reservas por schedule change (reacomodación)

INTERNAL_PROCESS

SERVICES_AUTOMATIC_CANCEL

KIUSYSTEM

Proceso de cancelación de itinerarios o ssr por vencimiento.

...

application: SERVICES_AUTOMATIC_CANCEL

INTERNAL_PROCESS

SSR_INVENTORY_PROCESS

...

KIUSYSTEM

Proceso de confirmación/rechazo de SSR con inventario

...

...

application: SEAT_ASSIGN_PROCESS

...

origin: INTERNAL_PROCESS

...

INTERNAL_PROCESS

...

agent: KIUSYSTEM

Proceso interno de asignación de asientos (esto pasa por ejemplo con la funcionalidad actual del webcheckin de 2W que elige un asiento por default y como es con PRS se modifica el PNR)

SSR_AUTOMATIC_PROCESS

KIUSYSTEM

Proceso interno creación/cancelación de SSR (este proceso es usado por el sistema cuando una acción/comando necesita agregar SSR en un PNR de manera automática, por ejemplo: cuando se hace wehcheckin en un vuelo que se gestiona en un DCS externo, y se debe agregar el SSR con la data del checkin)

...

INTERNAL_PROCESS

...

FOP_VALIDATION_PROCESS

...

KIUSYSTEM

Proceso de emisión post-validación forma de pago on-line (acá el proceso de validación puede agregar remarks con errores del proceso o por ejemplo un remark con una referencia de la transacción)

...

INTERNAL_PROCESS

...

Plantumlcloud
toolbarbottom
filenameorigin.svg
originalHeight869
datahZLPboMwDMafhstOaOoLuMG0VvMHOYFuJwttPfRQVrVc9vYLhWlkMO0U5ffZnx3H2Sa/9+2tv5y790t7zfIiy+Epe877W9vd27f+/NFJ/3k9TcogFcSowjcYCOzQ/oCBHKgW5YwBWyTchT1yPOfZR9x65IYU+pXYWWDJzgi+BGQLWgx6HwsnKROTil1087OmyS7b/t+vKv1vr5GzXvBHkclrLecAJrmz27oggQyKJkPp/JSzJbGRI1DQ5MOqo1d7LGq9eO4oTiMVqIMzEEiJAqtQp1GehWwTv8/x66pP6SppQFMRLZz9oxQEAe9pt9QXY4aq0qQeZmNQtslPcfnGBfwC
compressedtrue
originalWidth783
revision5

  • Description event_details (por ahora solo se agrega en XX hasta que se implemente en todos los métodos y estén documentados)

Key

Tipo Dato

Valores posibles

Descripción

Ejemplo

Estado Implementación

Observaciones

system_from

string(2:3)

C1 o código operador de aerolinea, depende si es terminal de PSS o de Kiu GDS

Z8

company

string(4)

Código único de la empresa, aerolinea o agencia, dentro de Kiu

00Z8

channel

string

HOST, GDS

HOST

subchannel

string

En el caso de GDS es el código de gds (C1, 1A, etc). En el caso de HOST, es el valor que se configuró en la tabla de oficinas, comando DNO / BI STAT.SUB-CHANNEL

SALES OFFICE

device

string(0:10)

Dispositivo de Kiu que generó la transacción

LPB00Z8205

agent

string(0:9)

Dispositivo de Kiu que generó la transacción.

HDQ00Z8SM

pnr_action

string

CREATE, MODIFY, SPLIT

Identifica si el evento es de creación o modificación o división

CREATE

El SPLIT se aplicará a los 2 PNR (el creado y el modificado en ese proceso).

transaction_type

string

DIRECT, INDIRECT

Identifica si la modificación sobre el pnr se da por una intervención directa de un usuario/api o si la modificación es indirecta relacionada a otro proceso.

origin

string

  • AGENT

  • WEBSERVICES

  • FROM_EXTERNAL_MESSAGE

  • INTERNAL_PROCESS

  • FROM_EXTERNAL_APPLICATION

Identifica el origen que desencadena la modificación relacionado al transaction_type.

Si es DIRECT, este campo podrá ser:

AGENT → cambio desde KiuCommand/algunos escenarios de click)

WEBSERVICES → cambio desde WS/APIS/ algunos escenarios de click

FROM_EXTERNAL_MESSAGE → procesamiento de mensajeria TTY Type B/Type A

Si es INDIRECT, este campo podrá ser:

INTERNAL_PROCESS

FROM_EXTERNAL_APPLICATION

application

string

  • KIU_COMMAND

  • OTHER

  • PRL_PROCESS

  • PFS_PROCESS

  • CONFIRM_WAITLIST_PROCESS

timestamp

datetime

2023-04-20T22:02:32.750Z

SEAT_ASSIGN_PROCESS

...

agent: KIUSYSTEM

KIUSYSTEM

Proceso interno de asignación de asientos, esto pasa por ejemplo con la funcionalidad actual del webcheckin que elige un asiento por default y como es con PRS se modifica el PNR

INTERNAL_PROCESS

RECORD_LOCATOR_PURGED

KIUSYSTEM

Proceso de purga de PNR.

RECORD_LOCATOR_SYNCHRONIZATION

Proceso de sincronización que genera imagenes de todos los PNR activos en el PSS. No existe modificación en la reserva

Purga

El proceso de purga de PNRs podrá contener hasta 1000 pnrs en un mismo archivo. Bajo este escenario, se informará la key record_locator_version_information de cada PNR y una copia de la historia del pnr al momento de la purga(equivalente al *H)

Ejemplo de archivo

Code Block
{
	"event_details": {
		"application": "RECORD_LOCATOR_PURGED",
		"timestamp": "2023-08-15T05:02:13.540Z"
	},
	"pnr_list": [
		{
			"record_locator_version_information": {
				"record_locator": "AWCVUB",
				"record_locator_version": "2023-08-14T00:00:05.360Z"
			},
			"history_item_list": [
				"ARM  ITINERARY RECEIPT-» BAGGAGE ALLOWANCE 1 PIECES UP TO 10K FOR ADT",
				"      /XX100 Y 12AUG AEPOYO",
				"BUE.BUEXX-DA 1325/12JUL23",
				"XS  XX100 Y 12AUG SA AEPOYO HK1  0800 0830",
				"SYS-EX 0000/14AUG23"
			]
		},
		{
			"record_locator_version_information": {
				"record_locator": "BFLNBT",
				"record_locator_version": "2023-08-14T00:00:05.360Z"
			},
			"history_item_list": [
				"XTK  OK",
				"AT FC WK*F/VIXXXXXXXXXXXX4242N/XXXX/V123/Z12466",
				"ATT OK * 10AUG23/AEPXX-FT",
				"ATK 9990210044640 * 10AUG23/AEPXX-FT - FERNAN/M.",
				"ATK 9990210044641 * 10AUG23/AEPXX-FT - FERNAN/M.",
				"AEP.AEPXX-FT 1524/10AUG23",
				"ASR ABAG XX HK1 AEPCOR2049Y12AUG-1FERNAN/MR.UPTO 23KG BAGGAGE",
				"ASR ABAG XX HK1 AEPCOR2049Y12AUG-1FERNAN/MRS.UPTO 23KG BAGGAGE",
				"AEP.AEPXX-FT 1525/10AUG23",
				"XSR ABAG XX HK1 AEPCOR2049Y12AUG-1FERNAN/MR.UPTO 23KG BAGGAGE",
				"XSR ABAG XX HK1 AEPCOR2049Y12AUG-1FERNAN/MRS.UPTO 23KG BAGGAGE",
				"SYS-TX 0730/11AUG23",
				"XS  XX2049Y 12AUG SA AEPCOR HK2  0800 0900",
				"SYS-EX 0000/14AUG23"
			]
		}
	]
}

Recap

Al relizarse la implementación de este módulo, se ejecutará un proceso de RECAP que recorrerá la base de datos generando una imagen de cada PNR. Bajo este escenario no hay una modificación sobre el PNR, el event_datails solo tendrá la key "application": "RECORD_LOCATOR_SYNCHRONIZATION".

Esta funcionalidad de RECAP está incluida en el costo de implementación. Cualquier solicitud adicional por parte de la aerolínea para la re ejecucion de este proceso deberá ser evaluado por el departamento comercial.