OSDN Git Service

fix recque option.
[rec10/rec10-git.git] / rec10 / trunk / src / recque.py
1 #!/usr/bin/python\r
2 # coding: UTF-8\r
3 # Rec10 TS Recording Tools\r
4 # Copyright (C) 2009-2010 Yukikaze\r
5 import datetime\r
6 import os\r
7 import os.path\r
8 import glob\r
9 import time\r
10 import traceback\r
11 \r
12 import configreader\r
13 import recdblist\r
14 import recdb\r
15 def writeRecQue(parentpath,chtxt,title,opts):\r
16     f=open(os.path.join(parentpath,title+".recq"),"w")\r
17     optt=opts\r
18     #optt=opts.replace("E","")\r
19     #optt=optt.replace("D","")\r
20     #optt=optt.replace("R","")\r
21     str="99"+","+datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")+","+configreader.getConfEnv("iff")+","+chtxt+","+title+","+optt\r
22     f.write(str.encode('utf-8'))\r
23     f.close()\r
24 \r
25 def readRecQue(recquepath):\r
26     f=open(recquepath,"r")\r
27     line = unicode(f.readline(),'utf-8')\r
28     title=""\r
29     opts=""\r
30     chtxt=""\r
31     while line:\r
32         linec=line.split(",")\r
33         if len(linec)>3:\r
34             if linec[0]=="99":\r
35                 title=linec[4]\r
36                 opts=linec[5]\r
37                 chtxt=linec[2]+u"_"+linec[3]\r
38                 break\r
39         line = unicode(f.readline(),'utf-8')\r
40     dbkey=""\r
41     if opts.find("E")>-1:\r
42         dbkey=""\r
43         opts=opts.replace("E","")\r
44     elif opts.find("D")>-1:\r
45         dbkey=recdblist.REC_ENCODE_QUE\r
46         opts=opts.replace("D","")\r
47     elif opts.find("R")>-1:\r
48         dbkey=recdblist.REC_TS_DECODE_QUE\r
49         opts=opts.replace("R","")\r
50     bt=datetime.datetime.now()+datetime.timedelta(minutes=5)\r
51     et=bt+datetime.timedelta(minutes=30)\r
52     btime=bt.strftime("%Y-%m-%d %H:%M:%S")\r
53     etime=et.strftime("%Y-%m-%d %H:%M:%S")\r
54     if len(dbkey)>2:\r
55         recdb.reserveReckey(dbkey, title, chtxt, btime, etime, opts)\r
56 def searchRecQue(folderpath):\r
57     for file in glob.glob(os.path.join(folderpath,"*.recq")):\r
58         dtime = time.time()-os.path.getmtime(file)\r
59         dtime = int(dtime)\r
60         if dtime > 300:\r
61             try:\r
62                 readRecQue(os.path.join(folderpath, file))\r
63                 os.remove(os.path.join(folderpath, file))\r
64             except Exception, inst:\r
65                 recdblist.addCommonlogEX("Error", "searchRecQue(recque.py)", str(type(inst)), str(inst)+traceback.format_exc(),log_level=200)\r
66                 \r