internal override StateResult HandleSendingResponse(SipInviteServerTransaction tx, SipResponse response) { var stateResult = new StateResult(); var statusCode = response.StatusLine.StatusCode; if (statusCode >= 100 && statusCode < 200) { tx.SendResponseInternal(response); } else if (statusCode >= 200 && statusCode < 300) { tx.SendResponseInternal(response); stateResult.Dispose = true; } else if (statusCode >= 300 && statusCode < 700) { tx.SendResponseInternal(response); tx.ChangeState(SipInviteServerTransaction.CompletedState); } return stateResult; }
internal override StateResult HandleSendingResponse(SipInviteServerTransaction tx, SipResponse response) { var stateResult = new StateResult(); var statusCode = response.StatusLine.StatusCode; if (statusCode >= 100 && statusCode < 200) { tx.SendResponseInternal(response); } else if (statusCode >= 200 && statusCode < 300) { tx.SendResponseInternal(response); stateResult.Dispose = true; } else if (statusCode >= 300 && statusCode < 700) { tx.SendResponseInternal(response); tx.ChangeState(SipInviteServerTransaction.CompletedState); } return(stateResult); }
internal override StateResult ProcessRequest(SipInviteServerTransaction tx, SipRequestEvent requestEvent) { /* 17.2.1 If an ACK is received while the server transaction is in the "Completed" state, the server transaction MUST transition to the "Confirmed" state. */ if (requestEvent.Request.RequestLine.Method == SipMethods.Ack) { tx.ChangeState(SipInviteServerTransaction.ConfirmedState); } else { tx.SendResponseInternal(); } return new StateResult(); }
internal override StateResult ProcessRequest(SipInviteServerTransaction tx, SipRequestEvent requestEvent) { /* 17.2.1 If an ACK is received while the server transaction is in the * "Completed" state, the server transaction MUST transition to the * "Confirmed" state. */ if (requestEvent.Request.RequestLine.Method == SipMethods.Ack) { tx.ChangeState(SipInviteServerTransaction.ConfirmedState); } else { tx.SendResponseInternal(); } return(new StateResult()); }
public void RetransmitNonx200FinalResponse(SipInviteServerTransaction tx) { tx.ReTransmitNonx200FinalResponseTimer.Interval = Math.Min(2*tx.ReTransmitNonx200FinalResponseTimer.Interval, SipConstants.T2); tx.SendResponseInternal(); }
public void RetransmitNonx200FinalResponse(SipInviteServerTransaction tx) { tx.ReTransmitNonx200FinalResponseTimer.Interval = Math.Min(2 * tx.ReTransmitNonx200FinalResponseTimer.Interval, SipConstants.T2); tx.SendResponseInternal(); }
internal override StateResult ProcessRequest(SipInviteServerTransaction tx, SipRequestEvent requestEvent) { tx.SendResponseInternal(); requestEvent.IsSent = true; return new StateResult(); }
internal override StateResult ProcessRequest(SipInviteServerTransaction tx, SipRequestEvent requestEvent) { tx.SendResponseInternal(); requestEvent.IsSent = true; return(new StateResult()); }