>D 40
IP=192.168.178.184
SB=8192
res=0
cnt=0
tmp=0
pr=0
w=0
h=0
mot=0
bri=0
tstr=""
fnam=""
df=0
p:limit=0
t:timer=30
mailout=0
>B
; initialisiere cam mit QVGA
res=wc(0 4)
; hole Bildgröße horizontal und vertikal in Pixeln
w=wc(3)
h=wc(4)
; start motion detector, picture every 1000 ms
mot=wc(6 1000)
; erzeuge Bildordner falls nicht vorhanden
res=fo("/PICS" r)
if res<0
then
fmd("/PICS")
endif
if limit==0
then
limit=1000
endif
>S
if wific>0
then
; starte stream wenn wifi verbunden
res=wc(5 1)
endif
; hole Bewegungswert
mot=wc(6 -1)
; hole Helligkeit
bri=wc(6 -2)
if mot>limit
and timer==0
then
// Alarm, hole Bild, sende email
res=wc(1 1)
=>sendmail [smtp.gmail.com:465:user:pass:from@mail.de:to@mail.de:Alarm]*
mailout=1
timer=60
endif
; mache Einzel Bild alle 30 Minuten
if upsecs%1800==0
then
; flash LED an
->power1 1
delay(200)
; Bild speichern in RAM Buffer 1
res=wc(1 1)
; Datei öffnen, Name ist gleich Zeitstempel
; Dateiname darf aber keinen Doppelpunkt enhalten
; deshalb diese umständliche Zusammensetzung
dp2.0
res=fo("/PICS/"+st(tstamp : 1)+"_"+s(mins)+"_"+s(secs)+".jpg" w)
if res>=0
then
// RAM Buffer speichern
pr=fwp(1 res)
fc(res)
endif
; flash LED aus
->power1 0
endif
if chg[limit]>0
then
svars
endif
>F
; lösche alle Bilder
if df>0
then
df=0
=#delfolder("PICS")
endif
; lösche den Ordner Inhalt
#delfolder(tstr)
pr=fo("/"+tstr r)
for cnt 1 1000 1
tmp=fr(fnam pr)
if tmp>0
then
fd("/"+tstr+"/"+fnam)
else
break
endif
next
fc(pr)
>m
Bewegungs Alarm Kamera 1
$1
#
>W
; zeige einige Werte im WEBUI
Bewegungs Differenz{m}%mot%
Helligkeit{m}%bri%
Filesystem frei{m}%3(fsi(1)/1000)% MB
heap{m}%3(heap/1000)% kB
bu(df "ok" "Bildordner leeren")
nm(50 10000 50 limit "Limit: ")
; zeige stream auf WEBUI
$
$
$