Telematics SDK - Interface Specification
v1.46.14
|
Data Structures | |
struct | telux::tel::ImsServiceConfig |
class | telux::tel::IImsSettingsManager |
ImsSettingsManager allows IMS settings. For example enabling or disabling IMS service, VOIMS service. More... | |
class | telux::tel::IImsSettingsListener |
Listener class for getting IMS service configuration change notifications. The listener method can be invoked from multiple different threads. Client needs to make sure that implementation is thread-safe. More... | |
Typedefs | |
using | telux::tel::ImsServiceConfigValidity = std::bitset< 32 > |
using | telux::tel::ImsServiceConfigCb = std::function< void(SlotId slotId, ImsServiceConfig config, telux::common::ErrorCode error)> |
Enumerations | |
enum | telux::tel::ImsServiceConfigType { telux::tel::IMSSETTINGS_VOIMS = 1, telux::tel::IMSSETTINGS_IMS_SERVICE = 2 } |
This section contains APIs related to IMS Configuration.
struct telux::tel::ImsServiceConfig |
Defines the selected IMS service configuration parameters and their corresponding value
Data Fields | ||
---|---|---|
ImsServiceConfigValidity | configValidityMask |
Indicates the configurations type. Bit set to 1 denotes the config is valid. |
bool | imsServiceEnabled |
Enable/Disable IMS service |
bool | voImsEnabled |
Enable/Disable VOIMS service |
class telux::tel::IImsSettingsManager |
ImsSettingsManager allows IMS settings. For example enabling or disabling IMS service, VOIMS service.
Public Member Functions | |
virtual telux::common::ServiceStatus | getServiceStatus ()=0 |
virtual telux::common::Status | requestServiceConfig (SlotId slotId, ImsServiceConfigCb callback)=0 |
virtual telux::common::Status | setServiceConfig (SlotId slotId, ImsServiceConfig config, common::ResponseCallback callback=nullptr)=0 |
virtual telux::common::Status | registerListener (std::weak_ptr< IImsSettingsListener > listener)=0 |
virtual telux::common::Status | deregisterListener (std::weak_ptr< IImsSettingsListener > listener)=0 |
virtual | ~IImsSettingsManager () |
|
virtual |
|
pure virtual |
This status indicates whether the IImsSettingsManager object is in a usable state.
|
pure virtual |
Request the IMS service configurations
[in] | slotId | Slot for which the IMS service configurations is requested. |
[in] | callback | Callback function to get the response of request IMS service configurations. |
|
pure virtual |
To configure the IMS service configurations. Also specifiy whether configuration needs to be enabled or disabled.
[in] | slotId | Slot for which the IMS service configuration is intended. |
[in] | config | Indicates which configuration are configured currently and whether the config is enabled or disabled. ImsServiceConfig. |
[in] | callback | Callback function to get the response of set IMS service configuration request. |
|
pure virtual |
Register a listener for specific events in the IMS settings subsystem.
[in] | listener | Pointer to IImsSettingsListener object that processes the notification |
|
pure virtual |
Deregister the previously added listener.
[in] | listener | Pointer to IImsSettingsListener object that needs to be deregistered. |
class telux::tel::IImsSettingsListener |
Listener class for getting IMS service configuration change notifications. The listener method can be invoked from multiple different threads. Client needs to make sure that implementation is thread-safe.
Public Member Functions | |
virtual void | onImsServiceConfigsChange (SlotId slotId, ImsServiceConfig config) |
virtual void | onServiceStatusChange (telux::common::ServiceStatus status) |
virtual | ~IImsSettingsListener () |
|
virtual |
Destructor of IImsSettingsListener
|
virtual |
This function is called whenever any IMS service configuration is changed.
[in] | slotId | SIM corresponding to slot identifier for which the IMS service configuration has changed. |
[in] | config | Indicates which configuration is valid and whether the config is enabled or disabled. ImsServiceConfig. |
|
virtual |
This function is called when IImsSettingsManager service status changes.
[in] | status | - ServiceStatus |
using telux::tel::ImsServiceConfigValidity = typedef std::bitset<32> |
32 bit mask that denotes which of the IMS settings configuration parameters defined in ImsServiceConfigType enum are configured currently. For example, if the client selects the VOIMS configuration, 1st bit position is set.
using telux::tel::ImsServiceConfigCb = typedef std::function<void(SlotId slotId, ImsServiceConfig config, telux::common::ErrorCode error)> |
This function is called in the response to requestServiceConfig API.
The callback can be invoked from multiple different threads. The implementation should be thread safe.
[in] | slotId | Slot for which the IMS service configuration is intended. |
[in] | config | Indicates which configuration is valid and whether the configuration is enabled or disabled. ImsServiceConfig. |
[in] | error | Return code which indicates whether the operation succeeded or not . |