Teknor
Medlemmer-
Innlegg
93 -
Ble med
Innholdstype
Profiler
Forum
Blogger
Nedlastninger
Artikler
Regler
Hendelser
Galleri
Store
Alt skrevet av Teknor
-
Gode tips her. Noen som har fått inn timesprisene fra Tibber inn i HA? Har forsøkt tibber_custom HACS men får til feilmelding at repositoryet ikke er kompatibelt. Hvilken løsning bruler dere andre?
-
Kjenner du til om det er noe tilsvarende som AeoTec HD Switch for Zigbee (og ikke Z-wave)?
-
Styring av varmtvannstank ut frå pris
Teknor svarte på bjornepappa sitt emne i Strømsparing og strøm-overvåkning
Gammel tråd dette, men like fullt relevant. DS18B20, 1-wire og ESPEasy/ESPHome har jeg kontroll på. Men: Hvilket rele bruker dere for dette, feks @stigvi? Må vel tåle 16A og være brannsikkert. Litt skeptisk til å bruke Aliexpress rele til dette. -
Ikke så mye aktivitet her, men forsøker likevel…. Her har en flink person laget integrasjon mellom Badetassen og Homey. Mulig å gjøre det samme mot Domoticz for noen som kan denslags? https://homey.solweb.no/custom-integrations/badetemperatur // Fetching temperature from Altibox API. Badetassen. // For use with Athom Homey as a homeyscript. const apiurl = 'https://prdl-apimgmt.lyse.no/apis/t/prod.altibox.lyse.no/temp/1.0/api/location/' async function getData() { let resp = await fetch(apiurl, { "headers": { "accept": "application/json", "content-type": "application/json", "Authorization": "Bearer 9df43895-3d09-30d5-afe4-db2bf92a86f0", }, "method": "GET" }); let data = await resp.json() let el = null for (let i = 0; i < data.length; i++) { if (data[i].Name === 'Sjøbadet') { el = data[i] } } return el } let r = await getData() console.log("=== Results ===") console.log(r) if (r === null) return; console.log("Tag " + "badetassen_" + r.id) console.log({type: 'number', title:'Badetemp [' + r.Name + ']'}) console.log("Temperature: ", r.lastTemperature) await setTagValue("badetemp_" + r.id, {type: 'number', title:'Badetemp [' + r.Name + ']'}, parseFloat(r.lastTemperature))
-
...ellers, kan jeg kommentere ut de linjene som jeg ikke har enheter for? Feks: -- local idxMinInclGridToday = 95 --Custom device -- local idxMaxInclGridToday = 96 --Custom device
-
Ble noe rusk i midten av februar kan det se ut som, @eiman. local idxPriceNow = 3436 --Custom sensor local idxPriceLevelNow = 3446 --Text device local idxPriceAverageToday = 3438 --Custom sensor local idxPriceAverageTmorrow = 3439 --Text device local idxStdDeviationToday = 3440 --Custom sensor local idxStdDeviationTomorrow = 3441 --Text device local idxMinToday = 3442 --Custom device local idxMaxToday = 3443 --Custom device local idxMinTomorrow = 3444 --Text device local idxMaxTomorrow = 3445 --Text device return { on = { timer = { 'every hour', -- 00:00, 01:00, ..., 23:00 (24x per 24hrs) }, customEvents = { 'tibberPricesUpdated' --Trigered from tibber_fetch_prices }, }, logging = { level = domoticz.LOG_INFO, marker = 'TibberPrices Update devices', }, execute = function(domoticz, triggeredItem) domoticz.log('Timer event was triggered by ' .. triggeredItem.trigger, domoticz.LOG_INFO) local tibberPriceTable = domoticz.globalData.tibberPriceTable local function priceNow() local Time =require('Time') local currentTime = Time() for key, myEntry in pairs(tibberPriceTable.hourlyData) do --Update hourly data local entryTime = Time(myEntry.startsAt) if entryTime.day == currentTime.day and entryTime.hour == currentTime.hour then domoticz.devices(idxPriceNow).updateCustomSensor(myEntry.total) domoticz.devices(idxPriceLevelNow).updateText(myEntry.level) domoticz.devices(idxPriceRankNow).updateCustomSensor(myEntry.rank) domoticz.devices(idxGridRentNow).updateCustomSensor(myEntry.gridRent) domoticz.devices(idxPriceInclGridNow).updateCustomSensor(myEntry.totalInclGridRent) end end if (triggeredItem.isCustomEvent) or (currentTime.hour == 0) then --update daily stats local awaitingPrices = 'Venter på oppdaterte priser' local txtAverageTomorrow = awaitingPrices local txtStdDevTomorrow = awaitingPrices local txtMinTomorrow = awaitingPrices local txtMaxTomorrow = awaitingPrices local txtLevelTomorrow = awaitingPrices local txtMinInclGridTomorrow = awaitingPrices local txtMaxInclGridTomorrow = awaitingPrices local txtStdDeviationInclGridTomorrow = awaitingPrices local txtPriceAverageInclGridTomorrow = awaitingPrices for key, myEntry in pairs(tibberPriceTable.dailyStats) do if currentTime.day == myEntry.myDay then domoticz.devices(idxPriceAverageToday).updateCustomSensor(myEntry.mean) domoticz.devices(idxStdDeviationToday).updateCustomSensor(myEntry.stdDev) domoticz.devices(idxMaxToday).updateCustomSensor(myEntry.maximum) domoticz.devices(idxMinToday).updateCustomSensor(myEntry.minimum) domoticz.devices(idxPriceLevelToday).updateText(myEntry.dailyLevel) domoticz.devices(idxMinInclGridToday).updateCustomSensor(myEntry.minInclGridRent) domoticz.devices(idxMaxInclGridToday).updateCustomSensor(myEntry.maxInclGridRent) domoticz.devices(idxStdDeviationInclGridToday).updateCustomSensor(myEntry.stdInclGridRent) domoticz.devices(idxPriceAverageInclGridToday).updateCustomSensor(myEntry.meanInclGridRent) elseif currentTime.addDays(1).day == myEntry.myDay then txtAverageTomorrow = myEntry.mean txtStdDevTomorrow = myEntry.stdDev txtMinTomorrow = myEntry.minimum txtMaxTomorrow = myEntry.maximum txtLevelTomorrow = myEntry.dailyLevel txtMinInclGridTomorrow = myEntry.minInclGridRent txtMaxInclGridTomorrow = myEntry.maxInclGridRent txtStdDeviationInclGridTomorrow = myEntry.stdInclGridRent txtPriceAverageInclGridTomorrow = myEntry.meanInclGridRent end end domoticz.devices(idxPriceAverageTmorrow).updateText(txtAverageTomorrow) domoticz.devices(idxStdDeviationTomorrow).updateText(txtStdDevTomorrow) domoticz.devices(idxMinTomorrow).updateText(txtMinTomorrow) domoticz.devices(idxMaxTomorrow).updateText(txtMaxTomorrow) domoticz.devices(idxPriceLevelTomorrow).updateText(txtLevelTomorrow) domoticz.devices(idxMinInclGridTomorrow).updateText(txtMinInclGridTomorrow) domoticz.devices(idxMaxInclGridTomorrow).updateText(txtMaxInclGridTomorrow) domoticz.devices(idxStdDeviationInclGridTomorrow).updateText(txtStdDeviationInclGridTomorrow) domoticz.devices(idxPriceAverageInclGridTomorrow).updateText(txtPriceAverageInclGridTomorrow) end end priceNow() end }
-
Får følgende update feil og prisene oppdateres ikke. Har du kjennskap til hva feilen kan være @eiman ? Update: PriceNow oppdateres som normalt, de andre gjør ikke. 2022-04-03 12:00:00.444 Error: dzVents: Error: (3.1.7) TibberPrices Update devices: An error occurred when calling event handler tibber_update_devices 2022-04-03 12:00:00.444 Error: dzVents: Error: (3.1.7) TibberPrices Update devices: ...ipts/dzVents/generated_scripts/tibber_update_devices.lua:39: attempt to call a nil value (field 'updateCustomSensor')
-
Ja, har det 🙂 Men har ikke opprettet enhetene under Hardware --> Dummy -> Create devices. Eller er det en metode for å opprette dem automatisk? EDIT: Opprettet enhetene manuelt og la inn riktig IDX - fungerer som en drøm!
-
Takk for hjelp. Endret tidspunktet den skal trigges til i kveld. FIkk en liten feilmelding i loggen mot slutten: 2022-01-20 21:54:05.374 Status: dzVents: Info: Handling httpResponse-events for: "tibberPrices" 2022-01-20 21:54:05.374 Status: dzVents: Info: ------ Start internal script: tibber_fetch-prices: HTTPResponse: "tibberPrices" 2022-01-20 21:54:05.411 Status: dzVents: {"data":{"viewer":{"homes":[{"address":{"address1":"Søndre hytta"},"currentSubscription":{"priceInfo":{"today":[{"total":1.5892,"startsAt":"2022-01-20T00:00:00.000+01:00","level":"CHEAP"},{"total":1.5385,"startsAt":"2022-01-20T01:00:00.000+01:00","level":"CHEAP"},{"total":1.4878,"startsAt":"2022-01-20T02:00:00.000+01:00","level":"CHEAP"},{"total":1.4509,"startsAt":"2022-01-20T03:00:00.000+01:00","level":"CHEAP"},{"total":1.4524,"startsAt":"2022-01-20T04:00:00.000+01:00","level":"CHEAP"},{"total":1.5451,"startsAt":"2022-01-20T05:00:00.000+01:00","level":"CHEAP"},{"total":1.6324,"startsAt":"2022-01-20T06:00:00.000+01:00","level":"NORMAL"},{"total":1.6494,"startsAt":"2022-01-20T07:00:00.000+01:00","level":"NORMAL"},{"total":1.701,"startsAt":"2022-01-20T08:00:00.000+01:00","level":"NORMAL"},{"total":1.6822,"startsAt":"2022-01-20T09:00:00.000+01:00","level":"NORMAL"},{"total":1.659,"startsAt":"2022-01-20T10:00:00.000+01:00","level":"NORMAL"},{"total":1.6549,"startsAt":"2022-01-20T11:00:00.000+01:00","level":"NORMAL"},{"total":1.6186,"startsAt":"2022-01-20T12:00:00.000+01:00","level":"CHEAP"},{"total":1.6073,"startsAt":"2022-01-20T13:00:00.000+01:00","level":"CHEAP"},{"total":1.645,"startsAt":"2022-01-20T14:00:00.000+01:00","level":"NORMAL"},{"total":1.6628,"startsAt":"2022-01-20T15:00:00.000+01:00","level":"NORMAL"},{"total":1.7042,"startsAt":"2022-01-20T16:00:00.000+01:00","level":"NORMAL"},{"total":1.7289,"startsAt":"2022-01-20T17:00:00.000+01:00","level":"NORMAL"},{"total":1.7125,"startsAt":"2022-01-20T18:00:00.000+01:00","level":"NORMAL"},{"total":1.7115,"startsAt":"2022-01-20T19:00:00.000+01:00","level":"NORMAL"},{"total":1.7102,"startsAt":"2022-01-20T20:00:00.000+01:00","level":"NORMAL"},{"total":1.7052,"startsAt":"2022-01-20T21:00:00.000+01:00","level":"NORMAL"},{"total":1.6587,"startsAt":"2022-01-20T22:00:00.000+01:00","level":"NORMAL"},{"total":1.6109,"startsAt":"2022-01-20T23:00:00.000+01:00","level":"NORMAL"}],"tomorrow":[{"total":1.5992,"startsAt":"2022-01-21T00:00:00.000+01:00","level":"CHEAP"},{"total":1.5906,"startsAt":"2022-01-21T01:00:00.000+01:00","level":"CHEAP"},{"total":1.5986,"startsAt":"2022-01-21T02:00:00.000+01:00","level":"CHEAP"},{"total":1.6047,"startsAt":"2022-01-21T03:00:00.000+01:00","level":"NORMAL"},{"total":1.6083,"startsAt":"2022-01-21T04:00:00.000+01:00","level":"NORMAL"},{"total":1.6451,"startsAt":"2022-01-21T05:00:00.000+01:00","level":"NORMAL"},{"total":1.6622,"startsAt":"2022-01-21T06:00:00.000+01:00","level":"NORMAL"},{"total":1.774,"startsAt":"2022-01-21T07:00:00.000+01:00","level":"NORMAL"},{"total":1.8104,"startsAt":"2022-01-21T08:00:00.000+01:00","level":"NORMAL"},{"total":1.8078,"startsAt":"2022-01-21T09:00:00.000+01:00","level":"NORMAL"},{"total":1.8062,"startsAt":"2022-01-21T10:00:00.000+01:00","level":"NORMAL"},{"total":1.7879,"startsAt":"2022-01-21T11:00:00.000+01:00","level":"NORMAL"},{"total":1.7714,"startsAt":"2022-01-21T12:00:00.000+01:00","level":"NORMAL"},{"total":1.8102,"startsAt":"2022-01-21T13:00:00.000+01:00","level":"NORMAL"},{"total":1.7884,"startsAt":"2022-01-21T14:00:00.000+01:00","level":"NORMAL"},{"total":1.8013,"startsAt":"2022-01-21T15:00:00.000+01:00","level":"NORMAL"},{"total":1.8254,"startsAt":"2022-01-21T16:00:00.000+01:00","level":"NORMAL"},{"total":1.8584,"startsAt":"2022-01-21T17:00:00.000+01:00","level":"NORMAL"},{"total":1.8408,"startsAt":"2022-01-21T18:00:00.000+01:00","level":"NORMAL"},{"total":1.7706,"startsAt":"2022-01-21T19:00:00.000+01:00","level":"NORMAL"},{"total":1.7144,"startsAt":"2022-01-21T20:00:00.000+01:00","level":"NORMAL"},{"total":1.682,"startsAt":"2022-01-21T21:00:00.000+01:00","level":"NORMAL"},{"total":1.6746,"startsAt":"2022-01-21T22:00:00.000+01:00","level":"NORMAL"},{"total":1.5997,"startsAt":"2022-01-21T23:00:00.000+01:00","level":"NORMAL"}]}}},{"address":{"address1":"hjemmeadr "},"currentSubscription":{"priceInfo":{"today":[{"total":1.5892,"startsAt":"2022-01-20T00:00:00.000+01:00","level":"CHEAP"},{"total":1.5385,"startsAt":"2022-01-20T01:00:00.000+01:00","level":"CHEAP"},{"total":1.4878,"startsAt":"2022-01-20T02:00:00.000+01:00","level":"CHEAP"},{"total":1.4509,"startsAt":"2022-01-20T03:00:00.000+01:00","level":"CHEAP"},{"total":1.4524,"startsAt":"2022-01-20T04:00:00.000+01:00","level":"CHEAP"},{"total":1.5451,"startsAt":"2022-01-20T05:00:00.000+01:00","level":"CHEAP"},{"total":1.6324,"startsAt":"2022-01-20T06:00:00.000+01:00","level":"NORMAL"},{"total":1.6494,"startsAt":"2022-01-20T07:00:00.000+01:00","level":"NORMAL"},{"total":1.701,"startsAt":"2022-01-20T08:00:00.000+01:00","level":"NORMAL"},{"total":1.6822,"startsAt":"2022-01-20T09:00:00.000+01:00","level":"NORMAL"},{"total":1.659,"startsAt":"2022-01-20T10:00:00.000+01:00","level":"NORMAL"},{"total":1.6549,"startsAt":"2022-01-20T11:00:00.000+01:00","level":"NORMAL"},{"total":1.6186,"startsAt":"2022-01-20T12:00:00.000+01:00","level":"CHEAP"},{"total":1.6073,"startsAt":"2022-01-20T13:00:00.000+01:00","level":"CHEAP"},{"total":1.645,"startsAt":"2022-01-20T14:00:00.000+01:00","level":"NORMAL"},{"total":1.6628,"startsAt":"2022-01-20T15:00:00.000+01:00","level":"NORMAL"},{"total":1.7042,"startsAt":"2022-01-20T16:00:00.000+01:00","level":"NORMAL"},{"total":1.7289,"startsAt":"2022-01-20T17:00:00.000+01:00","level":"NORMAL"},{"total":1.7125,"startsAt":"2022-01-20T18:00:00.000+01:00","level":"NORMAL"},{"total":1.7115,"startsAt":"2022-01-20T19:00:00.000+01:00","level":"NORMAL"},{"total":1.7102,"startsAt":"2022-01-20T20:00:00.000+01:00","level":"NORMAL"},{"total":1.7052,"startsAt":"2022-01-20T21:00:00.000+01:00","level":"NORMAL"},{"total":1.6587,"startsAt":"2022-01-20T22:00:00.000+01:00","level":"NORMAL"},{"total":1.6109,"startsAt":"2022-01-20T23:00:00.000+01:00","level":"NORMAL"}],"tomorrow":[{"total":1.5992,"startsAt":"2022-01-21T00:00:00.000+01:00","level":"CHEAP"},{"total":1.5906,"startsAt":"2022-01-21T01:00:00.000+01:00","level":"CHEAP"},{"total":1.5986,"startsAt":"2022-01-21T02:00:00.000+01:00","level":"CHEAP"},{"total":1.6047,"startsAt":"2022-01-21T03:00:00.000+01:00","level":"NORMAL"},{"total":1.6083,"startsAt":"2022-01-21T04:00:00.000+01:00","level":"NO 2022-01-20 21:54:05.443 Status: dzVents: Info: ------ Finished tibber_fetch-prices 2022-01-20 21:54:05.443 Error: dzVents: Error: (3.1.7) An error occurred when calling event handler tibber_fetch-prices 2022-01-20 21:54:05.443 Error: dzVents: Error: (3.1.7) ...cripts/dzVents/generated_scripts/tibber_fetch-prices.lua:97: attempt to call a nil value (field 'initialize')
-
Novice spørsmål fra meg @eiman : I hvilken katalog legger du filene global_data.lua , tibber_update_devices.lua , tibber_fetch-prices.lua?
-
Takker @eiman - brukte kodesnutten din til å få riktig HomeID. Får prøve på nytt. Oppdatering: Etter at jeg legger inn HomeID og aktiverer HW plugin så går det ca 15 sekunder og jeg får en feilmelding i Domoticz loggen som krasjer Domoticz. Tydeligvis noe rusk som skjer. Muligens får jeg feilsøke noe i retning av å installere websockets. 2022-01-11 11:40:03.417 Error: Tibber: (Tibber) Missing packages 2022-01-11 11:40:03.417 Error: Tibber: (Tibber) [ModuleNotFoundError("No module named 'websockets'")] . . . 2022-01-11 11:40:25.440 Error: Domoticz(pid:3689, tid:3768('Plugin_ASIO')) received fatal signal 11 (Segmentation fault) 2022-01-11 11:40:25.440 Error: siginfo address=0xe69, address=(nil)
-
Etter at jeg nå har både hytte og hjem i tibber ser det ut til at Tibber plugin-en krasjer når den skal hente prisene. Noen som har tips til feilsøk? Her er logg fra Domoticz. 2022-01-10 23:30:21.169 Error: Tibber: (Tibber) Missing packages 2022-01-10 23:30:21.169 Error: Tibber: (Tibber) [ModuleNotFoundError("No module named 'websockets'")]
-
Samme her - bare prisene her også. Dessuten har jeg to Domoticz installasjoner (på rasperby pi). Får kontinuerlig feilmelding i loggen. Noen tips til hva som burde gjøres? 2021-11-29 20:23:34.101 Error: Tibber: (Tibber) 'onHeartbeat' failed 'NameError'. 2021-11-29 20:23:34.101 Error: Tibber: (Tibber) ----> Line 505 in '/home/pi/domoticz/plugins/Tibber-Domoticz/plugin.py', function onHeartbeat 2021-11-29 20:23:34.101 Error: Tibber: (Tibber) ----> Line 321 in '/home/pi/domoticz/plugins/Tibber-Domoticz/plugin.py', function onHeartbeat 2021-11-29 20:23:34.101 Error: Tibber: (Tibber) ----> Line 50 in '/usr/lib/python3.7/asyncio/runners.py', function run 2021-11-29 20:23:34.101 Error: Tibber: (Tibber) ----> Line 584 in '/usr/lib/python3.7/asyncio/base_events.py', function run_until_complete 2021-11-29 20:23:34.101 Error: Tibber: (Tibber) ----> Line 308 in '/home/pi/domoticz/plugins/Tibber-Domoticz/plugin.py', function LivePower 2021-11-29 20:23:40.249 RFLink: Temp (TempKryploft) 2021-11-29 20:23:44.071 Error: Tibber: (Tibber) 'onHeartbeat' failed 'NameError'. 2021-11-29 20:23:44.071 Error: Tibber: (Tibber) ----> Line 505 in '/home/pi/domoticz/plugins/Tibber-Domoticz/plugin.py', function onHeartbeat 2021-11-29 20:23:44.071 Error: Tibber: (Tibber) ----> Line 321 in '/home/pi/domoticz/plugins/Tibber-Domoticz/plugin.py', function onHeartbeat 2021-11-29 20:23:44.071 Error: Tibber: (Tibber) ----> Line 50 in '/usr/lib/python3.7/asyncio/runners.py', function run 2021-11-29 20:23:44.071 Error: Tibber: (Tibber) ----> Line 584 in '/usr/lib/python3.7/asyncio/base_events.py', function run_until_complete 2021-11-29 20:23:44.071 Error: Tibber: (Tibber) ----> Line 308 in '/home/pi/domoticz/plugins/Tibber-Domoticz/plugin.py', function LivePower 2021-11-29 20:23:50.169 RFLink: Temp (Balkong) 2021-11-29 20:23:51.750 RPI_Motherboard: General/Percentage (RPI CPU) 2021-11-29 20:23:51.779 RPI_Motherboard: General/Custom Sensor (Arm Clock Speed) 2021-11-29 20:23:51.804 RPI_Motherboard: General/Custom Sensor (V3D Clock Speed) 2021-11-29 20:23:51.822 RPI_Motherboard: General/Custom Sensor (Core Clock Speed) 2021-11-29 20:23:54.093 Error: Tibber: (Tibber) 'onHeartbeat' failed 'NameError'. 2021-11-29 20:23:54.093 Error: Tibber: (Tibber) ----> Line 505 in '/home/pi/domoticz/plugins/Tibber-Domoticz/plugin.py', function onHeartbeat
-
Erfaringer med Raspberry PI applikasjoner for kameraovervåkning?
Teknor svarte på Teknor sitt emne i Overvåking
Har bare noen få og ikke så mange som deg ?. Det er min etterlysning også, Picrellcam med støtte for nettverkskameraer og USB-kameraer.- 4 svar
-
- kamera
- overvåkning
-
(og 2 andre)
Merket med:
-
Erfaringer med Raspberry PI applikasjoner for kameraovervåkning?
Teknor svarte på Teknor sitt emne i Overvåking
Går fint det mtp. ressurser. MotionEYE krever rundt 10% av en eldre RPI 2. Picrellcam bare et par prosent på samme HW. Flytter alt over på en RPI 3 nå. Skal kjøre Domoticz, DuckDNS, Zigbee2mqtt og forhåpentligvis egnet monitoreringssoftware.- 4 svar
-
- kamera
- overvåkning
-
(og 2 andre)
Merket med:
-
Erfaringer med Raspberry PI applikasjoner for kameraovervåkning?
Teknor publiserte et emne i Overvåking
Hvilke erfaringer her dere med ulike applikasjon (Raspberry PI) for videoovervåkning? Jeg benytter i dag Picrellcam på Raspberry PI. Denne synes jeg fungerer MEGET bra på bevegelsesdeteksjon. Denne fungerer slik deteksjonen er vektor-basert, den tar utgangspunkt i elementer i bildet som flytter seg for å identifisere en bevegelse eller ikke. Derfor er det få falske alarmer (vind i trær, snø som daler fra himmelen, skygger fra blomster etc). Brukergrensesnitt er også helt OK, og det er enkelt å rydde opp i videoer etterhvert som disse lagres. Ulempen er at den kun støtter interne Raspberry PI kameraer og ikke USB eller nettverkskameraer. Kerberos.io har jeg forsøkt litt. Ser ut til å ha nokså god og intelligent bevegelsesdeteksjon. Støtter USB og nettverkskameraer. Derimot er administrasjonen av tidligere opptak, statistikk og opprydding av videoer i brukergrensesnittet meget dårlig. Kun støtte for et kamera i brukergrensesnittet uten betaling. MotionEYE har greit brukergrensesnitt for videoer, kan bruke USB og nettverkskameraer - men bevegelsesdeteksjonen er ubrukelig. Trigger kun på endringer i pixels i bildet og man får masse falske opptak (snø, vind, regn etc.). Fungerer nok greit innendørs. Noen som kjenner til gode (Raspberry PI) apps som har: - god (og intelligent) bevegelsesdeteksjon - kan håndtere USB og nettverkskameraer - greit brukergrensesnitt for å se videoer i etterkant og slette de man ikke ønsker å ta vare på- 4 svar
-
- kamera
- overvåkning
-
(og 2 andre)
Merket med: