示例#1
0
	def from_station_url(cls, url):
		inet_address = InetAddress(url["address"], url["port"])
		station_address = StationAddress(inet_address, 0)
		return cls(
			station_address, url["PID"], url["CID"], url["RVCID"], url.get_type_id(), url["sid"],
			url["stream"], url["natm"], url["natf"], url["type"], url["probeinit"]
		)
示例#2
0
    def set_station_url(self, url):
        self.address = StationAddress()
        self.address.address = InetAddress(url["address"], url["port"])
        self.address.extension_id = 0

        self.pid = url["PID"]
        self.cid = url["CID"]
        self.rvcid = url["RVCID"]
        self.url_type = url.get_type_id()
        self.sid = url["sid"]
        self.stream_type = url["stream"]
        self.natm = url["natm"]
        self.natf = url["natf"]
        self.type = url["type"]
        self.probeinit = url["probeinit"]
示例#3
0
 def handle_destroy_mesh(self, station, message):
     logger.info("Received destroy request")
     station_address = StationAddress.deserialize(message[4:])
     station_index = message[1]
     self.on_destroy_request(station, station_index, station_address)
示例#4
0
 def handle_join_request(self, station, message):
     logger.info("Received join request")
     station_address = StationAddress.deserialize(message[4:])
     station_index = message[1]
     self.station_protocol.send_ack(station, message)
     self.on_join_request(station, station_index, station_address)
示例#5
0
	def sizeof(): return StationAddress.sizeof() + 19

		
class StationConnectionInfo(collections.namedtuple("StationConnectionInfo", "public_station local_station")):
示例#6
0
	def deserialize(cls, data):
		address = StationAddress.deserialize(data)
		args = struct.unpack_from(cls.fmt, data, address.sizeof())
		return cls(address, *args)
示例#7
0
	def station_address(self):
		return StationAddress(self.inet_address(), 0)
示例#8
0
	def handle_destroy_mesh(self, station, message):
		station_address = StationAddress.deserialize(message[4:])
		station_index = message[1]
		self.on_destroy_request(station, station_index, station_address)
示例#9
0
	def handle_leave_response(self, station, message):
		station_address = StationAddress.deserialize(message[4:])
		station_index = message[1]
		self.on_leave_response(station, station_index, station_address)
示例#10
0
 def sizeof():
     return StationAddress.sizeof() + 19