Exemplo n.º 1
0
 def dumps(self):
     return b" ".join([
         self.username,
         int2bytes(self.sess_id),
         int2bytes(self.sess_version), self.nettype, self.addrtype,
         self.unicast_address
     ])
Exemplo n.º 2
0
    def dumps(self):
        # ToDo: better fmt handling
        fmt = b" ".join(self.fmt)

        ports = int2bytes(self.port)

        if self.number_of_ports != None:
            ports = ports + b"/" + int2bytes(self.number_of_ports)

        return b" ".join([self.media, ports, self.proto, fmt])
Exemplo n.º 3
0
    def dumps(self):
        # ToDo: better fmt handling
        fmt = b" ".join(self.fmt)

        ports = int2bytes(self.port)

        if self.number_of_ports != None:
            ports = ports + b"/" + int2bytes(self.number_of_ports)

        return b" ".join([self.media, ports, self.proto, fmt])
Exemplo n.º 4
0
    def dumps(self):
        addr = self.connection_address
        if self.addrtype == b"IP4":
            if self.ttl is not None:
                addr = addr + b"/" + int2bytes(self.ttl)
            if self.ttl is not None and self.number_of_addresses is not None:
                addr = addr + b"/" + int2bytes(self.number_of_addresses)

        # ToDo: IPv6
        return b" ".join([self.nettype, self.addrtype, addr])
Exemplo n.º 5
0
    def dumps(self):
        addr = self.connection_address
        if self.addrtype == b"IP4":
            if self.ttl is not None:
                addr = addr + b"/" + int2bytes(self.ttl)
            if self.ttl is not None and self.number_of_addresses is not None:
                addr = addr + b"/" + int2bytes(self.number_of_addresses)

        # ToDo: IPv6
        return b" ".join([self.nettype, self.addrtype, addr])
Exemplo n.º 6
0
    def dumps(self):
        ret = []
        for k in self._attributes_allowed:
            v = self._attributes[k]
            if v == None:
                continue

            if type(v) != list and type(v) != Attributes:
                v = [v]

            for v2 in v:
                if type(v2) == int:
                    d = int2bytes(v2)
                elif type(v2) == bytes:
                    d = v2
                else:
                    d = v2.dumps()

                ret.append(b"=".join([k, d]))
                if k != b"m":
                    # continue with next value if it isn't a media
                    continue

                for attr in v2.attributes:
                    ret.append(b"=".join([b"a", attr.dumps()]))

        ret.append(b"")

        return b"\r\n".join(ret)
Exemplo n.º 7
0
    def dumps(self):
        ret = []
        for k in self._attributes_allowed:
            v = self._attributes[k]
            if v == None:
                continue

            if type(v) != list and type(v) != Attributes:
                v = [v]

            for v2 in v:
                if type(v2) == int:
                    d = int2bytes(v2)
                elif type(v2) == bytes:
                    d = v2
                else:
                    d = v2.dumps()

                ret.append(b"=".join([k, d]))
                if k != b"m":
                    # continue with next value if it isn't a media
                    continue

                for attr in v2.attributes:
                    ret.append(b"=".join([b"a", attr.dumps()]))

        ret.append(b"")

        return b"\r\n".join(ret)
Exemplo n.º 8
0
    def get_value(self):
        """
        Prepare the value and return it as bytes.
        """
        if type(self._value) == bytes:
            return self._value
        if type(self._value) == int:
            return int2bytes(self._value)

        return self._value.dumps()
Exemplo n.º 9
0
    def get_value(self):
        """
		Prepare the value and return it as bytes.
		"""
        if type(self._value) == bytes:
            return self._value
        if type(self._value) == int:
            return int2bytes(self._value)

        return self._value.dumps()
Exemplo n.º 10
0
    def dumps(self):
        ret = b"SIP/2.0/" + self.protocol.upper() + b" " + self.address
        if self.port is not None:
            ret = ret + b":" + int2bytes(self.port)

        if self._params is not None and len(self._params) > 0:
            params = []
            for x in self._params:
                if x[1] != b"" and x[1] is not None:
                    params.append(b"=".join(x))
                else:
                    params.append(x[0])
            ret = ret + b";" + b";".join(params)

        return ret
Exemplo n.º 11
0
    def dumps(self):
        ret = b"SIP/2.0/" + self.protocol.upper() + b" " + self.address
        if self.port != None:
            ret = ret + b":" + int2bytes(self.port)

        if self._params != None and len(self._params) > 0:
            params = []
            for x in self._params:
                if x[1] != b"" and x[1] != None:
                    params.append(b"=".join(x))
                else:
                    params.append(x[0])
            ret = ret + b";" + b";".join(params)

        return ret
Exemplo n.º 12
0
    def dumps(self):
        # h = Header
        h = []
        if self.method is not None:
            h.append(self.method + b" " + self.uri.dumps() + b" " + self.protocol)
        elif self.response_code is not None:
            h.append(self.protocol + b" " + int2bytes(self.response_code) + b" " + self.status_message)
        else:
            return None

        sdp = b""
        if self.sdp is not None:
            sdp = self.sdp.dumps()
            self.headers.append(Header(name = b"content-type", value = b"application/sdp"))
            self.headers.append(Header(name = b"content-length", value = len(sdp)))

        h = h + self.headers.dump_list()

        return b"\r\n".join(h) + b"\r\n\r\n" + sdp
Exemplo n.º 13
0
    def dumps(self):
        # h = Header
        h = []
        if self.method is not None:
            h.append(self.method + b" " + self.uri.dumps() + b" " + self.protocol)
        elif self.response_code is not None:
            h.append(self.protocol + b" " + int2bytes(self.response_code) + b" " + self.status_message)
        else:
            return None

        sdp = b""
        if self.sdp is not None:
            sdp = self.sdp.dumps()
            self.headers.append(Header(name = b"content-type", value = b"application/sdp"))
            self.headers.append(Header(name = b"content-length", value = len(sdp)))

        h = h + self.headers.dump_list()

        return b"\r\n".join(h) + b"\r\n\r\n" + sdp
Exemplo n.º 14
0
    def dumps(self):
        if self.scheme is None:
            return b"*"

        r = self.scheme + b":"
        if self.user:
            r = r + self.user
            if self.password:
                r = r + b":" + self.password

            r = r + b"@"
        if self.host:
            r = r + self.host
            if self.port:
                r = r + b":" + int2bytes(self.port)

        if len(self.params) > 0:
            r = r + b";" + b"j".join([n + b"=" + v for n,v in self.params.items()])

        if len(self.headers) > 0:
            r = r + b"?" + b"&".join(self.headers)

        return r
Exemplo n.º 15
0
 def dumps(self):
     return int2bytes(self.seq) + b" " + self.method
Exemplo n.º 16
0
 def dumps(self):
     return int2bytes(self.seq) + b" " + self.method
Exemplo n.º 17
0
 def dumps(self):
     return b" ".join(
         [int2bytes(self.start_time),
          int2bytes(self.stop_time)])
Exemplo n.º 18
0
 def dumps(self):
     return b" ".join([int2bytes(self.start_time), int2bytes(self.stop_time)])
Exemplo n.º 19
0
 def dumps(self):
     return b" ".join([self.username, int2bytes(self.sess_id), int2bytes(self.sess_version), self.nettype, self.addrtype, self.unicast_address])
Exemplo n.º 20
0
 def dumps(self):
     return b":".join([self.bwtype, int2bytes(self.bandwidth)])
Exemplo n.º 21
0
 def dumps(self):
     return b":".join([self.bwtype, int2bytes(self.bandwidth)])