Upgrade ofono to 1.11 and merge to 2.0alpha
[profile/ivi/ofono.git] / doc / modem-api.txt
1 Modem hierarchy
2 ===============
3
4 Service         org.ofono
5 Interface       org.ofono.Modem
6 Object path     [variable prefix]/{modem0,modem1,...}
7
8 Methods         dict GetProperties()
9
10                         Returns properties for the modem object. See
11                         the properties section for available properties.
12
13                 void SetProperty(string property, variant value)
14
15                         Changes the value of the specified property. Only
16                         properties that are listed as readwrite are
17                         changeable. On success a PropertyChanged signal
18                         will be emitted.
19
20                         Possible Errors: [service].Error.InProgress
21                                          [service].Error.NotImplemented
22                                          [service].Error.InvalidArguments
23                                          [service].Error.NotAvailable
24                                          [service].Error.AccessDenied
25                                          [service].Error.Failed
26
27 Signals         PropertyChanged(string name, variant value)
28
29                         This signal indicates a changed value of the given
30                         property.
31
32 Properties      boolean Powered [readwrite]
33
34                         Boolean representing the power state of the modem
35                         device.
36
37                 boolean Online [readwrite]
38
39                         Boolean representing the rf state of the modem.
40                         Online is false in flight mode.
41
42                 boolean Lockdown [readwrite]
43
44                         Boolean representing the lock state of the modem.
45                         Setting it to true, makes the calling application hold
46                         the modem lock and power it down. Setting to false
47                         makes the it release the modem lock. Only the
48                         application that holds the lock can power up the modem.
49                         If the the application exits Lockdown is set to false.
50
51                 boolean Emergency [readonly, optional, experimental]
52
53                         Boolean representing the emergency mode of the
54                         modem. The Emergency is true if an emergency call or
55                         related operation is currently active.
56
57                 string Name [readonly, optional]
58
59                         Friendly name of the modem device.  In the case of
60                         Bluetooth devices (e.g. Type="sap" or "hfp") this
61                         corresponds to the remote device name or it's alias.
62
63                 string Manufacturer [readonly, optional]
64
65                         String representing the manufacturer of the modem
66                         device.
67
68                         This is usually obtained by the +CGMI AT command.
69
70                 string Model [readonly, optional]
71
72                         String representing the model of the modem device.
73
74                         This is usually obtained by the +CGMM AT command.
75
76                 string Revision [readonly, optional]
77
78                         String representing the revision of the modem device.
79
80                         This is usually obtained by using the +CGMR AT command.
81
82                 string Serial [readonly, optional]
83
84                         String represeting the serial number of the modem
85                         device.
86
87                         This is usually obtained by using the +CGSN AT command.
88
89                         In the case of Bluetooth devices (e.g. Type="sap" or
90                         "hfp") this corresponds to the Bluetooth Device
91                         Address of the remote device.
92
93                 array{string} Features [readonly]
94
95                         List of currently enabled features. It uses simple
96                         string abbreviations like "sms", "sim" etc.
97
98                         Currently available features are:
99                                 "net", "rat", "cbs", "sms", "sim", "stk",
100                                 "ussd", "gprs", "tty", "gps".
101
102                         Please note that this is a convenience property,
103                         equivalent results can be obtained by reading the
104                         Interfaces property directly.
105
106                 array{string} Interfaces [readonly]
107
108                         Set of interfaces currently supported by the mode
109                         device. The set depends on the state of the device
110                         (registration status, SIM inserted status,
111                         network capabilities, device capabilities, etc.)
112
113                         Each string in the array is an interface from the
114                         set supported by oFono by modem objects.  The set
115                         includes:
116                                 org.ofono.AssistedSatelliteNavigation
117                                 org.ofono.AudioSettings
118                                 org.ofono.CallBarring
119                                 org.ofono.CallForwarding
120                                 org.ofono.CallMeter
121                                 org.ofono.CallSettings
122                                 org.ofono.CallVolume
123                                 org.ofono.CellBroadcast
124                                 org.ofono.Handsfree
125                                 org.ofono.LocationReporting
126                                 org.ofono.MessageManager
127                                 org.ofono.MessageWaiting
128                                 org.ofono.NetworkRegistration
129                                 org.ofono.Phonebook
130                                 org.ofono.PushNotification
131                                 org.ofono.RadioSettings
132                                 org.ofono.SimManager
133                                 org.ofono.SmartMessaging
134                                 org.ofono.SimToolkit
135                                 org.ofono.SupplementaryServices
136                                 org.ofono.TextTelephony
137                                 org.ofono.VoiceCallManager
138
139                         It is possible for extension interfaces (e.g. APIs
140                         that are not part of the oFono standard API) to be
141                         available in this list.  Also note that child object
142                         interfaces, such as org.ofono.Message,
143                         org.ofono.VoiceCall, org.ofono.NetworkOperator,
144                         will never be part of this list.
145
146                         Please note that the set of Interfaces can and does
147                         change frequently (e.g. due to change in Powered
148                         and Online properties.)  If a given interface is no
149                         longer available, then the application should assume
150                         that all data for that interface has become invalid,
151                         e.g. calls have been dropped, network registration
152                         lost, etc.
153
154                         The set of possible interfaces supported is also
155                         dependent on the modem hardware and driver support.
156                         For example, HFP devices only support
157                         org.ofono.VoiceCallManager,
158                         org.ofono.NetworkRegistration, org.ofono.Handsfree and
159                         org.ofono.CallVolume interfaces.
160
161                 string Type [readonly]
162
163                         Indicates whether the modem is virtual or a real
164                         hardware one. This information should only be used
165                         to identify which componet (e.g. ConnMan or a phone
166                         dialer) should take control over the modem. It does
167                         not give any hints on which Interfaces will be
168                         supported by this modem.
169
170                         Possible values are "hfp", "sap" and "hardware".