From b8bfa75748e4ae4cb780a4e5aeb510bc63c90899 Mon Sep 17 00:00:00 2001 From: Jan-Piet Mens Date: Wed, 19 Jul 2017 22:29:43 +0200 Subject: [PATCH] NEW: Add support for OwnTracks Pico by pretending `../pico` is a base topic addresses #205 --- recorder.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/recorder.c b/recorder.c index a9277fb..c68530e 100644 --- a/recorder.c +++ b/recorder.c @@ -600,6 +600,16 @@ void handle_message(void *userdata, char *topic, char *payload, size_t payloadle if (utstring_len(reltopic) == 0) utstring_printf(reltopic, "-"); + /* + * Are we handing ../user/device/pico from OwnTracks Pico / Homie? + * Pretend we have a base-topic publish, so change "/pico" to "*" + */ + + if ( (count == (4 + skipslash)) && (strcmp(UB(reltopic), "pico") == 0)) { + utstring_renew(reltopic); + utstring_printf(reltopic, "*"); + } + utstring_printf(basetopic, "%s/%s/%s", topics[0 + skipslash], topics[1 + skipslash], topics[2 + skipslash]); utstring_printf(username, "%s", topics[1 + skipslash]);