schedule

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
schedule [2026/06/06 14:03] – [Producers] andischedule [2026/09/14 12:13] (current) – [Schedule2] andi
Line 1: Line 1:
-Schedule+Schedule
  
 To exchange the scheduled conference data between the different systems and tools we are using the schedule.xml format known from [[https://github.com/nevs/pentabarf|pentabarf]]/[[http://frab.github.io/frab/|frab]]/[[https://pretalx.com/p/about/|pretalx]]. To exchange the scheduled conference data between the different systems and tools we are using the schedule.xml format known from [[https://github.com/nevs/pentabarf|pentabarf]]/[[http://frab.github.io/frab/|frab]]/[[https://pretalx.com/p/about/|pretalx]].
Line 37: Line 37:
 --> -->
  
-== Usage+## Usage
  
-=== Producers+### Producers
  
 The following systems able to produce schedule.xml/.json/etc The following systems able to produce schedule.xml/.json/etc
Line 50: Line 50:
 | [[https://github.com/nevs/pentabarf|pentabarf]] | xml            | CCC till switch to frab, \\ FOSDEM till 2023  | https://penta.fosdem.org/   | | [[https://github.com/nevs/pentabarf|pentabarf]] | xml            | CCC till switch to frab, \\ FOSDEM till 2023  | https://penta.fosdem.org/   |
  
-=== Clients+### Clients
  
-giggity https://github.com/Wilm0r/giggity (Android, Java) +giggity https://github.com/Wilm0r/giggity (Android, Java) 
-EventFahrplan https://github.com/EventFahrplan/EventFahrplan (Android, Kotlin/Java) +EventFahrplan https://github.com/EventFahrplan/EventFahrplan (Android, Kotlin/Java) 
-iOS Fahrplan App https://congress.conference.systems (iOS) +iOS Fahrplan App https://congress.conference.systems (iOS) 
-[[c3tracker:start]] https://github.com/crs-tools/tracker (Video processing system) +[[c3tracker:start]] https://github.com/crs-tools/tracker (Video processing system) 
-[[Engelsystem]] https://github.com/engelsystem/engelsystem (Volunteer planning system) ([[https://github.com/engelsystem/engelsystem/tree/main/src/Helpers/Schedule|PHP]]) +[[Engelsystem]] https://github.com/engelsystem/engelsystem (Volunteer planning system) ([[https://github.com/engelsystem/engelsystem/tree/main/src/Helpers/Schedule|PHP]]) 
-[[hardware:infobeamer]] (digital signage) https://info-beamer.com/raspberry-pi-digital-signage-scheduled-player-4765.html +[[hardware:infobeamer]] (digital signage) https://info-beamer.com/raspberry-pi-digital-signage-scheduled-player-4765.html 
-pyfahrplan (CLI, Python) https://github.com/saschalalala/pyfahrplan+pyfahrplan (CLI, Python) https://github.com/saschalalala/pyfahrplan
  
  
  
-== Schedule2+## Schedule2
  
-We are currently working on the next generation of our schedule schema, which will be available in a first beta / release candidate for 39C3. See https://github.com/voc/schedule/pull/146 and [[events:39c3:schedule]] for more details. +We are currently working on the next generation of our schedule schema. See https://github.com/orgs/voc/projects/and [[events:39c3:schedule]] for more details. 
  
 Goals: Goals:
Line 74: Line 74:
 - … - …
  
 +The new format is defined as Release Candidate alpha-4, currently collecting feedback from clients and first implementations in Hub and native Schedule apps like Eventfahrplan.
  
  
-== Schedule XML+## Schedule XML
  
 Minimal example: Minimal example:
Line 140: Line 141:
  
  
-== Interexchange JSON+## Interexchange JSON
  
 One problem with the nested XML structure is that you can only exchange events once they are assigned to a room and a time slot. To circumvent this issue we propose following JSON structure based on the language/terms used in the schedule.xml format, combined with the recent [[https://docs.pretalx.org/en/latest/api/resources/submissions.html#resource-description|pretalx extensions]]: One problem with the nested XML structure is that you can only exchange events once they are assigned to a room and a time slot. To circumvent this issue we propose following JSON structure based on the language/terms used in the schedule.xml format, combined with the recent [[https://docs.pretalx.org/en/latest/api/resources/submissions.html#resource-description|pretalx extensions]]:
Line 197: Line 198:
  
  
-== Conversion tools+## Conversion tools
 * Some examples and converters to generate a schedule.xml file: [[https://github.com/voc/schedule]], includes converter from schedule.json to schedule.xml <del>and vice verca</del> * Some examples and converters to generate a schedule.xml file: [[https://github.com/voc/schedule]], includes converter from schedule.json to schedule.xml <del>and vice verca</del>
   * [[https://github.com/voc/schedule/blob/master/csv2schedule_deu.py|csv2schedule]] e.g. from a [[https://github.com/voc/schedule/blob/master/example_deu/schedule-example.ods|LibreOffice]] or [[https://docs.google.com/spreadsheets/d/1ncDFREf7sO2lB_7meCLlLroQOCpEGqMjzCoO6tFLJZQ/edit?usp=sharing|Google Spreadsheet]] document [ [[https://docs.google.com/spreadsheets/d/1zisANFAdEQtJ5YT0_6t4n_cGvIY2jsYQyGkI8TT_I-c/edit?usp=sharing|simple]], [[https://docs.google.com/spreadsheets/d/1Y3_x6uaBWx6-s1WP79R92QBWiGLkm-vbZkgYvFgDMK0/edit?usp=sharing|advanced]] ]   * [[https://github.com/voc/schedule/blob/master/csv2schedule_deu.py|csv2schedule]] e.g. from a [[https://github.com/voc/schedule/blob/master/example_deu/schedule-example.ods|LibreOffice]] or [[https://docs.google.com/spreadsheets/d/1ncDFREf7sO2lB_7meCLlLroQOCpEGqMjzCoO6tFLJZQ/edit?usp=sharing|Google Spreadsheet]] document [ [[https://docs.google.com/spreadsheets/d/1zisANFAdEQtJ5YT0_6t4n_cGvIY2jsYQyGkI8TT_I-c/edit?usp=sharing|simple]], [[https://docs.google.com/spreadsheets/d/1Y3_x6uaBWx6-s1WP79R92QBWiGLkm-vbZkgYvFgDMK0/edit?usp=sharing|advanced]] ]
Line 228: Line 229:
  
  
-=== Useful Invocations:+### Useful Invocations:
 * Get talk IDs for a certain day (intro rendering): * Get talk IDs for a certain day (intro rendering):
  
Line 234: Line 235:
   xmlstarlet sel -T -t -m '/schedule/day[@index=1]/room/event/@id' -v . -n schedule.xml   xmlstarlet sel -T -t -m '/schedule/day[@index=1]/room/event/@id' -v . -n schedule.xml
 ``` ```
-== Full XML example+## Full XML example
  
 from https://fahrplan.events.ccc.de/ -> schedule.xml from https://fahrplan.events.ccc.de/ -> schedule.xml
  • schedule.1780754617.txt.gz
  • Last modified: 2026/06/06 14:03
  • by andi