-1

I have a SIP door system. I have developed the code to register and make call.

Once I make an INVITE, I get a session progress immediately and now I need to send a numeric character code during this Session.

I am using Jain SIP for development.

Vadim Kotov
  • 8,084
  • 8
  • 48
  • 62
gourig
  • 81
  • 1
  • 11
  • How do you need to send the numeric code? is it *in-band* (e.g. through RTP events or plain DTMF) or *out-of-band* (e.g. using INFO method) – jsantander Apr 24 '15 at 10:37
  • I think I can use INFO method and I need to send the code as DTMF signal. Do I have to convert my character code to DTMF signal and send it? – gourig Apr 24 '15 at 11:29
  • well, it really depends what the other expects or what you are able to negotiate. – jsantander Apr 24 '15 at 11:46
  • Actually when I call the system from their Provided SIP phone or My Phone, once the session starts when I dial the code like e.g: 1111* it accepts it. so m sure it accepts DTMF signal. – gourig Apr 24 '15 at 11:51

1 Answers1

1

To send DTMF/Key presses there are some different options: The other end is likely expecting telephony-events RFC 4733 or just sending the DTMF (less likely as compressed voice many times makes DTMF recognition difficult).

Now the thing is that traditionally, while receiving communication is possible immediately (e.g. listening to ringing tones or non-chargeable announcements), bidirectional communication is only possible after answer (which in SIP translates to after 200 OK).

In your case, there's a chance that the other end, your terminal or provider you are using might enforce that restriction.

If not then you can use early media (you can look at RFC 3960 for full discussion.

Basically the receiving end can send an SDP Answer on an 18x provisional response (e.g. 183 Call Progress). Having exchanged that, calling and called MAY initiate the communication (and it could be bidirectional).

There are two possibilities:

  1. calling and called support provisional reliable responses (see RFC 3262. In this case the negotiation is completed with a PRACK. The media negotiated could be modified before the 200 OK using UPDATE requests.

  2. calling or called does not support provisional reliable response. SDP Answer can still be included in the 18x, but it cannot change before answer and the 200 OK must carry exactly the same SDP Answer.

Community
  • 1
  • 1
jsantander
  • 4,972
  • 16
  • 27