freesmartphone.org Framework DBus Interface Specification

org.freesmartphone.GSM.Network

Description

The Network interface is used to give information about the GSM service providers and this device's status with regards to to network registration and connectivity. Taxonomy note: We think in terms of (service) providers rather than (network) operators, since multiple (service) providers can use the networks from operators, however what actually matters most is the provider name, not the actual network operator the provider is using.

Namespace

org.freesmartphone.GSM.Network

Methods

Signals

Errors

Methods

Register ( )

Description: Register with any available service provider.

This maps to the GSM 07.07 command +COPS=0, see 3GPP TS 07.07 Chapter 7.3.

Unregister ( )

Description: Unregister from service provider.

This maps to the GSM 07.07 command +COPS=2, see 3GPP TS 07.07 Chapter 7.3.

GetStatus ( ) → a{sv}

Description: Get Network Status.

This can map to the following GSM 07.07 commands:

Returns

a{sv}: status

Network status information. Mandatory tuples are:

Optional tuples are:

GetSignalStrength ( ) → i

Description: Query the current signal strength, if registered with a service provider.

This maps to the GSM 07.07 command +CSQ, see 3GPP TS 07.07 Chapter 8.5.

Returns

i: signal_strength

The signal strength in percent (0-100).

ListProviders ( ) → a(sssss)

Description: List available service providers.

This maps to the GSM 07.07 command +COPS=?, see 3GPP TS 07.07 Chapter 7.3.

Returns

a(sssss): providers

An array of four-tuples with the following structure:

RegisterWithProvider ( s )

Description: Register to a dedicated service provider.

This maps to the GSM 07.07 command +COPS=1..., see 3GPP TS 07.07 Chapter 7.3.

Parameters

s: operator_code

The operator code.

GetNetworkCountryCode ( ) → ss

Description: Compute the country information of the current service provider. Will raise NotFound if not registered to any service provider.

This maps to the GSM 07.07 command +COPS?, see 3GPP TS 07.07 Chapter 5.6. Get the dial code by cross-referencing ITU E.212 (Land Mobile Numbering Plan).

Returns

s: dial_code

The country dial code (including the +).

s: country_name

The name of the country.

GetCallForwarding ( s ) → a{sv}

Description: Get the network call forwarding status.

This maps to the GSM 07.07 command +CCFC=(reason),2, see 3GPP TS 07.07 Chapter 7.10.

Parameters

s: reason

Reason for which you want to enable network call forwarding. Valid reasons are:

Returns

a{sv}: status

A dictionary containing entries for call classes. Expected classes are:

Rarely you might also encounter: The value is a three-tuple with the following structure:

EnableCallForwarding ( sssi )

Description: Enable network call forwarding.

This maps to the GSM 07.07 command +CCFC=(...),3, see 3GPP TS 07.07 Chapter 7.10.

Parameters

s: reason

The reason for which you want to enable network call forwarding. See GetCallForwarding for valid reasons.

s: class

The call class for which you want to enable network call forwarding. See GetCallForwarding for valid classes.

s: number

The phone number to which the network call will be forwarded.

i: timeout

The number of seconds, after which network call forwarding launches (only valid for reason "no reply").

DisableCallForwarding ( ss )

Description: Disable network call forwarding.

This maps to the GSM 07.07 command +CCFC=(...),4, see 3GPP TS 07.07 Chapter 7.10.

Parameters

s: reason

The reason for which you want to enable network call forwarding. See GetCallForwarding for valid reasons.

s: class

Call class for which the network call gets forwarded. See GetCallForwarding for valid classes.

SetCallingIdentification ( s )

Description: Set whether your subscriber number is visible during a call.

This maps to the GSM 07.07 command +CLIR=(value), see 3GPP TS 07.07 Chapter 7.7.

Parameters

s: visible

One of the following values:

GetCallingIdentification ( ) → s

Description: Get whether your subscriber number is visible during a call.

This maps to the GSM 07.07 command +CLIR?, see 3GPP TS 07.07 Chapter 7.7.

Returns

s: visible

One of the following values:

SendUssdRequest ( s )

Description: Send an Unstructured Supplementary Service Data (USSD) request to the network. Responses will be delivered via the signal IncomingUssd

This can map to the GSM 07.07 command +CUSD=1,"(request)",(code), see 3GPP TS 07.07 Chapter 7.14.

Parameters

s: request

The request to be sent to the network.

Signals

Status ( a{sv} )

Description: Sent, when the network registration status changes.

Parameters

a{sv}: status

The registration status. See GetStatus for expected values.

SignalStrength ( i )

Description: (OPTIONAL) Sent, when registered with a service provider and the network signal strength changes.

Parameters

i: signal_strength

The signal strength in percent (0-100).

IncomingUssd ( ss )

Description: Sent, when an USSD result or a network initiated request arrives. This signal is usually sent in response to the method SendUssdRequest

Parameters

s: mode

The message mode. Valid values are:

s: message

The message. Only set if mode is "completed" or "useraction". "", otherwise.

CipherStatus ( ss )

Description: Sent, when the network reports a change in GSM or GPRS cipher indication. Only few modems support forwarding this to the AT command layer, hence implementation of this signal is optional.

Parameters

s: gsm

The GSM cipher: "enabled", "disabled", or "unknown"

s: gprs

The GPRS cipher: "enabled", "disabled", or "unknown"

Errors

NotPresent

Description: Raised, if no network service is available.

Unauthorized

Description: Raised, if registering with the specified network is not possible.

NotSupported

Description: Raised, if the requested network operation is not supported.

NotFound

Description: Raised, if a requested network provider is not present.


| Specified 2008 by the Freesmartphone.org team. | Join us and discuss further drafts smartphones-standards (at) linuxtogo (dot) org