% if (my $invalid = stash('invalid')) {
%= include '_invalid_input', invalid => $invalid
% }
Die im Web Hook konfigurierte URL wird bei Änderungen des aktuellen
Reisestatus (z.B. Checkin oder Ankunft am Ziel) aufgerufen. Falls ein
Token eingetragen ist, wird er als Bearer Token verwendet.
%= form_for '/account/hooks' => (method => 'POST') => begin
%= csrf_field
%= check_box enabled => 1
Aktiv
link
%= text_field 'url', id => 'url', class => 'validate', pattern => 'https?://.+', maxlength => 1000
URL
lock
%= text_field 'token', id => 'token', class => 'validate', maxlength => 250
Token
% if ($hook->{latest_run}->epoch) {
Zuletzt ausgeführt <%= $hook->{latest_run}->strftime('am %d.%m.%Y um %H:%M:%S') %>
% if ($hook->{errored}) {
error
Status: <%= $hook->{output} %>
% }
% else {
check
Server-Antwort: <%= $hook->{output} %>
% }
% }
% else {
Noch nicht ausgeführt.
% }
Speichern
send
%= end
Events werden als JSON POST mit folgender Payload übertragen.
{
"reason" : "Grund für den Webhook-Aufruf",
"status" : { Aktueller Nutzerstatus }
}
Gültige Werte für reason sind derzeit:
ping (nach jeder gespeicherten Änderung in diesem Formular)
checkin (in einen Zug eingecheckt – Zielstation ist noch nicht bekannt)
update (eingecheckt und Ziel gewählt oder geändert)
checkout (aus einem Zug ausgecheckt)
undo (checkin oder checkout wurde rückgängig gemacht)
Falls der Zug das Ziel bei der Zielwahl schon erreicht hat, wird ohne
update direkt ein
checkout abgeschickt.