def parse_friend_connecting(value): a = value.split(',') friend_username = a[0] ip = a[1] port = a[2] print 'friend connecting: ' + friend_username + ' at ' + ip + ':' + port friend = Shared.get_peer_by_username(friend_username) if friend: friend.sock = Shared.server.sleeping_sockets[0] Shared.server.sleeping_sockets.pop(0) friend.sock.setblocking(0) threading.Thread(target=friend.start_punching, args=[(ip, int(port))]).start() Shared.server.append_sleeping_socket() # TODO: maybe move into that thread ^ else: print 'Connecting friend is not on friends list'
def append_active_chat(self, chat_title): self.active_chats.append(chat_title) self.active_chats.friend_state_changed(chat_title, StateCodes.get_state_by_code(Shared.get_peer_by_username(chat_title).state)) self.active_chats.select_by_username(chat_title)
def parse_friend_state_changed(value): friend_username, state = value.split(',') friend = Shared.get_peer_by_username(friend_username) if friend: friend.change_state(state)
def send_message(username, msg): friend = Shared.get_peer_by_username(username) if friend: friend.message(msg) else: print 'User ' + friend + ' not on friends list'