KDE PIM/KItinerary/Supported Providers: Difference between revisions
Line 154: | Line 154: | ||
| SNCB || Train || BE/EU? || PDF || Custom || Code128 || unknown || | | SNCB || Train || BE/EU? || PDF || Custom || Code128 || unknown || | ||
|- | |- | ||
| SNCF || Train || EU || PDF || Custom || Proprietary with trip data (see [[KDE_PIM/KItinerary/SNCF_Barcodes]]) || Yes (untested) || | | SNCF || Train || EU || PDF, HTML, Barcode || Custom || Proprietary with trip data (see [[KDE_PIM/KItinerary/SNCF_Barcodes]]) || Yes (untested) || | ||
|- | |- | ||
| SNFC - Ouigo || Train || FR/EU? || HTML (confirmation, reminder), PDF (ticket) || custom (confirmation) || high entropy base64 blob || unknown || workflow consists of 3 emails | | SNFC - Ouigo || Train || FR/EU? || HTML (confirmation, reminder), PDF (ticket) || custom (confirmation) || high entropy base64 blob || unknown || workflow consists of 3 emails |
Revision as of 10:17, 11 November 2020
KItinerary: Supported Providers
More test data is always welcome and helpful, also for providers already listed as supported below. There's always some corner case we can improve :)
Project details: https://phabricator.kde.org/project/profile/280/
Note that the below list is inherently incomplete, a provider not being listed does not automatically imply it doesn't work, as it might still be covered by generic extractors, or by an existing custom extractor for the same backend system.
Data Formats
- JSON-LD: HTML content containing structured data in JSON-LD format
- Microdata: HTML content containing structured data in XML format
- PDF: PDF files
- HTML: HTML content without structured data
- Text: plain text content
- iCal: ical calendar files
- PkPass: Apple Wallet pass files
Extractor Types
- Generic - structured data: built-in extraction of JSON-LD and Microdata content
- Generic - IATA BCBP: built-in extraction of IATA BarCoded Boarding Passes (BCBP)
- Generic - PkPass: built-in extraction of Apple Wallet boarding passes and event tickets
- Custom: custom extractor script
Airlines
Airline (IATA) | Booking Confirmation Format | Booking Confirmation Extractor | Boarding Pass Format | Boarding Pass Extractor | Notes |
---|---|---|---|---|---|
Aegean (A3) | ? | ? | HTML, PDF | Generic | |
Aer Lingus (EI) | HTML | Custom | Generic | ||
Air Baltic (BT) | ? | ? | PkPass, PDF | Generic (pkpass), Custom (pdf) | |
Air Berlin (AB) | ? | ? | PkPass, PDF, JSON-LD | Generic | JSON-LD contains wrong timezone data, airline bankrupt |
Air France (AF) | ? | ? | Mircrodata, PDF | Generic | |
American Airlines (AA) | ? | ? | Custom | ||
Austrian Airlines (OS) | Microdata | Generic | JSON-LD, PkPass | Generic | |
Asiana Airlines (OZ) | TODO | ? | ? | ||
BRA (TF) | HTML | TODO | HTML, PDF | Generic | |
British Airways (BA) | HTML, Text | TODO | Generic | ||
Brussels Airlines (SN) | HTML, PDF | Custom | PDF, PkPass | Generic | |
Croatia Airlines (OU) | ? | ? | Generic | ||
Czech Airlines (OK) | HTML | TODO | Generic | ||
Delta | HTML | TODO | ? | ? | |
EasyJet | HTML | Custom | Custom | ||
Emirates (EK) | HTML, PDF | TODO | ? | ? | needs more samples |
Eurowings (EW) | HTML, Text | Custom | PDF, PkPass, JSON-LD, Micordata | Generic (JSON-LD, PDF), Custom (PkPass) | JSON-LD and Microdata are sometimes both present and provide different data |
Finnair (AY) | HTML | TODO | Generic | ||
Flybe (BE) | HTML | TODO | ? | ? | |
Iberia (IB) | HTML, PDF | Custom (some variants) | Microdata, PDF | Generic | |
IndiGo (6E) | HTML | Custom | Custom | ||
KLM (KL) | HTML, PDF | Custom (some formats) | Microdata, PDF | Generic | |
Lufthansa (LH) | Microdata | Generic | Microdata, PkPass, PDF, iCal | Generic (Microdata, PDF), Custom (PkPass), NP4 (iCal) | Microdata boarding passes contain download link rather than IATA BCBP token |
Norwegian Air Shuttle (DY) | HTML, PDF | Custom (PDF) | ? | ? | |
Quatar Airways (QR) | Text, HTML, PDF | TODO | Generic | needs more samples | |
Ryanair (FR) | HTML, Microdata | Generic | Generic | ||
SAS (SK) | PDF, HTML, Text | Custom (some variants) | Generic/Custom (depending on variant) | ||
Swiss (LX) | HTML, iCal, JSON-LD | Custom, Generic | PDF, PkPass | Generic | |
TAP | HTML | TODO | Generic | ||
United (UA) | HTML | TODO | Generic | ||
Volotea (V7) | JSON-LD | Generic | ? | ? | |
Vueling (VY) | HTML | Custom | Generic | JSON-LD has been observed in some emails too | |
Wizz Air (W6) | HTML | TODO | ? | ? | |
WOW air (WW) | HTML, PDF | TODO | PkPass | Generic |
Useful references:
Train and Long-distance Bus Operators
Mixing train and bus operators here as some of them operate both types.
Operating area: If an operator is only active in a single country, that allows to make assumptions e.g. about the timezone of the destinations.
Ticket token types:
- UIC 918.3 with RCT2 payload: the EU standard for international tickets
- UIC 918.3 with vendor payload
- Vendor-specific proprietary formats encoding (some) trip data
- Vendor-specific proprietary formats not encoding trip data
Ticket token supported: means you can use KDE Itinerary to validate your ticket on automatic scanners or during manual ticket inspections.
Operator | Type | Area | Ticket Format | Ticket Extractor | Ticket Token Format | Ticket Token Supported | Notes |
---|---|---|---|---|---|---|---|
Aircoach.ie | Bus | IE/UK | HTML | Custom | N/A | N/A | |
ALSA | Bus | ES? | TODO | N/A | N/A | ||
Czech Railways | Train | EU | ? | Custom | ? | ? | |
Deutsche Bahn | Train | EU | Custom | Domestic: UIC 918.3 with vendor-specific payload International: UIC918.3 with RCT2 payload |
Yes | ||
DSB | Train | DK/EU | Generic | UIC 918.3 with RCT2 payload | untested | ||
Flibco | Bus | EU | HTML | TODO | QR with number | unknown | |
Flixbus | Bus | EU? | JSON-LD, HTML, PDF | Generic | unknown | unknown | |
Italo | Train | IT | JSON-LD | Generic | ? | N/A | |
Koleje Małopolskie | Train | PL | Custom | QR with proprietary JSON payload | untested | ||
Korail | Train | KR | HTML | Custom | N/A | no | validation requires print-out or vendor app |
megabus.com | Bus | UK? | HTML, Text, PDF | TODO | ? | ? | |
National Express | Bus | UK? | HTML | Custom | ? | ? | |
NS | Train | EU | Generic | UIC 918.3 with RCT2 payload (international) | ? | ||
ÖBB | Train | EU | Generic | UIC 918.3 with RCT2 payload | Yes | ||
Pasažieru vilciens | Train | LV? | HTML, PDF | TODO | Proprietary without trip data | unknown | |
RegioJet | Train, Bus | EU? | ? | Custom | ? | ? | |
Renfe | Train | EU | Custom | Proprietary DataMatrix/Code128 with trip data | untested | ||
SBB | Train | EU? | Html/Text, PDF | TODO (Html), Generic (PDF) | UIC 918.3 with RCT2 payload (PDF), QR with proprietary format (Html) (see KDE_PIM/KItinerary/SBB_Barcode) | untested | |
SNCB | Train | BE/EU? | Custom | Code128 | unknown | ||
SNCF | Train | EU | PDF, HTML, Barcode | Custom | Proprietary with trip data (see KDE_PIM/KItinerary/SNCF_Barcodes) | Yes (untested) | |
SNFC - Ouigo | Train | FR/EU? | HTML (confirmation, reminder), PDF (ticket) | custom (confirmation) | high entropy base64 blob | unknown | workflow consists of 3 emails |
Stansted Express | Train | UK | PDF, PkPass | Custom (PkPass), TODO (PDF) | QR/proprietary | untested | |
Thalys | Train | BE/DE/FR/NL | Html | Custom | binary Aztec/proprietary (see KDE_PIM/KItinerary/Thalys_Barcode) | Yes | |
Trenitalia | Train | IT | Custom | Aztec with binary content (see KDE_PIM/KItinerary/Trenitalia_Barcode) | Yes | ||
VGN | Train/Bus | DE::BY | PDF, image | Custom | UIC 918.3 with non-RCT2 U_TLAY payload | untested | |
VIA Rail | Train | CA | HTML, PDF | Custom | Proprietary with trip data | unknown | |
vr.fi | Train | FI? | HTML, PDF | Custom | unidentified (see KDE_PIM/KItinerary/vr.fi_Barcode) | unknown | |
Westbahn | Train | AT? | TODO | unknown | unknown |
Useful reference: https://en.wikipedia.org/wiki/Rail_transport_by_country
Lodging
Provider | Booking Confirmation Format | Extractor | Notes |
---|---|---|---|
Accor Hotels | HTML | Custom | |
Airbnb | JSON-LD | Generic | |
A&O Hostels | Text, HTML | Custom | |
availpro.com | HTML | Custom | Online booking software used by non-chain hotels |
Booking.com | JSON-LD, HTML, Text | Generic, Custom | varies between JSON-LD and HTML with so far unknown pattern |
Hotels.com | JSON-LD | Custom | custom extractor to augment generic result with correct checkin/out times |
Millenium Copthorne | JSON-LD | Generic | |
NH Group | HTML | Custom | |
simplebooking.it | HTML | Custom | Online booking software used by non-chain hotels |
Vrbo | HTML | TODO |
Travel Agencies / Backend Systems
Agency | Supported Types | Itinerary Format | Extractor | Notes |
---|---|---|---|---|
ACP Rail | Train | HTML | Custom | |
Amadeus | Flight | Text, HTML, PDF, iCal | Custom (some variants) | used by several airlines and agencies too |
American Express | Flight, Hotel | TODO | ||
BCD Travel | Flight, Train, Rental Car | PDF, iCal | via NP4 | uses NP4 extractor for iCal |
Bravofly | Flight, Hotel | HTML | TODO | |
Cheapoair | Flight | JSON-LD | Generic | |
Cleartrip | Flight | JSON-LD | Generic | Also sends non-standard PkPass files |
Expedia | Flight | HTML | TODO | |
FCM/Travellink | Flight | Text, HTML | Custom | |
NP4 GmbH | Flight, Rental Car | iCal | Custom | backend system used by e.g. BCD Travel and Lufthansa |
Trainline.eu | Train | JSON-LD | Generic | |
Travelport Galileo | Flight | Text | Custom | backend system |
TUI | Flight, Hotel | TODO | ||
via.com | Flight | JSON-LD, PDF (booking); HTML (cancellation) | Generic |
Useful references:
Restaurants
Restaurant/Reservation Service | Format | Extractor | Notes |
---|---|---|---|
dinnerbooking.com | HTML, iCal | Custom | |
easytablebooking.com | ? | ? | |
lafourchette.com | Microdata | Generic | |
opentable.de | JSON-LD | Generic | |
Quandoo | HTML, Text | TODO | |
zenchef.fr | Microdata | Generic |
Rental Car Reservations
Rental Car Provider | Format | Extractor | Notes |
---|---|---|---|
Avis | HTML | TODO | |
Europcar | JSON-LD | Generic | |
Hertz | Text, HTML | Custom |
Event Booking
Booking Service | Ticket Format | Ticket Extractor | Ticket Token Format | Ticket Token Supported | Notes |
---|---|---|---|---|---|
Chaos Communication Congress | Custom | QR with alpha-numeric id | yes | includes a secondary UIC 918.3 ticket token for local public transport (supported too) | |
Cineplex | HTML | TODO | QR with numeric id | unknown | PkPass file available via download link |
Clorian | HTML, PkPass | Generic (PkPass) | QR with numeric id | unknown | HTML email with PkPass download link; covers some prominent sites like Sagrada Familia |
Deutsche Message AG | PDF, PkPass | Generic (PkPass) | unknown | unknown | |
Easy Airport Parking | HTML, PkPass | Custom (PkPass) | numeric token as QR code | untested | parking reservation, currently modeled as Event |
Eventbrite | JSON-LD, PDF | Generic | numeric token in QR or 1d barcode | unknown | ticket token only in PDF and not yet extracted |
Kinoheld | JSON-LD | Generic | reservation number as Code128 barcode | unknown | ticket token not set in JSON-LD |
Meetup | JSON-LD | Generic | N/A | N/A | |
ntry.at | PkPass, HTML, PDF | Generic | alphanumeric token in Aztec code | untested | |
messe.at | HTML, PDF | TODO | unknown | unknown | |
Messe Nürnberg | PkPass | Generic | weird | unknown | |
Ticketino | PkPass | Generic | numeric token | unknown | |
Tierpark Berlin | Custom | numeric token | unknown |