示例#1
0
 def find_session(self, host=None, idurl=None):
     """
     """
     from transport.udp import udp_session
     if idurl:
         return udp_session.sessions_by_peer_id().get(idurl_to_id(idurl), [])
     return udp_session.sessions_by_peer_id().get(host, [])
示例#2
0
 def isKnownUser(self, arg):
     """
     Condition method.
     """
     user_id = arg
     if udp_session.get_by_peer_id(user_id) is not None:
         return True
     if udp_connector.get(user_id) is not None:
         return True
     if _Debug:
         lg.out(_DebugLevel, 'udp_node.isKnownUser %s not found in %s' % (
             user_id, udp_session.sessions_by_peer_id().keys()))
     return False
示例#3
0
 def isKnownUser(self, arg):
     """
     Condition method.
     """
     user_id = arg
     if udp_session.get_by_peer_id(user_id):
         return True
     if udp_connector.get(user_id) is not None:
         return True
     if _Debug:
         lg.out(_DebugLevel, 'udp_node.isKnownUser %s not found in %s' % (
             user_id, list(udp_session.sessions_by_peer_id().keys())))
     return False
 def _try_reconnect():
     sess = udp_session.get_by_peer_id(sys.argv[2])
     reconnect = False
     if not sess:
         reconnect = True
         print 'sessions', udp_session.sessions_by_peer_id().keys()
         print map(lambda s: s.peer_id, udp_session.sessions().values())
     else:
         if sess.state != 'CONNECTED':
             print 'state: ', sess.state
             reconnect = True
     if reconnect:
         print 'reconnect', sess
         udp_session.add_pending_outbox_file(
             sys.argv[1] + '.signed', sys.argv[2], 'descr', Deferred(), False)
         udp_node.A('connect', sys.argv[2])
     reactor.callLater(0.5, _try_reconnect)
示例#5
0
 def _try_reconnect():
     sess = udp_session.get_by_peer_id(sys.argv[2])
     reconnect = False
     if not sess:
         reconnect = True
         print 'sessions', udp_session.sessions_by_peer_id().keys()
         print map(lambda s: s.peer_id,
                   udp_session.sessions().values())
     else:
         if sess.state != 'CONNECTED':
             print 'state: ', sess.state
             reconnect = True
     if reconnect:
         print 'reconnect', sess
         udp_session.add_pending_outbox_file(
             sys.argv[1] + '.signed', sys.argv[2], 'descr',
             Deferred(), False)
         udp_node.A('connect', sys.argv[2])
     reactor.callLater(0.5, _try_reconnect)
示例#6
0
 def find_session(self, host):
     """
     """
     from transport.udp import udp_session
     return udp_session.sessions_by_peer_id().get(host, [])
示例#7
0
 def send_keep_alive(self, host):
     """
     """
     from transport.udp import udp_session
     for sess in udp_session.sessions_by_peer_id().get(host, []):
         sess.automat('send-keep-alive')