The R-IM-SSF is triggered in the IN by the InitialDP
initial request event.
Triggering the R-IM-SSF
-
The R-IM-SSF uses the
ServiceKey
of theInitialDP
event to find the address of the external SIP application server. -
The R-IM-SSF builds an
INVITE
(and theSDP
portion) and invokes the SIP application server.
The R-IM-SSF requires that the InitialDP has at least a ServiceKey , a CallingPartyNumber , and a CalledPartyNumber (or CalledPartyBCDNumber for CAP O-BCSM triggers).
|
The R-IM-SSF manages a number of profile tables that it uses to trigger a SIP application. The rimssf-configuration-profile-table
contains global configuration information. This profile table typically contains only one profile, as the R-IM-SSF uses the same configuration information for all calls.
The R-IM-SSF uses records from three other configuration profile tables to determinate how to build the outgoing INVITE
and which SIP application server to send it to:
-
rimssf-service-configuration-profile-table
— external SIP application service configuration -
rimssf-invite-builder-profile-table
— information to populate the headers in theINVITE
message -
rimssf-sdp-builder-profile-table
) — information to build theSDP
portion of theINVITE
.
The records in these three tables are indexed by service key. The ServiceKey
from the incoming InitialDP
is used to find the appropriate configuration information for the call.
If:
…then the R-IM-SSF does not attempt to trigger a SIP application server and allows the call to proceed (by responding to the switch with a |
Finding the SIP-AS
The R-IM-SSF searches for a record in the rimssf-service-configuration-profile-table
that corresponds to the ServiceKey
from the InitialDP
. The R-IM-SSF uses the information in the record to determine the address of the external SIP application server.
Field | Description |
---|---|
ServiceKey |
The |
SipAsAddress |
The SIP application server address (in the form |
AnnouncementPrefix |
A prefix to check for in the |
AnnouncementMode |
Indicates whether user interaction mode is direct, assisting using separate |
ResetTimerTimeout |
Timeout used for |
See [2 Configuring R-IM-SSF Subscription Information] for the sis-console commands to use to manage the rimssf-service-configuration-profile-table .
|
Building the INVITE
The R-IM-SSF searches for a record in the rimssf-invite-builder-profile-table
that corresponds to the ServiceKey
from the InitialDP
. The R-IM-SSF uses the information in the record to build the INVITE
message it sends to the external SIP application server.
Field | Description |
---|---|
ServiceKey |
The |
IsSipURIUsed |
Whether a SIP URI or Tel URL should be used to create initial |
Transport |
The SIP Transport used towards the service: udp, tcp, or udp/tcp |
AccessParameter |
The name of a parameter of the Route that should be used to distinguish between originating and terminating triggers |
AccessParameterOrigValue |
The value of the |
AccessParameterTermValue |
The value of the |
HasPAccessNetworkInfoHeader |
If the initial |
DefaultCgi |
The default CGI parameter for the P-Access-Network-Info header; used when LocationNumber is not present on the InitialDP received |
HasPChargingVectorHeader |
If the initial |
HasCCF |
If the initial |
CCF |
|
HasCCF |
If the initial |
ECF |
|
ExpiresHeader |
The |
HasMinSEHeader |
If the initial |
MinSEHeader |
|
HasPCalledPartyIDHeader |
If the initial |
HasSessionExpiresHeader |
If the initial |
SessionExpiresHeader |
|
HasSupportedHeader |
If the initial |
SupportedHeader |
Values to include in the |
UserAgentHeader |
|
Example configuration … | …results in: | ||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
INVITE sip:123456789@opencloud.co.nz SIP/2.0 From: <sip:+351987654321@opencloud.co.nz>;tag=g5qB7w To: <sip:123456789@opencloud.co.nz> Call-ID: n1O3nxW0T6iW5P5P3-TmjQ CSeq: 63062 INVITE Max-Forwards: 70 Via: SIP/2.0/UDP 192.168.62.102:5060;oc-node=101;rport;branch=z9hG4bKFAdZ7Kn7vR364EMwd73ABA;ext Via: SIP/2.0/UDP 192.168.62.102:5060;oc-node=101;rport;branch=z9hG4bKTvm5BnH1zYrsbC0ZDLpWdw Contact: <sip:Ai-cCypiu+hkF35L3H~FqyAw@192.168.62.102:5060;oc-node=101;transport=udp> Route: <sip:192.168.62.102:5070;lr;transport=udp;call=orig> Route: <sip:Ai-cCypiu+hkF35L3H~FqyAw@192.168.62.102:5060;oc-node=101;lr;transport=udp> P-Asserted-Identity: <tel:+351987654321>, <sip:+351987654321@opencloud.co.nz> Supported: timer, replaces, 100rel Allow: INVITE, BYE, CANCEL, ACK, PRACK, UPDATE P-Charging-Vector: icid-value=1283143839977;orig-ioi=opencloud.co.nz P-Access-Network-Info: 3GPP-GERAN;cgi-3gpp=111111111 Expires: 360 Session-Expires: 360 Min-SE: 2120 User-Agent: rimssf-useragent-inv-builder ... |
See Configuring R-IM-SSF Subscription Information for the sis-console commands to use to manage the rimssf-invite-builder-profile-table .
|
Building the SDP portion
The R-IM-SSF searches for a record in the rimssf-sdp-builder-profile-table
that corresponds to the ServiceKey
from the InitialDP
. The R-IM-SSF uses the information in the record to build the SDP
portion of the INVITE
message it sends to the external SIP application server.
Field | Description |
---|---|
ServiceKey |
The |
SDPNetworkType |
The |
SDPAddressType |
The |
SDPMediaType |
The |
SDPMediaFormat |
The |
SDPMediaProtocol |
The |
SDPFmtpAttribute |
The |
SDPRtpmapAttribute |
|
The |
OrigPort |
Example configuration… | …results in | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
INVITE sip:123456789@opencloud.co.nz SIP/2.0 From: <sip:+351987654321@opencloud.co.nz>;tag=g5qB7w ... User-Agent: rimssf-useragent-inv-builder Accept: application/sdp Content-Type: application/sdp Content-Length: 182 v=0 o=+351987654321 3 3 IN IP4 192.168.62.102 s=oc-node=101 c=IN IPV4 192.168.62.102 t=0 0 m=audio 49170 RTP/AVP 0 8 18 a=fmtp:96 0-15,66,70 a=rtpmap:96 telephone-event/8000 |
See Configuring R-IM-SSF Subscription Information for the sis-console commands to use to manage the rimssf-sdp-builder-profile-table .
|