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
|
import yaml
import os, subprocess
class Wifi:
access_points = []
def __init__(self):
subprocess.call("iwlist wlan0 scan > temp.txt", shell = True)
output = open("temp.txt")
lines = output.readlines()
for index, line in enumerate(lines):
if "Address" in line:
address = line[29:-1]
name = lines[index + 1].split("\"")[1]
self.access_points.append(name)
self.access_points = list(set(self.access_points))
os.system("rm temp.txt")
def add_wifi(self, SSID, KEY=""):
networks = yaml.safe_load(open("networks.yml", "r"))
# add new network to front of list
network = {"SSID": SSID, "KEY": KEY}
networks.insert(0, network)
with open('networks.yml', 'w') as outputFile:
output = yaml.dump(networks)
outputFile.write(output)
def set_default_wifi(self, SSID, KEY=""):
text = open("connect.txt", "r").read()
text = text.replace("{{ SSID }}", SSID)
text = text.replace("{{ KEY }}", KEY)
outputFile = open("/etc/network/interfaces", "w")
outputFile.write(text)
outputFile.flush()
outputFile.close()
subprocess.call(["sudo", "/etc/init.d/networking", "restart"])
def setup_adhoc(self):
text = open("broadcast.txt", "r").read()
outputFile = open("/etc/network/interfaces","w")
outputFile.write(text)
outputFile.flush()
outputFile.close()
subprocess.call(["sudo", "/etc/init.d/networking", "restart"])
subprocess.call(['sudo', '/usr/sbin/dhcpd', '-q', '-cf', '/etc/dhcp/dhcpd.conf', '-pf', '/var/run/dhcpd.pid'])
subprocess.call(["sudo", "/etc/init.d/networking", "restart"])
|