Skip to main content

Blog

Gedanken zur Fahrradrückgabe, Benachrichtigungen und Authentifizierung

von Constantin Müller, Maximilian Richt, Stefan Kaufmann · 07. Juli 2020

In den letzten Wochen haben wir uns immer wieder Gedanken über die Rückgabe von Fahrrädern gemacht. Das ist ein Themengebiet, das erstmal recht einfach erscheint, wir durch den Bikesharing-Betrieb aber schon einiges gelernt haben und jetzt mehr spannende Fragen sehen als vorher.

Momentan ist es so, dass unsere Räder kostenlos ausgeliehen werden können. Wir beschränken dabei auch die Länge der Ausleihe/Fahrt nicht. Bei kommerziellen Anbietern gibt es meist den Anreiz möglichst kurz zu fahren (weil z.B. die ersten 30 Minuten kostenfrei sind), oder bei Nichtbenutzung die Leihe auch schnellstmöglich wieder zu beenden, da minütlich abgerechnet wird. Bei unserer kostenfreien Ausleihe bestehen diese Anreize zurzeit nicht - was dazu führt, dass wir immer wieder mehrere stunden- bis tagelange Ausleihen gesehen haben, ohne dass sich das Rad bewegt hat. Leute haben also vergessen, die Ausleihe des Rads zu beenden und somit anderen wieder zur Verfügung zu stellen.

Am naheliegensten wäre nun bei Ausleihen, die deutlich länger als die Durchschnittsausleihe dauern, die ausleihende Person zu benachrichtigen und zu erinnern, bei Nichtbenutzung das Rad auch wieder zurückzugeben. Unsere Oberfläche ist aber aktuell eine Webapp. Diese können nur unter Android überhaupt (Web-)Push-Nachrichten auslösen, unter iOS ist dies aktuell gar nicht möglich.

Eine weitere Möglichkeit Nutzerïnnen über noch offene Leihen zu informieren, wären bereits bestehende Kanäle wie E-Mail, SMS oder diverse Messenger. Da wir in cykel aber keine Registrierung und Login selbst anbieten, sondern dies über externe Dienste per oAuth2 abbilden, bekommen wir diese Kontaktmöglichkeiten nur in seltensten Fällen. Zudem werfen wir diese Daten - falls doch übermittelt - sogar aktiv weg. Dies hilft uns dabei, möglichst datensparsam mit persönlichen Daten umzugehen, denn eine wunderbare Möglichkeit für Datenschutz ist es, wenn man Daten gar nicht erst erfasst.

Nun stellt sich jedoch die Frage, ob wir diese Prinzipien über Bord werfen müssten, um über vergessene Rückgaben informieren zu können. Zudem würden uns mehr personenbezogene Daten nur noch mehr Probleme bereiten, wenn wir das zukünftig angedachte Roaming zwischen verschiedenen OpenBike-Instanzen einbauen. In dem Fall müssten diese personenbezogenen Kontaktdaten dann mitwandern.

Wir suchen also einen Weg, Benutzerïnnen Nachrichten zukommen zu lassen, ohne dass wir zwingenderweise einen Bezug zwischen einer Ausleihe, der Nachricht, dem Nachrichtenweg und der Person haben müssen.

Momentan benutzt die Kernkomponente von OpenBike zur Authentifizierung oAuth2. Einige Dienste, mit denen eine oAuth2-Authentifizierung möglich ist, bieten selbst auch eine Messenging-Funktion (wie z.B. Twitter mit Direktnachrichten), mit der wir benachrichtigen könnten. Aber nicht alle Dienste bieten das an und zudem gibt es bei den einzelnen Diensten dafür auch keine einheitliche Schnittstelle. Dies ist aber auch gar nicht das Ziel von oAuth2 - dieser (und verwandte) Standards wie OpenID Connect sind ja eigentlich für die Absicherung von Schnittstellen gedacht.

Noch dazu besitzen viele Menschen ja bereits eine Menge an Möglichkeiten, über die sie erreichbar wären - neben klassisch E-Mail und SMS kämen da noch diverse Messenger, Soziale Netzwerke und andere Dienste in Betracht, die vielleicht sogar schon auf den Smartphones installiert sind und Push-Nachrichten ausspielen.

Unsere Idee wäre es nun eine weitere Komponente zu bauen, die zwischen OpenBike und den Authentifizierungsprovidern liegt und sich einerseits um die Abwicklung der Authentifizierung mit verschiedenen Providern und andererseits um das Weiterleiten von Nachrichten über diese kümmert. Diese Komponente sollte also können:

  • selbst oAuth Provider sein
  • mehrere andere oAuth Provider für den Login unterstützen
  • für die Provider die es anbieten, Messaging unterstützen
  • für alle anderen die Hinterlegung einer E-Mail-Adresse oder Handynummer (für SMS) ermöglichen
  • der Benutzer:in wählen lassen, über welchen Weg sie kontaktiert werden will
  • die Zurordnung zu einer Mailadresse, Handynummer oder Loginprovider aufheben können (für E-Mail-Addresswechsel, neue Handynummer, oder gesperrtem/neuen Account bei einem Provider)
  • selbst eine Schnittstelle für Benachrichtigungen anbieten

Damit schaffen wir zwar wieder ein zentrales System, das personenbezogene Daten hortet, aber dieses wäre zumindest von den Ausleihvorgängen auf unterschiedlichen OpenBike-Instanzen unabhängig. Das ist auch der Grund, warum wir dies nicht direkt in cykel einbauen möchten - einerseits sollte diese Kommunikationskomplexität mit zig unterschiedlichen Anbietern nicht in die eigentliche Bikesharingsoftware rein, andererseits sollen auch die personenbezogenen Daten möglichst weit weg davon. Nehmen wir einen kollektiven Betrieb von vielen kleinen OpenBike-Instanzen in unterschiedlichen Nachbarschaften und Städten an, würde ein zentraler Service, der sich um dieses Problemfeld kümmert immerhin den Fokus auf Datenschutz und entsprechende Regelungen an dieser einen Stelle bündeln. Trotzdem können natürlich unterschiedliche Instanzen auch ihre eigenen Login/Notificationservices hosten.

Wir sind uns aber auch nach viel drüber grübeln noch nicht ganz sicher, ob das die sinnvollste Variante ist, das Notificationproblem zu lösen. Auch welche Protokolle dort in Betracht kommen könnten - aktuell klingen zumindest oAuth2 und ActivityPub interessant - ist noch offen.

Wir freuen uns daher über weitere Ideen, Anmerkungen oder auch Vorschläge das Ganze komplett anders zu machen. Gerne per Mail an openbike@ulm.dev - oder sogar besser im öffentlichen #transport-bikesharing:matrix.org Matrix-Channel.

Save the date: Eine kleine OpenBike-Konferenz

von Constantin Müller, Maximilian Richt · 30. Juni 2020

Schon von Anfang an gab es am Projekt OpenBike Interesse aus den verschiedensten Richtungen. Und vor allem einen großen Bedarf an Vernetzung und Austausch zum Thema Bikesharing. Nun ist es soweit und wir wollen Verwaltungsmitarbeitende, EntwicklerInnen, Fahrradaktivisten, Mobilitätsabteilungen, ehrenamtliche Fahrradverleiherinnen, Fahrradinteressierte und Raumschiffpilotinnen zusammenbringen. Und zwar in Form einer kleinen Minikonferenz. Das ganze wird am 7. und 8. August stattfinden. Und zwar online.
Hier gehts zur Anmeldung und zum aktuellen Programmplan

Themen über die wir sprechen wollen:

  • Entwicklungsstand von OpenBike
  • Betriebs und Wartungmodelle von Bikesharingsystemen
  • Kommunale Zusammenarbeit bei der Free und OpenSource Software Entwicklung
  • Einbindung von Sharingsystemen in den ÖPNV
  • Zusammenarbeit von Kommunen mit privaten Sharinganbietern
  • Datenaustausch zwischen Anbietern und Kommunen
  • Trackinghardware für Sharingräder
  • Aufsetzen eigener OpenBike-Instanzen
  • Software und Hardwareentwickung
  • Einführung in die OpenBike Softwareentwicklung

Und natürlich werden wir in der Auflistung noch einige Themen vergessen haben, deswegen freuen wir uns über Feedback, welche Themenbereiche und Aspekte für euch noch interessant wären, die hier noch fehlen. Und natürlich freuen wir uns um so mehr, wenn ihr euch mit einbringen wollt und einen Vortrag oder Workshop zu einem der Themen halten könnt. Das Programm soll kein Frontalunterricht werden, sondern vor allem dem Erfahrungsaustausch, Diskussion und als Inspiration dienen.

Also: Den 7. und 8. August vormerken und hier anmelden! Wir haben es absichtlich auf Freitag/Samstag gelegt, sodass sowohl für Menschen in Verwaltungen, als auch begeisterte Leute aus dem Ehrenamt die Teilnahme möglich wird. Und überlegt euch doch, zu welchem Thema ihr etwas beitragen oder mehr erfahren wollt, eure Themenvorschläge könnt ihr bei der Anmeldung mit angeben.

Wir freuen uns auf euch!

OpenBike Q&A, ein nachgereichter Blogpost

von Maximilian Richt, Constantin Müller · 25. Juni 2020

Am 20. Mai gab es einen recht kurzfristiges OpenBike Q&A. Eigentlich™ dachten wir an eine kleine Runde, weil uns die freundlichen Menschen aus dem Eigenbaukombinat mit Fragen überschütten wollten. Die Ankündigung ist dann etwas eskaliert.

Wir hatten Spaß, haben einfach OpenBike und das Drumherum kurz erklärt und den aktuellen technischen Stand gezeigt. Danach haben wir dann eine wunderbare Diskussion über Bikesharing Systeme, Lastenräder, kommende Features, Tracker und vielen andere spannende Aspekte mit euch führen können.

Besonders gefreut hat uns, dass das Einrichten einer eigenen OpenBike-Instanz ein großes Thema war, und hier schon mehrere Teilnehmende es geschafft haben die Software erfolgreich selber aufzusetzen. Die Diskussion über die Probleme und unklarheiten bei der Installation haben uns sehr gehofen Lücken in unserer Dokumentation aufzuspüren und spornen uns noch mehr an die Dokumentation weiter zu verbessern.

Eine weitere großartige Entdeckung war, dass sich schon erste Software um das Projekt gebildet hat: So hat das Eigenbaukombinat Halle eine kleine Anwendung geschrieben, mit der ein Smartphone als manueller Locationtracker für OpenBike genutzt werden kann. Dies ist gerade zum testen und für kleine Instanzen, die noch keine Tracker an den Rädern installiert haben, nützlich.

In dem Zusammenhang haben wir natürlich auch darüber gesprochen wie wir mit Contributions umgehen und wie wir kommunizieren wollen. Pull-Requests nehmen wir natürlich gern entgegen. Falls ihr aber trotzdem vorher mit uns über neue Features diskutieren wollt, oder einfach erfahrungen austauschen und auf dem laufenden bleiben wollt, was so passiert, dann kommt in den #transport-bikesharing-Channel im OKF-Slack welcher gleichzeitig auch öffentlich nach matrix gebridged wird: #transport-bikesharing:matrix.org.

Falls ihr unsere recht kurzfristige Runde verpasst habt, dann müsst ihr nicht traurig sein, denn bald gibt es noch ein weiteres, etwas größeres Event. Natürlich wieder als Online-Veranstaltung. Mehr dazu in den nächsten Tagen.