MCOP Unified Open Application API
1.2.1. Initialization and capabilities discovery
1.2.2. MCOP log-in: authentication, authorization and service registration
1.2.3. Configuration retrieval
1.2.4. Call controlling and floor controlling
1.2.5. Group membership retrieval and notifications
1.2.6. Group affiliation retrieval, notifications and modifications
1.2.7. Selection of default contact
1.2.8. Emergency status setup and notifications
1.3. API definition vs. Stage 1 requirements
1.4.1. MCOP SDK initialization operation
1.4.2. MCOP SDK capabilities retrieval operation
1.4.4. MCOP user authentication operation
1.4.5. Registration to MCPTT configuration updates operation
1.4.6. MCPTT configuration updates notification operation
1.4.7. Group information retrieval operation
1.4.8. Registration to group information updates operation
1.4.9. Group information updates notification operation
1.4.10. Group affiliation retrieval operation
1.4.11. Registration to group affiliation updates operation
1.4.12. Group affiliation updates notification operation
1.4.13. User affiliation operation
1.4.14. Change default contact operation
1.4.15. Default contact change notification operation
1.4.16. Call initialization operation
1.4.17. Call termination operation
1.4.18. Call acceptance operation
1.4.19. Call event notification operation
1.4.20. Floor control request operation
1.4.21. Floor control notification operation
1.4.22. Emergency status modification operation
1.4.23. Registration to eMBMS events notifications operation
1.4.24. eMBMS event notification operation
1.5.1. SdkCapabilities information element
1.5.2. McpttConfiguration information element
1.5.3. McpttGroupInfo information element
1.5.4. McpttUserInfo information element
1.5.5. McpttGroupAffiliationInfo information element
1.5.6. ErrorInfo information element
1. MCOP Unified Open Application API
The following section describes the communication primitives between the different components of the MCOP architecture for each procedure included in the MUOAPI. It also provides a technology agnostic definition of the MUOAPI functions and the different information elements exchanged by the MCOP platform elements.
Each function call in the API can trigger several requests and responses not only between the MCOP components (SDK and plug-ins) but also between MCOP components and other nodes in the MCPTT system. With the purpose of clarifying how these elements communicate with each other, the section includes different message flows, which try to gather all these interactions.
1.2.1. Initialization and capabilities discovery
Figure 1: MCOP SDK and plugins initialization and capabilities discovery
1.2.2. MCOP log-in: authentication, authorization and service registration
Figure 2: Authentication and authorization procedures in MCPTT system during MCOP login process
1.2.3. Configuration retrieval
Figure 3: MCPTT user configuration retrieval procedure
1.2.4. Call controlling and floor controlling
Figure 4: Call initialization procedure with floor control granted notification
Figure 5: Incoming call notification procedure with floor control taken notification
Figure 6: Floor controlling requests and notifications during ongoing MCPTT calls
Figure 7: Floor control revoke notification during ongoing MCPTT call
Figure 8: Rejection of Floor control request
Figure 9: MCOP application initiated call termination procedure
Figure 10: MCPTT server initiated call termination procedure
1.2.5. Group membership retrieval and notifications
Figure 11: Current MCPTT user group membership retrieval procedure
Figure 12: MCOP group membership updates notification procedure
1.2.6. Group affiliation retrieval, notifications and modifications
Figure 13: Current MCPTT user group affiliation retrieval procedure
Figure 14: MCOP group affiliation updates notification procedure
Figure 15: Procedure for (de)affiliating an MCPTT user to a certain group and group affiliation update notification
1.2.7. Selection of default contact
Figure 16: Default contact change
1.2.8. Emergency status setup and notifications
Figure 17: Notification of the emergency status of the call
Figure 18: MCOP user triggered emergency status modification
Figure 19: eMBMS bearer usage procedure
Figure 20: MCPTT server initiated MBMS bearer usage cancellation
Figure 21: MBMS bearer usage cancellation after leaving MBMS service area
Figure 22: MBMS bearer usage cancellation after bad quality reception report
1.3. API definition vs. Stage 1 requirements
Interfaces |
Information Elements |
Stage 1 requirement |
Section 1.4.1 · mcopSdkInitRequest · mcopSdkInitResponse Section 1.4.2 ·
mcopSdkCapabilitiesRetrieval ·
mcopSdkCapabilitiesRetrieval |
Section 1.5.1 |
[R-4.2.1-004]
|
Section 1.4.3 · mcopLoginRequest · mcopLoginResponse Section 1.4.4 ·
mcopUserAuthentication ·
mcopUserAuthentication |
Section 1.5.4 McpttUserInfo |
[R-4.2.2-002] [R-4.2.3-001] |
Section 1.4.5 ·
mcpttConfigurationUpdates ·
mcpttConfigurationUpdates Section 1.4.6 ·
mcpttConfigurationUpdate ·
mcpttConfigurationUpdate |
Section 1.5.2 |
[R-4.2.2-001] Configuration retrieval and setup |
Section 1.4.7 ·
groupInformationRetrieval ·
groupInformationRetrieval Section 1.4.8 ·
groupInformationUpdates ·
groupInformationUpdates Section 1.4.9 ·
groupInformationUpdates ·
groupInformationUpdates |
Section 1.5.3 McpttGroupInfo |
[R-4.2.4-001] |
Section 1.4.10 ·
groupAffiliation ·
groupAffiliation Section 1.4.11 ·
groupAffiliationUpdates ·
groupAffiliationUpdates Section 1.4.12 ·
groupAffiliationUpdate ·
groupAffiliationUpdate |
Section 1.5.5 |
[R-4.2.4-002]
|
Section 1.4.14 ·
defaultContactChange ·
defaultContactChange Section 1.4.15 ·
defaultContactChange ·
defaultContactChange |
- |
[R-4.2.4-003]
|
Section 1.4.13 · userAffiliationRequest · userAffiliationResponse |
- |
[R-4.2.4-004]
|
Section 1.4.16 · initiateCallRequest · initiateCallResponse Section 1.4.17 · terminateCallRequest · terminateCallResponse Section 1.4.18 · acceptCallRequest · acceptCallResponse Section 1.4.19 · callEventNotificationRequest · callEventNotificationResponse Section 1.4.20 · floorControlRequest · floorControlResponse Section 1.4.21 ·
floorControlEvent ·
floorControlEvent |
- |
[R-4.2.5-001] Call controlling: requests [R-4.2.5-002] [R-4.2.5-003] [R-4.2.5-004]
|
Section 1.4.22 ·
emergencyStatusModification ·
emergencyStatusModification |
- |
[R-4.2.5-005]
|
Section 1.4.23 ·
eMbmsNotifications ·
eMbmsNotifications Section 1.4.24 · eMbmsNotificationRequest · eMbmsNotificationResponse |
- |
[R-4.2.6-001] |
Table 1: MCOP UOAPI definition vs Stage 1 requirements
This section defines a neutral interface for the MCOP UOAPI, i.e. the interface between the MCPTT capable APP and the MCOP SDK. The functions and parameters included in this section are independent of the programming language used for the implementation.
1.4.1. MCOP SDK initialization operation
Message |
Requirement |
Direction |
mcopSdkInitRequest |
Mandatory |
APP ➔ SDK |
mcopSdkInitResponse |
Mandatory |
SDK ➔ APP |
Table 2: MCOP SDK initialization operation
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
applicationId |
M |
1 |
String |
It uniquely identifies the application. |
Table 3: MCOP SDK initialization input parameters
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
result |
M |
1 |
Boolean |
It indicates if the SDK initialization process was correct |
Table 4: MCOP SDK initialization output parameters
1.4.2. MCOP SDK capabilities retrieval operation
Message |
Requirement |
Direction |
mcopSdkCapabilitiesRetrievalRequest |
Mandatory |
APP ➔ SDK |
mcopSdkCapabilitiesRetrievalResponse |
Mandatory |
SDK ➔ APP |
Table 5: MCOP SDK capabilities retrieval operation
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
applicationId |
M |
1 |
String |
It uniquely identifies the application. |
Table 6: MCOP SDK capabilities retrieval input parameters
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
sdkCapabilities |
M |
1 |
SdkCapabilities |
This parameter includes all capabilities supported by the SDK |
Table 7: MCOP SDK capabilities retrieval output parameters
Message |
Requirement |
Direction |
mcopLoginRequest |
Mandatory |
APP ➔ SDK |
mcopLoginResponse |
Mandatory |
SDK ➔ APP |
Table 8: MCOP login operation
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
applicationId |
M |
1 |
String |
It uniquely identifies the application. |
Table 9: MCOP login input parameters
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
loginResult |
M |
1 |
Boolean |
It indicates if the login process was successful. |
mcpttId |
M |
1 |
String |
MCPTT User Identity |
displayName |
O |
1 |
String |
Human readable name |
Table 10: MCOP login output parameters
1.4.4. MCOP user authentication operation
Message |
Requirement |
Direction |
mcopUserAuthenticationRequest |
Mandatory |
SDK ➔ APP |
mcopUserAuthenticationResponse |
Mandatory |
APP ➔ SDK |
Table 11: MCOP user authentication operation
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
requestURL |
M |
1 |
String |
It indicates the URL to be used for third party authentication. |
redirectURL |
M |
1 |
String |
It indicates the URL to be checked in the responses of the third party authentication agent (IdMS) in order to consider that the authentication process has finished. |
Table 12: MCOP user authentication input parameters
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
resultURL |
M |
1 |
String |
An URL that contains the authentication result from the third party authentication agent (IdMS). It contains the necessary parameters for the SDK to authorize the user |
Table 13: MCOP user authentication output parameters
1.4.5. Registration to MCPTT configuration updates operation
Message |
Requirement |
Direction |
mcpttConfigurationUpdatesRegistrationRequest |
Mandatory |
APP ➔ SDK |
mcpttConfigurationUpdatesRegistrationResponse |
Mandatory |
SDK ➔ APP |
Table 14: Registration to MCPTT configuration updates operation
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
applicationId |
M |
1 |
String |
It identifies the APP that wants to be registered to MCPTT configuration update events. |
Table 15: Registration to MCPTT configuration updates input parameters
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
result |
M |
1 |
Boolean |
It indicates if the registration to MCPTT configuration updates was correct. |
Table 16: Registration to MCPTT configuration updates output parameters
1.4.6. MCPTT configuration updates notification operation
Message |
Requirement |
Direction |
mcpttConfigurationUpdateNotificationRequest |
Mandatory |
SDK ➔ APP |
mcpttConfigurationUpdateNotificationResponse |
Mandatory |
APP ➔ SDK |
Table 17: MCPTT configuration updates notification operation
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
mcpttConfiguration |
M |
1 |
McpttConfiguration |
It includes all MCPTT configuration data valid for the APP |
Table 18: MCPTT configuration updates notification input parameters
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
result |
M |
1 |
Boolean |
It indicates if the MCPTT configuration update notification was accepted by the APP |
error |
O |
1 |
ErrorInfo |
It contains specific error information if the configuration update/retrieval operation was not successful. |
Table 19: MCPTT configuration updates notification output parameters
1.4.7. Group information retrieval operation
Message |
Requirement |
Direction |
groupInformationRetrievalRequest |
Mandatory |
APP ➔ SDK |
groupInformationRetrievalResponse |
Mandatory |
SDK ➔ APP |
Table 20: Group information retrieval operation
No input parameter.
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
result |
M |
1 |
Boolean |
It indicates if the group information request was accepted by the SDK. |
Table 21: Group information retrieval output parameters
1.4.8. Registration to group information updates operation
Message |
Requirement |
Direction |
groupInformationUpdatesRegistrationRequest |
Mandatory |
APP ➔ SDK |
groupInformationUpdatesRegistrationResponse |
Mandatory |
SDK ➔ APP |
Table 22: Registration to group information updates operation
No input parameter.
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
result |
M |
1 |
Boolean |
It indicates if the APP was correctly registered to group information updates. |
Table 23: Group information updates notification output parameters
1.4.9. Group information updates notification operation
Message |
Requirement |
Direction |
groupInformationUpdatesNotificationRequest |
Mandatory |
SDK ➔ APP |
groupInformationUpdatesNotificationResponse |
Mandatory |
APP ➔ SDK |
Table 24: Group information updates notification operation
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
groupInfo |
M |
1 |
McpttGroupInfo |
It shows information of each group the user is member of. |
error |
O |
1 |
ErrorInfo |
It contains specific error information if the group information update/retrieval operation was not successful. |
Table 25: Group information updates notification input parameters
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
result |
M |
1 |
Boolean |
It indicates if the group information update notification was accepted by the APP |
Table 26: Group information updates notification output parameters
1.4.10. Group affiliation retrieval operation
Message |
Requirement |
Direction |
groupAffiliationRetrievalRequest |
Mandatory |
APP ➔ SDK |
groupAffiliationRetrievalResponse |
Mandatory |
SDK ➔ APP |
Table 27: Group affiliation retrieval operation
No input parameter.
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
result |
M |
1 |
Boolean |
It indicates if the group affiliation retrieval request was accepted by the SDK. |
Table 28: Group affiliation retrieval output parameters
1.4.11. Registration to group affiliation updates operation
Message |
Requirement |
Direction |
groupAffiliationUpdatesRegistrationRequest |
Mandatory |
APP ➔ SDK |
groupAffiliationUpdatesRegistrationResponse |
Mandatory |
SDK ➔ APP |
Table 29: Registration to group affiliation updates operation
No input parameter.
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
result |
M |
1 |
Boolean |
It indicates if the APP was correctly registered to group affiliation updates. |
Table 30: Group affiliation updates notification output parameters
1.4.12. Group affiliation updates notification operation
Message |
Requirement |
Direction |
groupAffiliationUpdateNotificationRequest |
Mandatory |
SDK ➔ APP |
groupAffiliationUpdateNotificationResponse |
Mandatory |
APP ➔ SDK |
Table 31: Group affiliation updates notification operation
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
affiliatedGroupInfo |
M |
1..N |
McpttGroupAffiliationInfo |
It contains affiliation information of the group. |
eventType |
M |
1 |
Enum |
Type of event that triggered the group affiliation update: - Normal affiliation update event - Remote affiliation update request event in negotiated mode (requires user intervention) |
groupID |
O |
1 |
String |
Only present if a remote affiliation is requested. It indicates the MCPTT group ID the affiliation update refers to. |
remoteUserID |
O |
1 |
String |
Only present if a remote affiliation is requested. It indicates the MCPTT ID of the user that requested the affiliation update. |
error |
O |
1 |
ErrorInfo |
It contains specific error information if the group affiliation status update/retrieval operation was not successful. |
Table 32: Group affiliation update notification input parameters
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
result |
M |
1 |
Boolean |
It indicates if the group affiliation update notification was accepted by the APP |
Table 33: Group affiliation updates notification output parameters
1.4.13. User affiliation operation
Message |
Requirement |
Direction |
userAffiliationRequest |
Mandatory |
APP ➔ SDK |
userAffiliationResponse |
Mandatory |
SDK ➔ APP |
Table 34: User affiliation operation
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
mcpttGroupId |
M |
1 |
String |
MCPTT ID of the group to affiliate or deaffiliate. |
affiliationOperationType |
M |
1 |
Enum |
Operation type: - Affiliate - Deaffiliate |
Table 35: User affiliation input parameters
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
result |
M |
1 |
Boolean |
It indicates if the group affiliation operation was accepted by the SDK |
Table 36: Group affiliation operation output parameters
1.4.14. Change default contact operation
Message |
Requirement |
Direction |
defaultContactChangeRequest |
Mandatory |
APP ➔ SDK |
defaultContactChangeResponse |
Mandatory |
SDK ➔ APP |
Table 37: Change default contact operation
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
mcpttId |
M |
1 |
String |
MCPTT ID of the user or group to set as default contact. |
Table 38: Change default contact input parameters
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
result |
M |
1 |
Boolean |
It indicates if the default contact change request wn was accepted by the SDK |
Table 39: Change default contact operation output parameters
1.4.15. Default contact change notification operation
Message |
Requirement |
Direction |
defaultContactChangeNotificationRequest |
Mandatory |
SDK ➔ APP |
defaultContactChangeNotificationResponse |
Mandatory |
APP ➔ SDK |
Table 40: Default contact change notification operation
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
mcpttId |
M |
1 |
String |
MCPTT ID of the user or group that was set as default contact. |
error |
O |
1 |
ErrorInfo |
It contains specific error information if the group affiliation status update/retrieval operation was not successful. |
Table 41: Default contact change notification input parameters
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
result |
M |
1 |
Boolean |
It indicates if default contact change notification event was accepted by the APP |
Table 42: Default contact change notification output parameters
1.4.16. Call initialization operation
Message |
Requirement |
Direction |
initiateCallRequest |
Mandatory |
APP ➔ SDK |
initiateCallResponse |
Mandatory |
SDK ➔ APP |
Table 43: Call initialization operation
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
calledId |
M |
1 |
String |
It identifies the MC service ID of the MC group or the MC user the APP wants to call. |
serviceType |
M |
1..N |
Enumeration |
It identifies the type of MC service. Some services require more than one media types (e.g. MCVideo with audio stream) Values considered: - Audio - Video - Data |
callType |
M |
1 |
Enumeration |
It identifies the type of call the APP wants to establish. Values considered: - Private full duplex call - Private half duplex call - Prearranged group call - Chat group call - First-to-answer call - Private call callback - Remote Ambient Listening - Local Ambient Listening |
emergencyType |
O |
1 |
Enumeration |
It identifies the emergency state of the call. Values considered: - No-emergency (default value if not included) - Imminent Peril - Emergency call |
Table 44: Call initialization input parameters
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
result |
M |
1 |
Boolean |
It indicates if the call initialization request was accepted by the SDK. |
Table 45: Call initialization output parameters
1.4.17. Call termination operation
Message |
Requirement |
Direction |
terminateCallRequest |
Mandatory |
APP ➔ SDK |
terminateCallResponse |
Mandatory |
SDK ➔ APP |
Table 46: Call termination operation
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
sessionId |
M |
1 |
String |
It identifies the MCPTT call the APP wants to terminate. Value obtained during call establishment. |
Table 47: Call termination input parameters
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
result |
M |
1 |
Boolean |
It indicates if the call termination request was accepted by the SDK. |
Table 48: Call termination output parameters
1.4.18. Call acceptance operation
Message |
Requirement |
Direction |
acceptCallRequest |
Mandatory |
APP ➔ SDK |
acceptCallResponse |
Mandatory |
SDK ➔ APP |
Table 49: Call acceptance operation
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
sessionId |
M |
1 |
String |
It identifies the MCPTT call the APP wants to accept. Value obtained in incoming call notification. |
Table 50: Call acceptance input parameters
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
result |
M |
1 |
Boolean |
It indicates if the call acceptance request was accepted by the SDK. |
Table 51: Call acceptance output parameters
1.4.19. Call event notification operation
Message |
Requirement |
Direction |
callEventNotificationRequest |
Mandatory |
SDK ➔ APP |
callEventNotificationResponse |
Mandatory |
APP ➔ SDK |
Table 52: Call event notification operation
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
sessionId |
M |
1 |
String |
It identifies the MCPTT call for which the SDK wants to send an event. In call initialization processes, this value should be stored to perform any termination or floor control operation. |
eventType |
M |
1 |
Enumeration |
It identifies the event notified by the SDK. Values considered: - Incoming call - Remote ringing - Call in-progress - Call connected - Call terminated - Call error - Call update |
callerMcpttId |
O |
1 |
String |
MCPTT ID of the calling party (group or individual user) in case the notification is an incoming call initialization. |
serviceType |
O |
1..N |
Enumeration |
It identifies the type of MC service. Some services require more than one media types (e.g. MCVideo with audio stream) Values considered: - Audio - Video - Data |
callType |
O |
1 |
Enumeration |
It identifies the incoming call type. Values considered: - Private full duplex call - Private half duplex call - Prearranged group call - Chat group call - First-to-answer call - Private call callback - Remote Ambient Listening - Local Ambient Listening |
emergencyType |
O |
1 |
Enumeration |
It identifies the emergency state of the incoming call or the emergency state if the call is updated. Values considered: - No-emergency (default value if not included) - Imminent Peril - Emergency call |
error |
O |
1 |
ErrorInfo |
It contains specific error information if there was an error in any call operation. |
Table 53: Call event notification input parameters
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
result |
M |
1 |
Boolean |
It indicates if the call event was accepted by the APP |
Table 54: Call event notification output parameters
1.4.20. Floor control request operation
Message |
Requirement |
Direction |
floorControlRequest |
Mandatory |
APP ➔ SDK |
floorControlResponse |
Mandatory |
SDK ➔ APP |
Table 55: Floor control request operation
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
sessionId |
M |
1 |
String |
It identifies the MC call for which the APP wants to send a floor control message. Value obtained during call establishment. |
requestType |
M |
1 |
Enumeration |
It identifies the type of request sent by the APP. Values considered: - Floor Control Request - Floor Control Release - Transmission request - Transmission End request - Reception request - Reception End request |
userID |
O |
1 |
String |
|
Table 56: Floor control request input parameters
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
result |
M |
1 |
Boolean |
It indicates if the floor control request was accepted by the SDK. |
Table 57: Floor control request output parameters
1.4.21. Floor control notification operation
Message |
Requirement |
Direction |
floorControlEventNotificationRequest |
Mandatory |
SDK ➔ APP |
floorControlEventNotificationResponse |
Mandatory |
APP ➔ SDK |
Table 58: Floor control notification operation
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
sessionId |
M |
1 |
String |
It identifies the MC call in which the floor control event occurred. Value obtained during call establishment. |
notificationType |
M |
1 |
Enumeration |
It identifies the type of event that is being notified by the SDK. Values considered: - Granted - Taken - Idle - Revoked - Denied - Queued - Queued Timeout - Tx Granted - Rx Granted - Tx Rejected - Rx Rejected - Tx Revoked - Rx Revoked - Tx Notification - Tx End Notification - Tx End Response - Rx End Response |
duration |
O |
1 |
Uint32 |
Maximum duration of the floor control grant (e.g. 30s). Only available when sending ‘Granted’ / ‘Tx Granted’ notification. |
userID |
O |
1 |
String |
MC service ID of the user that has been granted the floor when sending ‘Taken’ notification. Or MC service ID of the new user that wants to start / stop sending data when ‘Tx Notification’ / ‘Tx End Notification’ is received. Or MC service ID of the remote user the local user wants to receive / stop receiving data from when ‘Rx Granted’ / ‘Rx Revoked’ / ‘Reception End Response’ is received. |
displayName |
O |
1 |
String |
Human readable name corresponding to the MC service ID (userID). |
requestAllowed |
O |
1 |
Boolean |
It indicates if the user receiving a ‘Taken’ notification can request the floor or not. For example, this value is ‘False’ in broadcast group calls. |
error |
O |
1 |
ErrorInfo |
It contains specific error information if there was an error in any floor control operation. |
Table 59: Floor control notification input parameters
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
result |
M |
1 |
Boolean |
It indicates if the floor control event was accepted by the APP |
Table 60: Floor control notification output parameters
1.4.22. Emergency status modification operation
Message |
Requirement |
Direction |
emergencyStatusModificationRequest |
Mandatory |
APP ➔ SDK |
emergencyStatusModificationResponse |
Mandatory |
SDK ➔ APP |
Table 61: Emergency status modification operation
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
sessionId |
M |
1 |
String |
It identifies the MCPTT call in which the APP wants to perform an emergency status modification. Value obtained during call establishment. |
emergencyStatus |
M |
1 |
Enumeration |
It identifies the new emergency status the APP wants to set. Values considered: - Emergency State - Imminent Peril State - No-Emergency State |
Table 62: Emergency status modification input parameters
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
result |
M |
1 |
Boolean |
It indicates if the emergency status change was accepted by the SDK |
Table 63: Emergency status modification output parameters
1.4.23. Registration to eMBMS events notifications operation
Message |
Requirement |
Direction |
eMbmsNotificationsRegistrationRequest |
Mandatory |
APP ➔ SDK |
eMbmsNotificationsRegistrationResponse |
Mandatory |
SDK ➔ APP |
Table 64: Registration to eMBMS events notifications operation
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
applicationId |
M |
1 |
String |
It identifies the APP that wants to be registered to eMBMS events. |
Table 65: Registration to eMBMS events notifications input parameters
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
result |
M |
1 |
Boolean |
It indicates if the registration was correct. |
Table 66: Registration to eMBMS events notifications output parameters
1.4.24. eMBMS event notification operation
Message |
Requirement |
Direction |
eMbmsNotificationRequest |
Mandatory |
SDK ➔ APP |
eMbmsNotificationResponse |
Mandatory |
APP ➔ SDK |
Table 67: eMBMS event notification operation
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
sessionId |
M |
1 |
String |
It identifies the MCPTT call in which the eMBMS event occurred. Value obtained during call establishment. |
notificationType |
M |
1 |
Enumeration |
It indicates the type of eMBMS event that is being notified by the SDK. Values considered: - eMBMS available for the call - Under coverage of eMBMS - eMBMS bearer in use - eMBMS bearer not in use - No coverage of eMBMS - eMBMS not available for the call |
mbmsServiceAreaIdList |
M |
1..N |
String |
List of MBMS service areas where the MBMS service is available |
tmgi |
M |
1 |
String |
Temporary Mobile Group Identity (TMGI) of the MBMS bearer |
error |
O |
1 |
ErrorInfo |
It contains specific error information if there was an error in any eMBMS related operation. |
Table 68: eMBMS event notification input parameters
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
result |
M |
1 |
Boolean |
It indicates if the eMBMS event notification was accepted by the APP |
Table 69: eMBMS event notification output parameters
1.5.1. SdkCapabilities information element
Capabilities of the SDK and each plugin.
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
connectivityPluginAvailability |
M |
1 |
Boolean |
It indicates if the connectivity plug-in is available or not |
connectivityPluginVersion |
O |
1 |
String |
It identifies the version Connectivity plug-in |
simPluginAvailability |
M |
1 |
Boolean |
It indicates if the SIM plug-in is available or not |
simPluginVersion |
O |
1 |
String |
It identifies the version of the SIM plug-in |
eMbmsPluginAvailability |
M |
1 |
Boolean |
It indicates if the eMBMS plug-in is available or not |
eMbmsPluginVersion |
O |
1 |
String |
It identifies the version of the eMBMS plug-in |
provisioningPluginAvailability |
M |
1 |
Boolean |
It indicates if the OTA/provisioning plug-in is available or not |
provisioningPluginVersion |
O |
1 |
String |
It identifies the version of the provisioning plug-in |
Table 70: Attributes of SdkCapabilities information element
1.5.2. McpttConfiguration information element
MCPTT user configuration values obtained from the MCPTT system. This is a subset of all the configuration information related with an MCPTT user and that could be interesting for an APP.
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
displayName |
O |
1 |
String |
Human readable user name |
participantType |
O |
1 |
String |
Category of the participant |
organization |
O |
1 |
String |
Organization the user belongs to |
policies |
O |
1..N |
Boolean array |
It indicates the types of calls the user is allowed to perform: - Private calls - Emergency group calls - Emergency private calls - Imminent peril calls - Emergency alerts |
Table 71: Attributes of McpttConfiguration information element
1.5.3. McpttGroupInfo information element
MCPTT group information data obtained from the MCPTT system. This is a subset of all the data related with an MCPTT group and that could be interesting for an APP.
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
mcpttGroupId |
M |
1 |
String |
MCPTT group identity |
displayName |
O |
1 |
String |
Human readable group name |
mcpttUserList |
M |
1..N |
McpttUserInfo |
List containing information from all members of the group |
policies |
O |
1..N |
Boolean array |
It indicates the types of calls the group admits: - Prearranged / Chat MCPTT calls - Emergency calls - Imminent peril calls - Emergency alerts - Prearranged / Chat MCVideo calls - Urgent real-time MCVideo calls - Non-urgent real-time MCVideo calls - Non real-time MCVideo calls - MCData SDS - MCData FD
|
maxSDSSize |
O |
1 |
Integer |
Maximum size for SDS |
maxFDSize |
O |
1 |
Integer |
Maximum file size for MCData FD. |
maxFDHTTPSize |
O |
1 |
Integer |
Maximum file size for MCData FD over HTTP. |
activeVideoMode |
O |
1 |
Enum |
Currently active MCVideo mode: - Urgent real-time - Non-urgent real-time - Non real-time |
Table 72: Attributes of McpttGroupInfo information element
1.5.4. McpttUserInfo information element
This information element contains information of the contacts of the user or of the other members of a group the user belongs to.
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
mcpttId |
M |
1 |
String |
MCPTT User Identity |
displayName |
O |
1 |
String |
Human readable name of the user |
participantType |
O |
1 |
String |
Category of the participant |
Table 73: Attributes of McpttUserInfo information element
1.5.5. McpttGroupAffiliationInfo information element
MCPTT group affiliation information status obtained from the MCPTT system.
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
mcpttGroupId |
M |
1 |
String |
MCPTT group identity |
affiliationStatus |
M |
1 |
Enum |
The affiliation status of the group: - Not affiliated - Affiliating - Affiliated - Deaffiliating |
expirationTime |
O |
1 |
Date |
Expiration time of the group affiliation |
Table 74: Attributes of McpttGroupAffiliationInfo information element
1.5.6. ErrorInfo information element
This information element contains all the data related with any error that can occur.
Parameter Name |
Qualifier |
Cardinality |
Data type |
Description |
errorCode |
M |
1 |
Integer |
Error code. |
errorString |
M |
1 |
String |
Human readable description of the error. |
Table 75: Attributes of ErrorInfo information element