-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathgenerateFileDMS.py
126 lines (95 loc) · 3.12 KB
/
generateFileDMS.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
import sys,os
import datetime
import random
if ((len(sys.argv) < 3)):
print """\
This script renames files inside the folder to the format accepted by DMS App
Usage: python generateFileDMS.py latitude longitude SOURCE time_range dirName
1. Filename will be randomly spread in the area near latitude and longitude
2. Give SOURCE the same as given in DMS app
3. time_range : Time difference from the current time
4. dirName : Directory at which you want to rename the files
EXTENSION CONVERSION
---------------------
1. .webm -> .mp4
TYPE CONVERSION
---------------------
1. .jpg -> IMG
2. .mp4 -> VID
3. .webm -> VID
4. .txt -> SMS
"""
sys.exit(1)
lat = float(sys.argv[1])
lon = float(sys.argv[2])
# noOfFiles = int(sys.argv[3])
#x_range = float(sys.argv[4])
#y_range = float(sys.argv[5])
TTL = 50
SOURCE = sys.argv[3]
time_range = int(sys.argv[4])
dirName = sys.argv[5]
type_list = ["Victim","Shelter","Food","Health"]
def genFile(fileName, size):
with open(dirName + '/' + fileName, 'wb') as fout:
fout.write(os.urandom(size * 1024 * 1024))
def getLatLong():
val = random.randint(0,100)
if val < 20:
ddd = random.randint(1000,1500)
else:
ddd = random.randint(1500,2000)
v = random.randint(0,3)
if v == 0:
la = float(lat - float(random.randint(0,ddd))/1000000.0)
lo = float(lon + float(random.randint(0,ddd))/1000000.0)
elif v==1:
la = float(lat + float(random.randint(0,ddd))/1000000.0)
lo = float(lon - float(random.randint(0,ddd))/1000000.0)
elif v==2:
la = float(lat + float(random.randint(0,ddd))/1000000.0)
lo = float(lon + float(random.randint(0,ddd))/1000000.0)
elif v==3:
la = float(lat - float(random.randint(0,ddd))/1000000.0)
lo = float(lon - float(random.randint(0,ddd))/1000000.0)
la = "%2.6f"% (la,)
lo = "%2.6f"% (lo,)
print str(la) + ',' + str(lo)
return (la,lo)
def random_date(start, end):
"""
This function will return a random datetime between two datetime
objects.
"""
delta = end - start
int_delta = (delta.days * 24 * 60 * 60) + delta.seconds
random_second = random.randrange(int_delta)
return start + datetime.timedelta(seconds=random_second)
def getTime():
d2 = datetime.datetime.now()
d1 = d2 - datetime.timedelta(hours=time_range)
return random_date(d1, d2).strftime('%Y%m%d%H%M%S')
onlyfiles = [f for f in os.listdir(dirName) if os.path.isfile(os.path.join(dirName, f))]
for file_name in onlyfiles:
time_str = datetime.datetime.now()
dt_aware = time_str.strftime('%Y%m%d%H%M%S')
#print dt_aware
la,lo = getLatLong()
time_r = getTime()
if(file_name[-3:] == "jpg"):
ext_str = "_1.jpg"
type_str = "IMG_"
if(file_name[-3:] == "mp4"):
ext_str = "_1.mp4"
type_str = "VID_"
if(file_name[-4:] == "webm"):
ext_str = "_1.mp4"
type_str = "VID_"
if(file_name[-3:] == "txt"):
ext_str = "_1.txt"
type_str = "SMS_"
fileName = type_str + str(TTL) + "_" + random.choice(type_list) + "_" + str(SOURCE) + "_defaultMcs_" + str(la) + "_" + str(lo) + "_" + time_r + ext_str
os.rename(os.path.join(dirName, file_name), os.path.join(dirName, fileName))
#size = random.randint(x_range,y_range)
#genFile(fileName,size)
#print allFileNames