libmm-glib,sim: new 'SimType', 'Removability' and 'EsimStatus' properties

This commit is contained in:
Aleksander Morgado
2021-11-20 21:30:27 +01:00
parent 46016f68fd
commit 0eda648bb9
5 changed files with 129 additions and 0 deletions

View File

@@ -55,6 +55,9 @@ MMSmsStorage
MMSmsValidityType
MMSmsCdmaTeleserviceId
MMSmsCdmaServiceCategory
MMSimType
MMSimEsimStatus
MMSimRemovability
</SECTION>
<SECTION>

View File

@@ -1358,6 +1358,9 @@ mm_sim_dup_operator_name
mm_sim_get_emergency_numbers
mm_sim_dup_emergency_numbers
mm_sim_get_preferred_networks
mm_sim_get_sim_type
mm_sim_get_esim_status
mm_sim_get_removability
<SUBSECTION Methods>
mm_sim_send_pin
mm_sim_send_pin_finish
@@ -1695,6 +1698,9 @@ mm_bearer_ip_family_get_string
mm_bearer_allowed_auth_build_string_from_mask
mm_bearer_multiplex_support_get_string
mm_bearer_apn_type_build_string_from_mask
mm_sim_type_get_string
mm_sim_esim_status_get_string
mm_sim_removability_get_string
mm_modem_capability_build_string_from_mask
mm_modem_state_get_string
mm_modem_state_failed_reason_get_string
@@ -1760,6 +1766,9 @@ mm_bearer_ip_method_build_string_from_mask
mm_bearer_allowed_auth_get_string
mm_bearer_multiplex_support_build_string_from_mask
mm_bearer_apn_type_get_string
mm_sim_type_build_string_from_mask
mm_sim_esim_status_build_string_from_mask
mm_sim_removability_build_string_from_mask
mm_modem_cdma_registration_state_build_string_from_mask
mm_modem_cdma_activation_state_build_string_from_mask
mm_modem_cdma_rm_protocol_build_string_from_mask
@@ -1787,6 +1796,9 @@ MM_TYPE_BEARER_IP_METHOD
MM_TYPE_BEARER_ALLOWED_AUTH
MM_TYPE_BEARER_MULTIPLEX_SUPPORT
MM_TYPE_BEARER_APN_TYPE
MM_TYPE_SIM_TYPE
MM_TYPE_ESIM_STATUS
MM_TYPE_SIM_REMOVAL_STATUS
MM_TYPE_FIRMWARE_IMAGE_TYPE
MM_TYPE_MODEM_3GPP_FACILITY
MM_TYPE_MODEM_3GPP_NETWORK_AVAILABILITY
@@ -1832,6 +1844,9 @@ mm_bearer_ip_method_get_type
mm_bearer_allowed_auth_get_type
mm_bearer_multiplex_support_get_type
mm_bearer_apn_type_get_type
mm_sim_type_get_type
mm_sim_esim_status_get_type
mm_sim_removability_get_type
mm_firmware_image_type_get_type
mm_modem_3gpp_facility_get_type
mm_modem_3gpp_network_availability_get_type
@@ -3533,6 +3548,9 @@ mm_gdbus_sim_get_emergency_numbers
mm_gdbus_sim_dup_emergency_numbers
mm_gdbus_sim_dup_preferred_networks
mm_gdbus_sim_get_preferred_networks
mm_gdbus_sim_get_sim_type
mm_gdbus_sim_get_esim_status
mm_gdbus_sim_get_removability
<SUBSECTION Methods>
mm_gdbus_sim_call_send_pin
mm_gdbus_sim_call_send_pin_finish

View File

@@ -1729,4 +1729,52 @@ typedef enum { /*< underscore_name=mm_modem_3gpp_packet_service_state >*/
MM_MODEM_3GPP_PACKET_SERVICE_STATE_ATTACHED = 2,
} MMModem3gppPacketServiceState;
/**
* MMSimType:
* @MM_SIM_TYPE_UNKNOWN: SIM type is not known.
* @MM_SIM_TYPE_PHYSICAL: SIM is a pysical SIM.
* @MM_SIM_TYPE_ESIM: SIM is a ESIM.
*
* SIM type indicating whether ESIM or not
*
* Since: 1.20
*/
typedef enum { /*< underscore_name=mm_sim_type >*/
MM_SIM_TYPE_UNKNOWN = 0,
MM_SIM_TYPE_PHYSICAL = 1,
MM_SIM_TYPE_ESIM = 2,
} MMSimType;
/**
* MMSimEsimStatus:
* @MM_SIM_ESIM_STATUS_UNKNOWN: ESIM status unknown.
* @MM_SIM_ESIM_STATUS_NO_PROFILES: ESIM with no profiles.
* @MM_SIM_ESIM_STATUS_WITH_PROFILES: ESIM with profiles.
*
* Status of the profiles for ESIM
*
* Since: 1.20
*/
typedef enum { /*< underscore_name=mm_sim_esim_status >*/
MM_SIM_ESIM_STATUS_UNKNOWN = 0,
MM_SIM_ESIM_STATUS_NO_PROFILES = 1,
MM_SIM_ESIM_STATUS_WITH_PROFILES = 2,
} MMSimEsimStatus;
/**
* MMSimRemovability:
* @MM_SIM_REMOVABILITY_UNKNOWN: SIM removability not known.
* @MM_SIM_REMOVABILITY_REMOVABLE: SIM is a removable SIM.
* @MM_SIM_REMOVABILITY_NOT_REMOVABLE: SIM is not a removable SIM.
*
* Respresents SIM removability of the current SIM.
*
* Since: 1.20
*/
typedef enum { /*< underscore_name=mm_sim_removability >*/
MM_SIM_REMOVABILITY_UNKNOWN = 0,
MM_SIM_REMOVABILITY_REMOVABLE = 1,
MM_SIM_REMOVABILITY_NOT_REMOVABLE = 2,
} MMSimRemovability;
#endif /* _MODEMMANAGER_ENUMS_H_ */

View File

@@ -411,6 +411,62 @@ mm_sim_get_preferred_networks (MMSim *self)
return network_list;
}
/**
* mm_sim_get_sim_type:
* @self: A #MMSim.
*
* Gets the SIM type.
*
* Returns: a #MMSimType.
*
* Since: 1.20
*/
MMSimType
mm_sim_get_sim_type (MMSim *self)
{
g_return_val_if_fail (MM_IS_SIM (self), MM_SIM_TYPE_UNKNOWN);
return mm_gdbus_sim_get_sim_type (MM_GDBUS_SIM (self));
}
/**
* mm_sim_get_esim_status:
* @self: A #MMSim.
*
* Gets the eSIM status.
*
* Only applicable if the SIM type is %MM_SIM_TYPE_ESIM.
*
* Returns: a #MMSimEsimStatus.
*
* Since: 1.20
*/
MMSimEsimStatus
mm_sim_get_esim_status (MMSim *self)
{
g_return_val_if_fail (MM_IS_SIM (self), MM_SIM_ESIM_STATUS_UNKNOWN);
return mm_gdbus_sim_get_esim_status (MM_GDBUS_SIM (self));
}
/**
* mm_sim_get_removability:
* @self: A #MMSim.
*
* Gets whether the SIM is removable or not.
*
* Returns: a #MMSimRemovability.
*
* Since: 1.20
*/
MMSimRemovability
mm_sim_get_removability (MMSim *self)
{
g_return_val_if_fail (MM_IS_SIM (self), MM_SIM_REMOVABILITY_UNKNOWN);
return mm_gdbus_sim_get_removability (MM_GDBUS_SIM (self));
}
/*****************************************************************************/
/**

View File

@@ -89,6 +89,10 @@ gchar **mm_sim_dup_emergency_numbers (MMSim *self);
GList* mm_sim_get_preferred_networks (MMSim *self);
MMSimType mm_sim_get_sim_type (MMSim *self);
MMSimEsimStatus mm_sim_get_esim_status (MMSim *self);
MMSimRemovability mm_sim_get_removability (MMSim *self);
void mm_sim_send_pin (MMSim *self,
const gchar *pin,
GCancellable *cancellable,