Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Node-Red
  5. Geofency Adapterersatz mit Node-red

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.3k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.3k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.6k

Geofency Adapterersatz mit Node-red

Geplant Angeheftet Gesperrt Verschoben Node-Red
18 Beiträge 6 Kommentatoren 13.0k Aufrufe
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • ruhr70R Offline
    ruhr70R Offline
    ruhr70
    schrieb am zuletzt editiert von
    #1

    327_2015-05-04_geofency_mit_node-red.png

    Der Node-red Flow für Geofency:

    [{"id":"fa0e911c.05f17","type":"tcp in","server":"server","host":"","port":"7999","datamode":"stream","datatype":"utf8","newline":"","topic":"","name":"","base64":false,"x":83.3333625793457,"y":906.6666421890259,"z":"e0986d36.1f679","wires":[["f57f7470.0a8088","7d3f6c25.82c094"]]},{"id":"674a6366.98b59c","type":"debug","name":"ausgeschnittenes JSON Objekt","active":false,"console":"false","complete":"payload","x":962.3333740234375,"y":950.0001392364502,"z":"e0986d36.1f679","wires":[]},{"id":"e29776b1.1d6888","type":"comment","name":"Zum Test: TCP Stream (Geofency) an Node-red","info":"","x":202.00003051757812,"y":822.1110563278198,"z":"e0986d36.1f679","wires":[]},{"id":"82008c7f.7dff7","type":"json","name":"","x":710.0001049041748,"y":1328.3331823349,"z":"e0986d36.1f679","wires":[["674a6366.98b59c","ee027e5f.11fd8","bf3e49bc.40c1b8","20f4652b.df0b9a","ed45adf6.12ba5","a64e4f7.f59b1b","be2be0ee.41d42","2348e43f.dcb71c","404642b1.bfb9bc","a4b5fff9.5b4a","30fea28f.cf015e","8664225c.799be","462426f.fb9dbd8"]]},{"id":"66f3a23c.990c5c","type":"ioBroker out","name":"","topic":"geofenceName","ack":"true","autoCreate":"true","x":1246.6667289733887,"y":1088.333426475525,"z":"e0986d36.1f679","wires":[]},{"id":"ee027e5f.11fd8","type":"function","name":"Geofence Name","func":"if (msg.payload.entry == 1) {\nmsg.payload = msg.payload.name;\n}\nif (msg.payload.entry == 0) {\nmsg.payload = \"unbekannt\";\n}\nreturn msg;\n","outputs":1,"x":999.9999313354492,"y":1088.3333444595337,"z":"e0986d36.1f679","wires":[["66f3a23c.990c5c","ed2ea07b.12d16"]]},{"id":"ed2ea07b.12d16","type":"debug","name":"","active":false,"console":"false","complete":"false","x":1423.333381652832,"y":1088.333212852478,"z":"e0986d36.1f679","wires":[]},{"id":"bf3e49bc.40c1b8","type":"function","name":"Geofence Vorgang mit Standort","func":"if (msg.payload.entry == 1) {\nmsg.payload = msg.payload.name + \" betreten\";\n} \nif (msg.payload.entry == 0) {\nmsg.payload = msg.payload.name + \" verlassen\";\n}\nreturn msg;\n","outputs":1,"x":1013.3333511352539,"y":1143.3332977294922,"z":"e0986d36.1f679","wires":[["61e458a3.9e1ba8","9c953473.636ac8"]]},{"id":"61e458a3.9e1ba8","type":"ioBroker out","name":"","topic":"geofenceVorgang","ack":"true","autoCreate":"true","x":1250.0000076293945,"y":1143.333176612854,"z":"e0986d36.1f679","wires":[]},{"id":"9c953473.636ac8","type":"debug","name":"","active":true,"console":"false","complete":"false","x":1421.666561126709,"y":1144.999963760376,"z":"e0986d36.1f679","wires":[]},{"id":"20f4652b.df0b9a","type":"function","name":"Datum Format selbst definiert","func":"// msg.payload.date => liefert das Format: 2015-05-03T20:03:02Z \n// hier wird das Datum zum Zeitpunkt des Funktionsaufruf verwendet\n\nvar now     = new Date();\n// now = msg.payload.date;\nvar year    = now.getFullYear();\nvar month   = now.getMonth()+1; \nvar day     = now.getDate();\nvar hour    = now.getHours();\nvar minute  = now.getMinutes();\nvar second  = now.getSeconds(); \nif(month.toString().length == 1) {\nvar month = '0'+month;\n}\nif(day.toString().length == 1) {\nvar day = '0'+day;\n}   \nif(hour.toString().length == 1) {\nvar hour = '0'+hour;\n}\nif(minute.toString().length == 1) {\nvar minute = '0'+minute;\n}\nif(second.toString().length == 1) {\nvar second = '0'+second;\n} \n \n \nvar msg1 = {};\nvar msg2 = {};\n \n//msg.timestamp = year+'-'+month+'-'+day+' '+hour+':'+minute+':'+second;\nmsg1.payload = year+'-'+month+'-'+day+' '+hour+':'+minute+':'+second;\nmsg2.payload = msg.payload.date;\n\nreturn [msg1,msg2];\n","outputs":"2","x":1001.6666259765625,"y":1205.0000095367432,"z":"e0986d36.1f679","wires":[["b0790c72.4f86f","beccc39.f41334"],["eeb033f3.114fd","bf9369b2.406c98"]]},{"id":"beccc39.f41334","type":"ioBroker out","name":"","topic":"geofenceDatum","ack":"true","autoCreate":"true","x":1246.666633605957,"y":1199.999927520752,"z":"e0986d36.1f679","wires":[]},{"id":"b0790c72.4f86f","type":"debug","name":"","active":true,"console":"false","complete":"false","x":1419.9999732971191,"y":1201.6666746139526,"z":"e0986d36.1f679","wires":[]},{"id":"ed45adf6.12ba5","type":"function","name":"Koordinaten","func":"// Längre der Koordinaten kürzen\nmsg.payload = (Math.round(msg.payload.latitude * 1000000) / 1000000) + \",\" + (Math.round(msg.payload.longitude * 1000000) / 1000000);\n\nreturn msg;\n","outputs":1,"x":958.3332748413086,"y":1301.666597366333,"z":"e0986d36.1f679","wires":[["232c0eb.fdcd3f2","dec3b284.213c5"]]},{"id":"232c0eb.fdcd3f2","type":"ioBroker out","name":"","topic":"geofenceKoordinaten","ack":"true","autoCreate":"true","x":1241.666633605957,"y":1303.3332242965698,"z":"e0986d36.1f679","wires":[]},{"id":"dec3b284.213c5","type":"debug","name":"","active":false,"console":"false","complete":"false","x":1421.6665496826172,"y":1301.666516304016,"z":"e0986d36.1f679","wires":[]},{"id":"a64e4f7.f59b1b","type":"function","name":"id","func":"msg.payload = msg.payload.id;\n\nreturn msg;\n","outputs":1,"x":944.9999389648438,"y":1351.6665573120117,"z":"e0986d36.1f679","wires":[["c413e02.f3bec2","cca0ffb.f335f"]]},{"id":"c413e02.f3bec2","type":"ioBroker out","name":"","topic":"geofenceId","ack":"true","autoCreate":"true","x":1268.3333435058594,"y":1351.6665630340576,"z":"e0986d36.1f679","wires":[]},{"id":"cca0ffb.f335f","type":"debug","name":"","active":false,"console":"false","complete":"false","x":1424.9999237060547,"y":1354.9997720718384,"z":"e0986d36.1f679","wires":[]},{"id":"be2be0ee.41d42","type":"function","name":"device","func":"msg.payload = msg.payload.device;\n\nreturn msg;\n","outputs":1,"x":943.3333530426025,"y":1403.3333110809326,"z":"e0986d36.1f679","wires":[["7bfe2aa1.8401d4","ef758aeb.108a78"]]},{"id":"7bfe2aa1.8401d4","type":"ioBroker out","name":"","topic":"geofenceDevice","ack":"true","autoCreate":"true","x":1248.333339691162,"y":1406.6664838790894,"z":"e0986d36.1f679","wires":[]},{"id":"ef758aeb.108a78","type":"debug","name":"","active":false,"console":"false","complete":"false","x":1428.3333015441895,"y":1406.666482925415,"z":"e0986d36.1f679","wires":[]},{"id":"462426f.fb9dbd8","type":"function","name":"Luftlinie in km zwischen Smartphone und daheim","func":"//:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::\n//:::                                                                         :::\n//:::  This routine calculates the distance between two points (given the     :::\n//:::  latitude/longitude of those points). It is being used to calculate     :::\n//:::  the distance between two locations using GeoDataSource (TM) prodducts  :::\n//:::                                                                         :::\n//:::  Definitions:                                                           :::\n//:::    South latitudes are negative, east longitudes are positive           :::\n//:::                                                                         :::\n//:::  Passed to function:                                                    :::\n//:::    lat1, lon1 = Latitude and Longitude of point 1 (in decimal degrees)  :::\n//:::    lat2, lon2 = Latitude and Longitude of point 2 (in decimal degrees)  :::\n//:::    unit = the unit you desire for results                               :::\n//:::           where: 'M' is statute miles (default)                         :::\n//:::                  'K' is kilometers                                      :::\n//:::                  'N' is nautical miles                                  :::\n//:::                                                                         :::\n//:::  Worldwide cities and other features databases with latitude longitude  :::\n//:::  are available at http://www.geodatasource.com                          :::\n//:::                                                                         :::\n//:::  For enquiries, please contact sales@geodatasource.com                  :::\n//:::                                                                         :::\n//:::  Official Web site: http://www.geodatasource.com                        :::\n//:::                                                                         :::\n//:::               GeoDataSource.com (C) All Rights Reserved 2015            :::\n//:::                                                                         :::\n//:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::\n\n\n\nfunction distance(lat1, lon1, lat2, lon2, unit) {\n\tvar radlat1 = Math.PI * lat1/180\n\tvar radlat2 = Math.PI * lat2/180\n\tvar radlon1 = Math.PI * lon1/180\n\tvar radlon2 = Math.PI * lon2/180\n\tvar theta = lon1-lon2\n\tvar radtheta = Math.PI * theta/180\n\tvar dist = Math.sin(radlat1) * Math.sin(radlat2) + Math.cos(radlat1) * Math.cos(radlat2) * Math.cos(radtheta);\n\tdist = Math.acos(dist)\n\tdist = dist * 180/Math.PI\n\tdist = dist * 60 * 1.1515\n\tif (unit==\"K\") { dist = dist * 1.609344 }\n\tif (unit==\"N\") { dist = dist * 0.8684 }\n\treturn dist\n}\n\n// Koordinaten der eignen Wohnung\nvar lat1 = context.global.WohnungLat;\nvar lon1 = context.global.WohnungLon;\n// aktueller Standort\nvar lat2 = parseFloat(msg.payload.latitude);\nvar lon2 = parseFloat(msg.payload.longitude);     \n          \nvar msg1 = {};\nmsg1.payload = Math.round(distance(lat1, lon1, lat2, lon2, \"K\")*1000)/1000 // Distanz in km\nvar msg2 = {};\nmsg2.payload = Math.round(distance(lat1, lon1, lat2, lon2, \"K\")*1000); // in m \nreturn [msg1,msg2];\n\n","outputs":"2","x":1064.9999694824219,"y":1699.9997806549072,"z":"e0986d36.1f679","wires":[["effdfde4.1002","4dea87fd.b21578","b892a5fd.476d58"],["39fcbdbb.c60342","778d97ad.887268"]]},{"id":"effdfde4.1002","type":"debug","name":"","active":false,"console":"false","complete":"payload","x":1596.666648864746,"y":1629.999698638916,"z":"e0986d36.1f679","wires":[]},{"id":"4dea87fd.b21578","type":"ioBroker out","name":"","topic":"geofenceDistanzLuftlineKM","ack":"true","autoCreate":"true","x":1404.9998931884766,"y":1629.9998617172241,"z":"e0986d36.1f679","wires":[]},{"id":"b892a5fd.476d58","type":"function","name":"als String mit dynamischen Nachkommastellen","func":"function runden(x) {\n  var k = (Math.round(x * 100) / 100).toString();\n  k += (k.indexOf('.') == -1)? '.0' : '0';\n  var p = k.indexOf('.'), m = k.indexOf('-.');\n  var f = (p == 0 || m == 0)? '0,' : ',';\n  return k.substring(0, p) + f + k.substring(p+1, p+3);\n}\n\n\nvar dist = msg.payload;\nif (dist < 1) {\ndist = Math.round(dist * 1000).toString();\nmsg.payload = dist + \" m\"; \n} else {\ndist = runden(dist).toString();\nmsg.payload = dist + \" km\";\n}\n\nreturn msg;","outputs":1,"x":1063.333257675171,"y":1741.6665344238281,"z":"e0986d36.1f679","wires":[["502bb17b.afd45","67415915.98bea8"]]},{"id":"502bb17b.afd45","type":"ioBroker out","name":"","topic":"geofenceDistanzLuftlinieKMstring","ack":"true","autoCreate":"true","x":1386.6664733886719,"y":1739.9997839927673,"z":"e0986d36.1f679","wires":[]},{"id":"67415915.98bea8","type":"debug","name":"","active":true,"console":"false","complete":"false","x":1601.6665649414062,"y":1738.3330764770508,"z":"e0986d36.1f679","wires":[]},{"id":"39fcbdbb.c60342","type":"ioBroker out","name":"","topic":"geofenceDistanzLuftlineM","ack":"true","autoCreate":"true","x":1401.6664810180664,"y":1683.3330345153809,"z":"e0986d36.1f679","wires":[]},{"id":"eeb033f3.114fd","type":"ioBroker out","name":"","topic":"geofenceDatumISO","ack":"true","autoCreate":"true","x":1248.3333053588867,"y":1251.6666345596313,"z":"e0986d36.1f679","wires":[]},{"id":"bf9369b2.406c98","type":"debug","name":"","active":false,"console":"false","complete":"false","x":1426.6666412353516,"y":1253.3333024978638,"z":"e0986d36.1f679","wires":[]},{"id":"2348e43f.dcb71c","type":"ioBroker out","name":"","topic":"geofenceJSON","ack":"true","autoCreate":"true","x":913.3333129882812,"y":984.9999389648438,"z":"e0986d36.1f679","wires":[]},{"id":"f57f7470.0a8088","type":"switch","name":"","property":"payload","rules":[{"t":"cont","v":"{"},{"t":"else"}],"checkall":"false","outputs":2,"x":88.33336639404297,"y":1095.0000076293945,"z":"e0986d36.1f679","wires":[["91493bd3.6eb6c8"],["7690aa1b.896f54"]]},{"id":"404642b1.bfb9bc","type":"function","name":"entry","func":"msg.payload = msg.payload.entry;\n\nreturn msg;\n","outputs":1,"x":943.3332901000977,"y":1460.0000228881836,"z":"e0986d36.1f679","wires":[["59e2c48.fa61d3c","af93cf27.506c3"]]},{"id":"59e2c48.fa61d3c","type":"ioBroker out","name":"","topic":"geofenceEntry","ack":"true","autoCreate":"true","x":1245.0000495910645,"y":1464.9998607635498,"z":"e0986d36.1f679","wires":[]},{"id":"af93cf27.506c3","type":"debug","name":"","active":false,"console":"false","complete":"false","x":1425.0000076293945,"y":1466.6665267944336,"z":"e0986d36.1f679","wires":[]},{"id":"a4b5fff9.5b4a","type":"function","name":"Anwender","func":"// Device ID (aus dem JSONObject rauskopieren)\n// weitere Devices können über weitere Ifs eingetragen werden\nif (msg.payload.device == context.global.Device01id) {  // Device ID\nmsg.payload = context.global.Device01name;                // Name des Device Besitzers\n} else if (msg.payload.device == context.global.Device02id) {  // Device ID\nmsg.payload = context.global.Device02name;                // Name des Device Besitzers\n} else if (msg.payload.device == context.global.Device03id) {  // Device ID\nmsg.payload = context.global.Device03name;                // Name des Device Besitzers\n} else {\n\nmsg.payload = \"Unbekannt\"; // keine Device ID identifiziert\n\n}\n\nreturn msg;\n","outputs":1,"x":948.3333320617676,"y":1530.0000200271606,"z":"e0986d36.1f679","wires":[["741381fb.8bec8","3f7a1058.c085f"]]},{"id":"741381fb.8bec8","type":"ioBroker out","name":"","topic":"geofenceAnwender","ack":"true","autoCreate":"true","x":1249.9999656677246,"y":1523.333239555359,"z":"e0986d36.1f679","wires":[]},{"id":"3f7a1058.c085f","type":"debug","name":"","active":true,"console":"false","complete":"false","x":1428.3334274291992,"y":1524.9999022483826,"z":"e0986d36.1f679","wires":[]},{"id":"c25b7d6b.3da48","type":"debug","name":"Hier darf nichts ankommen","active":true,"console":"false","complete":"payload","x":304.9999694824219,"y":1243.3332662582397,"z":"e0986d36.1f679","wires":[]},{"id":"7690aa1b.896f54","type":"switch","name":"","property":"payload","rules":[{"t":"cont","v":"{"},{"t":"else"}],"checkall":"false","outputs":2,"x":80.00001525878906,"y":1245.000012397766,"z":"e0986d36.1f679","wires":[["c25b7d6b.3da48"],["2804a937.d7fb56"]]},{"id":"3880cc2e.c77f34","type":"comment","name":"Andere Bausteine möglich? Mit Authentifizierung?","info":"","x":210.00003051757812,"y":856.666600227356,"z":"e0986d36.1f679","wires":[]},{"id":"5f54a3fe.a0ab5c","type":"comment","name":"1: Meldung enthält {  ","info":"Meldung enthält eine geschweifte Klammer auf und damit den JSON Anteil","x":121.66670989990234,"y":1059.9999647140503,"z":"e0986d36.1f679","wires":[]},{"id":"fda3965b.025c68","type":"comment","name":"2: Restliche Meldungen (ohne JSON Anteil)","info":"","x":193.33334350585938,"y":1131.6665544509888,"z":"e0986d36.1f679","wires":[]},{"id":"a84337d5.57bcc8","type":"comment","name":"Kontrolle ob noch eine Meldung mit { verloren gegangen ist","info":"","x":234.99996948242188,"y":1206.666802406311,"z":"e0986d36.1f679","wires":[]},{"id":"91493bd3.6eb6c8","type":"function","name":"{JSON} rausschneiden","func":"quelle = msg.payload;\npos_klammer_auf = quelle.indexOf('{');\npos_klammer_zu = quelle.lastIndexOf('}');\nergebnis = quelle.substring(pos_klammer_auf, pos_klammer_zu+1);\nmsg.payload = ergebnis;\nreturn msg;","outputs":1,"x":473.33331298828125,"y":1089.9997215270996,"z":"e0986d36.1f679","wires":[["82008c7f.7dff7","706e5457.8f91ac"]]},{"id":"7d3f6c25.82c094","type":"debug","name":"","active":false,"console":"false","complete":"false","x":271.6666259765625,"y":906.6667222976685,"z":"e0986d36.1f679","wires":[]},{"id":"b01c8493.4fe378","type":"debug","name":"Google API JSON","active":false,"console":"false","complete":"payload","x":517.6666870117188,"y":1673.666488647461,"z":"e0986d36.1f679","wires":[]},{"id":"8664225c.799be","type":"function","name":"Create request","func":"// Info von Bluefox (newMsg erstellen)\n\nAdresseWohnung = context.global.AdresseWohnung; // Leerzeichen = \"+\", ohne Umlaute\nlat = (Math.round(msg.payload.latitude * 1000000) / 1000000);\nlon = (Math.round(msg.payload.longitude * 1000000) / 1000000);\n\nmsg.payload = \"http://maps.googleapis.com/maps/api/directions/json?origin=\"\n            + AdresseWohnung\n            + \"&destination=\"\n            + lat +\",\" + lon \n            + \"&sensor=false&alternatives=false\";\n\nvar newMsg = {\n    method: 'GET',\n    url: msg.payload\n}\nvar newMsg1 = {};\nvar msg2 = {};\nnewMsg1 = newMsg;\nmsg2.payload = msg.payload;\nreturn [newMsg1,msg2];","outputs":"2","x":174.66665649414062,"y":1632.6665410995483,"z":"e0986d36.1f679","wires":[["476b2285.b894dc"],["af7ff87.f508008"]]},{"id":"476b2285.b894dc","type":"http request","name":"http request - Google API Route (Auto)","method":"GET","ret":"obj","url":"","x":233.66665649414062,"y":1671.3332080841064,"z":"e0986d36.1f679","wires":[["b01c8493.4fe378","5cef366a.a310c8","65c5b8e9.9a3a48","1861acba.e79e53","4af713e0.b508ec"]]},{"id":"2804a937.d7fb56","type":"debug","name":"alle Meldungen ohne JSON Anteil","active":false,"console":"false","complete":"payload","x":291.6666564941406,"y":1313.333228111267,"z":"e0986d36.1f679","wires":[]},{"id":"778d97ad.887268","type":"debug","name":"","active":false,"console":"false","complete":"payload","x":1589.999900817871,"y":1681.666651725769,"z":"e0986d36.1f679","wires":[]},{"id":"f798e569.086718","type":"function","name":"Eigene Koordinaten & Adresse Wohnung","func":"// eigene Kordinaten Wohnung    (Beispiel München)\ncontext.global.WohnungLat = 48.160174;\ncontext.global.WohnungLon = 11.585733;\ncontext.global.AdresseWohnung = \"Leopoldstrasse+47,+80802+Muenchen\";\n\n// Daten der Device/Anwender, auf denen Geofence läuft\n// Hinweis: bei mehr als eine Person macht es Sinn, je Person einen Zweig mit eigenen Variablen aufzumachen\n// Device01\ncontext.global.Device01id   = \"4711BG93-4844-2B8F-3E1C-9E83D73F8F32\";\ncontext.global.Device01name = \"Micha\";\n// Device02\ncontext.global.Device02id   = \"4711B7G9-4844-2B8F-3E1C-9E83D73F8F32\";\ncontext.global.Device02name = \"Name Person B\";\n// Device02\ncontext.global.Device03id   = \"4711B7G3-4844-2B8F-3E1C-9E83D73F8F32\";\ncontext.global.Device03name = \"Name Person C\";\n\n\n\nmsg.payload = \"Geofence - eigene Daten gespeichert\";\n\nreturn msg;","outputs":1,"x":616.6666717529297,"y":861.6666393280029,"z":"e0986d36.1f679","wires":[["c3727d34.3c8d8"]]},{"id":"14337da0.ebcc82","type":"comment","name":"##### Eigene Daten angeben #####","info":"","x":600.0000915527344,"y":821.6668405532837,"z":"e0986d36.1f679","wires":[]},{"id":"30fea28f.cf015e","type":"function","name":"openstreetmap Adresse http","func":"// Openstreetmap URL\n// Koordinate inkl. Marker\nmsg.payload = \"http://www.openstreetmap.org/?mlon=\" \n       + msg.payload.longitude + \"&mlat=\"\n       + msg.payload.latitude + \"&zoom=15#map=16/\" // Zoom Stufe 16 (beide Werte anpssen, wenn Änderung gewünscht)\n       + msg.payload.latitude + \"/\"\n       + msg.payload.longitude;\nreturn msg;\n","outputs":"1","x":1026.6666259765625,"y":1816.6666259765625,"z":"e0986d36.1f679","wires":[["bfe0212f.401fe","bfba67fa.404598"]]},{"id":"bfe0212f.401fe","type":"ioBroker out","name":"","topic":"geofenceOpenstreetmapURL","ack":"true","autoCreate":"true","x":1295.2380676269531,"y":1813.8095140457153,"z":"e0986d36.1f679","wires":[]},{"id":"bfba67fa.404598","type":"debug","name":"","active":false,"console":"false","complete":"false","x":1506.6666870117188,"y":1813.8094444274902,"z":"e0986d36.1f679","wires":[]},{"id":"feb462aa.014ba","type":"comment","name":"Methode zur Übergabe Parameter an hhtp request 8create request) muss überarbeitet werden","info":"Warnmeldung beim Aufruf:\n====================================================================\nDeprecated: msg properties should not override fixed node properties. \nUse explicit override option. \nSee bit.ly/nr-override-msg-props","x":371.6668395996094,"y":1561.6664848327637,"z":"e0986d36.1f679","wires":[]},{"id":"eed067ac.112f98","type":"inject","name":"Eigene Daten initialisieren","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":true,"x":583.3333892822266,"y":956.6666851043701,"z":"e0986d36.1f679","wires":[["f798e569.086718"]]},{"id":"c3727d34.3c8d8","type":"debug","name":"","active":true,"console":"false","complete":"false","x":555.0001068115234,"y":985.0000190734863,"z":"e0986d36.1f679","wires":[]},{"id":"af7ff87.f508008","type":"debug","name":"Google API URL","active":false,"console":"false","complete":"payload","x":378.3333282470703,"y":1631.6667308807373,"z":"e0986d36.1f679","wires":[]},{"id":"5cef366a.a310c8","type":"function","name":"Fahrzeit in Minuten (Auto)","func":"msg.payload = Math.ceil(msg.payload.routes[0].legs[0].duration.value / 60);\n\nreturn msg;","outputs":1,"x":193.33331298828125,"y":1714.9997835159302,"z":"e0986d36.1f679","wires":[["4bb6819f.b4498","718d152.f8e72ec"]]},{"id":"4bb6819f.b4498","type":"debug","name":"","active":false,"console":"false","complete":"false","x":738.333381652832,"y":1720.0000276565552,"z":"e0986d36.1f679","wires":[]},{"id":"65c5b8e9.9a3a48","type":"function","name":"Entfernung in (1) km (2) m (Auto)","func":"var msg1 = {}; // km\nvar msg2 = {}; // m\nmsg1.payload = msg.payload.routes[0].legs[0].distance.value / 1000;\nmsg2.payload = msg.payload.routes[0].legs[0].distance.value;\n\nreturn [msg1,msg2];","outputs":"2","x":206.6666717529297,"y":1809.9999885559082,"z":"e0986d36.1f679","wires":[["ad7a30af.5285d","7bb4d47c.844b2c","1e5f3bb5.e1a0c4"],["26bd016.fd942fe","40a1a59b.bf5e5c"]]},{"id":"ad7a30af.5285d","type":"debug","name":"","active":false,"console":"false","complete":"false","x":736.6666831970215,"y":1801.6667366027832,"z":"e0986d36.1f679","wires":[]},{"id":"26bd016.fd942fe","type":"debug","name":"","active":false,"console":"false","complete":"false","x":735.0000076293945,"y":1840.0000400543213,"z":"e0986d36.1f679","wires":[]},{"id":"7bb4d47c.844b2c","type":"function","name":"als String mit dynamischen Nachkommastellen","func":"function runden(x) {\n  var k = (Math.round(x * 100) / 100).toString();\n  k += (k.indexOf('.') == -1)? '.0' : '0';\n  var p = k.indexOf('.'), m = k.indexOf('-.');\n  var f = (p == 0 || m == 0)? '0,' : ',';\n  return k.substring(0, p) + f + k.substring(p+1, p+3);\n}\n\n\nvar dist = msg.payload;\nif (dist < 1) {\ndist = Math.round(dist * 1000).toString();\nmsg.payload = dist + \" m\"; \n} else {\ndist = runden(dist).toString();\nmsg.payload = dist + \" km\";\n}\n\nreturn msg;","outputs":1,"x":218.33334350585938,"y":1888.3332862854004,"z":"e0986d36.1f679","wires":[["eee49ce2.111b6","d3893e41.2c76c"]]},{"id":"eee49ce2.111b6","type":"debug","name":"","active":true,"console":"false","complete":"false","x":733.3333320617676,"y":1888.3332424163818,"z":"e0986d36.1f679","wires":[]},{"id":"1861acba.e79e53","type":"function","name":"Fahrzeit als Text (Auto)","func":"msg.payload = msg.payload.routes[0].legs[0].duration.text;\n\nreturn msg;","outputs":1,"x":188.3333282470703,"y":1749.9998779296875,"z":"e0986d36.1f679","wires":[["4167d0c9.be983","ba343d3d.45cbc"]]},{"id":"4167d0c9.be983","type":"debug","name":"","active":true,"console":"false","complete":"false","x":736.6666259765625,"y":1756.6666259765625,"z":"e0986d36.1f679","wires":[]},{"id":"4af713e0.b508ec","type":"function","name":"Route","func":"msg.payload = (msg.payload.routes[0].summary);\n\nreturn msg;","outputs":1,"x":120,"y":1929.9999141693115,"z":"e0986d36.1f679","wires":[["d2209ca7.2ddf6","6ca57614.935a88"]]},{"id":"d2209ca7.2ddf6","type":"debug","name":"","active":true,"console":"false","complete":"false","x":738.3333435058594,"y":1931.6667032241821,"z":"e0986d36.1f679","wires":[]},{"id":"1e5f3bb5.e1a0c4","type":"ioBroker out","name":"","topic":"geofenceDistanzAutoKM","ack":"true","autoCreate":"true","x":530,"y":1799.9998779296875,"z":"e0986d36.1f679","wires":[]},{"id":"40a1a59b.bf5e5c","type":"ioBroker out","name":"","topic":"geofenceDistanzAutoM","ack":"true","autoCreate":"true","x":538.3333129882812,"y":1839.9998779296875,"z":"e0986d36.1f679","wires":[]},{"id":"d3893e41.2c76c","type":"ioBroker out","name":"","topic":"geofenceDistanzAutoKMstring","ack":"true","autoCreate":"true","x":531.666633605957,"y":1889.9998712539673,"z":"e0986d36.1f679","wires":[]},{"id":"6ca57614.935a88","type":"ioBroker out","name":"","topic":"geofenceRouteAuto","ack":"true","autoCreate":"true","x":516.6666259765625,"y":1933.333251953125,"z":"e0986d36.1f679","wires":[]},{"id":"718d152.f8e72ec","type":"ioBroker out","name":"","topic":"geofenceFahrzeitAutoMin","ack":"true","autoCreate":"true","x":535,"y":1721.6666259765625,"z":"e0986d36.1f679","wires":[]},{"id":"ba343d3d.45cbc","type":"ioBroker out","name":"","topic":"geofenceFahrzeitAutoText","ack":"true","autoCreate":"true","x":535,"y":1761.6666259765625,"z":"e0986d36.1f679","wires":[]},{"id":"706e5457.8f91ac","type":"file","name":"","filename":"/opt/iobroker/gefoncemeldungen.txt","appendNewline":true,"overwriteFile":"false","x":1268.3333892822266,"y":1038.3333740234375,"z":"e0986d36.1f679","wires":[]}]
    

    ****Danke an alle, die mir meine unterschiedlichen Fragen an den unterschiedlichen Stellen beantwortet haben.

    Ganz besonders auch an Bluefox!****

    Kurzbeschreibung

    Bei mir funktioniert der Flow für Geofency grundsätzlich.

    Die Verarbeitung der Meldungen als TCP Stream (Feld (D)) ist wahrscheinlich nicht richtig. Es klappt aber erst einmal.

    Dann gibt es noch die Meldung (orange Kästchen). Hier habe ich den Tipp von Bluefox zur dynamischen Generierung der URL für den http request zur Abfrage der Route über die Google API umgesetzt. Anscheinend handelt es sich dabei um eine nicht mehr empfohlenen Methode (?), siehe http://bit.ly/nr-override-msg-props. Die Lösung hat sich mir aber nicht erschlossen. Entweder ignorieren oder, wer die Entfernungsberechnung zum akt. Geofency Standort nicht benötigt, einfach das ganze Kästchen (C) löschen.

    Folgende Daten liefert der Flow

    Kästchen (A):

    Die Daten, die die iOS/Android App Geofency liefert. Ergänzt um einen Anwendernamen anhand der Device ID.

    Kästchen (B):

    Spielerei: Die Entfernung zum aktuellen Geofency Standort und der eigenen Wohnung (Luftlinie).

    Kästchen (C):

    Spielerei: Die Entfernung mit dem Auto zwischen Standort und Wohnung, inkl. Fahrzeit ohne Stau.

    • Nicht benötigte Kästchen können einfach gelöscht werden.

    • Nicht benötigte Daten und Variablen können einfach gelöscht werden

    Notwendige Einstellungen

    • Portfreigabe im Router TCP 7999 (in meinem Beispiel) zu ioBroker

    • Die eigenen Daten im Kästchen (D) eintragen. Koordinaten und Anschrift der eigenen Wohnung, ID des Smartphones (Debug bei geofenceDevice einschalten, erste Meldung auslesen) eintragen und der dazugehörige Name). Die Anschrift und die eigenen Koordinaten werden nicht benötigt, wenn man Kästchen (B) und (C) löscht.

    • Geofency Webhook: Event -> URL Mitteilung bei Eintritt und Austritt: ein

    • Geofency Webhook: URL bei Eintritt & Austritt: http://(IP oder dyndns von Router):7999/0

    • Geofency: Authentifizierung aus (bringt nichts, klappt komischerweise mit und ohne / Daten Authentifizierung werden vom Flow ignoriert)

    • Geofency Webhook: Post-Format: JSON-enkodiert ein

    Test mit betreten/verlassen unter Webhook.

    Offene Baustellen

    Der Flow funktioniert bei mir so, trotz der offenen Baustellen:

    • Die zusammengebaute URL Funktion -> http request und die dazugehörige Warnmeldung (oranger Kasten) -> nur bei der Route per Google Maps relevant (andere Lösung notwendig)

    • der richtige Start des Flows. D.h. die richtige Alternative zum TCP node, inkl. Authentifizierung (durch den TCP Stream kommt man beim lokalen Test auf einen Timeout, nachdem die Meldung abgesetzt wurde. In der freien Wildbahn habe ich keine Einschränkungen festgestellt)

    Adapter: Fritzbox, Unify Circuit
    Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

    1 Antwort Letzte Antwort
    0
    • S Offline
      S Offline
      simpixo
      schrieb am zuletzt editiert von
      #2

      Große Klasse kann ich da nur sagen! Es funktioniert alles auf Anhieb! Und für mich zum lernen einfach Spitze! Danke!!!

      1 Antwort Letzte Antwort
      0
      • ruhr70R Offline
        ruhr70R Offline
        ruhr70
        schrieb am zuletzt editiert von
        #3

        Das freut mich, dass Du den Flow auch gebrauchen kannst.

        Kannst Du bitte beobachten, ob bei Dir alle Meldungen ankommen, wenn Du an einer Standortgrenze bist (kommen, verlassen, kommen, verlassen).

        Ich habe da noch nichts festgestellt, könnte mir aber vorstellen, dass bei schnellen Statuswechsel das Thema Timeout zuschlagen könnte (wg. der Lösung über den TCP Stream).

        Adapter: Fritzbox, Unify Circuit
        Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

        1 Antwort Letzte Antwort
        0
        • ruhr70R Offline
          ruhr70R Offline
          ruhr70
          schrieb am zuletzt editiert von
          #4

          Grummel… das obere Kästchen oben links (TCP stream) muss wohl doch getauscht werden.

          Die Meldungen werden beim Betreten eines Standorts gesendet und werden auch richtig verarbeitet.

          Allerdings schickt die Geofency App dann immer wieder ältere Meldungen (die Standorte, die davor betreten wurden).

          Fehler in Geofency oder Geofency erwartet eine Rückmeldung, sprich der TCP Stream reicht nicht?

          Bei Owntracks funktioniert das richtig. Dort wird mqtt verwendet, mit dem entsprechenden Baustein.

          Ich schau mal was man tun kann.

          [EDIT]

          Workaround ist in Arbeit

          Adapter: Fritzbox, Unify Circuit
          Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

          1 Antwort Letzte Antwort
          0
          • ruhr70R Offline
            ruhr70R Offline
            ruhr70
            schrieb am zuletzt editiert von
            #5

            Neue Version:

            Ältere (doppelte) Meldungen werden nun ignoriert.

            iBeacon werden berücksichtigt.

            0.1.2 06.05.2015 # Unterscheidung Meldung über GPS Standort oder iBeacon eingebaut

            iBeacon Variablen eingebaut

            0.1.1 05.05.2015 # msg.payload.routes[0].legs[0].end_address (Goolge Maps API Zieladresse) hinzugefügt

            Zeitstempel angepasst. Nicht mehr die Zeit zum Zeitpunkt des Funktionsaufruf,

            sondern nun wird die Zeit aus der JSON Meldung ausgegeben.

            zwei neue Zeiten: Zeitpunkt aus der JSON Meldung als Epoche, aktuelle Zeit als Epoche

            Topic den einzelnen Funktionen -> Variablen zugeorndet (bessere Lesbarkeit der Debugmeldung)

            Dokumentation im Flow ergänzt

            alle globalen Variablen beginnen nun mit gf (context.global.gf….)

            Konfigurierbar: nur neuere Meldungen verarbeiten oder auch ältere Meldungen

            Anzeige der aktuellen Kofiguration per Knopfdruck im Debug-Fenster

            0.1.0 04.05.2015 # Erste version im Forum

            327_2015-05-07_geofency_0.1.2.png

            sorry, kann ich leider nicht ablegen:

            "Dein Beitrag enthält 117142 Zeichen. Es sind maximal 60000 Zeichen erlaubt."

            .

            Adapter: Fritzbox, Unify Circuit
            Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

            1 Antwort Letzte Antwort
            0
            • S Offline
              S Offline
              simpixo
              schrieb am zuletzt editiert von
              #6

              Dann pack es in ein Textfile und lade es als Attachment hoch :) Wäre cool von dir…

              1 Antwort Letzte Antwort
              0
              • ruhr70R Offline
                ruhr70R Offline
                ruhr70
                schrieb am zuletzt editiert von
                #7

                Anbei die die aktuelle Version des Geofency Flows.

                !!ACHTUNG!!

                !Neue Struktur der Variablen! <- Bitte beachten, falls jemand schon mit der älteren Version getestet hat.

                Die alten Variablen können über iobroker/admin gelöscht werden.

                Die neuen Variablen nutzen eine Baumstruktur. Es werden nun bis zu drei Benutzer automatisch dargestellt und diese noch einmal zwischen GPS und iBeacon unterschieden.

                Sollte in der Geofency App keine iBeacon Meldungen konfiguriert sein, dann werden die Variablen auch nicht unnötig erzeugt.

                327_2015-05-08_geofency_flow_0.2.png

                Unter eigene Daten/Konfig:

                Die eigenen Koordinaten und die eigene Anschrift eintragen (wird für die Spielereien benötigt).

                Die eigenen Device ID sollte man vorher auslesen und in der Konfig eintragen. Sonst wird ein Zweig Unbekannt in der Variablen-Baumstruktur erzeugt.

                Dazu kann man vor dem ersten Start die Verbindung (A1) trennen und unter Debug (A) die eigene ID auslesen und dann in der Konfig eintragen.

                Danach die Verbindung (A1) wieder herstellen.

                Nicht benötigte Variablen können einfach gelöscht werden. Genauso, wie die Kästchen "Spielereien".

                Adapter: Fritzbox, Unify Circuit
                Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

                1 Antwort Letzte Antwort
                0
                • ruhr70R Offline
                  ruhr70R Offline
                  ruhr70
                  schrieb am zuletzt editiert von
                  #8

                  Anbei der Geofency Flow 0.2.0 als Dateianhang (txt):

                  327_2015-05-08_geofency_flow_0.2.0.txt

                  Der neue Flow filtert die älteren Mehrfachsendungen von Geofency raus.

                  Das Thema der Geofency Webhook-Behandlung ist noch offen (derzeit tcp-Stream, muss in eine "richtige Behandlung des Webhooks geändert werden).

                  Dadurch, dass die doppelten Meldungen rausgefiltert werden, kann man den Flow nun so benutzen.

                  Beispiel, wie die Varibalen aufgebaut sind (weitere Verarbeitung, z.B. direkt in VIS, Node-red, Javascript-Adapter, usw.):

                  327_2015-05-08_geofency_variablen_0.2.0.png

                  Adapter: Fritzbox, Unify Circuit
                  Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

                  1 Antwort Letzte Antwort
                  0
                  • S Offline
                    S Offline
                    simpixo
                    schrieb am zuletzt editiert von
                    #9

                    Du bist mein Held :-) Sau geil dein Flow. durch dein Anschauungsmaterial blicke ich so langsam bei NODE-RED durch

                    1 Antwort Letzte Antwort
                    0
                    • ruhr70R Offline
                      ruhr70R Offline
                      ruhr70
                      schrieb am zuletzt editiert von
                      #10

                      .

                      Anbei die neue Version.

                      327_node-red-geofency-0.2.1.txt

                      Er ist benutzerfreundlicher für die, die den Flow bisher nicht verwendet haben.

                      Ein erster Start des Flows, ohne dass man seine eigene Device ID kennt, gibt erst einmal nur die ID aus, damit man diese in der Konfig nach pflegen kann. Dadurch werden, unter Umständen, nicht erwünschte Variablen, nicht angelegt.

                      Das Verhalten ist nun aber auch konfigurierbar.

                      Der Flow ist voll funktionsfähig (bei mir jedenfalls).

                      Das TCP Thema (anderer Topic) bringt derzeit noch folgenden Schönheitsfehler: Etwas mehr Traffic (nicht relevant), durch mehrfach gesendete Standorte. Und ggf. bei sehr schnell wechselnden Standorten (schneller, als der tcp Timeout). Dies tritt bei mir nicht aus, obwohl ich schnell zwischen den "normalen" Standorten und iBeacon Kennungen (z.B. ein iBeacon im Auto) wechsele. Ein anderer Schönheitsfehler ist, dass es sich bei den "normalen" Standorten nicht um GPS handelt, sondern um "Significant Change Location Service" Standorte. Im Variablenbaum heisst es gps und nicht sclss.

                      Versionshistorie / Änderungen

                      0.2.1 09.05.2015

                      Zoomstufe für Openstreetmaps konfigurierbar

                      tlw. Abfangen und Korrektur von ungültigen Werten in der Konfiguration

                      Konfiguration nach Init unter geofency.conf.xxxxx speichern.

                      Kann dort während der Laufzeit verändert werden, (z.B. Kartenzoomstufe über VIS).

                      beim erneuten Deploy wird auf die Werte aus der Node-Red Konfiguration zurückgesetzt.

                      Benutzerfreundlicher: unbekannte Device

                      Im DEFAULT werden unbekannte Devices nicht als Variable angelegt.

                      Es wird nur das Device ausgegeben. Die Device Kennung kann man dann in der Konfig zuordnen.

                      Wenn gewünscht (Konfig), werden auch unbekannte Devices angelegt.

                      Konfig: Möglichkeit unbekannte Devices mit Ihrer ID in den Variablen anzulegen

                      0.2.0 08.05.2015

                      Variablen neu vergeben (Baumstruktur)

                      eigene Variablen für bis zu drei Nutzer + Unbekannt

                      0.1.2 06.05.2015

                      Unterscheidung Meldung über GPS Standort oder iBeacon eingebaut

                      iBeacon Variablen eingebaut

                      0.1.1 05.05.2015

                      msg.payload.routes[0].legs[0].end_address (Goolge Maps API Zieladresse) hinzugefügt

                      Zeitstempel angepasst. Nicht mehr die Zeit zum Zeitpunkt des Funktionsaufruf,

                      sondern nun wird die Zeit aus der JSON Meldung ausgegeben.

                      zwei neue Zeiten: Zeitpunkt aus der JSON Meldung als Epoche, aktuelle Zeit als Epoche

                      Topic den einzelnen Funktionen -> Variablen zugeorndet (bessere Lesbarkeit der Debugmeldung)

                      Dokumentation im Flow ergänzt

                      alle globalen Variablen beginnen nun mit gf (context.global.gf….)

                      Konfigurierbar: nur neuere Meldungen verarbeiten oder auch ältere Meldungen

                      Anzeige der aktuellen Kofiguration per Knopfdruck im Debug-Fenster

                      0.1.0 04.05.2015

                      Erste version im Forum

                      Ich hatte noch angefangen ein Widget zu basteln.

                      327_2015-05-09_geofence_info_widget.png

                      Da freue ich mich auf die Änderung von Bluefox (danke noch einmal, dass die Idee so schnell aufgegriffen wurde), der Variablen {node-red.0…..} in den VIS-Feldern. Sobald das Feature da ist, schwebt mir ein recht dynamisches Widget vor.

                      Adapter: Fritzbox, Unify Circuit
                      Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

                      1 Antwort Letzte Antwort
                      0
                      • B Offline
                        B Offline
                        Beatz
                        schrieb am zuletzt editiert von
                        #11

                        Ich überlege, meine Anwesenheitserkennung über die WLAN Erkennung per Skript auf der Fritz!Box auf GeoFency umzustellen. Könnt ihr mir eine brauchbare App für Android empfehlen?

                        1 Antwort Letzte Antwort
                        0
                        • ruhr70R Offline
                          ruhr70R Offline
                          ruhr70
                          schrieb am zuletzt editiert von
                          #12

                          @Beatz:

                          Ich überlege, meine Anwesenheitserkennung über die WLAN Erkennung per Skript auf der Fritz!Box auf GeoFency umzustellen. Könnt ihr mir eine brauchbare App für Android empfehlen? `

                          Ich nutze unter iOS Geofency mit dem Flow hier und parallel Owntracks (der Flow ist auch hier im Forum).

                          Owntracks hat keine offenen Punkte in der Kommuniktation.

                          Für Android bekommst Du Owntracks im Google Play Store:

                          https://play.google.com/store/apps/deta … tude&hl=de

                          Habe das allerdings unter Android nicht getestet.

                          Ich bin mal auf Deine Anwesenheitserkennung gespannt.

                          Die Kombination aus WLAN, Zeitparameter, Türkontakte funktioniert schon sehr gut.

                          Mit den Geodaten kann man das dann verfeinern.

                          Adapter: Fritzbox, Unify Circuit
                          Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

                          1 Antwort Letzte Antwort
                          0
                          • B Offline
                            B Offline
                            BlueEssi
                            schrieb am zuletzt editiert von
                            #13

                            Leider werden anscheinend nicht alle hier eingesetzten Funktion auch von Node-Red unter Windows unterstützt. Die Connection kommt zwar an, aber es gibt weder eine Ausgabe im debug-Fenster noch erhält Geofency eine Rückmeldung. Irgendwann kommt dann eine Zeitüberschreitung und die im Node-Red angezeigt Connection verschwindet wieder. Das gleiche Verhalten habe ich auch bei ausgeschaltener Firewall.

                            1 Antwort Letzte Antwort
                            0
                            • B Offline
                              B Offline
                              BlueEssi
                              schrieb am zuletzt editiert von
                              #14

                              Kann niemand dieses Problem bestätigen oder nachvollziehen?

                              1 Antwort Letzte Antwort
                              0
                              • ruhr70R Offline
                                ruhr70R Offline
                                ruhr70
                                schrieb am zuletzt editiert von
                                #15

                                Bei mir ist ioBroker mit Node-red unter Debian installiert. Unter Windows sollte es aber auch funktionieren.

                                Wenn Du den Debug-Node nach dem tcp-Node aktivierst, müsstest Du die Meldungen bekommen. Windows Firewall (hattest Du schon selbst geschrieben) oder Port-Forwarding im Router sind richtig konfiguriert?

                                Adapter: Fritzbox, Unify Circuit
                                Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

                                1 Antwort Letzte Antwort
                                0
                                • fischi87F Offline
                                  fischi87F Offline
                                  fischi87
                                  schrieb am zuletzt editiert von
                                  #16

                                  hallo ruhr70,

                                  ich habe mich heute mal mit deinem gefency Adapterersatz beschäftigt nur bekomme ich in den Objekten nix angezeigt, könntest dir das mal anschauen, hier ist die Ausgabe von node red:

                                  mehr bekomme ich nicht, was fehlt den hier noch?

                                  bin auch noch am verzweifeln wegen der portweiterleitung????

                                  Mit freundlichen Grüßen
                                  909_bildschirmfoto_2015-12-20_um_22.25.20.png

                                  1 Antwort Letzte Antwort
                                  0
                                  • F Offline
                                    F Offline
                                    funzel1607
                                    schrieb am zuletzt editiert von
                                    #17

                                    Hallo,

                                    habe mich auch mal an Node-RED (v0.3.5) rangetraut. Wenn ich allerdings zum testen in der iOS App auf "betreten" klicke, bekomme ich im io.broker Log folgenden Fehler angezeigt:

                                    node-red.0	2016-01-12 15:37:14	warn	node-red.0 12 Jan 15:37:14 - [warn] [http request:http request - Google API Route (Auto)] Warning: msg properties can no longer override set node properties. See bit.ly/nr-override-msg-props
                                    

                                    Unter dem angegeben Link steht dazu folgendes:

                                    ` > Properties can be set in a node or in an incoming message to define behaviour.

                                    For example, when using a file node, either setting 'Filename' in the node or setting msg.filename in an incoming message will read from that file. If both properties are set msg.filename will currently override the node property.

                                    This behaviour is only found in some nodes and can have unexpected consequences as described in this issue. Therefore, message overriding has been deprecated.

                                    In future nodes and future releases msg.some_property will only be used if the property is not set in the node.

                                    Nodes currently using the override functionality will continue to function in this release but will also receive a warning noting that this behaviour is deprecated.

                                    The core nodes and properties affected by this behaviour are:

                                    http request: msg.url and msg.method

                                    email: msg.to

                                    file: msg.filename `

                                    Geofency selbst spuckt auch einen Fehler… Mache ich noch was falsch?

                                    Ich muss ja gestehen, dass der Adapter unter ccu.io leichter zu confen war ;) Leider fehlt das Gegenstück dazu für io.broker leider noch... :)

                                    Danke!

                                    1 Antwort Letzte Antwort
                                    0
                                    • F Offline
                                      F Offline
                                      funzel1607
                                      schrieb am zuletzt editiert von
                                      #18

                                      es gibt jetzt auch endlich einen Adapter!

                                      http://forum.iobroker.org/viewtopic.php?f=20&t=2076

                                      1 Antwort Letzte Antwort
                                      0
                                      Antworten
                                      • In einem neuen Thema antworten
                                      Anmelden zum Antworten
                                      • Älteste zuerst
                                      • Neuste zuerst
                                      • Meiste Stimmen


                                      Support us

                                      ioBroker
                                      Community Adapters
                                      Donate

                                      700

                                      Online

                                      32.5k

                                      Benutzer

                                      81.7k

                                      Themen

                                      1.3m

                                      Beiträge
                                      Community
                                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                      ioBroker Community 2014-2025
                                      logo
                                      • Anmelden

                                      • Du hast noch kein Konto? Registrieren

                                      • Anmelden oder registrieren, um zu suchen
                                      • Erster Beitrag
                                        Letzter Beitrag
                                      0
                                      • Home
                                      • Aktuell
                                      • Tags
                                      • Ungelesen 0
                                      • Kategorien
                                      • Unreplied
                                      • Beliebt
                                      • GitHub
                                      • Docu
                                      • Hilfe