444e83e1e7b1efe4f2ab1e7faa0715036e5e3d84
[platform/upstream/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.
60
61                 string Manufacturer [readonly, optional]
62
63                         String representing the manufacturer of the modem
64                         device.
65
66                         This is usually obtained by the +CGMI AT command.
67
68                 string Model [readonly, optional]
69
70                         String representing the model of the modem device.
71
72                         This is usually obtained by the +CGMM AT command.
73
74                 string Revision [readonly, optional]
75
76                         String representing the revision of the modem device.
77
78                         This is usually obtained by using the +CGMR AT command.
79
80                 string Serial [readonly, optional]
81
82                         String represeting the serial number of the modem
83                         device.
84
85                         This is usually obtained by using the +CGSN AT command.
86
87                 array{string} Features [readonly]
88
89                         List of currently enabled features. It uses simple
90                         string abbreviations like "sms", "sim" etc.
91
92                         Currently available features are:
93                                 "net", "rat", "cbs", "sms", "sim", "stk",
94                                 "ussd", "gprs", "tty", "gps".
95
96                         Please note that this is a convenience property,
97                         equivalent results can be obtained by reading the
98                         Interfaces property directly.
99
100                 array{string} Interfaces [readonly]
101
102                         Set of interfaces currently supported by the mode
103                         device. The set depends on the state of the device
104                         (registration status, SIM inserted status,
105                         network capabilities, device capabilities, etc.)
106
107                         Each string in the array is an interface from the
108                         set supported by oFono by modem objects.  The set
109                         includes:
110                                 org.ofono.AssistedSatelliteNavigation
111                                 org.ofono.AudioSettings
112                                 org.ofono.CallBarring
113                                 org.ofono.CallForwarding
114                                 org.ofono.CallMeter
115                                 org.ofono.CallSettings
116                                 org.ofono.CallVolume
117                                 org.ofono.CellBroadcast
118                                 org.ofono.Handsfree
119                                 org.ofono.LocationReporting
120                                 org.ofono.MessageManager
121                                 org.ofono.MessageWaiting
122                                 org.ofono.NetworkRegistration
123                                 org.ofono.Phonebook
124                                 org.ofono.PushNotification
125                                 org.ofono.RadioSettings
126                                 org.ofono.SimManager
127                                 org.ofono.SmartMessaging
128                                 org.ofono.SimToolkit
129                                 org.ofono.SupplementaryServices
130                                 org.ofono.TextTelephony
131                                 org.ofono.VoiceCallManager
132
133                         Please note that the set of Interfaces can and does
134                         change frequently (e.g. due to change in Powered
135                         and Online properties.)  If a given interface is no
136                         longer available, then the application should assume
137                         that all data for that interface has become invalid,
138                         e.g. calls have been dropped, network registration
139                         lost, etc.
140
141                         The set of possible interfaces supported is also
142                         dependent on the modem hardware and driver support.
143                         For example, HFP devices only support
144                         org.ofono.VoiceCallManager,
145                         org.ofono.NetworkRegistration, org.ofono.Handsfree and
146                         org.ofono.CallVolume interfaces.
147
148                 string Type [readonly]
149
150                         Indicates whether the modem is virtual or a real
151                         hardware one. This information should only be used
152                         to identify which componet (e.g. ConnMan or a phone
153                         dialer) should take control over the modem. It does
154                         not give any hints on which Interfaces will be
155                         supported by this modem.
156
157                         Possible values are "hfp", "sap" and "hardware".