Open markvdb opened 7 years ago
21:07:09 < agk> markvandenborre: insert into scheduling apps
21:07:19 < agk> two situations - 1) apps that get changed to support it
21:07:24 < agk> 2) ones that don't
21:07:35 < agk> the second ones still display things we put into the website XML
21:07:50 < agk> so are there particularURLs we can generate for them?
21:08:04 < agk> eg "navigate to here from
What I can do in FOSDEM Companion:
1) Add a button to open nav.fosdem.org in the "campus map" screen.
2) Add a button or link to navigate to the appropriate room in the talk details screen. For this I can build an URL using the room data present in the pentabarf file ("room" tag). Looks like nav.fosdem.org/d/[room_id] should do it but I need a way to find out the room id. If that helps, I can transform the room name using a specific set or rules. For example, the app already uses a function which transforms a room name to a local resource name to look for a suitable image. Example: "H.2215 (Ferrer)" -> "h2215".
Hey @cbeyls, that sounds great. Transforming the room names to something more suitable for a url would be useful. We can adapt what we currently have to something that's easier for you.
If we adapt to something for room naming scheme, it needs to be what is in the pentabarf xml output.
https://fosdem.org/2017/schedule/xml
2017-01-23 20:09 GMT+01:00 Louis Taylor notifications@github.com:
Hey @cbeyls https://github.com/cbeyls, that sounds great. Transforming the room names to something more suitable for a url would be useful. We can adapt what we currently have to something that's easier for you.
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/FOSDEM/maps/issues/96#issuecomment-274586044, or mute the thread https://github.com/notifications/unsubscribe-auth/AAviCLUmgv8Xh6W5EeIFnp9rDCls3Zw6ks5rVPsAgaJpZM4LohhT .
-- Mark Van den Borre Hogestraat 16 3000 Leuven, België +32 486 961726
That would be the easiest. But there are spaces and parenthesis in these names and I don't know if these are allowed for room ids in your system (of course the app will URL-encode them).
Taken from the website presentation, the rooms are:
aw1120
aw1121
aw1124
aw1125
aw1126
h1301_cornil
h1302_depage
h1308_rolin
h1309_van_rijn
h2111
h2213
h2214
h2215_ferrer
h3227
h3228
janson
k1105_la_fontaine
k3201
k3401
k4201
k4401
k4601
ua2114_baudoux
ua2220_guillissen
ub2147
ub2252a_lameere
ud2120_chavanne
ud2218a
ud2corridor
If someone provides an agreed 'navigate to this room' URL, I can put this into the XML, so all the apps will see it, just like the 'Live video stream from the room' URLs appear for roughly 20 minutes before and after each talk. Example:
https://staging.fosdem.org/2017/schedule/event/dinosaurs/
It's not ideal, as it should really be part of the room properties, not the event, but it's likely to be the simplest way to get the links out there without every app developer needing to make changes.
People won't see "live" changes to the file in the apps anyway, because all apps I'm aware off load the big pentabarf XML file once then work offline from it.
Okay, I'm done integrating 1 and 2. For 2, the app will transform the room names to "slugs" so they match the URLs on the website. I reused the code the app uses to transform speaker names to slugs. By the way, I'm still missing a few room images: UD2.218A, UB2.147, H.3227, H.3228. Do you know where I can find them?
On the side-issue, I've extended the window for the live streaming links to 2 days, assuming most people will refresh their offline XML at least once a day to pick up the latest schedule changes.
Nav links though, I'm still waiting to know what URL to use for "Navigate to $this_room"
For nav links you should use http://nav.fosdem.org/d/[room_slug] where [room_slug] is a URL-friendly version of the room name in the schedule data. It's the name that is used in the FOSDEM website URLs.
"FOSDEM Companion" already does this in the latest version, so if you add a nav link it would be useful for other apps.
For reference here is the Java code which transforms a string to a "slug".
Talk to ScottyTM!