Jump to content

KDE PIM/KItinerary/ZSSK Barcode

From KDE Community Wiki
Revision as of 17:50, 17 June 2022 by Vkrause (talk | contribs) (Created page with "= Domestic Ticket = == General Observation == * Aztec barcode, in PDF or image * Variable length * For domestic tickets only, international ones use RCT2 in UIC 918.3 contai...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Domestic Ticket

General Observation

  • Aztec barcode, in PDF or image
  • Variable length
  • For domestic tickets only, international ones use RCT2 in UIC 918.3 container
  • zlib compressed textual payload starting at offset 3.
  • zlib decompressed content is plain text and hardly larger than the full compressed data, which suggests the compressed data doesn't span the full length of the barcode (signature?).

Textual Payload Structure

  • 34 lines, delimited by 0x0A
  • UTF-8 encoded
  • date/time format: 8 digits, the first 4 seems to correspond to the day?, the last four are the time in hhmm format.
Index Format Meaning Notes
0 "P" fixed value
1 16 digit number ticket number
2 6-8 digit number ?
3 N.NN ticket price in EUR
4 N.NN price? 0.00 in all samples
5 N.NN price? 0.00 in all samples
6 string departure station name
7 string arrival station name
8 <number>[<digit>.tr.] train number and class
9 date/time departure time
10 date/time arrival time
11 string passenger name
12 ? ? 0 in all samples
13 ? ? empty in all samples
14 ? ? empty in all samples
15 ? ? empty in all samples
16 ? ? empty in all samples
17 1-3 digit number ?
18 ? ? 0 in all samples
19 date/time ? ?
20 7 digit number ? can be empty
21 7 digit number ? can be empty
22 "N" fixed value
23 "text" fixed value
24 string ticket name/title
25 string tariff name?
26 string ?
27 ? ? empty in all samples
28 "Z: "<string> departure station name
29 "Do: "<string> arrival station name
30 "Km: "<string> ? distance? seems to contain class?
31 "Vlak: "<number> train number
32 ? ? empty in all samples
33 ? ? empty in all samples