1 from django.shortcuts import render
2 from django.http import HttpResponse, HttpRequest
9 from django.views.decorators.csrf import csrf_exempt
12 dir_list = os.listdir("logs/")
13 connection = sqlite3.connect("logs/"+dir_list[0])
14 #connection.row_factory = lambda cursor, row: row[0]
15 cursor = connection.cursor()
16 rows = cursor.execute(query).fetchall()
21 #if request.method == 'POST':
23 if request.path == "/devices/views/all_views.json":
24 all_views = open('dbview/all_views.json')
25 return HttpResponse(all_views, content_type='text/json')
26 elif request.path == "/system/user_status.json":
27 user_status = open('dbview/user_status.json')
28 return HttpResponse(user_status, content_type='text/json')
29 elif request.path == "/session/check_setup_ok":
30 return HttpResponse('Login configured in user config')
31 elif request.path == "/session/check_login":
32 return HttpResponse('Login valid')
33 elif request.path == "/dynamic.js":
34 devices = load_db("select distinct(typestring) from datasources")
35 load_file = open('static/dynamic.js')
36 return HttpResponse(load_file, content_type='application/javascript')
37 elif request.path == "/gps/location.json":
38 user_status = open('dbview/gps_status.json')
39 return HttpResponse(user_status, content_type='text/json')
40 elif request.path == "/alerts/wrapped/last-time/0/alerts.json":
41 alerts = list(load_db("select cast(json as text) from alerts"))
42 alert_string="{\"kismet.alert.list\": ["
44 (single_alert,) = alert
45 alert_string = alert_string + single_alert + ","
46 alert_string = alert_string[:-1]
47 alert_string = alert_string + "] ,\"kismet.alert.timestamp\": "+str(time.time())+"}"
48 return HttpResponse(alert_string, content_type='text/json')
49 elif request.path == "/phy/phy80211/ssids/views/ssids.json":
50 user_status = open('dbview/ssids.json')
51 return HttpResponse(user_status, content_type='text/json')
52 elif request.path == "/system/status.json":
53 user_status = open('dbview/status.json')
54 return HttpResponse(user_status, content_type='text/json')
55 elif request.path == "/alerts/alerts_view.json":
57 alerts = list(load_db("select cast(json as text) from alerts"))
60 (single_alert,) = alert
61 alert_string = alert_string + single_alert + ","
62 alert_string = alert_string[:-1]
63 alert_string = alert_string + "]"
64 return HttpResponse(alert_string, content_type='text/json')
65 elif request.path == "/messagebus/last-time/0/messages.json":
66 messages = list(load_db("select * from messages DESC limit 30"))
67 message_string="{\"kismet.messagebus.list\": ["
68 for message in messages:
69 message_string = message_string + "{"
70 message_string = message_string + "\"kismet.messagebus.message_string\": \"" + message[4] + "\","
72 if message[3] == "INFO":
74 if message[3] == "LOW":
76 if message[3] == "MEDIUM":
78 if message[3] == "HIGH":
80 if message[3] == "CRITICAL":
82 if message[3] == "ERROR":
84 message_string = message_string + "\"kismet.messagebus.message_flags\": \"" + flag + "\","
85 message_string = message_string + "\"kismet.messagebus.message_time\": \"" + str(message[0]) + "\""
86 message_string = message_string + "},"
87 message_string = message_string[:-1]
88 message_string = message_string + "], \"kismet.messagebus.timestamp\": "+str(time.time())+" }"
89 return HttpResponse(message_string, content_type='text/json')
90 elif request.path == "/channels/channels.json":
91 user_status = open('dbview/channels.json')
92 return HttpResponse(user_status, content_type='text/json')
93 elif request.path == "/devices/views/all/devices.json":
94 #gotta figure out paging
95 total_dev=list(load_db("select count(device) from devices"))
96 (dev_count,) = total_dev[0]
97 dev_string = "{ \"recordsTotal\": "+str(dev_count)+", \"data\": ["
98 dev_list = list(load_db("select cast(device as text) from devices limit 50"))
99 for device in dev_list:
101 dev_string = dev_string + dev + ","
102 dev_string = dev_string[:-1]
103 dev_string = dev_string + "],\"draw\": 5,\"recordsFiltered\": "+str(dev_count)+"}"
104 return HttpResponse(dev_string, content_type='text/json')
105 elif request.path == "/eventbus/events.ws":
106 return HttpResponse("[]", content_type='text/json')
107 elif request.path == "/devices/multikey/as-object/devices.json":
109 for key, value in request.POST.items():
114 return HttpResponse("[]", content_type='text/json')