def __init__(self, host2, port2): # assign value to shared data variable RangeFinderServer.brake = True RangeFinderServer.warning = [] # server socket and port self.server_socket = socket.socket() self.server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) self.server_socket.bind((host2, port2)) self.server_socket.listen(0) self.connection, self.client_address = self.server_socket.accept() self.host_name = socket.gethostname() self.host_ip = socket.gethostbyname(self.host_name) # while VideoStreamServer.color is still empty while (VideoStreamServer.color == []): # if kill switch for threading is activated if (LatchingSwitch.tr_alive != True): # break from while loop break # rest for 0.1 second time.sleep(0.1) # execute server receiving self.receiving()
def getIpAddress(self, iface): # getIpAddress('eth0') if platform.system == "Linux" and fcntl_module_exists == True: s = socket(AF_INET, SOCK_DGRAM) ipAddr = inet_ntoa(fcntl_module.ioctl(s.fileno(), 0x8915, struct.pack('256s', iface[:15]))[20:24]) return str(ipAddr) else: # on windows ipAddr = [ip for ip in socket.gethostbyname_ex(socket.gethostname())[2] if not ip.startswith("127.")][:1] return str(ipAddr)
def get_current_ip(): import socket ip = (([ ip for ip in socket.gethostbyname_ex(socket.gethostname())[2] if not ip.startswith("127.") ] or [[(s.connect(("8.8.8.8", 53)), s.getsockname()[0], s.close()) for s in [socket.socket(socket.AF_INET, socket.SOCK_DGRAM)]][0][1]]) + ["no IP found"])[0] return ip
def __init__(self, host1, port1): # server socket and port self.server_socket = socket.socket() self.server_socket.bind((host1, port1)) self.server_socket.listen(0) self.connection, self.client_address = self.server_socket.accept() self.connection = self.connection.makefile('rb') self.host_name = socket.gethostname() self.host_ip = socket.gethostbyname(self.host_name) # execute server receiving self.receiving()
def __init__(self, host2, port2): # server socket and port self.server_socket = socket.socket() self.server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) self.server_socket.bind((host2, port2)) self.server_socket.listen(0) self.connection, self.client_address = self.server_socket.accept() self.host_name = socket.gethostname() self.host_ip = socket.gethostbyname(self.host_name) # execute server receiving self.receiving()
def getIpAddress(self, iface): # getIpAddress('eth0') if platform.system == "Linux" and fcntl_module_exists == True: s = socket(AF_INET, SOCK_DGRAM) ipAddr = inet_ntoa( fcntl_module.ioctl(s.fileno(), 0x8915, struct.pack('256s', iface[:15]))[20:24]) return str(ipAddr) else: # on windows ipAddr = [ ip for ip in socket.gethostbyname_ex(socket.gethostname())[2] if not ip.startswith("127.") ][:1] return str(ipAddr)
def __init__(self, name = "1", host = None, port = None, clientHandlerFunction = None): Thread.__init__(self) assert(host is None or isinstance(name, str)) assert(isinstance(host, str)) assert(isinstance(port, int)) assert(clientHandlerFunction is not None) gLog.print("Message server {0}: initializing at ({1}, {2})".format(name, host, port)) self.name = name if host is None: host = socket.gethostname() self.host = host self.port = port self.clientHandlerFunction = clientHandlerFunction self.serverSocket = None
def __init__(self, host2, port2): # assign value to shared data variable RangeFinderServer.brake = True # server socket and port self.server_socket = socket.socket() self.server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) self.server_socket.bind((host2, port2)) self.server_socket.listen(0) self.connection, self.client_address = self.server_socket.accept() self.host_name = socket.gethostname() self.host_ip = socket.gethostbyname(self.host_name) # execute server receiving self.receiving()
def __init__(self, host1, port1): # assign value to shared data variable VideoStreamServer.color = [] VideoStreamServer.grayscale = [] # server socket and port self.server_socket = socket.socket() self.server_socket.bind((host1, port1)) self.server_socket.listen(0) self.connection, self.client_address = self.server_socket.accept() self.connection = self.connection.makefile('rb') self.host_name = socket.gethostname() self.host_ip = socket.gethostbyname(self.host_name) # execute server receiving self.receiving()
def __init__(self, host1, port1): # server socket and port self.server_socket = socket.socket() self.server_socket.bind((host1, port1)) self.server_socket.listen(0) self.connection, self.client_address = self.server_socket.accept() self.connection = self.connection.makefile('rb') self.host_name = socket.gethostname() self.host_ip = socket.gethostbyname(self.host_name) # maximum red color range in ycrcb colouring self.upper_red = np.array(apv.upred) # minimum red color range in ycrcb colouring self.lower_red = np.array(apv.lowred) # execute server receiving self.receiving()
def connect(url): """Connect to UNIX or TCP socket. :param url: can be either tcp://<host>:port or ipc://<path> """ url = urlparse(url) if url.scheme == 'tcp': sock = socket() netloc = tuple(url.netloc.rsplit(':', 1)) hostname = socket.gethostname() elif url.scheme == 'ipc': sock = socket(AF_UNIX) netloc = url.path hostname = 'localhost' else: raise ValueError('unknown socket type: %s' % url.scheme) sock.connect(netloc) return sock, hostname
def connect(url): """Connect to UNIX or TCP socket. url can be either tcp://<host>:port or ipc://<path> """ url = urlparse(url) if url.scheme == 'tcp': sock = socket() netloc = tuple(url.netloc.rsplit(':', 1)) hostname = socket.gethostname() elif url.scheme == 'ipc': sock = socket(AF_UNIX) netloc = url.path hostname = 'localhost' else: raise ValueError('unknown socket type: %s' % url.scheme) sock.connect(netloc) return sock, hostname
def __init__(self, host4, port4): # futaba controller channel 1 self.left = apv.left self.right = apv.right self.center = apv.center # futaba controller channel 3 self.backward = apv.mbackward self.forward = apv.mforward self.stop = apv.stop # server socket self.server_socket = socket.socket() self.server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) self.server_socket.bind((host4, port4)) self.server_socket.listen(0) self.connection, self.client_address = self.server_socket.accept() self.host_name = socket.gethostname() self.host_ip = socket.gethostbyname(self.host_name) # execute server receiving self.receiving()
def startBotVisionClient(self, server_ip): import socket # import needs to be here b/c same name as "from socket ..." on line 0 print("Entered the startBotVisionClient thread") global vs # initialize the ImageSender object with the socket address of server sender = imagezmq.ImageSender( connect_to="tcp://{}:5555".format(server_ip)) # get the host name, initialize the video stream, and allow the # camera sensor to warmup rpiName = socket.gethostname() vs = VideoStream(usePiCamera=True, resolution=(240, 144), framerate=25) vs.start() # vs = VideoStream(src=0).start() time.sleep(2.0) while True: # read the frame from the camera and send it to the server frame = vs.read() sender.send_image(rpiName, frame)
from socket import AF_INET, socket, SOCK_STREAM from threading import Thread, Lock HOST = '' PORT = 5500 BUFSIZ = 1024 ADDR = (HOST, PORT) SERVER = socket(AF_INET, SOCK_STREAM) SERVER.bind(ADDR) HOST_NAME = socket.gethostname() HOST_IP = socket.gethostbyname(HOST_NAME) def broadcast(msg): pass def exception_quit(): pass def connection_handler(client_socket): first_message = 'Welcome to the chat' + 'You can type {quit} to exit' + 'Now, please type in your name' client_socket.send(bytes(first_message, "utf8")) name = client_socket.recv(BUFSIZ).decode("utf8") sec_message = f"{name} has joined the chat. Welcome!" broadcast(sec_message) no_error = True while no_error: try: msg = client_socket.recv(BUFSIZ).decode("utf8")
def all_sync(event=0): def get_myclip(): global old_clip server_clip = pyperclip.paste() if old_clip != server_clip: old_clip = server_clip return server_clip, True else: return server_clip, False def add_user(work_mode, timeout=1): global user_list sock.settimeout(timeout) try: conn, addr = sock.accept() except: return name = pickle.loads(conn.recv(1024)) conn.send(pickle.dumps(work_mode)) user_list[name] = (conn, addr) print(name, "connected from ip", addr[0]) def all_sync(): global user_list, clip, clip_user, clip_ch_flag global old_clip server_clip, ch_flag = get_myclip() if ch_flag: print("clip changed to server clip") for j in user_list: user_list[j][0].send(pickle.dumps([server_clip, "clip"])) return if clip_ch_flag: clip_ch_flag = False print("clip changed to ", clip_user, " clip") for j in user_list: user_list[j][0].send(pickle.dumps([clip, "clip"])) def port_bind(event): port = entry_port.get() if not port.isdigit() or int(port) in range(0, 1024): entry_port.delete(0, END) entry_port.insert(0, "Incorrect port") entry_port.after(1000, lambda: entry_port.delete(0, END)) return entry_port.destroy() port_label_value = Label(text=port, bg="#33FFFF", fg="white") port_label_value.place(x=55, y=40) start_button["text"] = "Exit" start_button.bind("<Button-1>", func=lambda x: exit()) status_label["text"] = "Starting server" status_label["bg"] = "orange" sock.bind(('', int(port))) sock.listen(10) work_thread.start() status_label["text"] = "Server started" status_label["bg"] = "green" def thread_cycle(event=0): global work_mode while True: add_user(work_mode) recive_server_controller() all_sync() sleep(1) work_thread = Thread(target=thread_cycle) root.destroy() window = Tk() window.resizable(False, False) window.geometry("200x220") window.title("Server sync mode | server") entry_port = Entry(width=15) port_label = Label(text="Port") start_button = Button(window, text="Start", width=17) status_label = Label(text="Server stopped", bg="red", height=1, width=20) nick_name_label = Label(text="Your nickname is Server", bg="#00CCFF", fg="white", height=1, width=20) ip_label = Label(text=("Your IP is {}".format( socket.gethostbyname(socket.gethostname()))), bg="#00CCFF", fg="white", height=1, width=20) ip_label.place(x=25, y=160) nick_name_label.place(x=20, y=10) status_label.place(x=25, y=180) port_label.place(x=25, y=40) entry_port.place(x=55, y=40) start_button.place(x=35, y=70) start_button.bind("<Button-1>", func=port_bind) window.mainloop()
def A_t_a_mode(event=0): def add_user(work_mode, timeout=1): global user_list sock.settimeout(timeout) try: conn, addr = sock.accept() except: return name = pickle.loads(conn.recv(1024)) conn.send(pickle.dumps(work_mode)) user_list[name] = (conn, addr) lbox.insert(0, name) def all_to_all_send_recv(): global clip, clip_ch_flag, user_list, request, request_ch_flag, clip_user, request_user if request_ch_flag: request_ch_flag = False if request != "user_list_get": if request == "server": user_list[request_user][0].send( pickle.dumps([pyperclip.paste(), "clip"])) return user_list[request][0].send( pickle.dumps(["get_clip", "request"])) while True: if clip_ch_flag: clip_ch_flag = False user_list[request_user][0].send( pickle.dumps([clip, "clip"])) break else: user_list[request_user][0].send( pickle.dumps([[i for i in user_list] + ["server"], "user_list"])) print("user list send") def server_get_clip(event): global clip, clip_ch_flag, user_list, request, request_ch_flag, clip_user, request_user try: name = lbox.get(lbox.curselection()) except: return print(user_list) user_list[name][0].send(pickle.dumps(["get_clip", "request"])) while True: if clip_ch_flag: clip_ch_flag = False pyperclip.copy(clip) print("clip pasted to clip", name) break sleep(0.1) def entry_bind(event): port = entry_port.get() if not port.isdigit() or int(port) in range(0, 1024): entry_port.delete(0, END) entry_port.insert(0, "Incorrect port") entry_port.after(1000, lambda: entry_port.delete(0, END)) return entry_port.destroy() port_label_value = Label(text=port, bg="#33FFFF", fg="white") port_label_value.place(x=55, y=40) start_button["text"] = "Exit" start_button.bind("<Button-1>", func=lambda x: exit()) status_label["text"] = "Starting server" status_label["bg"] = "orange" sock.bind(('', int(port))) sock.listen(10) work_thread.start() status_label["text"] = "Server started" status_label["bg"] = "green" def thread_cycle(event=0): global work_mode while True: add_user(work_mode) recive_server_controller() all_to_all_send_recv() sleep(1) work_thread = Thread(target=thread_cycle) work_thread.daemon = True root.destroy() window = Tk() window.resizable(False, False) window.geometry("400x220") window.title("A-t-A mode | server") get_clip_button = Button(window, text="Get Clipboard") lbox = Listbox(width=20, height=10) entry_port = Entry(width=15) port_label = Label(text="Port") start_button = Button(window, text="Start", width=17) status_label = Label(text="Server stopped", bg="red", height=1, width=20) nick_name_label = Label(text="Your nickname is Server", bg="#00CCFF", fg="white", height=1, width=20) ip_label = Label(text=("Your IP is {}".format( socket.gethostbyname(socket.gethostname()))), bg="#00CCFF", fg="white", height=1, width=20) ip_label.place(x=25, y=160) nick_name_label.place(x=25, y=10) status_label.place(x=25, y=180) port_label.place(x=25, y=40) entry_port.place(x=55, y=40) start_button.place(x=25, y=70) lbox.place(x=250, y=10) get_clip_button.place(x=270, y=180) start_button.bind("<Button-1>", func=entry_bind) get_clip_button.bind("<Button-1>", func=server_get_clip) window.mainloop()
def get_current_ip(): import socket ip = (([ip for ip in socket.gethostbyname_ex(socket.gethostname())[2] if not ip.startswith("127.")] or [[(s.connect(("8.8.8.8", 53)), s.getsockname()[0], s.close()) for s in [socket.socket(socket.AF_INET, socket.SOCK_DGRAM)]][0][1]]) + ["no IP found"])[0] return ip
height=55, width=80, yscrollcommand=scrollbar.set) questions_list.tag_config('warning', background="yellow", foreground="red") scrollbar.pack(side=tkinter.RIGHT, fill=tkinter.Y) questions_list.pack(side=tkinter.LEFT, fill=tkinter.BOTH) questions_list.pack() messages_frame.pack() entry_field = tkinter.Entry(top, textvariable=my_msg) entry_field.bind("<Return>", send) entry_field.pack() send_button = tkinter.Button(top, text="Send", command=send) send_button.pack() top.protocol("WM_DELETE_WINDOW", on_closing) #-- sockets part---- buffer_size = 1024 client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) HOST = socket.gethostname() PORT = 33000 ADDR = (HOST, PORT) client_socket.connect(ADDR) receive_thread = Thread(target=receive) receive_thread.start() tkinter.mainloop() # Starts GUI execution.