Added more info to the fields
This commit is contained in:
		
							
								
								
									
										16
									
								
								main.py
									
									
									
									
									
								
							
							
						
						
									
										16
									
								
								main.py
									
									
									
									
									
								
							@@ -22,33 +22,35 @@ def get_hostname() -> str:
 | 
			
		||||
    return socket.gethostname()
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
def get_version() -> Optional[str]:
 | 
			
		||||
def get_version() -> str:
 | 
			
		||||
    try:
 | 
			
		||||
        with open('/version', 'r') as f:
 | 
			
		||||
            for line in f:
 | 
			
		||||
                if line.lower().startswith("version:"):
 | 
			
		||||
                    return line.split(":", 2)[1].strip()
 | 
			
		||||
 | 
			
		||||
    return None
 | 
			
		||||
            return "u"
 | 
			
		||||
    except FileNotFoundError:
 | 
			
		||||
        return "u"
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
def main():
 | 
			
		||||
    sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, socket.IPPROTO_UDP)
 | 
			
		||||
    sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEPORT, 1)
 | 
			
		||||
    sock.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
 | 
			
		||||
    sock.setsockopt(socket.SOL_SOCKET, socket.SO_BINDTODEVICE, b"eth0")
 | 
			
		||||
 | 
			
		||||
    sock.setsockopt(socket.SOL_SOCKET, socket.SO_BINDTODEVICE, b"enp3s0")
 | 
			
		||||
 | 
			
		||||
    while True:
 | 
			
		||||
 | 
			
		||||
        ipaddr = ""
 | 
			
		||||
        try:
 | 
			
		||||
            ipaddr = get_ip_address("eth0")
 | 
			
		||||
            ipaddr = get_ip_address("enp3s0")
 | 
			
		||||
        except:
 | 
			
		||||
            pass
 | 
			
		||||
 | 
			
		||||
        message = b"BIRBOX|" + ipaddr.encode() + b"|" + str(int(get_uptime())).encode()
 | 
			
		||||
        message = f"BIRBOX|{ipaddr}|{get_hostname()}|{get_version()}|{int(get_uptime())}"
 | 
			
		||||
 | 
			
		||||
        sock.sendto(message, ('<broadcast>', 6969))
 | 
			
		||||
        sock.sendto(message.encode("utf-8"), ('<broadcast>', 6969))
 | 
			
		||||
        time.sleep(10)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user