Exemplo n.º 1
0
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'
Exemplo n.º 2
0
 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)
Exemplo n.º 3
0
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)
Exemplo n.º 4
0
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'