Skip to main content

Re: SIP Servlet POJO 0.2 draft

  • From: Eric Cheung < >
  • To:
  • Subject: Re: SIP Servlet POJO 0.2 draft
  • Date: Mon, 18 Feb 2013 08:47:42 -0500

Hi Binod,
A few comments below.


1) page 1 says:
"Any Java method annotated with one or more annotations that carry the following SIP meta-annotations will be used by the container to deliver the messages to the application."

So it implies 1 or 2 of @SipMethod, @SipResponseCode, and @SipResponseRange can be omitted.

So is the method below allowed?

  // method 1
  public void handleInviteResponse(SipServletResponse response) {

and is method 1 equivalent to method 2 below?

  // method 2
  public void handleInviteResponse(SipServletResponse response) {

If so, it seems @AnyResponse is unnecessary (but probably good to have as it makes the method annotation more explicit).

2) The Basic Rule, conflict resolution, Requests and Responses sections on page 8 may have some problem.

e.g. the Basic Rule on page 8 should address the case when any of ESm, ESc, ESr and ESp is empty (i.e. n=0). I think the subexpression should evaluate to true. Otherwise method 1 will never be selected.

Also the conflict resolution needs to be modified to address zero Sm, Sr or Sc.

e.g. consider the following 2 methods:

  // method 3
  public void handleRedirectResponse(SipServletResponse response) {...

  // method 4
  @Error300Response  // @SipResponseCode(value = 300)
public void handleMultipleChoiseResponse(SipServletResponse response) {...

when a 300 response comes in, it seems method 4 is more specific but the rule will select method 3.

(Perhaps an easy fix is to say for the Basic Rule, no annotation means the subexpression evaluates to true. For conflict resolution, the Jm with the least *positive* number of Sm is selected, followed by the Jm with zero Sm. Same with Sc and Sr. Also @AnyMethod do not count as Sm and @AnyResponse do not count as Sr.

3) page 5 - 2) @AnyResponse

I think it should read

@SipResponseRange(begin = *100*, end = 999)

i.e. not 200

4) if there are 2 methods that can be selected for a specific request or response, but they have the same specificity using the method, code or range rules, what is the behaviour? Is it a deployment error?

SIP Servlet POJO 0.2 draft

Binod 02/14/2013

Re: SIP Servlet POJO 0.2 draft

Eric Cheung 02/18/2013

Re: SIP Servlet POJO 0.2 draft

Binod 02/18/2013

Re: SIP Servlet POJO 0.2 draft

Lewis, Keith 02/18/2013

Re: SIP Servlet POJO 0.2 draft

Binod 02/18/2013
Please Confirm