def recvRequest(self, req, sip_t): if req.getMethod() in ('NOTIFY', 'PING'): # Whynot? return (req.genResponse(200, 'OK'), None, None) if req.getMethod() == 'INVITE': if self.rserv != None: return (req.genResponse(486, 'Busy Here'), None, None) # New dialog uaA = UA(self.global_config, self.recvEvent, disc_cbs = (self.sess_term,)) uaA.recvRequest(req, sip_t) return return (req.genResponse(501, 'Not Implemented'), None, None)
def recvRequest(self, req, sip_t): if req.getMethod() in ('NOTIFY', 'PING'): # Whynot? return (req.genResponse(200, 'OK'), None, None) if req.getMethod() == 'INVITE': if self.rserv != None: return (req.genResponse(486, 'Busy Here'), None, None) # New dialog uaA = UA(self.global_config, self.recvEvent, disc_cbs=(self.sess_term, )) uaA.recvRequest(req, sip_t) return return (req.genResponse(501, 'Not Implemented'), None, None)
def answer(self, global_config, body, req, sip_t): in_body = req.getBody() in_body.parse() if not checkhostport(in_body, self.portrange, self.atype): self.nerrs += 1 raise ValueError('Bob(%s): hostport validation has failed' % str(self.__class__)) # New dialog uaA = UA(global_config, self.recvEvent, disc_cbs = (self.disconnected,), \ fail_cbs = (self.disconnected,), dead_cbs = (self.alldone,)) uaA.godead_timeout = 10 uaA.compact_sip = self.compact_sip Timeout(self.ring, self.ring_ival, 1, uaA) self.body = body return uaA.recvRequest(req, sip_t)