mirror of
				https://github.com/KevinMidboe/homeChecker.git
				synced 2025-10-29 17:40:26 +00:00 
			
		
		
		
	Init commit
This commit is contained in:
		
							
								
								
									
										44
									
								
								macLookup.py
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										44
									
								
								macLookup.py
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,44 @@ | ||||
| #!/usr/bin/python | ||||
|  | ||||
| import subprocess | ||||
| from time import time, sleep | ||||
|  | ||||
| # Define the users to lookup | ||||
| users = ['Elias', 'Kevin', 'Nora', 'Inge', 'Bazzinga'] | ||||
| addr = ['38:ca:da:eb:3f:da', '2c:33:61:aa:e6:a9', 'cc:29:f5:b8:2d:a2', 'ac:5f:3e:28:2a:c0', 'f0:79:59:70:a4:a6'] | ||||
|  | ||||
|  | ||||
| def whosHome(): | ||||
| 	# Get the output of the command 'arp-scan -l' | ||||
|     arpOutput = subprocess.check_output("sudo arp-scan -l", shell=True).split('\n') | ||||
|     # Strip away first three lines and last 5 lines | ||||
|     arpOutput = arpOutput[2:-4]  | ||||
|  | ||||
|     # Open file times.txt and read lines to 'logFile' | ||||
|     with open('/home/kevin/homeCheck/times.txt', 'r') as file: | ||||
| 	    logFile = file.readlines() | ||||
|  | ||||
|     i = 0 | ||||
|     # Go through each element in list 'addr' | ||||
|     for mac in addr: | ||||
|     	# Then iterate through each line in arpOutput | ||||
|     	for line in arpOutput: | ||||
|     		line_mac = str(line.split('\t')[1]) | ||||
|  | ||||
|     		# For each line we check after a matching mac addr | ||||
|     		if (mac in line_mac): | ||||
|     			logFile[i] = str(users[i]) + ':' + str(time()) + '\n' | ||||
|     			# print mac | ||||
|     			# print users[i] | ||||
|     			# print str(i) + '\n' | ||||
|     			# print logFile | ||||
|  | ||||
|     	i+=1 | ||||
|  | ||||
|     # Write changes to file | ||||
|     with open('/home/kevin/homeCheck/times.txt', 'w') as file: | ||||
|     	file.writelines(logFile) | ||||
|     	print logFile | ||||
|  | ||||
|  | ||||
| whosHome() | ||||
							
								
								
									
										23
									
								
								readFileHandler.py
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										23
									
								
								readFileHandler.py
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,23 @@ | ||||
| from socket import * | ||||
|  | ||||
| # Define the socket communicating will transfered | ||||
| serverSocket = socket(AF_INET, SOCK_DGRAM) | ||||
| serverSocket.bind(('', 12001)) | ||||
|  | ||||
| def readFile(): | ||||
| 	with open('/home/kevin/homeCheck/times.txt', 'r') as content_file: | ||||
| 		content = content_file.read() | ||||
| 		return content | ||||
|  | ||||
| while True: | ||||
| 	# Save the message and return address to variables. | ||||
| 	message, address = serverSocket.recvfrom(1024) | ||||
|  | ||||
| 	print(message, address) # Debug print | ||||
|  | ||||
| 	# This should prob be cases and not if's, but works to get the right info user requests. | ||||
| 	if (message == 'get_times'): | ||||
| 		return_message = readFile() | ||||
|  | ||||
| 	# Returns message to return address. | ||||
| 	serverSocket.sendto(return_message, address) | ||||
		Reference in New Issue
	
	Block a user