Package com.opencloud.slee.resources.cgin.callcontrol

Provides a common API for callcontrol protocols originally based on the INAP family of protocols.

Overview

This package provides a machine-generated API derived from a "callcontrol" pseudo-protocol. This protocol provides the features common to most real callcontrol protocols originally based on INAP, such as CAP, ETSI INAP CS1, and network-specific variants of INAP.

The callcontrol pseudo-protocol is not a real protocol that can be used on a network. Instead, it is provided to act as a parent protocol for the various concrete network protocols supported by CGIN.

Services can be developed against the callcontrol API, then used against many different network protocols without needing to handle each protocol through a separate API. In cases where different behaviour is needed for different protocols, the service can drill down to the API of the actual protocol in use when needed.

API packages and identifier prefix

The callcontrol API is divided into these subpackages:

  • com.opencloud.slee.resources.cgin.callcontrol - contains datatype classes and misc helper classes such as CCDialog;
  • com.opencloud.slee.resources.cgin.callcontrol.metadata - contains metadata classes defining application contexts, operations, and errors;
  • com.opencloud.slee.resources.cgin.callcontrol.events - contains the wrapper SLEE event classes used for notifying services of operation invokes and results;
  • com.opencloud.slee.resources.cgin.callcontrol.persist - provides conversion between CGIN data objects of this protocol and Google protobuf (GPB) messages.

In general, all top-level classes and interfaces in these packages begin with a common prefix, CC, so it is safe to use a wildcard package import without colliding with other protocols.

Dialog Extension Interface

The callcontrol API defines CCDialog, an extension of the CGIN Dialog interface that adds convenience methods for dealing with callcontrol-specific operations, results, and errors. All dialog objects that are using a callcontrol-based protocol will implement this extension interface.