projects
/
openhab-process.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Исправлена обработка параметров для iBeacon
[openhab-process.git]
/
mqtt-bt
/
scan-beacons
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