Load Frigate config into the starter grid
This commit is contained in:
@@ -1,3 +1,56 @@
|
||||
sub init()
|
||||
m.top.setFocus(true)
|
||||
m.backend = m.top.findNode("backend")
|
||||
m.status = m.top.findNode("status")
|
||||
m.cameraNodes = [
|
||||
m.top.findNode("cam1"),
|
||||
m.top.findNode("cam2"),
|
||||
m.top.findNode("cam3"),
|
||||
m.top.findNode("cam4")
|
||||
]
|
||||
|
||||
loadConfig()
|
||||
end sub
|
||||
|
||||
sub loadConfig()
|
||||
raw = ReadAsciiFile("pkg:/config/cameras.json")
|
||||
config = ParseJson(raw)
|
||||
|
||||
if type(config) <> "roAssociativeArray" then
|
||||
m.status.text = "Unable to parse cameras.json"
|
||||
return
|
||||
end if
|
||||
|
||||
if config.doesExist("backend") and config.backend.doesExist("baseUrl") then
|
||||
m.backend.text = "Frigate: " + config.backend.baseUrl
|
||||
end if
|
||||
|
||||
if not config.doesExist("cameras") then
|
||||
m.status.text = "No cameras found in config"
|
||||
return
|
||||
end if
|
||||
|
||||
cameras = config.cameras
|
||||
m.status.text = cameras.count().toStr() + " cameras loaded from static config"
|
||||
|
||||
for i = 0 to m.cameraNodes.count() - 1
|
||||
node = m.cameraNodes[i]
|
||||
|
||||
if i < cameras.count() then
|
||||
camera = cameras[i]
|
||||
label = camera.name
|
||||
|
||||
if camera.doesExist("host") then
|
||||
label = label + chr(10) + camera.host
|
||||
end if
|
||||
|
||||
if camera.doesExist("frigateCamera") then
|
||||
label = label + chr(10) + "Frigate ID: " + camera.frigateCamera
|
||||
end if
|
||||
|
||||
node.text = label
|
||||
else
|
||||
node.text = "Empty slot"
|
||||
end if
|
||||
end for
|
||||
end sub
|
||||
|
||||
Reference in New Issue
Block a user