8 Mobility Interface Classes
29.198-063GPPOpen Service Access (OSA) Application Programming Interface (API)Part 6: Mobility Service Capability Feature (SCF)Release 9TS
8.1 User Location Interface Classes
The User Location service (UL) provides a general geographic location service. UL has functionality to allow applications to obtain the geographical location and the status of fixed, mobile and IP based telephony users.
UL is supplemented by User Location Camel service (ULC) to provide information about network related information. There is also some specialised functionality to handle emergency calls in the User Location Emergency service (ULE).
The UL service provides the IpUserLocation and IpTriggeredUserLocation interfaces. Most methods are asynchronous, in that they do not lock a thread into waiting whilst a transaction performs. In this way, the client machine can handle many more calls, than one that uses synchronous message calls. To handle responses and reports, the developer must implement IpAppUserLocation and IpAppTriggeredUserLocation interfaces to provide the callback mechanism.
When periodic or triggered location reporting is used, errors may be reported either when the recurrent reporting is requested, as an error per user in reports or in the corresponding err-method when the error concerns all subscribers in an assignment.
8.1.1 Interface Class IpUserLocation
Inherits from: IpService.
This interface is the ‘service manager’ interface for the User Location Service.
The user location interface provides the management functions to the user location service. The application programmer can use this interface to obtain the geographical location of users.
This interface, or IpTriggeredUserLocation, shall be implemented by a User Location SCF as a minimum requirement.
The locationReportReq() method, or the extendedLocationReportReq() method, or both the periodicLocationReportingStartReq() and periodicLocationReportingStop() methods shall be implemented as a minimum requirement, if this interface is implemented.
<<Interface>> IpUserLocation |
locationReportReq (appLocation : in IpAppUserLocationRef, users : in TpAddressSet) : TpAssignmentID extendedLocationReportReq (appLocation : in IpAppUserLocationRef, users : in TpAddressSet, request : in TpLocationRequest) : TpAssignmentID periodicLocationReportingStartReq (appLocation : in IpAppUserLocationRef, users : in TpAddressSet, request : in TpLocationRequest, reportingInterval : in TpDuration) : TpAssignmentID periodicLocationReportingStop (stopRequest : in TpMobilityStopAssignmentData) : void getNextPeriodicLocationRequest (reset : in TpBoolean) : TpPeriodicLocationRequestSetEntry |
8.1.1.1 Method locationReportReq()
Request of a report on the location for one or several users.
Returns: assignmentId.
Specifies the assignment ID of the location-report request.
Parameters
appLocation : in IpAppUserLocationRef
Specifies the application interface for callbacks from the User Location service.
users : in TpAddressSet
Specifies the user(s) for which the location shall be reported.
Returns
TpAssignmentID
Raises
TpCommonExceptions, P_APPLICATION_NOT_ACTIVATED, P_INFORMATION_NOT_AVAILABLE, P_INVALID_INTERFACE_TYPE
8.1.1.2 Method extendedLocationReportReq()
Advanced request of report on the location for one or several users.
Returns: assignmentId.
Specifies the assignment ID of the extended location-report request.
Parameters
appLocation : in IpAppUserLocationRef
Specifies the application interface for callbacks from the User Location service.
users : in TpAddressSet
Specifies the user(s) for which the location shall be reported
request : in TpLocationRequest
Specifies among others the requested location type, accuracy, response time and priority.
Returns
TpAssignmentID
Raises
TpCommonExceptions, P_APPLICATION_NOT_ACTIVATED, P_REQUESTED_ACCURACY_CANNOT_BE_DELIVERED, P_REQUESTED_RESPONSE_TIME_CANNOT_BE_DELIVERED, P_INFORMATION_NOT_AVAILABLE, P_INVALID_INTERFACE_TYPE
8.1.1.3 Method periodicLocationReportingStartReq()
Request of periodic reports on the location for one or several users.
Returns: assignmentId.
Specifies the assignment ID of the periodic location-reporting request.
Parameters
appLocation : in IpAppUserLocationRef
Specifies the application interface for callbacks from the User Location service.
users : in TpAddressSet
Specifies the user(s) for which the location shall be reported.
request : in TpLocationRequest
Specifies among others the requested location type, accuracy, response time and priority.
reportingInterval : in TpDuration
Specifies the requested interval in milliseconds between the reports.
Returns
TpAssignmentID
Raises
TpCommonExceptions, P_INVALID_REPORTING_INTERVAL, P_REQUESTED_ACCURACY_CANNOT_BE_DELIVERED, P_REQUESTED_RESPONSE_TIME_CANNOT_BE_DELIVERED, P_APPLICATION_NOT_ACTIVATED, P_INFORMATION_NOT_AVAILABLE, P_INVALID_INTERFACE_TYPE
8.1.1.4 Method periodicLocationReportingStop()
Termination of periodic reports on the location for one or several users.
Parameters
stopRequest : in TpMobilityStopAssignmentData
Specifies how the assignment shall be stopped, i.e. if whole or just parts of the assignment should be stopped.
Raises
TpCommonExceptions, P_INVALID_ASSIGNMENT_ID
8.1.1.5 Method getNextPeriodicLocationRequest()
This method is used by the application to query the request set created with periodicLocationReportingStartReq. Since a lot of data can potentially be returned (which might cause problem in the middleware), this method must be used in an iterative way. Each method invocation may return part of the total set of requests if the set is too large to return it at once. The reset parameter permits the application to indicate whether an invocation to getNextPeriodicLocationRequest is requesting more requests from the total set of requests or is requesting that the total set of requests shall be returned from the beginning.
Returns the set of requests and an indication whether all off the requests have been obtained or if more requests are available that have not yet been obtained by the application.
Note that the (maximum) number of items provided to the application is determined by the gateway.
Parameters
reset : in TpBoolean
TRUE: indicates that the application is intended to obtain the set of requests starting at the beginning.
FALSE: indicates that the application requests the next set of requests that have not (yet) been obtained since the last call to this method with this parameter set to TRUE.
The first time this method is invoked, reset shall be set to TRUE. Following the receipt of a final indication, for the next call to this method reset shall be set to TRUE. P_TASK_REFUSED may be thrown if these conditions are not met.
Returns
TpPeriodicLocationRequestSetEntry
Raises
TpCommonExceptions
8.1.2 Interface Class IpAppUserLocation
Inherits from: IpInterface.
The user-location application interface is implemented by the client application developer and is used to handle user location request responses.
<<Interface>> IpAppUserLocation |
locationReportRes (assignmentId : in TpAssignmentID, locations : in TpUserLocationSet) : void locationReportErr (assignmentId : in TpAssignmentID, cause : in TpMobilityError, diagnostic : in TpMobilityDiagnostic) : void extendedLocationReportRes (assignmentId : in TpAssignmentID, locations : in TpUserLocationExtendedSet) : void extendedLocationReportErr (assignmentId : in TpAssignmentID, cause : in TpMobilityError, diagnostic : in TpMobilityDiagnostic) : void periodicLocationReport (assignmentId : in TpAssignmentID, locations : in TpUserLocationExtendedSet) : void periodicLocationReportErr (assignmentId : in TpAssignmentID, cause : in TpMobilityError, diagnostic : in TpMobilityDiagnostic) : void |
8.1.2.1 Method locationReportRes()
A report containing locations for one or several users is delivered.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the location-report request.
locations : in TpUserLocationSet
Specifies the location(s) of one or several users.
8.1.2.2 Method locationReportErr()
This method indicates that the location report request has failed.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the failed location report request.
cause : in TpMobilityError
Specifies the error that led to the failure.
diagnostic : in TpMobilityDiagnostic
Specifies additional information about the error that led to the failure.
8.1.2.3 Method extendedLocationReportRes()
A report containing extended location information for one or several users is delivered.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the extended location-report request.
locations : in TpUserLocationExtendedSet
Specifies the location(s) of one or several users.
8.1.2.4 Method extendedLocationReportErr()
This method indicates that the extended location report request has failed.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the failed extended location report request.
cause : in TpMobilityError
Specifies the error that led to the failure.
diagnostic : in TpMobilityDiagnostic
Specifies additional information about the error that led to the failure.
8.1.2.5 Method periodicLocationReport()
A report containing periodic location information for one or several users is delivered.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the periodic location-reporting request.
locations : in TpUserLocationExtendedSet
Specifies the location(s) of one or several users.
8.1.2.6 Method periodicLocationReportErr()
This method indicates that a requested periodic location report has failed. Note that errors only concerning individual users are reported in the ordinary periodicLocationReport() message.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the failed periodic location reporting start request.
cause : in TpMobilityError
Specifies the error that led to the failure.
diagnostic : in TpMobilityDiagnostic
Specifies additional information about the error that led to the failure.
8.1.3 Interface Class IpTriggeredUserLocation
Inherits from: IpUserLocation.
This interface can be used as an extended version of the User Location: Service Interface.
The triggered user location interface represents the interface to the triggered user location functions. The application programmer can use this interface to request user location reports that are triggered by location change.
This interface, or IpUserLocation, shall be implemented by a User Location SCF as a minimum requirement.
The triggeredLocationReportingStartReq() and triggeredLocationReportingStop() methods shall be implemented as a minimum requirement. An implementation of IpTriggeredUserLocation is not required to implement the minimum mandatory methods of IpUserLocation.
<<Interface>> IpTriggeredUserLocation |
triggeredLocationReportingStartReq (appLocation : in IpAppTriggeredUserLocationRef, users : in TpAddressSet, request : in TpLocationRequest, triggers : in TpLocationTriggerSet) : TpAssignmentID triggeredLocationReportingStop (stopRequest : in TpMobilityStopAssignmentData) : void getNextTriggeredLocationRequest (reset : in TpBoolean) : TpTriggeredLocationRequestSetEntry |
8.1.3.1 Method triggeredLocationReportingStartReq()
Request for user location reports when the location is changed (reports are triggered by location change).
Returns: assignmentId.
Specifies the assignment ID of the triggered location-reporting request.
Parameters
appLocation : in IpAppTriggeredUserLocationRef
Specifies the application interface for callbacks from the User Location service.
users : in TpAddressSet
Specifies the user(s) for which the location shall be reported.
request : in TpLocationRequest
Specifies among others the requested location type, accuracy, response time and priority.
triggers : in TpLocationTriggerSet
Specifies the trigger conditions.
Returns
TpAssignmentID
Raises
TpCommonExceptions, P_REQUESTED_ACCURACY_CANNOT_BE_DELIVERED, P_REQUESTED_RESPONSE_TIME_CANNOT_BE_DELIVERED, P_TRIGGER_CONDITIONS_NOT_SUBSCRIBED, P_UNKNOWN_SUBSCRIBER, P_APPLICATION_NOT_ACTIVATED, P_INFORMATION_NOT_AVAILABLE, P_INVALID_INTERFACE_TYPE
8.1.3.2 Method triggeredLocationReportingStop()
Stop triggered user location reporting.
Parameters
stopRequest : in TpMobilityStopAssignmentData
Specifies how the assignment shall be stopped, i.e. if whole or just parts of the assignment should be stopped.
Raises
TpCommonExceptions, P_INVALID_ASSIGNMENT_ID
8.1.3.3 Method getNextTriggeredLocationRequest()
This method is used by the application to query the request set created with triggeredLocationReportingStartReq. Since a lot of data can potentially be returned (which might cause problem in the middleware), this method must be used in an iterative way. Each method invocation may return part of the total set of requests if the set is too large to return it at once. The reset parameter permits the application to indicate whether an invocation to getNextTriggeredLocationRequest is requesting more requests from the total set of requests or is requesting that the total set of requests shall be returned from the beginning.
Returns the set of requests and an indication whether all off the requests have been obtained or if more requests are available that have not yet been obtained by the application.
Note that the (maximum) number of items provided to the application is determined by the gateway.
Parameters
reset : in TpBoolean
TRUE: indicates that the application is intended to obtain the set of requests starting at the beginning.
FALSE: indicates that the application requests the next set of requests that have not (yet) been obtained since the last call to this method with this parameter set to TRUE.
The first time this method is invoked, reset shall be set to TRUE. Following the receipt of a final indication, for the next call to this method reset shall be set to TRUE. P_TASK_REFUSED may be thrown if these conditions are not met.
Returns
TpTriggeredLocationRequestSetEntry
Raises
TpCommonExceptions
8.1.4 Interface Class IpAppTriggeredUserLocation
Inherits from: IpAppUserLocation.
This interface must be used as a specialised version of the User Location: Application Interface if the Triggered User Location: Service Interface is used.
The triggered user location application interface is implemented by the client application developer and is used to handle triggered location reports.
<<Interface>> IpAppTriggeredUserLocation |
triggeredLocationReport (assignmentId : in TpAssignmentID, location : in TpUserLocationExtended, criterion : in TpLocationTriggerCriteria) : void triggeredLocationReportErr (assignmentId : in TpAssignmentID, cause : in TpMobilityError, diagnostic : in TpMobilityDiagnostic) : void triggeredReportingEnded (assignmentId : in TpAssignmentID) : void |
8.1.4.1 Method triggeredLocationReport()
A triggered report containing location for a user is delivered.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the triggered location-reporting request.
location : in TpUserLocationExtended
Specifies the location of the user.
criterion : in TpLocationTriggerCriteria
Specifies the criterion that triggered the report.
8.1.4.2 Method triggeredLocationReportErr()
This method indicates that a requested triggered location report has failed. Note that errors only concerning individual users are reported in the ordinary triggeredLocationReport() message.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the failed triggered location reporting start request.
cause : in TpMobilityError
Specifies the error that led to the failure.
diagnostic : in TpMobilityDiagnostic
Specifies additional information about the error that led to the failure.
8.1.4.3 Method triggeredReportingEnded()
The user status or user location triggering has stopped because the max life time allowed for this triggering has exceeded.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the triggered request.
8.2 User Location Camel Interface Classes
The ULC provides location information, based on network-related information, rather than the geographical co-ordinates that can be retrieved via the general User Location Service.
Using the ULC functions, an application programmer can request the VLR Number, the location Area Identification and the Cell Global Identification and other mobile-telephony-specific location information.
The ULC provides the IpUserLocationCamel interface. Most methods are asynchronous, in that they do not lock a thread into waiting whilst a transaction performs. In this way, the client machine can handle many more calls, than one that uses synchronous message calls. To handle responses and reports, the developer must implement IpAppUserLocationCamel interface to provide the callback mechanism.
8.2.1 Interface Class IpUserLocationCamel
Inherits from: IpService.
This interface is the ‘service manager’ interface for ULC.
This interface shall be implemented by a User Location Camel SCF.
The locationReportReq() method, or both the periodicLocationReportingStartReq() and periodicLocationReportingStop() methods, or both the triggeredLocationReportingStartReq() and triggeredLocationReportingStop() methods shall be implemented as a minimum requirement.
<<Interface>> IpUserLocationCamel |
locationReportReq (appLocationCamel : in IpAppUserLocationCamelRef, users : in TpAddressSet) : TpAssignmentID periodicLocationReportingStartReq (appLocationCamel : in IpAppUserLocationCamelRef, users : in TpAddressSet, reportingInterval : in TpDuration) : TpAssignmentID periodicLocationReportingStop (stopRequest : in TpMobilityStopAssignmentData) : void triggeredLocationReportingStartReq (appLocationCamel : in IpAppUserLocationCamelRef, users : in TpAddressSet, trigger : in TpLocationTriggerCamel) : TpAssignmentID triggeredLocationReportingStop (stopRequest : in TpMobilityStopAssignmentData) : void getNextPeriodicLocationRequest (reset : in TpBoolean) : TpPeriodicLocationRequestSetEntry getNextTriggeredLocationRequest (reset : in TpBoolean) : TpTriggeredLocationRequestSetEntry |
8.2.1.1 Method locationReportReq()
Request for mobile-related location information on one or several camel users.
Returns: assignmentId.
Specifies the assignment ID of the location-report request.
Parameters
appLocationCamel : in IpAppUserLocationCamelRef
Specifies the application interface for callbacks from the User Location Camel service.
users : in TpAddressSet
Specifies the user(s) for which the location shall be reported.
Returns
TpAssignmentID
Raises
TpCommonExceptions, P_UNKNOWN_SUBSCRIBER, P_APPLICATION_NOT_ACTIVATED, P_INFORMATION_NOT_AVAILABLE, P_INVALID_INTERFACE_TYPE
8.2.1.2 Method periodicLocationReportingStartReq()
Request for periodic mobile location reports on one or several users.
Returns: assignmentId.
Specifies the assignment ID of the periodic location-reporting request.
Parameters
appLocationCamel : in IpAppUserLocationCamelRef
Specifies the application interface for callbacks from the User Location Camel service.
users : in TpAddressSet
Specifies the user(s) for which the location shall be reported.
reportingInterval : in TpDuration
Specifies the requested interval in milliseconds between the reports.
Returns
TpAssignmentID
Raises
TpCommonExceptions, P_INVALID_REPORTING_INTERVAL, P_UNKNOWN_SUBSCRIBER, P_APPLICATION_NOT_ACTIVATED, P_INFORMATION_NOT_AVAILABLE, P_INVALID_INTERFACE_TYPE
8.2.1.3 Method periodicLocationReportingStop()
This method stops the sending of periodic mobile location reports for one or several users.
Parameters
stopRequest : in TpMobilityStopAssignmentData
Specifies how the assignment shall be stopped, i.e. if whole or just parts of the assignment should be stopped.
Raises
TpCommonExceptions, P_INVALID_ASSIGNMENT_ID
8.2.1.4 Method triggeredLocationReportingStartReq()
Request for user location reports, containing mobile related information, when the location is changed (the report is triggered by the location change).
Returns: assignmentId.
Specifies the assignment ID of the triggered location-reporting request.
Parameters
appLocationCamel : in IpAppUserLocationCamelRef
Specifies the application interface for callbacks from the User Location Camel service.
users : in TpAddressSet
Specifies the user(s) for which the location shall be reported.
trigger : in TpLocationTriggerCamel
Specifies the trigger conditions.
Returns
TpAssignmentID
Raises
TpCommonExceptions, P_UNKNOWN_SUBSCRIBER, P_APPLICATION_NOT_ACTIVATED, P_INFORMATION_NOT_AVAILABLE, P_INVALID_INTERFACE_TYPE
8.2.1.5 Method triggeredLocationReportingStop()
Request that triggered mobile location reporting should stop.
Parameters
stopRequest : in TpMobilityStopAssignmentData
Specifies how the assignment shall be stopped, i.e. if whole or just parts of the assignment should be stopped.
Raises
TpCommonExceptions, P_INVALID_ASSIGNMENT_ID
8.2.1.6 Method getNextPeriodicLocationRequest()
This method is used by the application to query the request set created with periodicLocationReportingStartReq. Since a lot of data can potentially be returned (which might cause problem in the middleware), this method must be used in an iterative way. Each method invocation may return part of the total set of requests if the set is too large to return it at once. The reset parameter permits the application to indicate whether an invocation to getNextPeriodicLocationRequest is requesting more requests from the total set of requests or is requesting that the total set of requests shall be returned from the beginning.
Returns the set of requests and an indication whether all off the requests have been obtained or if more requests are available that have not yet been obtained by the application.
Note that the (maximum) number of items provided to the application is determined by the gateway.
Parameters
reset : in TpBoolean
TRUE: indicates that the application is intended to obtain the set of requests starting at the beginning.
FALSE: indicates that the application requests the next set of requests that have not (yet) been obtained since the last call to this method with this parameter set to TRUE.
The first time this method is invoked, reset shall be set to TRUE. Following the receipt of a final indication, for the next call to this method reset shall be set to TRUE. P_TASK_REFUSED may be thrown if these conditions are not met.
Returns
TpPeriodicLocationRequestSetEntry
Raises
TpCommonExceptions
8.2.1.7 Method getNextTriggeredLocationRequest()
This method is used by the application to query the request set created with triggeredLocationReportingStartReq. Since a lot of data can potentially be returned (which might cause problem in the middleware), this method must be used in an iterative way. Each method invocation may return part of the total set of requests if the set is too large to return it at once. The reset parameter permits the application to indicate whether an invocation to getNextTriggeredLocationRequest is requesting more requests from the total set of requests or is requesting that the total set of requests shall be returned from the beginning.
Returns the set of requests and an indication whether all off the requests have been obtained or if more requests are available that have not yet been obtained by the application.
Note that the (maximum) number of items provided to the application is determined by the gateway.
Parameters
reset : in TpBoolean
TRUE: indicates that the application is intended to obtain the set of requests starting at the beginning.
FALSE: indicates that the application requests the next set of requests that have not (yet) been obtained since the last call to this method with this parameter set to TRUE.
The first time this method is invoked, reset shall be set to TRUE. Following the receipt of a final indication, for the next call to this method reset shall be set to TRUE. P_TASK_REFUSED may be thrown if these conditions are not met.
Returns
TpTriggeredLocationRequestSetEntry
Raises
TpCommonExceptions
8.2.2 Interface Class IpAppUserLocationCamel
Inherits from: IpInterface.
The user location Camel application interface is implemented by the client application developer and is used to handle location reports that are specific for mobile telephony users.
<<Interface>> IpAppUserLocationCamel |
locationReportRes (assignmentId : in TpAssignmentID, locations : in TpUserLocationCamelSet) : void locationReportErr (assignmentId : in TpAssignmentID, cause : in TpMobilityError, diagnostic : in TpMobilityDiagnostic) : void periodicLocationReport (assignmentId : in TpAssignmentID, locations : in TpUserLocationCamelSet) : void periodicLocationReportErr (assignmentId : in TpAssignmentID, cause : in TpMobilityError, diagnostic : in TpMobilityDiagnostic) : void triggeredLocationReport (assignmentId : in TpAssignmentID, location : in TpUserLocationCamel, criterion : in TpLocationTriggerCamel) : void triggeredLocationReportErr (assignmentId : in TpAssignmentID, cause : in TpMobilityError, diagnostic : in TpMobilityDiagnostic) : void triggeredReportingEnded (assignmentId : in TpAssignmentID) : void |
8.2.2.1 Method locationReportRes()
Delivery of a mobile location report. The report is containing mobile-related location information for one or several users.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the location-report request.
locations : in TpUserLocationCamelSet
Specifies the location(s) of one or several users.
8.2.2.2 Method locationReportErr()
This method indicates that the location report request has failed.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the failed location report request.
cause : in TpMobilityError
Specifies the error that led to the failure.
diagnostic : in TpMobilityDiagnostic
Specifies additional information about the error that led to the failure.
8.2.2.3 Method periodicLocationReport()
Periodic delivery of mobile location reports. The reports are containing mobile-related location information for one or several users.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the periodic location-reporting request.
locations : in TpUserLocationCamelSet
Specifies the location(s) of one or several users.
8.2.2.4 Method periodicLocationReportErr()
This method indicates that a requested periodic location report has failed. Note that errors only concerning individual users are reported in the ordinary periodicLocationReport() message.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the failed periodic location reporting start request.
cause : in TpMobilityError
Specifies the error that led to the failure.
diagnostic : in TpMobilityDiagnostic
Specifies additional information about the error that led to the failure.
8.2.2.5 Method triggeredLocationReport()
Delivery of a report that is indicating that the user’s mobile location has changed.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the triggered location-reporting request.
location : in TpUserLocationCamel
Specifies the location of the user.
criterion : in TpLocationTriggerCamel
Specifies the criterion that triggered the report.
8.2.2.6 Method triggeredLocationReportErr()
This method indicates that a requested triggered location report has failed. Note that errors only concerning individual users are reported in the ordinary triggeredLocationReport() message.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the failed triggered location reporting start request.
cause : in TpMobilityError
Specifies the error that led to the failure.
diagnostic : in TpMobilityDiagnostic
Specifies additional information about the error that led to the failure.
8.2.2.7 Method triggeredReportingEnded()
The user status or user location triggering has stopped because the max life time allowed for this triggering has exceeded.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the triggered request.
8.3 User Location Emergency Interface Classes
In the case of an emergency call, the network may locate the caller automatically. The resulting location is sent directly to an application that is dedicated to handle emergency user location. If the dedicated emergency call application is using the API, the location is sent to the application using a callback method in the IpAppUserLocationEmergency interface.
However, the network does not always send the location immediately (probably when the location procedure is not finished when the call is set up). In this case the network will send an identifier of the caller that can be used to locate the caller using the interface IpUserLocationEmergency.
8.3.1 Interface Class IpUserLocationEmergency
Inherits from: IpService.
The application programmer can use this interface to obtain the location of users who initiate emergency calls.
This interface shall be implemented by a Mobility SCF.
The emergencyLocationReportReq() method, or the subscribeEmergencyLocationReports() and unSubscribeEmergencyLocationReports() methods shall be implemented as a minimum requirement.
<<Interface>> IpUserLocationEmergency |
emergencyLocationReportReq (appEmergencyLocation : in IpAppUserLocationEmergencyRef, request : in TpUserLocationEmergencyRequest) : TpAssignmentID subscribeEmergencyLocationReports (appEmergencyLocation : in IpAppUserLocationEmergencyRef) : TpAssignmentID unSubscribeEmergencyLocationReports (assignmentId : in TpAssignmentID) : void |
8.3.1.1 Method emergencyLocationReportReq()
Request of report on the location for one user that is making an emergency call.
Returns: assignmentId.
Specifies the assignment ID of the emergency location-report request.
Parameters
appEmergencyLocation : in IpAppUserLocationEmergencyRef
Specifies the application interface for callbacks from the User Location Emergency service.
request : in TpUserLocationEmergencyRequest
Specifies among others the identity of the user or terminal, requested location type, accuracy, response time and priority.
Returns
TpAssignmentID
Raises
TpCommonExceptions, P_UNKNOWN_SUBSCRIBER, P_INFORMATION_NOT_AVAILABLE, P_APPLICATION_NOT_ACTIVATED, P_INVALID_INTERFACE_TYPE
8.3.1.2 Method subscribeEmergencyLocationReports()
Subscribe to network initiated emergency user location reports.
Returns: assignmentId.
Specifies the assignment ID of the subscription.
Parameters
appEmergencyLocation : in IpAppUserLocationEmergencyRef
Specifies the application interface for callbacks from the User Location Emergency service.
Returns
TpAssignmentID
Raises
TpCommonExceptions, P_INVALID_INTERFACE_TYPE
8.3.1.3 Method unSubscribeEmergencyLocationReports()
This method cancels a subscription to network initiated emergency user location reports.
The assignment ID does not correspond to one of a valid assignment.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the subscription.
Raises
TpCommonExceptions, P_INVALID_ASSIGNMENT_ID
8.3.2 Interface Class IpAppUserLocationEmergency
Inherits from: IpInterface.
The user-location emergency application interface is implemented by the client application developer and is used to handle emergency user location reports.
<<Interface>> IpAppUserLocationEmergency |
emergencyLocationReport (assignmentId : in TpAssignmentID, location : in TpUserLocationEmergency) : void emergencyLocationReportErr (assignmentId : in TpAssignmentID, cause : in TpMobilityError, diagnostic : in TpMobilityDiagnostic) : void |
8.3.1.1 Method emergencyLocationReport()
Delivery of an emergency user location report.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the emergency location-report request or the emergency location report subscription.
location : in TpUserLocationEmergency
Specifies the identity and location of the user that makes the emergency call.
8.3.2.2 Method emergencyLocationReportErr()
This method indicates that the emergency location report request has failed.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the failed emergency location report request.
cause : in TpMobilityError
Specifies the error that led to the failure.
diagnostic : in TpMobilityDiagnostic
Specifies additional information about the error that led to the failure.
8.4 User Status Interface Classes
The User Status Service (US) provides a general user status service. US allow applications to obtain the status of fixed, mobile and IP-based telephony users.
The US provides the IpUserStatus interface. Most methods are asynchronous, in that they do not lock a thread into waiting whilst a transaction performs. In this way, the client machine can handle many more calls, than one that uses synchronous message calls. To handle responses and reports, the developer must implement IpAppUserStatus interface to provide the callback mechanism.
8.4.1 Interface Class IpAppUserStatus
Inherits from: IpInterface.
The user-status application interface is implemented by the client application developer and is used to handle user status reports.
<<Interface>> IpAppUserStatus |
statusReportRes (assignmentId : in TpAssignmentID, status : in TpUserStatusSet) : void statusReportErr (assignmentId : in TpAssignmentID, cause : in TpMobilityError, diagnostic : in TpMobilityDiagnostic) : void triggeredStatusReport (assignmentId : in TpAssignmentID, status : in TpUserStatus) : void triggeredStatusReportErr (assignmentId : in TpAssignmentID, cause : in TpMobilityError, diagnostic : in TpMobilityDiagnostic) : void extendedStatusReportRes (assignmentId : in TpAssignmentID, status : in TpUserStatusExtendedSet) : void extendedStatusReportErr (assignmentId : in TpAssignmentID, cause : in TpMobilityError, diagnostic : in TpMobilityDiagnostic) : void extTriggeredStatusReport (assignmentId : in TpAssignmentID, status : in TpUserStatusExtended) : void extTriggeredStatusReportErr (assignmentId : in TpAssignmentID, cause : in TpMobilityError, diagnostic : in TpMobilityDiagnostic) : void triggeredReportingEnded (assignmentId : in TpAssignmentID) : void |
8.4.1.1 Method statusReportRes()
Delivery of a report, that is containing one or several user’s status.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the status-report request.
status : in TpUserStatusSet
Specifies the status of one or several users.
8.4.1.2 Method statusReportErr()
This method indicates that the status report request has failed.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the failed status report request.
cause : in TpMobilityError
Specifies the error that led to the failure.
diagnostic : in TpMobilityDiagnostic
Specifies additional information about the error that led to the failure.
8.4.1.3 Method triggeredStatusReport()
Delivery of a report that is indicating that a user’s status has changed.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the triggered status-reporting request.
status : in TpUserStatus
Specifies the status of the user.
8.4.1.4 Method triggeredStatusReportErr()
This method indicates that a requested triggered status reporting has failed. Note that errors only concerning individual users are reported in the ordinary triggeredStatusReport() message.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the failed triggered status reporting start request.
cause : in TpMobilityError
Specifies the error that led to the failure.
diagnostic : in TpMobilityDiagnostic
Specifies additional information about the error that led to the failure.
8.4.1.5 Method extendedStatusReportRes()
Delivery of a report, that is containing one or several user’s status.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the status-report request.
status : in TpUserStatusExtendedSet
Specifies the status of one or several users.
8.4.1.6 Method extendedStatusReportErr()
This method indicates that the status report request has failed.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the failed status report request.
cause : in TpMobilityError
Specifies the error that led to the failure.
diagnostic : in TpMobilityDiagnostic
Specifies additional information about the error that led to the failure.
8.4.1.7 Method extTriggeredStatusReport()
Delivery of a report that is indicating that a user’s status has changed.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the triggered status-reporting request.
status : in TpUserStatusExtended
Specifies the status of the user.
8.4.1.8 Method extTriggeredStatusReportErr()
This method indicates that a requested triggered status reporting has failed. Note that errors only concerning individual users are reported in the ordinary extTriggeredStatusReport() message.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the failed triggered status reporting start request.
cause : in TpMobilityError
Specifies the error that led to the failure.
diagnostic : in TpMobilityDiagnostic
Specifies additional information about the error that led to the failure.
8.4.1.9 Method triggeredReportingEnded()
The user status or user location triggering has stopped because the max life time allowed for this triggering has exceeded.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the triggered request.
8.4.2 Interface Class IpUserStatus
Inherits from: IpService.
The application programmer can use this interface to obtain the status of fixed, mobile and IP-based telephony users.
This interface shall be implemented by a User Status SCF.
The statusReportReq() method, or both the triggeredStatusReportingStartReq() and trigggeredStatusReportingStop() methods shall be implemented as a minimum requirement.
<<Interface>> IpUserStatus |
statusReportReq (appStatus : in IpAppUserStatusRef, users : in TpAddressSet) : TpAssignmentID triggeredStatusReportingStartReq (appStatus : in IpAppUserStatusRef, users : in TpAddressSet) : TpAssignmentID triggeredStatusReportingStop (stopRequest : in TpMobilityStopAssignmentData) : void getNextTriggeredStatusRequest (reset : in TpBoolean) : TpTriggeredStatusRequestSetEntry extendedStatusReportReq (appStatus : in IpAppUserStatusRef, users : in TpAddressSet) : TpAssignmentID extTriggeredStatusReportingStartReq (appStatus : in IpAppUserStatusRef, users : in TpAddressSet) : TpAssignmentID extTriggeredStatusReportingStop (stopRequest : in TpMobilityStopAssignmentData) : void |
8.4.2.1 Method statusReportReq()
Request for a report on the status of one or several users.
Returns: assignmentId.
Specifies the assignment ID of the status-report request.
Parameters
appStatus : in IpAppUserStatusRef
Specifies the application interface for callbacks from the User Status service.
users : in TpAddressSet
Specifies the user(s) for which the status shall be reported.
Returns
TpAssignmentID
Raises
TpCommonExceptions, P_UNKNOWN_SUBSCRIBER, P_INFORMATION_NOT_AVAILABLE, P_APPLICATION_NOT_ACTIVATED, P_INVALID_INTERFACE_TYPE
8.4.2.2 Method triggeredStatusReportingStartReq()
Request for triggered status reports when one or several user’s status is changed. The user status service will send a report when the status changes.
Returns: assignmentId.
Specifies the assignment ID of the triggered status-reporting request.
Parameters
appStatus : in IpAppUserStatusRef
Specifies the application interface for callbacks from the User Status service.
users : in TpAddressSet
Specifies the user(s) for which the status changes shall be reported.
Returns
TpAssignmentID
Raises
TpCommonExceptions, P_UNKNOWN_SUBSCRIBER, P_INFORMATION_NOT_AVAILABLE, P_APPLICATION_NOT_ACTIVATED, P_INVALID_INTERFACE_TYPE
8.4.2.3 Method triggeredStatusReportingStop()
This method stops the sending of status reports for one or several users.
Parameters
stopRequest : in TpMobilityStopAssignmentData
Specifies how the assignment shall be stopped, i.e. if whole or just parts of the assignment should be stopped.
Raises
TpCommonExceptions, P_INVALID_ASSIGNMENT_ID
8.4.2.4 Method getNextTriggeredStatusRequest()
This method is used by the application to query the request set created with triggeredStatusReportingStartReq. Since a lot of data can potentially be returned (which might cause problem in the middleware), this method must be used in an iterative way. Each method invocation may return part of the total set of requests if the set is too large to return it at once. The reset parameter permits the application to indicate whether an invocation to getNextTriggeredStatusRequest is requesting more requests from the total set of requests or is requesting that the total set of requests shall be returned from the beginning.
Returns the set of requests and an indication whether all off the requests have been obtained or if more requests are available that have not yet been obtained by the application.
Note that the (maximum) number of items provided to the application is determined by the gateway.
Parameters
reset : in TpBoolean
TRUE: indicates that the application is intended to obtain the set of requests starting at the beginning.
FALSE: indicates that the application requests the next set of requests that have not (yet) been obtained since the last call to this method with this parameter set to TRUE.
The first time this method is invoked, reset shall be set to TRUE. Following the receipt of a final indication, for the next call to this method reset shall be set to TRUE. P_TASK_REFUSED may be thrown if these conditions are not met.
Returns
TpTriggeredStatusRequestSetEntry
Raises
TpCommonExceptions
8.4.2.5 Method extendedStatusReportReq()
Request for a report on the status of one or several users.
A user can be identified by the following address types:
– MSISDN indicated with address plan P_ADDRESS_PLAN_E164.
– IP Address indicated with address plan P_ADDRESS_PLAN_IP.
– User Name indicated with address plan P_ADDRESS_PLAN_UNDEFINED.
Returns: assignmentID.
Parameters
appStatus : in IpAppUserStatusRef
Specifies the application interface for callbacks from the User Status service.
users : in TpAddressSet
Specifies the user(s) for which the status shall be reported.
Returns
TpAssignmentID
Raises
TpCommonExceptions, P_UNKNOWN_SUBSCRIBER, P_INFORMATION_NOT_AVAILABLE, P_APPLICATION_NOT_ACTIVATED, P_INVALID_INTERFACE_TYPE
8.4.2.6 Method extTriggeredStatusReportingStartReq()
Request for triggered status reports when one or several user’s status is changed. The user status service will send a report when the status changes.
Returns: assignmentId.
Specifies the assignment ID of the triggered status-reporting request.
Parameters
appStatus : in IpAppUserStatusRef
Specifies the application interface for callbacks from the User Status service.
users : in TpAddressSet
Specifies the user(s) for which the status changes shall be reported.
Returns
TpAssignmentID
Raises
TpCommonExceptions, P_UNKNOWN_SUBSCRIBER, P_INFORMATION_NOT_AVAILABLE, P_APPLICATION_NOT_ACTIVATED, P_INVALID_INTERFACE_TYPE
8.4.2.7 Method extTriggeredStatusReportingStop()
This method stops the sending of status reports for one or several users.
Parameters
stopRequest : in TpMobilityStopAssignmentData
Specifies how the assignment shall be stopped, i.e. if whole or just parts of the assignment should be stopped.
Raises
TpCommonExceptions, P_INVALID_ASSIGNMENT_ID
8.5 User Binding Interface Classes
In order to create a feature rich services creation environment for (mobile) "IP" networks where not only terminal mobility but also personal mobility is supported, User Binding notification functions, which enable applications to know UE binding requests, control and make use of them, are provided. The interfaces detailed below support UE binding notification functions.
8.5.1 Interface Class IpUserBinding
Inherits from: IpService.
The application programmer can use this interface to obtain binding details of users who bind to the network.
<<Interface>> IpUserBinding |
triggeredBindingRequestNotificationStartReq (appStatus : in IpAppUserBindingRef, users : in TpAddressSet, criteria : in TpBindingNotificationCriteriaSet) : TpAssignmentID triggeredBindingRequestNotificationStop (assignmentId : in TpAssignmentID) : void |
8.5.1.1 Method triggeredBindingRequestNotificationStartReq()
Request for triggered status reports when one or several user’s binding details are requested to be changed. The User Binding service will send a notification when the user’s binding details are requested to be changed.
Returns the assignment ID of the triggered binding request notification.
Parameters
appStatus : in IpAppUserBindingRef
Specifies the application interface for callbacks from the User Binding service.
users : in TpAddressSet
Specifies the user(s) for which the binding change requests shall be reported.
criteria : in TpBindingNotificationCriteriaSet
Specifies the criteria that must be matched by the binding change request notifications.
Returns
TpAssignmentID
Raises
TpCommonExceptions, P_UNKNOWN_SUBSCRIBER, P_INFORMATION_NOT_AVAILABLE, P_APPLICATION_NOT_ACTIVATED, P_INVALID_INTERFACE_TYPE
8.5.1.2 Method triggeredBindingRequestNotificationStop()
This method stops the sending of the notifications of binding change requests identified by the assignment ID.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the triggered binding-request notification.
Raises
TpCommonExceptions, P_INVALID_ASSIGNMENT_ID
8.5.2 Interface Class IpAppUserBinding
Inherits from: IpInterface.
The user-binding application interface is implemented by the client application developer and is used to handle binding notification requests.
<<Interface>> IpAppUserBinding |
triggeredBindingRequestNotification (assignmentId : in TpAssignmentID, address : in TpAddress, contactInformation : in TpBindingSet) : TpBindingSet triggeredBindingRequestNotificationStartErr (assignmentId : in TpAssignmentID, cause : in TpMobilityError, diagnostic : in TpMobilityDiagnostic) : void |
8.5.2.1 Method triggeredBindingRequestNotification()
Delivery of a report that is indicating that a user’s binding details are requested to be changed. The application returns acceptable bindings.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the triggered binding-request notification.
address : in TpAddress
Specifies the address of the user whose binding details are requested to be changed.
contactInformation : in TpBindingSet
Specifies the binding details of the user.
Returns
TpBindingSet
8.5.2.2 Method triggeredBindingRequestNotificationStartErr()
This method indicates that the request for notification of binding requests has failed.
Parameters
assignmentId : in TpAssignmentID
Specifies the assignment ID of the failed request for notification of binding requests.
cause : in TpMobilityError
Specifies the error that led to the failure.
diagnostic : in TpMobilityDiagnostic
Specifies additional information about the error that led to the failure.