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