Hallo ihr Lieben,
Bin gerade dabei alle wichtigen Skripte von meiner HC2 auf die HC3 zu portieren.
Dabei bin ich gerade auf das Pushov er Skript gestoßen, das hier sicher einige verwenden (sieeh Anhang)
Hat es schon jemand geschafft, diese Funktionalität auf das HC3 zu portieren?
Oder gibt es inzwischen eine Funktionalität in der HC3 um Pushover Nachrichten zu versenden?
--[[
%% properties
%% globals
PushOver
--]]
if (tonumber(fibaro:getGlobalValue("PushOver")) == 0) then fibaro:abort() end
Debug = function ( color, message ) fibaro:debug(string.format('<%s style="color:%s;">%s', "span", color, message, "span")) end
local selfhttp = net.HTTPClient({timeout=2000})
local parameters = fibaro:getGlobalValue("PushOver")
local token = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" -- your application token
local user = "yyyyyyyyyyyyyyyyyyyyyyyyyyyyyy" -- your user key
local device = "GalaxyS7"
-- -------------------------------------------------------
-- no edit below this point
-- -------------------------------------------------------
function url_encode(str)
if (str) then
str = string.gsub (str, "\n", "\r\n")
str = string.gsub (str, "([^%w %-%_%.%~])",
function (c) return string.format ("%%%02X", string.byte(c)) end)
str = string.gsub (str, " ", "+")
end
return str
end
function explode(str)
local pos,arr = 0,{}
for match in string.gmatch(str, '[^,]+') do
table.insert(arr, match)
end
return arr
end
--
if string.len(parameters) > 0 then
parameters = explode(parameters)
local title = tostring(parameters[1]) or ""
local message = url_encode(parameters[2])
-- local device = ""
local priority = tostring(parameters[3])
local sound = tostring(parameters[4]) -- see other sounds bellow
local requestBody = "token=" .. token .. "&user=" .. user .. "&title=" .. title .. "&device=" .. device .. "&priority=" .. priority .. "&sound=" .. sound .."&message=" .. message
--debug
--Debug("red","RequBody: "..requestBody)
Debug("yellow",(os.date("%A %d %B %Y")))
Debug("green",""..title)
--Debug("green","Nachricht: "..message)
--Debug("grey","Device: "..device)
Debug("grey","Sound: "..sound.." - Prio: "..priority)
--Debug("grey","Token: "..token)
--Debug("grey","User: "..user)
--debug
selfhttp:request('https://api.pushover.net/1/messages.json', {
options={
headers = selfhttp.controlHeaders,
data = requestBody,
method = 'POST',
timeout = 5000
},
success = function(status)
local result = json.decode(status.data)
-- print(status) --debug
if result.status == 1 then
Debug("green","Erfolgreich versendet")
-- print("Request: " ..result.request) --debug
else
Debug("red","Fehlgeschlagen...")
print ("failed") --debug
print(status.data) --debug
end
end,
error = function(error)
print "ERROR"
print(error)
end
})
fibaro:sleep(100)
fibaro:setGlobal("PushOver", "0")
end