Академический Документы
Профессиональный Документы
Культура Документы
Overview:
The IMG supports the media flow direction attributes sendrecv, recvonly, sendonly, and inactive.
These attributes, which are interpreted from the senders perspective, set the direction of the
media stream to be established in the SIP protocol. The flow attributes present in the SDP
portion of the SIP messaging will be used to support the call hold/resume scenario which is
explained in RFC 3264 section 6.1 and still be backwards compatible with the call hold feature
of RFC 2543 section B5. Up until software version 10.5.2 the IMG supported the Call Hold
scenario using the "c=0.0.0.0" line in the SDP message to put a call on hold. With the addition
of the Media Flow direction Attributes a call can now be put on hold and then the call can be
resumed by sending a Re-INVITE message with both the c=0.0.0.0 and one of the Flow
attributes displayed above.
recvonly - The SIP endpoint would only receive (listen mode) and not send media.
sendonly - The SIP endpoint would only send and not receive media.
inactive - The SIP endpoint would neither send nor receive media.
Table 1 below shows the response the IMG will use when it receives a Media Flow Attribute on
the incoming side.
Table 1:
Attribute in incoming Re- Attribute in 200 OK IMG Connection Mode
INVITE response
a=sendrecv a=sendrecv 2-Way Connection
a=sendonly a=recvonly Listen Mode (recv)
a=recvonly a=sendonly Transmit Mode (send)
c=0.0.0.0 c=0.0.0.0 Hold
a=inactive a=inactive Hold
c=0.0.0.0 and a=inactive c=0.0.0.0 and a=inactive Hold
1. A 2-way call is established from GW-A to GW-B through the IMG using normal call
messaging procedures.
2. GW-A wants to put the call on hold. GW-A sends a Re-INVITE message to the IMG
with the a=sendonly line in the SDP. This tells the IMG that GW-A is in a send-only
mode and will not receive RTP/RTCP data.
3. The IMG then sends a 200 OK response with the a=recvonly line indicating that it will
only receive RTP/RTCP data and not transmit RTP/RTCP data packets to GW-A. At this
point, GW-A can only transmit to IMG.
4. The IMG then sends a Re-INVITE message to GW-B with the c=0.0.0.0 and a=inactive
in the SDP. By sending these two messages, the IMG effectively puts the call on hold.
5. GW-B responds with a 200 OK telling the IMG it is now on hold. There is no voice path
between IMG and GW-B.
6. GW-A then wants to take the call off hold and resume the call. It sends a Re-INVITE to
the IMG with the line a=sendrecv telling the IMG it is now in a send/receive mode and
the call can resume.
7. The IMG responds with 200 OK message with the a=sendrecv line in its SDP.
8. The IMG then sends a Re-INVITE to GW-B with the same a=sendrecv message in its
SDP. GW-A responds with 200 OK and a=sendrecv in the SDP.
9. At this point the call resumes and RTP/RTCP data begin flowing again.
Additional Information:
Support of the Media Call Flow Attributes is limited to the Re-INVITE method only. If a
gateway sends a different method such as the UPDATE method with Media Call Flow
attributes set for call hold or resume,IMG will honor the UPDATE method but not put
call on hold or off hold/resume.
Absence of a Call Flow Attribute in the Re-INVITE shall default to sendrecv.
Call Flow attributes within an INVITE message will be ignored.
IMG by default will use c=0.0.0.0 and a=inactive in the Re-INVITE to propagate the call
hold to outgoing SIP leg.
RTP as well as RTCP will be stopped when media is put "On Hold".
IMG honors 'recvonly' attribute in re-invite SDP, and responds with 'sendonly' in the 200
OK SDP.
Sample SDP messages shown below:
v=0
s=Dialogic-SIP
a=sendonly
a=rtpmap:0 PCMU/8000
a=silenceSupp:off
v=0
s=Dialogic-SIP
t=0.0
a=rtpmap:0 PCMU/8000
a=silenceSupp:off
a=sendonly