Here I will share a very basic UDP chat application in Python using sockets.
It can work in point-to-point or broadcast mode.
For Point-to-Point, enter IP and Port.
For Broadcasting mode set the last byte of IP address to 255. i.e. 192.168.0.255.
Port number is HEX, remove the base 16 to make it decimal.
#!/usr/bin/env python import socket import sys, select # Read a line. Using select for non blocking reading of sys.stdin def getLine(): i,o,e = select.select([sys.stdin],[],[],0.0001) for s in i: if s == sys.stdin: input = sys.stdin.readline() return input return False host = raw_input("Please Enter IP: ") port = int(raw_input("Please Enter PORT: "), 16) # Base 16 for hex value send_address = (host, port) # Set the address to send to s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) # Create Datagram Socket (UDP) s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) # Make Socket Reusable s.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1) # Allow incoming broadcasts s.setblocking(False) # Set socket to non-blocking mode s.bind(('', port)) #Accept Connections on port print "Accepting connections on port", hex(port) while 1: try: message, address = s.recvfrom(8192) # Buffer size is 8192. Change as needed. if message: print address, "> ", message except: pass input = getLine(); if(input != False): s.sendto(input, send_address)