A set of Node-Red nodes to decode and encode IATA Resolution 792 Compliant Boarding Pass Barcode Data.
This is a Node-Red wrapper for the work by georgesmith46's bcbp NPM node https://github.com/georgesmith46/bcbp.
Add the IATA BCBP node to node-red through the manage palette tab or command line.
Here's an example of basic usage:
Converts a JSON object to a BCBP string. Any of the following parameters can be skipped (except legs).
| Name | Description | Example values |
|---|---|---|
| passengerName | Passenger Name |
|
| passengerDescription | Passenger Description |
|
| checkInSource | Source of check-in |
|
| boardingPassIssuanceSource | Source of Boarding Pass Issuance |
|
| issuanceDate | Date of Issue of Boarding Pass |
|
| documentType | Document Type |
|
| boardingPassIssuerDesignator | Airline Designator of boarding pass issuer |
|
| baggageTagNumber | Baggage Tag Licence Plate Number(s) |
|
| firstBaggageTagNumber | 1st Non-Consecutive Baggage Tag Licence Plate Number |
|
| secondBaggageTagNumber | 2nd Non-Consecutive Baggage Tag Licence Plate Number |
|
| securityDataType | Type of Security Data |
|
| securityData | Security Data |
|
| legs | Repeatable legs data |
|
Any of the following parameters can be skipped.
| Name | Description | Example values |
|---|---|---|
| operatingCarrierPNR | Operating carrier PNR Code |
|
| departureAirport | From City Airport Code |
|
| arrivalAirport | To City Airport Code |
|
| operatingCarrierDesignator | Operating carrier Designator |
|
| flightNumber | Flight Number |
|
| flightDate | Date of Flight |
|
| compartmentCode | Compartment Code |
|
| seatNumber | Seat Number |
|
| checkInSequenceNumber | Check-in Sequence Number |
|
| passengerStatus | Passenger Status |
|
| airlineNumericCode | Airline Numeric Code |
|
| serialNumber | Document Form/Serial Number |
|
| selecteeIndicator | Selectee indicator |
|
| internationalDocumentationVerification | International Documentation Verification |
|
| marketingCarrierDesignator | Marketing carrier designator |
|
| frequentFlyerAirlineDesignator | Frequent Flyer Airline Designator |
|
| frequentFlyerNumber | Frequent Flyer Number |
|
| idIndicator | ID/AD Indicator |
|
| freeBaggageAllowance | Free Baggage Allowance |
|
| fastTrack | Fast Track |
|
| airlineInfo | For individual airline use |
|
{
"legs": [
{
"operatingCarrierPNR": "ABC123",
"departureAirport": "YUL",
"arrivalAirport": "FRA",
"operatingCarrierDesignator": "AC",
"flightNumber": "0834",
"flightDate": "2018-08-14T00:00:00.000Z",
"compartmentCode": "F",
"seatNumber": "001A",
"checkInSequenceNumber": "0025",
"passengerStatus": "1"
}
],
"passengerName": "DESMARAIS/LUC"
}Outputs:
M1DESMARAIS/LUC EABC123 YULFRAAC 0834 226F001A0025 106>60000
Converts a BCBP string to a JSON object. The returned object uses the same data structure as the Encode node above.
M1DESMARAIS/LUC EABC123 YULFRAAC 0834 226F001A0025 106>60000
Outputs:
{
"legs": [
{
"operatingCarrierPNR": "ABC123",
"departureAirport": "YUL",
"arrivalAirport": "FRA",
"operatingCarrierDesignator": "AC",
"flightNumber": "0834",
"flightDate": "2018-08-14T00:00:00.000Z",
"compartmentCode": "F",
"seatNumber": "001A",
"checkInSequenceNumber": "0025",
"passengerStatus": "1"
}
],
"passengerName": "DESMARAIS/LUC"
}
*/- Add further error handling / data checks
- Add data capture / export
- Add boarding pass validation node against airline DCS host using IATA BCBP XML format
- Add basic validation rules engine
- Add Barcode Image Decode
- Add Boarding Pass template generation
- Mark Funston - Node Red Wrapper - mlfunston
- georgesmith46 - Original NPM Package for bcbp - georgesmith46
Contributions welcome! Feel free to fork this and provide updates and new features. Don't forget to submit a pull request!
This project is licensed under the GPL3.0 License - see the LICENSE file for details
This Node-RED module is based on the great work of georgesmith46 - georgesmith46, using his bcbp libraries.
- Initial Release
- IATA BCBP Decode Function
- IATA BCBP Encode Function
