示例#1
0
 def __init__(self, buf = None, method = None, ruri = None, sipver = 'SIP/2.0', to = None, fr0m = None, via = None, cseq = None, \
              callid = None, maxforwards = None, body = None, contact = None, routes = (), target = None, cguid = None,
              user_agent = None, expires = None):
     SipMsg.__init__(self, buf)
     if buf != None:
         return
     self.method = method
     self.ruri = ruri
     if target == None:
         if len(routes) == 0:
             self.setTarget(self.ruri.getAddr())
         else:
             self.setTarget(routes[0].getAddr())
     else:
         self.setTarget(target)
     self.sipver = sipver
     self.appendHeader(SipHeader(name = 'via', body = via))
     if via == None:
         self.getHFBody('via').genBranch()
     self.appendHeaders([SipHeader(name = 'route', body = x) for x in routes])
     self.appendHeader(SipHeader(name = 'max-forwards', body = maxforwards))
     self.appendHeader(SipHeader(name = 'from', body = fr0m))
     if to == None:
         to = SipTo(address = SipAddress(url = ruri))
     self.appendHeader(SipHeader(name = 'to', body = to))
     self.appendHeader(SipHeader(name = 'call-id', body = callid))
     self.appendHeader(SipHeader(name = 'cseq', body = SipCSeq(cseq = cseq, method = method)))
     if contact != None:
         self.appendHeader(SipHeader(name = 'contact', body = contact))
     if expires == None and method == 'INVITE':
         expires = SipHeader(name = 'expires')
         self.appendHeader(expires)
     elif expires != None:
         expires = SipHeader(name = 'expires', body = expires)
         self.appendHeader(expires)
     if user_agent != None:
         self.user_agent = user_agent
         self.appendHeader(SipHeader(name = 'user-agent', bodys = user_agent))
     else:
         self.appendHeader(SipHeader(name = 'user-agent'))
     if cguid != None:
         self.appendHeader(SipHeader(name = 'cisco-guid', body = cguid))
         self.appendHeader(SipHeader(name = 'h323-conf-id', body = cguid))
     if body != None:
         self.setBody(body)
示例#2
0
文件: SipRAck.py 项目: biddyweb/b2bua
 def getRSeq(self):
     cseq, method = SipCSeq.getCSeq(self)
     return (self.rseq, cseq, method)
示例#3
0
文件: SipRAck.py 项目: biddyweb/b2bua
 def __init__(self, body = None, rseq = None, cseq = None, method = None):
     if body == None:
         self.rseq = rseq
         SipCSeq.__init__(self, cseq = cseq, method = method)
         return
     SipCSeq.__init__(self, body)
示例#4
0
 def getRSeq(self):
     cseq, method = SipCSeq.getCSeq(self)
     return (self.rseq, cseq, method)
示例#5
0
 def __init__(self, body=None, rseq=None, cseq=None, method=None):
     if body == None:
         self.rseq = rseq
         SipCSeq.__init__(self, cseq=cseq, method=method)
         return
     SipCSeq.__init__(self, body)