From 4a431531b59156140584a3b0f2e5f4e5188a1f75 Mon Sep 17 00:00:00 2001 From: Roman Bazalevskiy Date: Tue, 31 Oct 2017 09:05:43 +0300 Subject: [PATCH] =?utf8?q?"=D0=A3=D0=BC=D0=BD=D0=B0=D1=8F"=20=D0=B3=D0=B5?= =?utf8?q?=D0=BD=D0=B5=D1=80=D0=B0=D1=86=D0=B8=D1=8F=20ID=20=D0=BA=D0=BB?= =?utf8?q?=D0=B8=D0=B5=D0=BD=D1=82=D0=B0=20=D0=B4=D0=BB=D1=8F=20=D0=BE?= =?utf8?q?=D0=B1=D0=B5=D1=81=D0=BF=D0=B5=D1=87=D0=B5=D0=BD=D0=B8=D1=8F=20?= =?utf8?q?=D0=BE=D0=B4=D0=BD=D0=BE=D0=B2=D1=80=D0=B5=D0=BC=D0=B5=D0=BD?= =?utf8?q?=D0=BD=D0=BE=D0=B9=20=D1=80=D0=B0=D0=B1=D0=BE=D1=82=D1=8B=20?= =?utf8?q?=D0=BD=D0=B5=D1=81=D0=BA=D0=BE=D0=BB=D1=8C=D0=BA=D0=B8=D1=85=20?= =?utf8?q?=D1=8D=D0=BA=D0=B7=D0=B5=D0=BC=D0=BF=D0=BB=D1=8F=D1=80=D0=BE?= =?utf8?q?=D0=B2=20=D1=81=D0=BA=D1=80=D0=B8=D0=BF=D1=82=D0=B0.?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- mqtt-bt/scan-beacons | 42 ++++++++++++++++++++++++++++++------------ 1 file changed, 30 insertions(+), 12 deletions(-) diff --git a/mqtt-bt/scan-beacons b/mqtt-bt/scan-beacons index 34de7dc..f91e59c 100644 --- a/mqtt-bt/scan-beacons +++ b/mqtt-bt/scan-beacons @@ -22,7 +22,11 @@ function getConfig(configname) mqtt_passwd = cur.get(config,"mqtt","password") if mqtt_host and not mqtt_id then - mqtt_id="beaconmon" + socket = require("socket") + posix = require("posix") + hostname = socket.dns.gethostname() + pid = posix.getpid() + mqtt_id="beaconmon-"..hostname.."-"..pid end if mqtt_host and not mqtt_port then @@ -77,7 +81,7 @@ function open_dump() f = assert(io.popen ("/usr/bin/hcidump --raw")) run_command("/usr/bin/hciconfig hci0 down") run_command("/usr/bin/hciconfig hci0 up") - f_null = assert(io.popen ("/usr/bin/hcitool lescan --duplicates")) + f_null = assert(io.popen ("/usr/bin/hcitool lescan --duplicates --passive")) return f @@ -102,8 +106,9 @@ function trim(s) end function mqtt_pub(path,value) - printLog("Pub "..path.." "..value) - return mqtt_client:publish(path,value) + res=mqtt_client:publish(path,value) + printLog("Pub "..path.." "..value.." returned "..res); + return res end function process_packet(packet) @@ -136,12 +141,19 @@ function process_packet(packet) type="" mac=bytes[13]..':'..bytes[12]..':'..bytes[11]..':'..bytes[10]..':'..bytes[9]..':'..bytes[8] flags=bytes[14] - power=tonumber("0x"..bytes[len-1])-256 - tx=tonumber("0x"..bytes[len])-256 local j = 15 + tx=tonumber("0x"..bytes[len])-256 while j