owntracks reportSteps auf iPhone

Begonnen von Jamo, 06 November 2022, 23:28:22

Vorheriges Thema - Nächstes Thema

Jamo

Hallo,
ich möchte mir von Owntracks vom iPhone 14 die Schritte reporten lassen, das klappt leider nicht. Im owntracks Booklet unter Docs » Features » Pedometer habe ich folgendes commando gefunden:mosquitto_pub -q 2 -t owntracks/jj/5s/cmd -m '{"_type" : "cmd", "action": "reportSteps"}'
Hier im Forum habe ich folgenden link von Otto gefunden:https://forum.fhem.de/index.php/topic,99666.msg1109556.html#msg1109556

Wenn ich das wie von Otto vorgeschlagen, sowohl in setlist als auch getlist einsetze, funktionierts aber nicht. Kann mir jemand helfen?
define owntracks MQTT2_DEVICE fhemiPhone
attr owntracks IODev MQTT2SRV
attr owntracks autocreate 0
attr owntracks devStateIcon none
attr owntracks devStateStyle style="text-align:left"
attr owntracks event-on-change-reading event,iPhone
attr owntracks getList steps:noArg steps owntracks/fhem/iPhone/cmd {"_type":"cmd", "action":"reportSteps"}
attr owntracks group HOMESTATE
attr owntracks readingList fhemiPhone:owntracks/fhem/iPhone:.*          iPhone\
fhemiPhone:owntracks/fhem/iPhone/event:.*    event\
fhemiPhone:owntracks/fhem/iPhone/cmd:.*      cmd\
fhemiPhone:owntracks/fhem/iPhone/beacon:.*   beacon\
fhemiPhone:owntracks/fhem/iPhone/step:.*     step\
fhemiPhone:owntracks/fhem/iPhone/steps:.*    steps\
fhemiPhone:owntracks/fhem/iPhone/waypoint:.* waypoint\
fhemiPhone:owntracks/fhem/iPhone/ibeacon:.*  ibeacon
attr owntracks room Favourites,Mqtt
attr owntracks setList steps:noArg owntracks/fhem/iPhone/cmd {"_type":"cmd", "action":"reportSteps"}
attr owntracks verbose 0


Wenn ich "set owntracks steps"ausführe passiert gar nichts, wenn ich "get owntracks steps" ausführe, bekomme ich immer folgende Fehlermeldung:Timeout reading answer for owntracks/fhem/iPhone/cmd {"_type":"cmd", "action":"reportSteps"}
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/Conbee III, FB7690, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack, Sonos, ESPresence

Otto123

#1
Hi,

Das sieht mir jetzt alles händisch aus?
Warum lässt Du nicht erstmal ein Device anlegen (oder ist das automatisch erzeugt?) und wendest die beiden Templates owntracks_device und owntracks_extend_IOS an?
https://wiki.fhem.de/wiki/MQTT2-Module_-_Praxisbeispiele#Owntracks_GPS_Tracking_in_FHEM

Da ist der Part mit get Steps doch sogar drin?!

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Jamo

Hallo Otto,
danke schonmal, ja das ist haendisch/uralt. Habs gerade aber nochmal per autocreate gemacht, die beiden templates owntracks_device und owntracks_extend_IOS werden bei mir nicht angezeigt.
Wie bekomme ich die?
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/Conbee III, FB7690, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack, Sonos, ESPresence

Otto123

Das Problem wird der Filter sein. Das Template geht davon aus, dass die CID mit owntracks_ beginnt. Ich nehme an, Du hast das Bridge device nicht nach Wiki eingerichtet. Das Bridge device erzeugt eine passende CID in der DEF.
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Jamo

Hallo Otto,
so das hat schon mal geholfen, nachdem ich das device renamed hatte, mit einem owntracks_, finde ich das owntracks_device template (siehe list, das funktioniert schon mal),
aber das template owntracks_extend_IOS ist immer noch verborgen. Hast Du noch eine Idee?

PS: In der setlist ist ein Schreibfehler drin: Quite -> Quiet


define MQTT2_owntracks_fhemiPhone14 MQTT2_DEVICE owntracks_fhemiPhone14
attr MQTT2_owntracks_fhemiPhone14 comment https://owntracks.org/booklet/tech/json/
attr MQTT2_owntracks_fhemiPhone14 devicetopic owntracks/fhem/iPhone14
attr MQTT2_owntracks_fhemiPhone14 getList location:noArg raw $DEVICETOPIC/cmd {"_type":"cmd","action":"reportLocation"}\
  waypoints:noArg raw $DEVICETOPIC/cmd {"_type":"cmd","action":"waypoints"}
attr MQTT2_owntracks_fhemiPhone14 icon location_sign
attr MQTT2_owntracks_fhemiPhone14 jsonMap acc:accuracy alt:altitude batt:batteryPercent lat:latitude lon:longitude vac:accuracyVertical vel:velocity\
  _type:lastUpdateType tst:timestamp tid:trackerId
attr MQTT2_owntracks_fhemiPhone14 model owntracks_device
attr MQTT2_owntracks_fhemiPhone14 readingList $DEVICETOPIC.* raw\
  $DEVICETOPIC:.* { json2nameValue($EVENT,'',$JSONMAP) }\
  $DEVICETOPIC/event:.* { json2nameValue($EVENT,'',$JSONMAP) }\
  $DEVICETOPIC/waypoints:.* { my (%h,$cnt);; $EVENT=~ s/(\{[^[]*?})/$h{"waypoint_".++$cnt}=$1/ge;; \%h }
attr MQTT2_owntracks_fhemiPhone14 room Mqtt
attr MQTT2_owntracks_fhemiPhone14 setList action:textField $DEVICETOPIC/cmd {"_type":"cmd","action":$EVTPART1}\
  config:textField $DEVICETOPIC/cmd {"_type":"cmd","action":"setConfiguration","configuration":$EVTPART1}\
  waypoints:textField $DEVICETOPIC/cmd {"_type":"cmd","action":"setWaypoints","waypoints":{"_type":"waypoints","waypoints":[$EVTPART1]}}\
  mode:Quite,Manual,Significant,Move { my %h=(Quite=>'-1',Manual=>'0',Significant=>'1',Move=>'2');;fhem("set $NAME config ".qq({"_type":"configuration","monitoring":$h{$EVTPART1}})) }\
  x_raw_payload:textField { my $payload = $EVENT;; $payload =~ s/$EVTPART0 //;; qq($DEVICETOPIC/cmd $payload) }
attr MQTT2_owntracks_fhemiPhone14 userReadings location:lat.* {ReadingsNum($name,'latitude',0).','.ReadingsNum($name,'longitude',0)},\
  connection:conn.* {my %h=(m=>'mobil',w=>'wifi',o=>'offline',e=>'unknown');; return $h{ReadingsVal('MQTT2_owntracks_mi6','conn','e')}},\
  place:event.* {ReadingsVal($name,'event','') eq 'leave'?'away':(ReadingsVal($name,'desc','nowhere'))}
#   CFGFN     
#   CID        owntracks_fhemiPhone14
#   DEF        owntracks_fhemiPhone14
#   FUUID      63683ed4-f33f-97bf-785c-3d85bc205c2eefd0
#   IODev      MQTT2SRV
#   LASTInputDev MQTT2SRV
#   MQTT2SRV_CONN MQTT2SRV_172.21.0.30_56277
#   MQTT2SRV_MSGCNT 4
#   MQTT2SRV_TIME 2022-11-07 08:51:28
#   MSGCNT     4
#   NAME       MQTT2_owntracks_fhemiPhone14
#   NR         14705
#   STATE      config
#   TYPE       MQTT2_DEVICE
#   eventCount 8
#   JSONMAP:
#               
#     _type      lastUpdateType
#     acc        accuracy
#     alt        altitude
#     batt       batteryPercent
#     lat        latitude
#     lon        longitude
#     tid        trackerId
#     tst        timestamp
#     vac        accuracyVertical
#     vel        velocity
#   OLDREADINGS:
#   READINGS:
#     2022-11-07 08:51:28   BSSID           12:34:56:34:34:89
#     2022-11-07 08:03:18   IODev           MQTT2SRV
#     2022-11-07 08:51:28   SSID            wlan
#     2022-11-07 08:51:28   accuracy        14
#     2022-11-07 08:51:28   accuracyVertical 10
#     2022-11-07 08:51:28   altitude        210
#     2022-11-07 08:28:32   attrTemplateVersion 20201212_2
#     2022-11-07 08:51:28   batteryPercent  92
#     2022-11-07 08:51:28   bs              1
#     2022-11-07 08:51:28   conn            w
#     2022-11-07 08:51:28   connection      unknown
#     2022-11-07 08:51:28   lastUpdateType  location
#     2022-11-07 08:51:28   latitude        99.1234567
#     2022-11-07 08:51:28   location        99.1234567,00.123456
#     2022-11-07 08:51:28   longitude       00.123456
#     2022-11-07 08:51:28   m               1
#     2022-11-07 08:51:28   p               95.819
#     2022-11-07 08:51:28   raw             {"_type":"location","acc":14,"alt":210,"batt":92,"bs":1,"BSSID":"12:34:56:34:34:89","conn":"w","lat":99.1234567,"lon":00.123456,"m":1,"p":95.819,"SSID":"wlan","tid":"JM","tst":1667807487,"vac":10,"vel":1}
#     2022-11-07 08:51:12   state           config
#     2022-11-07 08:51:28   timestamp       1667807487
#     2022-11-07 08:51:28   trackerId       JM
#     2022-11-07 08:51:28   velocity        1
#   hmccu:
#

Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/Conbee III, FB7690, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack, Sonos, ESPresence

Otto123

#5
Das zweite Template reagiert auf model owntracks_device - das sollte eigentlich passen.
Sowas wie Browser Refresh, manchmal baut er de erst die Liste neu auf.

Edit: der Schreibfehler ist wenigstens systematisch  :-[ ändere ich - aber funktionell ist es egal ;)
Edit: type gefixt und eingecheckt
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Jamo

So, danke nochmal, ein fhem neustart war mein Freund. Jetzt sehe ich auch das owntracks_extend_IOS template. Die steps sind jetzt auch drin.

Wenn ich jetzt "get owntracks steps" ausführe, bekomme ich aber wieder folgende Fehlermeldung, das gleiche fuer "get owntracks location":
Timeout reading answer for owntracks/fhem/iPhone14/cmd {"_type":"cmd","action":"reportSteps"}Timeout reading answer for owntracks/fhem/iPhone14/cmd {"_type":"cmd","action":"reportLocation"}

Falls Du auch ein iPhone hast, gibt es irgendwas, was ich in der Owntracks app in iOS auf dem Handy noch setzen muss? Eventuell im expert mode? Im owntracks Booklet habe ich nichts gefunden. Oder in der Bridge?

Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/Conbee III, FB7690, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack, Sonos, ESPresence

Otto123

IOS freie Zone  ;D

location kann ich auch testen

Aber der Mechanismus ist bei allen get gleich: es wird ein Befehl gesendet und der Broker gibt einen json String zurück. Der wandert in das Reading raw und wird dann zerpflückt.
Wenn in raw in dem Moment nichts ankommt würde ich meinen dein owntracks ist "taub". Das nimmt keine Befehle an.
Oder Deine Bridge läuft falsch und die Werte landen in einem anderen Device?

Siehst Du in deinem MQTT Client den MQTT Traffic beim absetzten des Befehls? (show MQTT Traffic )

in der Art
SENT
owntracks/UserOttoMqtt123/mi6/cmd
{"_type":"cmd","action":"reportLocation"}
RCVD
owntracks/UserOttoMqtt123/mi6/cmd
{"_type":"cmd","action":"reportLocation"}
RCVD
owntracks/UserOttoMqtt123/mi6
{"_type":"location","BSSID":"c4:41:1e:37:57:ca","SSID":"LEDE-1996","acc":10,"alt":164,"batt":64,"bs":1,"conn":"w","created_at":1667815774,"inregions":["zuHause"],"lat":xx.33xx446,"lon":xx.24xx9238,"m":1,"t":"r","tid":"hk","tst":1667815646,"vac":1,"vel":0}

Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Jamo

Hallo Otto,
ich sehe in meinem MQTT2 Server ( -> ich habe keinen MQTT2_Client) dass das cmd gesendet wird, es kommt aber keine Antwort..... -> Siehe screenshot.

Hier auch das list vom Server:define MQTT2SRV MQTT2_SERVER 1883 EIN.NE.IP.ADS
attr MQTT2SRV SSL 1
attr MQTT2SRV allowfrom ME.NE.IP.AD1|ME.NE.IP.AD2|ME.NE.IP.AD3
attr MQTT2SRV autocreate simple
attr MQTT2SRV event-on-change-reading none
attr MQTT2SRV group SERVER
attr MQTT2SRV hideRetain 1
attr MQTT2SRV keepaliveFactor 60
attr MQTT2SRV room Mqtt,System
#   CONNECTS   104
#   Clients    :MQTT2_DEVICE:MQTT_GENERIC_BRIDGE:
#   ClientsKeepOrder 1
#   DEF        1883 EIN.NE.IP.ADS
#   FD         15
#   FUUID      5d82891b-f33f-97bf-cae6-b4a7b791b5db91cf
#   NAME       MQTT2SRV
#   NR         2574
#   PORT       1883
#   SSL        1
#   STATE      Initialized
#   TYPE       MQTT2_SERVER
#   MatchList:
#     1:MQTT2_DEVICE ^.
#     2:MQTT_GENERIC_BRIDGE ^.
#   READINGS:
#     2022-11-07 11:53:04   nrclients       0
#     2022-11-07 11:04:06   state           Initialized
#   clients:
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/Conbee III, FB7690, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack, Sonos, ESPresence

Otto123

Ok Du hast den MQTT Server direkt erreichbar, ich habe das über einen MQTT Cloud Server gemacht.

Geht auch nicht bei location? oder waypoints (da müssen aber auch welche angelegt sein)
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Jamo

Hallo Otto,
danke erstmal. Nein, das geht weder fuer location (gleiche Fehlermeldung) -> Timeout reading answer for owntracks/fhem/iPhone14/cmd {"_type":"cmd","action":"reportLocation"}.
Es kommt keine Antwort . . .
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/Conbee III, FB7690, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack, Sonos, ESPresence

rudolfkoenig

Zitatich sehe in meinem MQTT2 Server ( -> ich habe keinen MQTT2_Client) dass das cmd gesendet wird, es kommt aber keine Antwort...
Bei nrclients = 0 waere das auch ein kleines Wunder.

Otto123

Zitatattr MQTT2SRV keepaliveFactor 60
Ist das sinnvoll?
ZitatkeepaliveFactor
the oasis spec requires a disconnect, if after 1.5 times the client supplied keepalive no data or PINGREQ is sent. With this attribute you can modify this factor, 0 disables the check. Notes:
dont complain if you set this attribute to less or equal to 1.
MQTT2_SERVER checks the keepalive only every 10 second.
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Jamo

#13
OK, keepaliveFactor habe ich geloescht. Aber den Kommentar von Rudi habe ich nicht verstanden.
ZitatBei nrclients = 0 waere das auch ein kleines Wunder.
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/Conbee III, FB7690, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack, Sonos, ESPresence

Otto123

naja kein Client verbunden der irgendetwas empfangen kann.  ???
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz