From 2ddab756440333fb42a9813df87b978a82e490d2 Mon Sep 17 00:00:00 2001 From: Daniel Friesel Date: Mon, 6 May 2019 16:59:48 +0200 Subject: basic webhook support, onwards to betatesting --- templates/webhooks.html.ep | 35 +++++++++++++++++++++++++---------- 1 file changed, 25 insertions(+), 10 deletions(-) (limited to 'templates/webhooks.html.ep') diff --git a/templates/webhooks.html.ep b/templates/webhooks.html.ep index fec485d..0bf8cc8 100644 --- a/templates/webhooks.html.ep +++ b/templates/webhooks.html.ep @@ -8,14 +8,9 @@

- Die im Web Hook konfigurierte URL wird bei jedem Checkin und Checkout - des ausgewählten Zuges aufgerufen. Falls ein Token eingetragen - ist, wird er als Bearer Token verwendet. -

-

- Events werden als JSON POST übertragen. Das JSON-Dokument besteht aus - zwei Feldern: „reason“ gibt den Grund des API-Aufrufs an (checkin, - checkout, undo), „status“ den aktuellen Status. + 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 @@ -28,7 +23,7 @@
link - %= text_field 'url', id => 'url', class => 'validate', maxlength => 1000 + %= text_field 'url', id => 'url', class => 'validate', pattern => 'https?://.+', maxlength => 1000
@@ -38,7 +33,7 @@
% if ($hook->{latest_run}->epoch) { - Zuletzt ausgeführt: <%= $hook->{latest_run} %>
+ Zuletzt ausgeführt <%= $hook->{latest_run}->strftime('am %d.%m.%Y um %H:%M:%S') %>
% if ($hook->{errored}) { error Status: <%= $hook->{output} %> @@ -59,4 +54,24 @@
%= 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: +

+ Falls der Zug das Ziel bei der Zielwahl schon erreicht hat, wird ohne + update direkt ein checkout abgeschickt. +

-- cgit v1.2.3