PROGRESS message.
The gateway SHALL map a received QSIG PROGRESS message to a SIP 183
(Session Progress) response to the INVITE request. If the SIP INVITE
request contained either a Require header or a Supported header with
option tag 100rel, the gateway SHALL include in the SIP 183 response
a Require header with option tag 100rel.
NOTE: In accordance with [11], inclusion of option tag 100rel in a
provisional response instructs the UAC to acknowledge the provisional
response by sending a PRACK request. [11] also specifies procedures
for repeating a provisional response with option tag 100rel if no
PRACK is received.
If the QSIG PROGRESS message contained a Progress indicator
information element with Progress description number 1 or 8, the
gateway SHALL connect the media streams to the corresponding user
information channel of the inter-PINX link if it has not already done
so, provided that SDP answer information is included in the
transmitted SIP response to the INVITE request or has already been
sent or received. Inclusion of SDP offer or answer information in
the 183 provisional response SHALL be in accordance with Section
8.3.5.
If the QSIG PROGRESS message is received with a Cause information
element, the gateway SHALL either wait until the tone/announcement is
complete or has been applied for sufficient time before initiating
call clearing, or wait for a SIP CANCEL request. If call clearing is
initiated, the cause value in the QSIG PROGRESS message SHALL be used
to derive the response to the SIP INVITE request in accordance with
Table 1.
8.3.4. Receipt of QSIG ALERTING Message
The gateway SHALL map a QSIG ALERTING message to a SIP 180 (Ringing)
response to the INVITE request. If the SIP INVITE request contained
either a Require header or a Supported header with option tag 100rel,
the gateway SHALL include in the SIP 180 response a Require header
with option tag 100rel.
NOTE: In accordance with [11], inclusion of option tag 100rel in a
provisional response instructs the UAC to acknowledge the provisional
response by sending a PRACK request. [11] also specifies procedures
for repeating a provisional response with option tag 100rel if no
PRACK is received.
If the QSIG ALERTING message contained a Progress indicator
information element with Progress description number 1 or 8, the
gateway SHALL connect the media streams to the corresponding user
information channel of the inter-PINX link if it has not already done
so, provided that SDP answer information is included in the
transmitted SIP response or has already been sent or received.
Inclusion of SDP offer or answer information in the 180 provisional
response SHALL be in accordance with Section 8.3.5.
8.3.5. Inclusion of SDP Information in a SIP 18x Provisional Response
When sending a SIP 18x provisional response to the INVITE request, if
a QSIG message containing a Progress indicator information element
with progress description number 1 or 8 has been received the gateway
SHALL include SDP information. Otherwise, the gateway MAY include
SDP information. If SDP information is included, it shall be in
accordance with the following rules.
If the SIP INVITE request contained a Required or Supported header
with option tag 100rel, and if SDP offer and answer information has
already been exchanged, no SDP information SHALL be included in the
SIP 18x provisional response.
If the SIP INVITE request contained a Required or Supported header
with option tag 100rel, and if SDP offer information was received in
the SIP INVITE request but no SDP answer information has been sent,
SDP answer information SHALL be included in the SIP 18x provisional
response.
If the SIP INVITE request contained a Required or Supported header
with option tag 100rel, and if no SDP offer information was received
in the SIP INVITE request and no SDP offer information has already
been sent, SDP offer information SHALL be included in the SIP 18x
provisional response.
NOTE: In this case, SDP answer information can be expected in the SIP
PRACK.
If the SIP INVITE request contained neither a Required nor a
Supported header with option tag 100rel, SDP answer information SHALL
be included in the SIP 18x provisional response.
NOTE: Because the provisional response is unreliable, SDP answer
information needs to be repeated in each provisional response and in
the final SIP 2xx response.
NOTE: If the SIP INVITE request contained no SDP offer information
and neither a Required nor a Supported header with option tag 100rel,
it should have been rejected in accordance with Section 8.3.1.
8.3.6. Receipt of QSIG CONNECT Message
The gateway SHALL map a QSIG CONNECT message to a SIP 200 (OK) final
response for the SIP INVITE request. The gateway SHALL also send a
QSIG CONNECT ACKNOWLEDGE message.
If the SIP INVITE request contained a Required or Supported header
with option tag 100rel, and if SDP offer and answer information has
already been exchanged, no SDP information SHALL be included in the
SIP 200 response.
If the SIP INVITE request contained a Required or Supported header
with option tag 100rel, and if SDP offer information was received in
the SIP INVITE request but no SDP answer information has been sent,
SDP answer information SHALL be included in the SIP 200 response.
If the SIP INVITE request contained a Required or Supported header
with option tag 100rel, and if no SDP offer information was received
in the SIP INVITE request and no SDP offer information has already
been sent, SDP offer information SHALL be included in the SIP 200
response.
NOTE: In this case, SDP answer information can be expected in the SIP
ACK.
If the SIP INVITE request contained neither a Required nor a
Supported header with option tag 100rel, SDP answer information SHALL
be included in the SIP 200 response.
NOTE: Because the provisional response is unreliable, SDP answer
information needs to be repeated in each provisional response and in
the final 2xx response.
NOTE: If the SIP INVITE request contained no SDP offer information
and neither a Required nor a Supported header with option tag 100rel,
it may have been rejected in accordance with Section 8.3.1.
The gateway SHALL connect the media streams to the corresponding user
information channel of the inter-PINX link if it has not already done
so, provided that SDP answer information is included in the
transmitted SIP response or has already been sent or received.
8.3.7. Receipt of SIP PRACK Request
The receipt of a SIP PRACK request acknowledging a reliable
provisional response SHALL NOT result in any QSIG message being sent.
The gateway SHALL send back a SIP 200 (OK) response to the SIP PRACK
request.
If the SIP PRACK contains SDP answer information and a QSIG message
containing a Progress indicator information element with progress
description number 1 or 8 has been received, the gateway SHALL
connect the media streams to the corresponding user information
channel of the inter-PINX link.
8.3.8. Receipt of SIP ACK Request
The receipt of a SIP ACK request SHALL NOT result in any QSIG message
being sent.
If the SIP ACK contains SDP answer information, the gateway SHALL
connect the media streams to the corresponding user information
channel of the inter-PINX link if it has not already done so.
8.3.9. Receipt of a SIP INVITE Request for a Call Already Being
Established
A gateway can receive a call from SIP using overlap procedures. This
should occur when the UAC for the INVITE request is a gateway from a
network that employs overlap procedures (e.g., an ISUP gateway or
another QSIG gateway) and the gateway has not absorbed overlap.
For a call from SIP using overlap procedures, the gateway will
receive multiple SIP INVITE requests that belong to the same call but
have different Request-URI and To fields. Each SIP INVITE request
belongs to a different dialog.
A SIP INVITE request is considered to be for the purpose of overlap
sending if, compared to a previously received SIP INVITE request, it
has:
- the same Call-ID header;
- the same From header (including the tag);
- no tag in the To header;
- an updated Request-URI from which can be derived a called party
number with a superset of the digits derived from the previously
received SIP INVITE request;
and if
- the gateway has not yet sent a final response other than 484 to
the previously received SIP INVITE request.
If a gateway receives a SIP INVITE request for the purpose of overlap
sending, it SHALL generate a QSIG INFORMATION message using the call
reference of the existing QSIG call instead of a new QSIG SETUP
message and containing only the additional digits in the Called party
number information element. It SHALL also respond to the SIP INVITE
request received previously with a SIP 484 Address Incomplete
response.
If a gateway receives a SIP INVITE request that meets all of the
conditions for a SIP INVITE request for the purpose of overlap
sending except the condition concerning the Request-URI, the gateway
SHALL respond to the new request with a SIP 485 (Ambiguous) response.
8.4. Call Clearing and Call Failure
8.4.1. Receipt of a QSIG DISCONNECT, RELEASE, or RELEASE COMPLETE
Message
On receipt of QSIG DISCONNECT, RELEASE, or RELEASE COMPLETE message
as the first QSIG call clearing message, gateway behaviour SHALL
depend on the state of call establishment.
1) If the gateway has sent a SIP 200 (OK) response to a SIP INVITE
request and received a SIP ACK request, or if it has received a
SIP 200 (OK) response to a SIP INVITE request and sent a SIP ACK
request, the gateway SHALL send a SIP BYE request to clear the
call.
2) If the gateway has sent a SIP 200 (OK) response to a SIP INVITE
request (indicating that call establishment is complete) but has
not received a SIP ACK request, the gateway SHALL wait until a SIP
ACK is received and then send a SIP BYE request to clear the call.
3) If the gateway has sent a SIP INVITE request and received a SIP
provisional response but not a SIP final response, the gateway
SHALL send a SIP CANCEL request to clear the call.
NOTE 1: In accordance with [10], if after sending a SIP CANCEL
request a SIP 2xx response is received to the SIP INVITE request,
the gateway will need to send a SIP BYE request.
4) If the gateway has sent a SIP INVITE request but received no SIP
response, the gateway SHALL NOT send a SIP message. If a SIP
final or provisional response is subsequently received, the
gateway SHALL then act in accordance with 1, 2, or 3 above,
respectively.
5) If the gateway has received a SIP INVITE request but not sent a
SIP final response, the gateway SHALL send a SIP final response
chosen according to the cause value in the received QSIG message
as specified in Table 1. SIP response 500 (Server internal error)
SHALL be used as the default for cause values not shown in
Table 1.
NOTE 2: It is not necessarily appropriate to map some QSIG cause
values to SIP messages because these cause values are meaningful only
at the gateway. A good example of this is cause value 44, "Requested
circuit or channel not available", which signifies that the channel
number in the transmitted QSIG SETUP message was not acceptable to
the peer PINX. The appropriate behavior in this case is for the
gateway to send another SETUP message indicating a different channel
number. If this is not possible, the gateway should treat it either
as a congestion situation (no channels available; see Section 8.3.1)
or as a gateway failure situation (in which case the default SIP
response code applies).
In all cases, the gateway SHALL also disconnect media streams, if
established, and allow QSIG and SIP signalling to complete in
accordance with [2] and [10], respectively.
Table 1: Mapping of QSIG Cause Value to SIP 4xx-6xx responses to an
INVITE request
QSIG Cause value SIP response
----------------------------------------------------------------
1 Unallocated number 404 Not found
2 No route to specified 404 Not found
transit network
3 No route to destination 404 Not found
16 Normal call clearing (NOTE 3)
17 User busy 486 Busy here
18 No user responding 408 Request timeout
19 No answer from the user 480 Temporarily unavailable
20 Subscriber absent 480 Temporarily unavailable
21 Call rejected 603 Decline, if location field
in Cause information element
indicates user. Otherwise:
403 Forbidden
22 Number changed 301 Moved permanently, if
information in diagnostic field
of Cause information element is
suitable for generating a SIP
Contact header. Otherwise:
410 Gone
23 Redirection to new 410 Gone
destination
27 Destination out of order 502 Bad gateway
28 Address incomplete 484 Address incomplete
29 Facility rejected 501 Not implemented
31 Normal, unspecified 480 Temporarily unavailable
34 No circuit/channel 503 Service unavailable
available
38 Network out of order 503 Service unavailable
41 Temporary failure 503 Service unavailable
42 Switching equipment 503 Service unavailable
congestion
47 Resource unavailable, 503 Service unavailable
unspecified
55 Incoming calls barred 403 Forbidden
within CUG
57 Bearer capability not 403 Forbidden
authorized
58 Bearer capability not 503 Service unavailable
presently available
65 Bearer capability not 488 Not acceptable here (NOTE 4)
implemented
69 Requested facility not 501 Not implemented
implemented
70 Only restricted digital 488 Not acceptable here (NOTE 4)
information available
79 Service or option not 501 Not implemented
implemented, unspecified
87 User not member of CUG 403 Forbidden
88 Incompatible destination 503 Service unavailable
102 Recovery on timer expiry 504 Server time-out
NOTE 3: A QSIG call clearing message containing cause value 16 will
normally result in the sending of a SIP BYE or CANCEL request.
However, if a SIP response is to be sent to the INVITE request, the
default response code should be used.
NOTE 4: The gateway may include a SIP Warning header if diagnostic
information in the QSIG Cause information element allows a suitable
warning code to be selected.
8.4.2. Receipt of a SIP BYE Request
On receipt of a SIP BYE request, the gateway SHALL send a QSIG
DISCONNECT message with cause value 16 (normal call clearing). The
gateway SHALL also disconnect media streams, if established, and
allow QSIG and SIP signalling to complete in accordance with [2] and
[10], respectively.
NOTE: When responding to a SIP BYE request, in accordance with [10],
the gateway is also required to respond to any other outstanding
transactions, e.g., with a SIP 487 (Request Terminated) response.
This applies in particular if the gateway has not yet returned a
final response to the SIP INVITE request.
8.4.3. Receipt of a SIP CANCEL Request
On receipt of a SIP CANCEL request to clear a call for which the
gateway has not sent a SIP final response to the received SIP INVITE
request, the gateway SHALL send a QSIG DISCONNECT message with cause
value 16 (normal call clearing). The gateway SHALL also disconnect
media streams, if established, and allow QSIG and SIP signalling to
complete in accordance with [2] and [10], respectively.
8.4.4. Receipt of a SIP 4xx-6xx Response to an INVITE Request
Except where otherwise specified in the context of overlap sending
(8.2.2.2), on receipt of a SIP final response (4xx-6xx) to a SIP
INVITE request, unless the gateway is able to retry the INVITE
request to avoid the problem (e.g., by supplying authentication in
the case of a 401 or 407 response), the gateway SHALL transmit a QSIG
DISCONNECT message. The cause value in the QSIG DISCONNECT message
SHALL be derived from the SIP 4xx-6xx response according to Table 2.
Cause value 31 (Normal, unspecified) SHALL be used as the default for
SIP responses not shown in Table 2. The gateway SHALL also
disconnect media streams, if established, and allow QSIG and SIP
signalling to complete in accordance with [2] and [10], respectively.
When generating a QSIG Cause information element, the location field
SHOULD contain the value "user", if generated as a result of a SIP
response code 6xx, or the value "Private network serving the remote
user" in other circumstances.
Table 2: Mapping of SIP 4xx-6xx responses to an INVITE request to
QSIG Cause values
SIP response QSIG Cause value (NOTE 6)
------------------------------------------------------------------
400 Bad request 41 Temporary failure
401 Unauthorized 21 Call rejected (NOTE 5)
402 Payment required 21 Call rejected
403 Forbidden 21 Call rejected
404 Not found 1 Unallocated number
405 Method not allowed 63 Service or option
unavailable, unspecified
406 Not acceptable 79 Service or option not
implemented, unspecified
407 Proxy Authentication required 21 Call rejected (NOTE 5)
408 Request timeout 102 Recovery on timer expiry
410 Gone 22 Number changed
413 Request entity too large 127 Interworking, unspecified
(NOTE 6)
414 Request-URI too long 127 Interworking, unspecified
(NOTE 6)
415 Unsupported media type 79 Service or option not
implemented, unspecified
(NOTE 6)
416 Unsupported URI scheme 127 Interworking, unspecified
(NOTE 6)
420 Bad extension 127 Interworking, unspecified
(NOTE 6)
421 Extension required 127 Interworking, unspecified
(NOTE 6)
423 Interval too brief 127 Interworking, unspecified
(NOTE 6)
480 Temporarily unavailable 18 No user responding
481 Call/transaction does not exist 41 Temporary failure
482 Loop detected 25 Exchange routing error
483 Too many hops 25 Exchange routing error
484 Address incomplete 28 Invalid number format
(NOTE 6)
485 Ambiguous 1 Unallocated Number
486 Busy here 17 User busy
487 Request terminated (NOTE 7)
488 Not Acceptable Here 65 Bearer capability not
implemented or 31 Normal,
unspecified (NOTE 8)
500 Server internal error 41 Temporary failure
501 Not implemented 79 Service or option not
implemented, unspecified
502 Bad gateway 38 Network out of order
503 Service unavailable 41 Temporary failure
504 Gateway time-out 102 Recovery on timer expiry
505 Version not supported 127 Interworking, unspecified
(NOTE 6)
513 Message too large 127 Interworking, unspecified
(NOTE 6)
600 Busy everywhere 17 User busy
603 Decline 21 Call rejected
604 Does not exist anywhere 1 Unallocated number
606 Not acceptable 65 Bearer capability not
implemented or
31 Normal, unspecified (NOTE 8)