The RCS API is a client/server interface based on database providers, AIDL API & Intents. Several UI may be connected at a time to manage RCS events and to interact with the single stack instance running in background.
The RCS API permits to implement RCS application (e.g. enhanced address book, content sharing app, chat view, widgets) by hiding RCS protocols complexity.
The RCS API offers the following service API:
- Capability API: contact capabilities discovery.
- Chat API: 1-1 chat and group chat.
- File Transfer API: transfer a file.
- Video Share API: live video sharing during a CS call.
- Image Share API: image sharing during a CS call.
- UX API: links third party applications with RCS applications.
The RCS API uses the following Android concepts:
- Intents mechanism to broadcast incoming events (e.g. notification) and
incoming invitations to any Android activity or broadcast receiver which are
declared in the device.
- AIDL interfaces to initiate and to manage session in real time (start,
session monitoring, stop). Session events are managed thanks to callback mechanism.
Note: Methods of the RCS API throw an exception if the RCS service is not available, not initialized or not registered to the IMS platform.
Note: Remote application exceptions are not yet supported by the AIDL SDK, a generic AIDL exception is thrown instead.
Note: The supported formats for a contact used as a method parameter are:
- Phone number in national or international format (e.g. +33xxx).
- SIP address (e.g. "John"
- SIP-URI (e.g. sip:+33xxx@domain.com).
- Tel-URI (e.g. tel:+33xxx).
RcsServiceListener | RCS service event listener |
CommonServiceConfiguration | This class represents the common configuration of RCS Services |
Geoloc | Geolocation class |
Intents | Intents related to rcs service activities |
Intents.Chat | Intents for chat service |
Intents.FileTransfer | Intents for file transfer service |
Intents.Service | Intents for RCS service |
RcsService | Abstract RCS service |
RcsService.Build | Information about the current build |
RcsService.Build.VERSION_CODES | List of version codes |
RcsServiceControl | A utility class to control the activation of the RCS service. |
RcsServiceRegistration | A class to hold the reason code for IMS registration |
RcsServiceRegistrationListener | Service registration events listener |
CommonServiceConfiguration.MessagingMethod | The messaging method |
CommonServiceConfiguration.MessagingMode | The messaging client mode |
CommonServiceConfiguration.MinimumBatteryLevel | The minimum battery level |
RcsService.Direction | Direction of the communication for Chat message, Geolocation, Filetransfer, Imageshare, Videoshare etc. |
RcsService.ReadStatus | Read status of the message |
RcsServiceListener.ReasonCode | ReasonCode |
RcsServiceRegistration.ReasonCode | ReasonCode for IMS registration |
RcsGenericException | Rcs Generic Exception
A Generic exception that must be thrown from a service API when the requested operation failed to fully complete its scope of responsibility and none of the more specified exceptions can be thrown. |
RcsIllegalArgumentException | Rcs Illegal Argument Exception. |
RcsMaxAllowedSessionLimitReachedException | Rcs Max Allowed Session Limit Reached Exception. |
RcsPermissionDeniedException | RCS permission denied exception
Thrown when a method of the service API is called that not allowed right now. |
RcsPersistentStorageException | Rcs Persistent Storage Exception
Thrown when a method of the service API is called to persist data or read back persisted data failed. |
RcsServiceException | Rcs service exception |
RcsServiceNotAvailableException | RCS service not available exception
Thrown when a method of the service API is called and the service API is not bound to the RCS service (e.g. |
RcsServiceNotRegisteredException | Rcs service not registered exception
Thrown when a method of the service API using the RCS service platform is called and the terminal which requires that the RcsCoreService is registered and connected to the IMS server is not registered to the RCS service platform (e.g. |
RcsUnsupportedOperationException | Rcs unsupported operation exception. |