| | |
| | | package com.genersoft.iot.vmp.gb28181.transmit.event.timeout.impl; |
| | | |
| | | import com.genersoft.iot.vmp.conf.SystemInfoTimerTask; |
| | | import com.genersoft.iot.vmp.gb28181.event.SipSubscribe; |
| | | import com.genersoft.iot.vmp.gb28181.transmit.SIPProcessorObserver; |
| | | import com.genersoft.iot.vmp.gb28181.transmit.event.timeout.ITimeoutProcessor; |
| | | import org.slf4j.Logger; |
| | | import org.slf4j.LoggerFactory; |
| | | import org.springframework.beans.factory.InitializingBean; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Component; |
| | |
| | | |
| | | @Component |
| | | public class TimeoutProcessorImpl implements InitializingBean, ITimeoutProcessor { |
| | | |
| | | private Logger logger = LoggerFactory.getLogger(TimeoutProcessorImpl.class); |
| | | |
| | | @Autowired |
| | | private SIPProcessorObserver processorObserver; |
| | |
| | | |
| | | @Override |
| | | public void process(TimeoutEvent event) { |
| | | // TODO Auto-generated method stub |
| | | CallIdHeader callIdHeader = event.getClientTransaction().getDialog().getCallId(); |
| | | String callId = callIdHeader.getCallId(); |
| | | SipSubscribe.Event errorSubscribe = sipSubscribe.getErrorSubscribe(callId); |
| | | SipSubscribe.EventResult<TimeoutEvent> timeoutEventEventResult = new SipSubscribe.EventResult<>(event); |
| | | errorSubscribe.response(timeoutEventEventResult); |
| | | try { |
| | | // TODO Auto-generated method stub |
| | | CallIdHeader callIdHeader = event.getClientTransaction().getDialog().getCallId(); |
| | | String callId = callIdHeader.getCallId(); |
| | | SipSubscribe.Event errorSubscribe = sipSubscribe.getErrorSubscribe(callId); |
| | | SipSubscribe.EventResult<TimeoutEvent> timeoutEventEventResult = new SipSubscribe.EventResult<>(event); |
| | | errorSubscribe.response(timeoutEventEventResult); |
| | | sipSubscribe.removeErrorSubscribe(callId); |
| | | sipSubscribe.removeOkSubscribe(callId); |
| | | } catch (Exception e) { |
| | | logger.error("[超时事件失败]: {}", e.getMessage()); |
| | | } |
| | | } |
| | | } |