class SIPBaseTransport(gobject.GObject): """Base class for SIP transports.""" __gsignals__ = { "message-received": (gobject.SIGNAL_RUN_FIRST, gobject.TYPE_NONE, ([object])) } @property def protocol(self): raise NotImplementedError @property def ip(self): raise NotImplementedError @property def port(self): raise NotImplementedError def __init__(self): gobject.GObject.__init__(self) self._parser = SIPMessageParser() self._parser.connect("message-parsed", self.on_message_parsed) def on_message_parsed(self, parser, message): self.emit("message-received", message) def send(self, message, callback=None, errback=None): if type(message) is SIPRequest: message.add_header("Via", SIPVia(self.protocol, self.ip, self.port)) message.add_header("Max-Forwards", 70) self._send(message, callback, errback) def _send(self, message): raise NotImplementedError def log_message(self, prefix, message): for line in message.splitlines(): logger.debug(prefix + " " + line)
class SIPBaseTransport(gobject.GObject): """Base class for SIP transports.""" __gsignals__ = { "message-received": (gobject.SIGNAL_RUN_FIRST, gobject.TYPE_NONE, ([object])) } def __init__(self): gobject.GObject.__init__(self) self._parser = SIPMessageParser() self._parser.connect("message-parsed", self.on_message_parsed) def on_message_parsed(self, parser, message): self.emit("message-received", message) def send(self, message): raise NotImplementedError def log_message(self, prefix, message): for line in message.splitlines(): logger.debug(prefix + " " + line)
def __init__(self): gobject.GObject.__init__(self) self._parser = SIPMessageParser() self._parser.connect("message-parsed", self.on_message_parsed)