projects
/
openhab-process.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
26d1617
)
Исправлена обработка параметров для iBeacon
author
Roman Bazalevskiy
<rvb@rvb.name>
Wed, 17 Oct 2018 17:51:53 +0000
(20:51 +0300)
committer
Roman Bazalevskiy
<rvb@rvb.name>
Wed, 17 Oct 2018 17:51:53 +0000
(20:51 +0300)
mqtt-bt/scan-beacons
patch
|
blob
|
history
diff --git
a/mqtt-bt/scan-beacons
b/mqtt-bt/scan-beacons
index a574f664249410ca789b671eefe37233a21e2779..192539edc60095436776bb9024d504ed2a3db310 100644
(file)
--- a/
mqtt-bt/scan-beacons
+++ b/
mqtt-bt/scan-beacons
@@
-55,14
+55,16
@@
end
function mqtt_encode(str)
if (str) then
str = string.gsub (str, "\n", "")
function mqtt_encode(str)
if (str) then
str = string.gsub (str, "\n", "")
+ str = string.gsub (str, ":", "-")
str = string.gsub (str, "/", "-")
str = string.gsub (str, "/", "-")
+ str = string.gsub (str, " ", "_")
end
return str
end
function printLog(str)
if logging=="yes" then
end
return str
end
function printLog(str)
if logging=="yes" then
- capture("logger -t beaconmon
"..str
)
+ capture("logger -t beaconmon
\""..str.."\""
)
else
print(str)
end
else
print(str)
end
@@
-97,9
+99,13
@@
function trim(s)
return (s:gsub("^%s*(.-)%s*$", "%1"))
end
return (s:gsub("^%s*(.-)%s*$", "%1"))
end
+local function starts_with(str, start)
+ return str:sub(1, #start) == start
+end
+
function mqtt_pub(path,value)
res=mqtt_client:publish(path,value)
function mqtt_pub(path,value)
res=mqtt_client:publish(path,value)
- printLog("Pub "..path.."
"..value.."
returned "..res);
+ printLog("Pub "..path.." returned "..res);
return res
end
return res
end
@@
-112,11
+118,13
@@
function process_packet(packet)
local name
mac = packet['Address']
local name
mac = packet['Address']
- uuid = packet['
uuid
']
+ uuid = packet['
UUID
']
type = packet['Type']
name = packet['Name (complete)']
type = packet['Type']
name = packet['Name (complete)']
- if type=='iBeacon' then
+ print(dump(packet))
+
+ if type and starts_with(type,'iBeacon') then
details=uuid
elseif name then
if not(type) then
details=uuid
elseif name then
if not(type) then