|  |  | 
 |  |  | import javax.sip.message.Request;
 | 
 |  |  | import javax.sip.message.Response;
 | 
 |  |  | 
 | 
 |  |  | import com.alibaba.fastjson.JSON;
 | 
 |  |  | import com.genersoft.iot.vmp.storager.IRedisCatchStorage;
 | 
 |  |  | import org.slf4j.Logger;
 | 
 |  |  | import org.slf4j.LoggerFactory;
 | 
 |  |  | import org.springframework.beans.factory.annotation.Autowired;
 | 
 |  |  | 
 |  |  |    
 | 
 |  |  |    @Autowired
 | 
 |  |  |    private IVideoManagerStorager storager;
 | 
 |  |  | 
 | 
 |  |  |    @Autowired
 | 
 |  |  |    private IRedisCatchStorage redisCatchStorage;
 | 
 |  |  |    
 | 
 |  |  |    @Autowired
 | 
 |  |  |    private EventPublisher publisher;
 | 
 |  |  | 
 |  |  |    
 | 
 |  |  |    @Autowired
 | 
 |  |  |    private OtherResponseProcessor otherResponseProcessor;
 | 
 |  |  | 	 | 
 |  |  | 
 | 
 |  |  | 
 | 
 |  |  |    // 注:这里使用注解会导致循环依赖注入,暂用springBean
 | 
 |  |  |    private SipProvider tcpSipProvider;
 | 
 |  |  |       
 | 
 |  |  | 
 |  |  |       Request request = evt.getRequest();
 | 
 |  |  |       String method = request.getMethod();
 | 
 |  |  | //      logger.info("接收到消息:"+request.getMethod());
 | 
 |  |  | //      sipSubscribe.getSubscribe(evt.getServerTransaction().getBranchId()).response(evt);
 | 
 |  |  |       if (Request.INVITE.equals(method)) {
 | 
 |  |  |          InviteRequestProcessor processor = new InviteRequestProcessor();
 | 
 |  |  |          processor.setRequestEvent(evt);
 | 
 |  |  | 
 |  |  |          processor.setOffLineDetector(offLineDetector);
 | 
 |  |  |          processor.setCmder(cmder);
 | 
 |  |  |          processor.setStorager(storager);
 | 
 |  |  |          processor.setRedisCatchStorage(redisCatchStorage);
 | 
 |  |  |          return processor;
 | 
 |  |  |       } else {
 | 
 |  |  |          return new OtherRequestProcessor();
 | 
 |  |  | 
 |  |  |    }
 | 
 |  |  |    
 | 
 |  |  |    public ISIPResponseProcessor createResponseProcessor(ResponseEvent evt) {
 | 
 |  |  | 
 | 
 |  |  |       Response response = evt.getResponse();
 | 
 |  |  |       CSeqHeader cseqHeader = (CSeqHeader) response.getHeader(CSeqHeader.NAME);
 | 
 |  |  |       String method = cseqHeader.getMethod();
 |