Previous PageTable Of ContentsHomeNext Page



4.4. Registration, Admission and Status (RAS) Information

In System Release 5.x with the NetTSC embedded stack, registration functionality was configurable by setting parameter values in the config.val file. Functionality was provided in stages as described below:

In System Release 6.0 with the host-based stack, registration is achieved using the gc_ReqService( ) function. The following rules apply:

The gc_ReqService( ) function is used for both registration and deregistration and includes a GC_PARM_BLK that can be populated with parameters that determine the following:

The gc_ReqService( ) function is used for registration. Registration information is stored locally and can be retained or discarded when deregistering. IP registration address information is stored in the IP_REGISTER_ADDRESS structure that has the following definition:

Each field has the following meaning:

Important defines in this context are:

The following paragraphs contain code segments that demonstrate how to populate the GC_PARM_BLK with the parameters required for registration with a gatekeeper.

  1. Including two mandatory parameters. The generic Global Call service request feature requires two mandatory parameters for all service requests including registration. The parameters can be included in the GC_PARM_BLK as follows:
  1. Since Global Call in System Release 6.0 supports both H.323 and SIP protocols, the protocol must be specified. This is achieved by including the following set ID and parameter ID in the GC_PARM_BLK:
  1. The operation (registration) and the sub-operation (set registration information) can be specified by including the following set ID and parameter IDs in the GC_PARM_BLK:
  1. Registration address information is specified by including the following set ID and parm ID in the GC_PARM_BLK:
  1. An e-mail alias can be specified by including the following set ID and parameter ID in the GC_PARM_BLK. Other alias types can be included by using the parameter IDs: IPPARM_ADDRESS_DOT_NOTATION (for IP addresses), IPPARM_ADDRESS_H323_ID (for H.323 IDs), IPPARM_ADDRESS_PHONE (for phone numbers), IPPARM_ADDRESS_URL (for universal resource locators), and IPPARM_ADDRESS_TRANSPARENT (for unknown types).
  1. A phone number supported prefix can be specified by including the following set ID and parameter ID in the GC_PARM_BLK. Other supported prefix types can be included by using the parameter IDs: IPPARM_ADDRESS_DOT_NOTATION (for IP addresses), IPPARM_ADDRESS_H323_ID (for H.323 IDs), IPPARM_ADDRESS_PHONE (for phone numbers), IPPARM_ADDRESS_URL (for universal resource locators), and IPPARM_ADDRESS_TRANSPARENT (for unknown types).
  1. Once the GC_PARM_BLK has been set up, the gc_ReqService( ) function can be used to send the request to the gatekeeper.

When using the Global Call API, getting notification of registration status is a two step process:

The following code demonstrates how to detect the event on the board device.

The following code shows how to extract registration status (accepted or rejected) from the GC_PARM_BLK associated with the event.

Non-standard registration messages are sent to the gatekeeper using the gc_Extension( ) function with an extension ID (ext_ID) of IPEXTID_SENDMSG. A GC_PARM_BLK associated with the gc_Extension( ) function contains the required parameters and the message data. The following code demonstrates how to set up a GC_PARM_BLK and use the gc_Extension( ) function to send a nonstandard message to the gatekeeper.

Deregistration is achieved using the gc_ReqService( ) by specifying the IPSET-REG_INFO set ID and the IPPARM_OPERATION_DEREGISTER parameter ID in the GC_PARM_BLK associated with the gc_ReqService( ) function. In addition, the application can choose to keep the registration information that is stored locally or to discard it by setting the IPPARM_OPERATION_DEREGISTER parameter to a value of IP_REG_MAINTAIN_LOCAL_INFO (deregister but keep registration information locally) or IP_REG_DELETE_ALL (deregister and discard the registration information stored locally).

The following code example shows how to deregister from a gatekeeper and discard the registration information stored locally.


Previous PageTable Of ContentsTop Of PageNext Page

Click here to contact Telecom Support Resources

Copyright 2002, Intel Corporation
All rights reserved
This page generated November, 2002