From e13b5afe4f23648358c01a4d3809d0ccf46c592f Mon Sep 17 00:00:00 2001 From: Daniel Friesel Date: Sun, 4 Oct 2020 12:47:09 +0200 Subject: Traewelling checkin: Handle invalid / revoked bearer tokens --- lib/Travelynx/Helper/Traewelling.pm | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'lib') diff --git a/lib/Travelynx/Helper/Traewelling.pm b/lib/Travelynx/Helper/Traewelling.pm index 2a522e5..48fc16d 100644 --- a/lib/Travelynx/Helper/Traewelling.pm +++ b/lib/Travelynx/Helper/Traewelling.pm @@ -323,6 +323,19 @@ sub checkin { ); return; } + + # Work around https://github.com/Traewelling/traewelling/issues/128 + if ( $tx->res->code == 302 ) { + my $err_msg = "Der Login-Token wurde nicht akzeptiert"; + $self->{log}->debug("... error: $err_msg"); + $self->{model}->log( + uid => $opt{uid}, + message => + "Fehler bei $opt{train_type} $opt{train_no}: $err_msg", + is_error => 1 + ); + return; + } $self->{log}->debug( "... success! " . $tx->res->body ); # As of 2020-10-04, traewelling.de checkins do not yet return -- cgit v1.2.3