## MMModem3gpp

MMModem3gpp — The 3GPP interface

## Functions

const gchar * | mm_modem_3gpp_network_get_operator_code ()
const gchar * | mm_modem_3gpp_network_get_operator_short ()
const gchar * | mm_modem_3gpp_network_get_operator_long ()
MMModemAccessTechnology | mm_modem_3gpp_network_get_access_technology ()
MMModem3gppNetworkAvailability | mm_modem_3gpp_network_get_availability ()
void | mm_modem_3gpp_network_free ()
const gchar * | mm_modem_3gpp_get_path ()
gchar * | mm_modem_3gpp_dup_path ()
const gchar * | mm_modem_3gpp_get_imei ()
gchar * | mm_modem_3gpp_dup_imei ()
const gchar * | mm_modem_3gpp_get_operator_code ()
gchar * | mm_modem_3gpp_dup_operator_code ()
const gchar * | mm_modem_3gpp_get_operator_name ()
gchar * | mm_modem_3gpp_dup_operator_name ()
MMModem3gppFacility | mm_modem_3gpp_get_enabled_facility_locks ()
MMModem3gppRegistrationState | mm_modem_3gpp_get_registration_state ()
GList * | mm_modem_3gpp_get_pco ()
MMModem3gppEpsUeModeOperation | mm_modem_3gpp_get_eps_ue_mode_operation ()
const gchar * | mm_modem_3gpp_get_initial_eps_bearer_path ()
gchar * | mm_modem_3gpp_dup_initial_eps_bearer_path ()
void | mm_modem_3gpp_get_initial_eps_bearer ()
MMBearer * | mm_modem_3gpp_get_initial_eps_bearer_finish ()
MMBearer * | mm_modem_3gpp_get_initial_eps_bearer_sync ()
MMBearerProperties * | mm_modem_3gpp_get_initial_eps_bearer_settings ()
MMBearerProperties * | mm_modem_3gpp_peek_initial_eps_bearer_settings ()
MMModem3gppPacketServiceState | mm_modem_3gpp_get_packet_service_state ()
MMNr5gRegistrationSettings * | mm_modem_3gpp_get_nr5g_registration_settings ()
MMNr5gRegistrationSettings * | mm_modem_3gpp_peek_nr5g_registration_settings ()
MMNetworkRejection * | mm_modem_3gpp_get_network_rejection ()
MMNetworkRejection * | mm_modem_3gpp_peek_network_rejection ()
void | mm_modem_3gpp_register ()
gboolean | mm_modem_3gpp_register_finish ()
gboolean | mm_modem_3gpp_register_sync ()
void | mm_modem_3gpp_scan ()
GList * | mm_modem_3gpp_scan_finish ()
GList * | mm_modem_3gpp_scan_sync ()
void | mm_modem_3gpp_set_eps_ue_mode_operation ()
gboolean | mm_modem_3gpp_set_eps_ue_mode_operation_finish ()
gboolean | mm_modem_3gpp_set_eps_ue_mode_operation_sync ()
void | mm_modem_3gpp_set_initial_eps_bearer_settings ()
gboolean | mm_modem_3gpp_set_initial_eps_bearer_settings_finish ()
gboolean | mm_modem_3gpp_set_initial_eps_bearer_settings_sync ()
void | mm_modem_3gpp_disable_facility_lock ()
gboolean | mm_modem_3gpp_disable_facility_lock_finish ()
gboolean | mm_modem_3gpp_disable_facility_lock_sync ()
void | mm_modem_3gpp_set_packet_service_state ()
gboolean | mm_modem_3gpp_set_packet_service_state_finish ()
gboolean | mm_modem_3gpp_set_packet_service_state_sync ()
void | mm_modem_3gpp_set_nr5g_registration_settings ()
gboolean | mm_modem_3gpp_set_nr5g_registration_settings_finish ()
gboolean | mm_modem_3gpp_set_nr5g_registration_settings_sync ()
void | mm_modem_3gpp_set_carrier_lock ()
gboolean | mm_modem_3gpp_set_carrier_lock_finish ()
gboolean | mm_modem_3gpp_set_carrier_lock_sync ()

## Types and Values

struct | MMModem3gpp
| MMModem3gppNetwork

## Object Hierarchy

        GBoxed
        ╰── MMModem3gppNetwork
        GObject
        ╰── GDBusProxy
            ╰── MmGdbusModem3gppProxy
                ╰── MMModem3gpp

## Implemented Interfaces

MMModem3gpp implements GDBusInterface, GInitable, GAsyncInitable and MmGdbusModem3gpp.

## Description

The MMModem3gpp is an object providing access to the methods, signals and properties of the 3GPP interface.

The 3GPP interface is exposed whenever a modem has any of the 3GPP capabilities (`MM_MODEM_CAPABILITY_GSM_UMTS`, `MM_MODEM_CAPABILITY_LTE` or `MM_MODEM_CAPABILITY_5GNR`).

## Functions

### mm_modem_3gpp_network_get_operator_code ()

    const gchar *
    mm_modem_3gpp_network_get_operator_code
                                   (const MMModem3gppNetwork *network);

Get the operator code (MCCMNC) of the 3GPP network.

#### Parameters

network | A MMModem3gppNetwork. |

#### Returns

The operator code, or `NULL` if none available.

[transfer none]

Since: 1.0

### mm_modem_3gpp_network_get_operator_short ()

    const gchar *
    mm_modem_3gpp_network_get_operator_short
                                   (const MMModem3gppNetwork *network);

Get the short operator name of the 3GPP network.

#### Parameters

network | A MMModem3gppNetwork. |

#### Returns

The long operator name, or `NULL` if none available.

[transfer none]

Since: 1.0

### mm_modem_3gpp_network_get_operator_long ()

    const gchar *
    mm_modem_3gpp_network_get_operator_long
                                   (const MMModem3gppNetwork *network);

Get the long operator name of the 3GPP network.

#### Parameters

network | A MMModem3gppNetwork. |

#### Returns

The long operator name, or `NULL` if none available.

[transfer none]

Since: 1.0

### mm_modem_3gpp_network_get_access_technology ()

    MMModemAccessTechnology
    mm_modem_3gpp_network_get_access_technology
                                   (const MMModem3gppNetwork *network);

Get the technology used to access the 3GPP network.

#### Parameters

network | A MMModem3gppNetwork. |

#### Returns

A MMModemAccessTechnology.

Since: 1.0

### mm_modem_3gpp_network_get_availability ()

    MMModem3gppNetworkAvailability
    mm_modem_3gpp_network_get_availability
                                   (const MMModem3gppNetwork *network);

Get availability of the 3GPP network.

#### Parameters

network | A MMModem3gppNetwork. |

#### Returns

A MMModem3gppNetworkAvailability.

Since: 1.0

### mm_modem_3gpp_network_free ()

    void
    mm_modem_3gpp_network_free (MMModem3gppNetwork *network);

Frees a MMModem3gppNetwork.

#### Parameters

network | A MMModem3gppNetwork. |

Since: 1.0

### mm_modem_3gpp_get_path ()

    const gchar *
    mm_modem_3gpp_get_path (MMModem3gpp *self);

Gets the DBus path of the MMObject which implements this interface.

#### Parameters

self | A MMModem3gpp. |

#### Returns

The DBus path of the MMObject object.

[transfer none]

Since: 1.0

### mm_modem_3gpp_dup_path ()

    gchar *
    mm_modem_3gpp_dup_path (MMModem3gpp *self);

Gets a copy of the DBus path of the MMObject object which implements this interface.

#### Parameters

self | A MMModem3gpp. |

#### Returns

The DBus path of the MMObject. The returned value should be freed with `g_free()`.

[transfer full]

Since: 1.0

### mm_modem_3gpp_get_imei ()

    const gchar *
    mm_modem_3gpp_get_imei (MMModem3gpp *self);

Gets the IMEI, as reported by this MMModem3gpp.

The returned value is only valid until the property changes so it is only safe to use this function on the thread where `self` was constructed. Use `mm_modem_3gpp_dup_imei()` if on another thread.

#### Parameters

self | A MMModem3gpp. |

#### Returns

The IMEI, or `NULL` if none available.

[transfer none]

Since: 1.0

### mm_modem_3gpp_dup_imei ()

    gchar *
    mm_modem_3gpp_dup_imei (MMModem3gpp *self);

Gets a copy of the IMEI, as reported by this MMModem3gpp.

#### Parameters

self | A MMModem3gpp. |

#### Returns

The IMEI, or `NULL` if none available. The returned value should be freed with `g_free()`.

[transfer full]

Since: 1.0

### mm_modem_3gpp_get_operator_code ()

    const gchar *
    mm_modem_3gpp_get_operator_code (MMModem3gpp *self);

Gets the code of the operator to which the mobile is currently registered.

Returned in the format `"MCCMNC"`, where `MCC` is the three-digit ITU E.212 Mobile Country Code and `MNC` is the two- or three-digit GSM Mobile Network Code. e.g. e`"31026"` or `"310260"`.

If the `MCC` and `MNC` are not known or the mobile is not registered to a mobile network, this property will be a zero-length (blank) string.

The returned value is only valid until the property changes so it is only safe to use this function on the thread where `self` was constructed. Use `mm_modem_3gpp_dup_operator_code()` if on another thread.

#### Parameters

self | A MMModem3gpp. |

#### Returns

The operator code, or `NULL` if none available.

[transfer none]

Since: 1.0

### mm_modem_3gpp_dup_operator_code ()

    gchar *
    mm_modem_3gpp_dup_operator_code (MMModem3gpp *self);

Gets a copy of the code of the operator to which the mobile is currently registered.

Returned in the format `"MCCMNC"`, where `MCC` is the three-digit ITU E.212 Mobile Country Code and `MNC` is the two- or three-digit GSM Mobile Network Code. e.g. e`"31026"` or `"310260"`.

#### Parameters

self | A MMModem3gpp. |

#### Returns

The operator code, or `NULL` if none available. The returned value should be freed with `g_free()`.

[transfer full]

Since: 1.0

### mm_modem_3gpp_get_operator_name ()

    const gchar *
    mm_modem_3gpp_get_operator_name (MMModem3gpp *self);

Gets the name of the operator to which the mobile is currently registered.

The returned value is only valid until the property changes so it is only safe to use this function on the thread where `self` was constructed. Use `mm_modem_3gpp_dup_operator_name()` if on another thread.

#### Parameters

self | A MMModem3gpp. |

#### Returns

The operator name, or `NULL` if none available.

[transfer none]

Since: 1.0

### mm_modem_3gpp_dup_operator_name ()

    gchar *
    mm_modem_3gpp_dup_operator_name (MMModem3gpp *self);

Gets a copy of the name of the operator to which the mobile is currently registered.

#### Parameters

self | A MMModem3gpp. |

#### Returns

The operator name, or `NULL` if none available. The returned value should be freed with `g_free()`.

[transfer full]

Since: 1.0

### mm_modem_3gpp_get_enabled_facility_locks ()

    MMModem3gppFacility
    mm_modem_3gpp_get_enabled_facility_locks
                                   (MMModem3gpp *self);

Get the list of facilities for which PIN locking is enabled.

#### Parameters

self | A MMModem3gpp. |

#### Returns

A bitmask of MMModem3gppFacility flags, specifying which facilities have locks enabled.

Since: 1.0

### mm_modem_3gpp_get_registration_state ()

    MMModem3gppRegistrationState
    mm_modem_3gpp_get_registration_state (MMModem3gpp *self);

Get the the mobile registration status as defined in 3GPP TS 27.007 section 10.1.19.

#### Parameters

self | A MMModem. |

#### Returns

A MMModem3gppRegistrationState value, specifying the current registration state.

Since: 1.0

### mm_modem_3gpp_get_pco ()

    GList *
    mm_modem_3gpp_get_pco (MMModem3gpp *self);

Get the list of MMPco received from the network.

#### Parameters

self | A MMModem3gpp. |

#### Returns

a list of MMPco objects, or NULL if `error` is set. The returned value should be freed with `g_list_free_full()` using `g_object_unref()` as GDestroyNotify function.

[transfer full][element-type ModemManager.Pco]

Since: 1.10

### mm_modem_3gpp_get_eps_ue_mode_operation ()

    MMModem3gppEpsUeModeOperation
    mm_modem_3gpp_get_eps_ue_mode_operation
                                   (MMModem3gpp *self);

Get the UE mode of operation for EPS.

#### Parameters

self | A MMModem3gpp. |

#### Returns

A MMModem3gppEpsUeModeOperation.

Since: 1.8

### mm_modem_3gpp_get_initial_eps_bearer_path ()

    const gchar *
    mm_modem_3gpp_get_initial_eps_bearer_path
                                   (MMModem3gpp *self);

Gets the DBus path of the initial EPS MMBearer exposed in this MMModem3gpp.

The returned value is only valid until the property changes so it is only safe to use this function on the thread where `self` was constructed. Use `mm_modem_3gpp_dup_initial_eps_bearer_path()` if on another thread.

[skip]

#### Parameters

self | A MMModem3gpp. |

#### Returns

The DBus path of the MMBearer, or `NULL` if none available. Do not free the returned value, it belongs to `self` .

[transfer none]

Since: 1.10

### mm_modem_3gpp_dup_initial_eps_bearer_path ()

    gchar *
    mm_modem_3gpp_dup_initial_eps_bearer_path
                                   (MMModem3gpp *self);

Gets a copy of the DBus path of the initial EPS MMBearer exposed in this MMModem3gpp.

#### Parameters

self | A MMModem3gpp. |

#### Returns

The DBus path of the MMBearer, or `NULL` if none available. The returned value should be freed with `g_free()`.

[transfer full]

Since: 1.10

### mm_modem_3gpp_get_initial_eps_bearer ()

    void
    mm_modem_3gpp_get_initial_eps_bearer (MMModem3gpp *self,
                                          GCancellable *cancellable,
                                          GAsyncReadyCallback callback,
                                          gpointer user_data);

Asynchronously gets the initial EPS MMBearer object exposed by this MMModem3gpp.

When the operation is finished, `callback` will be invoked in the

thread-default main loop

of the thread you are calling this method from. You can then call `mm_modem_3gpp_get_initial_eps_bearer_finish()` to get the result of the operation.

See `mm_modem_3gpp_get_initial_eps_bearer_sync()` for the synchronous, blocking version of this method.

#### Parameters

self | A MMModem3gpp. |
cancellable | A GCancellable or `NULL`. | [allow-none]
callback | A GAsyncReadyCallback to call when the request is satisfied or `NULL`. |
user_data | User data to pass to `callback` . |

Since: 1.10

### mm_modem_3gpp_get_initial_eps_bearer_finish ()

    MMBearer *
    mm_modem_3gpp_get_initial_eps_bearer_finish
                                   (MMModem3gpp *self,
                                    GAsyncResult *res,
                                    GError **error);

Finishes an operation started with `mm_modem_3gpp_get_initial_eps_bearer()`.

#### Parameters

self | A MMModem3gpp. |
res | The GAsyncResult obtained from the GAsyncReadyCallback passed to `mm_modem_3gpp_get_initial_eps_bearer()`. |
error | Return location for error or `NULL`. |

#### Returns

a MMSim or NULL if `error` is set. The returned value should be freed with `g_object_unref()`.

[transfer full]

Since: 1.10

### mm_modem_3gpp_get_initial_eps_bearer_sync ()

    MMBearer *
    mm_modem_3gpp_get_initial_eps_bearer_sync
                                   (MMModem3gpp *self,
                                    GCancellable *cancellable,
                                    GError **error);

Synchronously gets the initial EPS MMBearer object exposed by this MMModem3gpp.

The calling thread is blocked until a reply is received. See `mm_modem_3gpp_get_initial_eps_bearer()` for the asynchronous version of this method.

#### Parameters

self | A MMModem3gpp. |
cancellable | A GCancellable or `NULL`. | [allow-none]
error | Return location for error or `NULL`. |

#### Returns

a MMBearer or NULL if `error` is set. The returned value should be freed with `g_object_unref()`.

[transfer full]

Since: 1.10

### mm_modem_3gpp_get_initial_eps_bearer_settings ()

    MMBearerProperties *
    mm_modem_3gpp_get_initial_eps_bearer_settings
                                   (MMModem3gpp *self);

Gets a MMBearerProperties object specifying the settings configured in the device to use when attaching to the LTE network.

The values reported by `self` are not updated when the values in the interface change. Instead, the client is expected to call `mm_modem_3gpp_get_initial_eps_bearer_settings()` again to get a new MMBearerProperties with the new values.

#### Parameters

self | A MMModem3gpp. |

#### Returns

A MMBearerProperties that must be freed with `g_object_unref()` or `NULL` if unknown.

[transfer full]

Since: 1.10

### mm_modem_3gpp_peek_initial_eps_bearer_settings ()

    MMBearerProperties *
    mm_modem_3gpp_peek_initial_eps_bearer_settings
                                   (MMModem3gpp *self);

Gets a MMBearerProperties object specifying the settings configured in the device to use when attaching to the LTE network.

The returned value is only valid until the property changes so it is only safe to use this function on the thread where `self` was constructed. Use `mm_modem_3gpp_get_initial_eps_bearer_settings()` if on another thread.

#### Parameters

self | A MMModem3gpp. |

#### Returns

A MMBearerProperties. Do not free the returned value, it belongs to `self` .

[transfer none]

Since: 1.10

### mm_modem_3gpp_get_packet_service_state ()

    MMModem3gppPacketServiceState
    mm_modem_3gpp_get_packet_service_state
                                   (MMModem3gpp *self);

Get the packet domain service state.

#### Parameters

self | A MMModem. |

#### Returns

A MMModem3gppPacketServiceState value, specifying the current PS attach state.

Since: 1.20

### mm_modem_3gpp_get_nr5g_registration_settings ()

    MMNr5gRegistrationSettings *
    mm_modem_3gpp_get_nr5g_registration_settings
                                   (MMModem3gpp *self);

Gets a MMNr5gRegistrationSettings object including the configured 5GNR registration settings.

The values reported by `self` are not updated when the values in the interface change. Instead, the client is expected to call `mm_modem_3gpp_get_nr5g_registration_settings()` again to get a new MMNr5gRegistrationSettings with the new values.

#### Parameters

self | A MMModem3gpp. |

#### Returns

A MMNr5gRegistrationSettings that must be freed with `g_object_unref()` or `NULL` if unknown.

[transfer full]

Since: 1.20

### mm_modem_3gpp_peek_nr5g_registration_settings ()

    MMNr5gRegistrationSettings *
    mm_modem_3gpp_peek_nr5g_registration_settings
                                   (MMModem3gpp *self);

Gets a MMNr5gRegistrationSettings object including the configured 5GNR registration settings.

The returned value is only valid until the property changes so it is only safe to use this function on the thread where `self` was constructed. Use `mm_modem_3gpp_get_nr5g_registration_settings()` if on another thread.

#### Parameters

self | A MMModem3gpp. |

#### Returns

A MMNr5gRegistrationSettings Do not free the returned value, it belongs to `self` .

[transfer none]

Since: 1.20

### mm_modem_3gpp_get_network_rejection ()

    MMNetworkRejection *
    mm_modem_3gpp_get_network_rejection (MMModem3gpp *self);

Gets a MMNetworkRejection object specifying the network rejection information received during registration failure.

The values reported by `self` are not updated when the values in the interface change. Instead, the client is expected to call `mm_modem_3gpp_get_network_rejection()` again to get a new MMNetworkRejection with the new values.

#### Parameters

self | A MMModem3gpp. |

#### Returns

A MMNetworkRejection that must be freed with `g_object_unref()` or `NULL` if unknown.

[transfer full]

Since: 1.24

### mm_modem_3gpp_peek_network_rejection ()

    MMNetworkRejection *
    mm_modem_3gpp_peek_network_rejection (MMModem3gpp *self);

Gets a MMNetworkRejection object specifying the network rejection information received during registration failure.

The returned value is only valid until the property changes so it is only safe to use this function on the thread where `self` was constructed. Use `mm_modem_3gpp_get_network_rejection()` if on another thread.

#### Parameters

self | A MMModem3gpp. |

#### Returns

A MMNetworkRejection. Do not free the returned value, it belongs to `self` .

[transfer none]

Since: 1.24

### mm_modem_3gpp_register ()

    void
    mm_modem_3gpp_register (MMModem3gpp *self,
                            const gchar *network_id,
                            GCancellable *cancellable,
                            GAsyncReadyCallback callback,
                            gpointer user_data);

Asynchronously requests registration with a given mobile network.

When the operation is finished, `callback` will be invoked in the

thread-default main loop

of the thread you are calling this method from. You can then call `mm_modem_3gpp_register_finish()` to get the result of the operation.

See `mm_modem_3gpp_register_sync()` for the synchronous, blocking version of this method.

#### Parameters

self | A MMModem3gpp. |
network_id | The operator ID to register. An empty string can be used to register to the home network. |
cancellable | A GCancellable or `NULL`. | [allow-none]
callback | A GAsyncReadyCallback to call when the request is satisfied or `NULL`. |
user_data | User data to pass to `callback` . |

Since: 1.0

### mm_modem_3gpp_register_finish ()

    gboolean
    mm_modem_3gpp_register_finish (MMModem3gpp *self,
                                   GAsyncResult *res,
                                   GError **error);

Finishes an operation started with `mm_modem_3gpp_register()`.

#### Parameters

self | A MMModem3gpp. |
res | The GAsyncResult obtained from the GAsyncReadyCallback passed to `mm_modem_3gpp_register()`. |
error | Return location for error or `NULL`. |

#### Returns

`TRUE` if the modem was registered, `FALSE` if `error` is set.

Since: 1.0

### mm_modem_3gpp_register_sync ()

    gboolean
    mm_modem_3gpp_register_sync (MMModem3gpp *self,
                                 const gchar *network_id,
                                 GCancellable *cancellable,
                                 GError **error);

Synchronously requests registration with a given mobile network.

The calling thread is blocked until a reply is received. See `mm_modem_3gpp_register()` for the asynchronous version of this method.

#### Parameters

self | A MMModem3gpp. |
network_id | The operator ID to register. An empty string can be used to register to the home network. |
cancellable | A GCancellable or `NULL`. | [allow-none]
error | Return location for error or `NULL`. |

#### Returns

`TRUE` if the modem was registered, `FALSE` if `error` is set.

Since: 1.0

### mm_modem_3gpp_scan ()

    void
    mm_modem_3gpp_scan (MMModem3gpp *self,
                        GCancellable *cancellable,
                        GAsyncReadyCallback callback,
                        gpointer user_data);

Asynchronously requests to scan available 3GPP networks.

When the operation is finished, `callback` will be invoked in the

thread-default main loop

of the thread you are calling this method from. You can then call `mm_modem_3gpp_scan_finish()` to get the result of the operation.

See `mm_modem_3gpp_scan_sync()` for the synchronous, blocking version of this method.

#### Parameters

self | A MMModem3gpp. |
cancellable | A GCancellable or `NULL`. | [allow-none]
callback | A GAsyncReadyCallback to call when the request is satisfied or `NULL`. |
user_data | User data to pass to `callback` . |

Since: 1.0

### mm_modem_3gpp_scan_finish ()

    GList *
    mm_modem_3gpp_scan_finish (MMModem3gpp *self,
                               GAsyncResult *res,
                               GError **error);

Finishes an operation started with `mm_modem_3gpp_scan()`.

#### Parameters

self | A MMModem3gpp. |
res | The GAsyncResult obtained from the GAsyncReadyCallback passed to `mm_modem_3gpp_scan()`. |
error | Return location for error or `NULL`. |

#### Returns

a list of MMModem3gppNetwork structs, or NULL if `error` is set. The returned value should be freed with `g_list_free_full()` using `mm_modem_3gpp_network_free()` as GDestroyNotify function.

[transfer full][element-type ModemManager.Modem3gppNetwork]

Since: 1.0

### mm_modem_3gpp_scan_sync ()

    GList *
    mm_modem_3gpp_scan_sync (MMModem3gpp *self,
                             GCancellable *cancellable,
                             GError **error);

Synchronously requests to scan available 3GPP networks.

The calling thread is blocked until a reply is received. See `mm_modem_3gpp_scan()` for the asynchronous version of this method.

#### Parameters

self | A MMModem3gpp. |
cancellable | A GCancellable or `NULL`. | [allow-none]
error | Return location for error or `NULL`. |

#### Returns

a list of MMModem3gppNetwork structs, or NULL if `error` is set. The returned value should be freed with `g_list_free_full()` using `mm_modem_3gpp_network_free()` as GDestroyNotify function.

[transfer full][element-type ModemManager.Modem3gppNetwork]

Since: 1.0

### mm_modem_3gpp_set_eps_ue_mode_operation ()

    void
    mm_modem_3gpp_set_eps_ue_mode_operation
                                   (MMModem3gpp *self,
                                    MMModem3gppEpsUeModeOperation mode,
                                    GCancellable *cancellable,
                                    GAsyncReadyCallback callback,
                                    gpointer user_data);

Asynchronously requests to update the EPS UE mode of operation.

When the operation is finished, `callback` will be invoked in the

thread-default main loop

of the thread you are calling this method from. You can then call `mm_modem_3gpp_set_eps_ue_mode_operation_finish()` to get the result of the operation.

See `mm_modem_3gpp_set_eps_ue_mode_operation_sync()` for the synchronous, blocking version of this method. The calling thread is blocked until a reply is received.

#### Parameters

self | A MMModem3gpp. |
mode | A MMModem3gppEpsUeModeOperation. |
cancellable | A GCancellable or `NULL`. | [allow-none]
callback | A GAsyncReadyCallback to call when the request is satisfied or `NULL`. |
user_data | User data to pass to `callback` . |

Since: 1.8

### mm_modem_3gpp_set_eps_ue_mode_operation_finish ()

    gboolean
    mm_modem_3gpp_set_eps_ue_mode_operation_finish
                                   (MMModem3gpp *self,
                                    GAsyncResult *res,
                                    GError **error);

Finishes an operation started with `mm_modem_3gpp_set_eps_ue_mode_operation()`.

#### Parameters

self | A MMModem3gpp. |
res | The GAsyncResult obtained from the GAsyncReadyCallback passed to `mm_modem_3gpp_set_eps_ue_mode_operation()`. |
error | Return location for error or `NULL`. |

#### Returns

`TRUE` if the operation was successful, `FALSE` if `error` is set.

Since: 1.8

### mm_modem_3gpp_set_eps_ue_mode_operation_sync ()

    gboolean
    mm_modem_3gpp_set_eps_ue_mode_operation_sync
                                   (MMModem3gpp *self,
                                    MMModem3gppEpsUeModeOperation mode,
                                    GCancellable *cancellable,
                                    GError **error);

Synchronously requests to update the EPS UE mode of operation.

The calling thread is blocked until a reply is received. See `mm_modem_3gpp_set_eps_ue_mode_operation()` for the asynchronous version of this method.

#### Parameters

self | A MMModem3gpp. |
mode | A MMModem3gppEpsUeModeOperation. |
cancellable | A GCancellable or `NULL`. | [allow-none]
error | Return location for error or `NULL`. |

#### Returns

`TRUE` if the operation was successful, `FALSE` if `error` is set.

Since: 1.8

### mm_modem_3gpp_set_initial_eps_bearer_settings ()

    void
    mm_modem_3gpp_set_initial_eps_bearer_settings
                                   (MMModem3gpp *self,
                                    MMBearerProperties *config,
                                    GCancellable *cancellable,
                                    GAsyncReadyCallback callback,
                                    gpointer user_data);

Asynchronously configures the settings for the initial LTE default bearer.

When the operation is finished, `callback` will be invoked in the

thread-default main loop

of the thread you are calling this method from. You can then call `mm_modem_3gpp_set_initial_eps_bearer_settings_finish()` to get the result of the operation.

#### Parameters

self | A MMModem3gpp. |
config | A MMBearerProperties object with the properties to use. |
cancellable | A GCancellable or `NULL`. | [allow-none]
callback | A GAsyncReadyCallback to call when the request is satisfied or `NULL`. |
user_data | User data to pass to `callback` . |

Since: 1.10

### mm_modem_3gpp_set_initial_eps_bearer_settings_finish ()

    gboolean
    mm_modem_3gpp_set_initial_eps_bearer_settings_finish
                                   (MMModem3gpp *self,
                                    GAsyncResult *res,
                                    GError **error);

Finishes an operation started with `mm_modem_3gpp_set_initial_eps_bearer_settings()`.

#### Parameters

self | A MMModem3gpp. |
res | The GAsyncResult obtained from the GAsyncReadyCallback passed to `mm_modem_3gpp_set_initial_eps_bearer_settings()`. |
error | Return location for error or `NULL`. |

#### Returns

`TRUE` if the operation was successful, `FALSE` if `error` is set.

Since: 1.10

### mm_modem_3gpp_set_initial_eps_bearer_settings_sync ()

    gboolean
    mm_modem_3gpp_set_initial_eps_bearer_settings_sync
                                   (MMModem3gpp *self,
                                    MMBearerProperties *config,
                                    GCancellable *cancellable,
                                    GError **error);

Synchronously configures the settings for the initial LTE default bearer.

The calling thread is blocked until a reply is received. See `mm_modem_3gpp_set_initial_eps_bearer_settings()` for the asynchronous version of this method.

#### Parameters

self | A MMModem3gpp. |
config | A MMBearerProperties object with the properties to use. |
cancellable | A GCancellable or `NULL`. | [allow-none]
error | Return location for error or `NULL`. |

#### Returns

`TRUE` if the operation was successful, `FALSE` if `error` is set.

Since: 1.10

### mm_modem_3gpp_disable_facility_lock ()

    void
    mm_modem_3gpp_disable_facility_lock (MMModem3gpp *self,
                                         MMModem3gppFacility facility,
                                         const gchar *control_key,
                                         GCancellable *cancellable,
                                         GAsyncReadyCallback callback,
                                         gpointer user_data);

Asynchronously disables the modem personalization lock.

When the operation is finished, `callback` will be invoked in the

thread-default main loop

of the thread you are calling this method from. You can then call `mm_modem_3gpp_disable_facility_lock_finish()` to get the result of the operation.

#### Parameters

self | A MMModem3gpp. |
facility | Single bit value describing the modem personalization lock to disable. |
control_key | String with control key required to unlock the personalization. |
cancellable | A GCancellable or `NULL`. | [allow-none]
callback | A GAsyncReadyCallback to call when the request is satisfied or `NULL`. |
user_data | User data to pass to `callback` . |

Since: 1.20

### mm_modem_3gpp_disable_facility_lock_finish ()

    gboolean
    mm_modem_3gpp_disable_facility_lock_finish
                                   (MMModem3gpp *self,
                                    GAsyncResult *res,
                                    GError **error);

Finishes an operation started with `mm_modem_3gpp_disable_facility_lock()`.

#### Parameters

self | A MMModem3gpp. |
res | The GAsyncResult obtained from the GAsyncReadyCallback passed to `mm_modem_3gpp_disable_facility_lock()`. |
error | Return location for error or `NULL`. |

#### Returns

`TRUE` if the operation was successful, `FALSE` if `error` is set.

Since: 1.20

### mm_modem_3gpp_disable_facility_lock_sync ()

    gboolean
    mm_modem_3gpp_disable_facility_lock_sync
                                   (MMModem3gpp *self,
                                    MMModem3gppFacility facility,
                                    const gchar *control_key,
                                    GCancellable *cancellable,
                                    GError **error);

Synchronously disables facility lock.

The calling thread is blocked until a reply is received. See `mm_modem_3gpp_disable_facility_lock()` for the asynchronous version of this method.

#### Parameters

self | A MMModem3gpp. |
facility | Single bit value describing the modem personalization lock to disable. |
control_key | String with control key required to unlock the personalization. |
cancellable | A GCancellable or `NULL`. | [allow-none]
error | Return location for error or `NULL`. |

#### Returns

`TRUE` if the operation was successful, `FALSE` if `error` is set.

Since: 1.20

### mm_modem_3gpp_set_packet_service_state ()

    void
    mm_modem_3gpp_set_packet_service_state
                                   (MMModem3gpp *self,
                                    MMModem3gppPacketServiceState state,
                                    GCancellable *cancellable,
                                    GAsyncReadyCallback callback,
                                    gpointer user_data);

Asynchronously tries to attach or detach from the packet domain service.

When the operation is finished, `callback` will be invoked in the

thread-default main loop

of the thread you are calling this method from. You can then call `mm_modem_3gpp_set_packet_service_state_finish()` to get the result of the operation.

See `mm_modem_3gpp_set_packet_service_state_sync()` for the synchronous, blocking version of this method.

#### Parameters

self | A MMModem3gpp. |
state | A MMModem3gppPacketServiceState. |
cancellable | A GCancellable or `NULL`. | [allow-none]
callback | A GAsyncReadyCallback to call when the request is satisfied or `NULL`. |
user_data | User data to pass to `callback` . |

Since: 1.20

### mm_modem_3gpp_set_packet_service_state_finish ()

    gboolean
    mm_modem_3gpp_set_packet_service_state_finish
                                   (MMModem3gpp *self,
                                    GAsyncResult *res,
                                    GError **error);

Finishes an operation started with `mm_modem_3gpp_set_packet_service_state()`.

#### Parameters

self | A MMModem3gpp. |
res | The GAsyncResult obtained from the GAsyncReadyCallback passed to `mm_modem_3gpp_set_packet_service_state()`. |
error | Return location for error or `NULL`. |

#### Returns

`TRUE` if the operation was successful, `FALSE` if `error` is set.

Since: 1.20

### mm_modem_3gpp_set_packet_service_state_sync ()

    gboolean
    mm_modem_3gpp_set_packet_service_state_sync
                                   (MMModem3gpp *self,
                                    MMModem3gppPacketServiceState state,
                                    GCancellable *cancellable,
                                    GError **error);

Synchronously tries to attach or detach from the packet domain service.

The calling thread is blocked until a reply is received. See `mm_modem_3gpp_set_packet_service_state()` for the asynchronous version of this method.

#### Parameters

self | A MMModem3gpp. |
state | A MMModem3gppPacketServiceState. |
cancellable | A GCancellable or `NULL`. | [allow-none]
error | Return location for error or `NULL`. |

#### Returns

`TRUE` if the operation was successful, `FALSE` if `error` is set.

Since: 1.20

### mm_modem_3gpp_set_nr5g_registration_settings ()

    void
    mm_modem_3gpp_set_nr5g_registration_settings
                                   (MMModem3gpp *self,
                                    MMNr5gRegistrationSettings *settings,
                                    GCancellable *cancellable,
                                    GAsyncReadyCallback callback,
                                    gpointer user_data);

Asynchronously configures the 5GNR registration settings.

When the operation is finished, `callback` will be invoked in the

thread-default main loop

of the thread you are calling this method from. You can then call `mm_modem_3gpp_set_nr5g_registration_settings_finish()` to get the result of the operation.

See `mm_modem_3gpp_set_nr5g_registration_settings_sync()` for the synchronous, blocking version of this method.

#### Parameters

self | A MMModem3gpp. |
settings | A MMNr5gRegistrationSettings. |
cancellable | A GCancellable or `NULL`. | [allow-none]
callback | A GAsyncReadyCallback to call when the request is satisfied or `NULL`. |
user_data | User data to pass to `callback` . |

Since: 1.20

### mm_modem_3gpp_set_nr5g_registration_settings_finish ()

    gboolean
    mm_modem_3gpp_set_nr5g_registration_settings_finish
                                   (MMModem3gpp *self,
                                    GAsyncResult *res,
                                    GError **error);

Finishes an operation started with `mm_modem_3gpp_set_nr5g_registration_settings()`.

#### Parameters

self | A MMModem3gpp. |
res | The GAsyncResult obtained from the GAsyncReadyCallback passed to `mm_modem_3gpp_set_nr5g_registration_settings()`. |
error | Return location for error or `NULL`. |

#### Returns

`TRUE` if the operation was successful, `FALSE` if `error` is set.

Since: 1.20

### mm_modem_3gpp_set_nr5g_registration_settings_sync ()

    gboolean
    mm_modem_3gpp_set_nr5g_registration_settings_sync
                                   (MMModem3gpp *self,
                                    MMNr5gRegistrationSettings *settings,
                                    GCancellable *cancellable,
                                    GError **error);

Synchronously configures the 5GNR registration settings.

The calling thread is blocked until a reply is received. See `mm_modem_3gpp_set_nr5g_registration_settings()` for the asynchronous version of this method.

#### Parameters

self | A MMModem3gpp. |
settings | A MMNr5gRegistrationSettings. |
cancellable | A GCancellable or `NULL`. | [allow-none]
error | Return location for error or `NULL`. |

#### Returns

`TRUE` if the operation was successful, `FALSE` if `error` is set.

Since: 1.20

### mm_modem_3gpp_set_carrier_lock ()

    void
    mm_modem_3gpp_set_carrier_lock (MMModem3gpp *self,
                                    const guint8 *data,
                                    gsize data_size,
                                    GCancellable *cancellable,
                                    GAsyncReadyCallback callback,
                                    gpointer user_data);

Asynchronously sends the carrier lock information to the modem.

When the operation is finished, `callback` will be invoked in the

thread-default main loop

of the thread you are calling this method from. You can then call `mm_modem_location_inject_assistance_data_finish()` to get the result of the operation.

See `mm_modem_3gpp_set_carrier_lock_sync()` for the synchronous, blocking version of this method.

#### Parameters

self | A MMModem3gpp. |
data | Carrier lock information. | [array length=data_size]
data_size | size of `data` . |
cancellable | A GCancellable or `NULL`. | [allow-none]
callback | A GAsyncReadyCallback to call when the request is satisfied or `NULL`. |
user_data | User data to pass to `callback` . |

Since: 1.22

### mm_modem_3gpp_set_carrier_lock_finish ()

    gboolean
    mm_modem_3gpp_set_carrier_lock_finish (MMModem3gpp *self,
                                           GAsyncResult *res,
                                           GError **error);

Finishes an operation started with `mm_modem_3gpp_set_carrier_lock()`.

#### Parameters

self | A MMModem3gpp. |
res | The GAsyncResult obtained from the GAsyncReadyCallback passed to `mm_gdbus_modem3gpp_call_set_carrier_lock()`. |
error | Return location for error or `NULL`. |

#### Returns

`TRUE` if the call succeeded, `FALSE` if `error` is set.

[skip]

Since: 1.22

### mm_modem_3gpp_set_carrier_lock_sync ()

    gboolean
    mm_modem_3gpp_set_carrier_lock_sync (MMModem3gpp *self,
                                         const guint8 *data,
                                         gsize data_size,
                                         GCancellable *cancellable,
                                         GError **error);

Synchronously sends the carrier lock information to the modem..

The calling thread is blocked until a reply is received. See `mm_modem_3gpp_set_carrier_lock()` for the asynchronous version of this method.

#### Parameters

self | A MMModem3gpp. |
data | Carrier lock information. | [array length=data_size]
data_size | size of `data` . |
cancellable | A GCancellable or `NULL`. | [allow-none]
error | Return location for error or `NULL`. |

#### Returns

`TRUE` if the carrier network info is successfully send, `FALSE` if `error` is set.

Since: 1.22

## Types and Values

### struct MMModem3gpp

    struct MMModem3gpp;

The MMModem3gpp structure contains private data and should only be accessed using the provided API.

### MMModem3gppNetwork

    typedef struct _MMModem3gppNetwork MMModem3gppNetwork;

The MMModem3gppNetwork structure contains private data and should only be accessed using the provided API.