4 - Priority scale: High, Medium and Low
6 - Complexity scale: C1, C2, C4 and C8. The complexity scale is exponential,
7 with complexity 1 being the lowest complexity. Complexity is a function
8 of both task 'complexity' and task 'scope'.
10 The general rule of thumb is that a complexity 1 task should take 1-2 weeks
11 for a person very familiar with oFono codebase. Higher complexity tasks
12 require more time and have higher uncertainty.
14 Higher complexity tasks should be refined into several lower complexity tasks
15 once the task is better understood.
21 - Add support for Enhanced SMS (EMS) from 3GPP 23.040. These SMS messages
22 support a richer set of formatting elements, including bold/italic and
23 font size selection. Embedding images and sounds into the SMS is also
24 supported. This task should add support for receiving such SMS messages.
26 Proposed solution is to convert such messages to HTML and embed image /
27 sound data as embedded MIME in the generated HTML stream. The EMS messages
28 will have to be detected (by the presence of particular tags in the SMS)
29 and signaled separately from simple SMS messages.
34 - See / Cancel pending SMS messages over DBus. When oFono sends SMS messages
35 the method call is only returned when the message has been submitted to the
36 network. Instead we should return an object path and allow cancellation of
41 Owner: Yang Gu <yang.gu@intel.com>
43 - Persist outgoing SMS messages. Currently oFono persists incoming messages
44 that are fragmented. However oFono does not persist queued outgoing
45 messages. oFono should persist such messages and restore / requeue them
46 on the next oFono startup.
50 Owner: Kristen Carlson Accardi <kristen@linux.intel.com>
52 - Add CDMA support to the SMS stack. The idea is to support only the PDU
53 mode. To start with only Submit and Deliver message handling for WMT
54 teleservice will be added to bring the basic CDMA SMS send and receive
59 Owner: Rajesh Kadhiravan Nagaiah <Rajesh.Nagaiah@elektrobit.com>
61 - Add CDMA Delivery(Status) Report handling to the SMS stack.
65 Owner: Rajesh Kadhiravan Nagaiah <Rajesh.Nagaiah@elektrobit.com>
67 - Add CDMA Voice Mail Notification handling to the SMS stack. In CDMA the
68 Message Waiting indication is notified through a specific teleservice ID
69 VMN. No update to corresponding elementary files required since they are
70 not present in the R-UIM. This will result in the message waiting
71 indication being initially processed within the SMS atom and then being
72 passed for delivery to the message waiting atom. Furthemore note that in
73 CDMA only voice mail type is supported.
77 Owner: Rajesh Kadhiravan Nagaiah <Rajesh.Nagaiah@elektrobit.com>
79 - Asynchronously acknowledge SMS DELIVER messages sent by the SMS driver
80 to core using ofono_sms_deliver_notify(). This may require the struct
81 ofono_sms_driver to be extended with one more function pointer like:
82 void (*deliver_ack)(unsigned char *pdu, int len, cb_t cb, void *data)
83 because currently messages are automatically acknowledged by either the
84 modem (this is the case of some AT modems) or the driver right after
85 ofono_sms_deliver_notify() and a failure to deliver at an upper level is
86 ignored. The PDU can be an RP-ACK or RP-ERROR message with optional
87 TP-User-Content element, for example if returned from USIM Data Download.
95 - Read / Write EFcfis. Call forwarding settings can be bootstrapped on the
96 SIM for faster notification of the user that call forwarding is active.
97 These settings are stored in EFcfis. oFono should read these settings and
98 update the call forwarding atom appropriately.
102 Owner: Jeevaka Badrappan <jeevaka.badrappan@elektrobit.com>
104 - SIM Call History plugin. New UICCs support four new SIM elementary files
105 for storing call history information on the SIM: EFici, EFict, EFoci, EFoct.
106 A plugin should be developed for oFono that will write to these files.
111 - Support proprietary extensions for SIM PIN retry counter. Most vendors
112 provide an extension commands to obtain such a retry counter for PINs and
113 PUKs. Need to enable this as a property in oFono.
117 Owner: Lucas De Marchi <lucas.demarchi@profusion.mobi>
119 - Add support for SIM 'ready' notifications from the driver to the core. Most
120 modem manufacturers initialize the SIM (e.g. cache SIM file system, STK
121 initialization, etc) internally before allowing the telephony stack to
122 access these portions. When the PIN is locked, this can lead to oFono being
123 too fast for the modem and asking it for things before the firmware is ready.
125 The proposal is to introduce a new sim function:
126 void ofono_sim_ready_notify(struct ofono_sim *sim);
128 When oFono determines the SIM PIN is READY, it checks whether
129 ofono_sim_ready_notify has been called. If it hasn't, then it stalls the
130 initialization procedure (and calling post_sim) until
131 ofono_sim_ready_notify is called.
135 Owner: Pekka Pessi <pekka.pessi@nokia.com>
137 - Check SIM pin status if sim_change_pin fails. If it is anything other than
138 READY, we must tear the state back to pre_sim state and set the modem offline.
142 Owner: Marit Henriksen <marit.henriksen@stericsson.com>
147 - Support HFP AG emulator. We should provide a new HFP_AG_EMULATOR atom type
148 that will implement the Bluetooth HFP AG profile. Voicecall atom, netreg
149 atoms can register command handlers for this atom appropriately.
154 - Support extensions to HFP AG emulator. Some carkits support additional
155 AT command extensions to the Bluetooth HFP AG standard. Refer to CE4A
156 white paper: "AT-commands for Automotive Premium Phone Integration".
157 Plugins can register additional command handlers appropriately to handle
162 Depends: HFP AG emulator
164 - Support HSP AG. Similar to HFP AG emulator but implements the much reduced
165 Bluetooth HSP AG profile.
170 - Support DUN emulator. Implement the Bluetooth DUN profile with only mandatory
176 Depends: PPP Server mode
178 - Support Bluetooth SPP profile.
187 - Flight Mode support. Add an 'Online' property to the Modem interface that
188 will control the online state of the modem. When Online state is True all
189 atoms are available. When Online state is False, all network related items
190 are removed (e.g. CallSettings) or enter into reduced functionality set
191 where only the SIM is available (e.g. DataConnectionManager, SimManager, etc)
195 Owner: Pekka Pessi <pekka.pessi@nokia.com>
201 - PPP Server support. Extend GAtPPP to support PPP Server role, similarly to
202 how existing GSM modems support PPP GPRS contexts.
207 - IPv6 CP support. To support IPv6 based GPRS contexts via PPP, GAtPPP
208 needs to be updated to support IPv6CP from RFC 2472.
213 - Add support for IPv6 GPRS contexts.
222 - Neighbor Cell Info. Add dedicated atom, D-Bus API and atom driver(s) for
223 Neighbor Cell information.
225 This feature is not discussed in 27.007, thus manufacturer specific commands
230 Owner: Aki Niemi <aki.niemi@nokia.com>
233 Supplementary Services
234 ======================
236 - Closed User Group (CUG) support.
241 - Call Completion to Busy Subscriber (CCBS) support
243 This feature is not discussed in 27.007, thus manufacturer specific commands
249 - User to User Signaling (UUS) support
254 - Multiple Subscriber Profile (MSP) support
259 - Called Line Identification. This affects both call_settings and voicecall
260 atoms. 3GPP service is accessed by the +CDIP command.
265 - CPHS Support. This includes ALS and CPHS specific elementary files.
274 - Supplementary service notifications on remote party actions:
275 - call has been put on hold (+CSSU: 2)
276 - call has been retrieved (+CSSU: 3), and
277 - joining call to a multiparty conference (+CSSU: 4)
281 Owner: Pekka Pessi <pekka.pessi@nokia.com>
283 - Long phone numbers. According to 3GPP TS 24.008, the callee address
284 can be up to 80 digits long.
289 - Dial strings. Include CLIR prefixes and 2nd stage dial strings in the
290 DialString call property. Add dialstring accessor method to C API.
295 - Provide feedback of sent DTMF tones. Emit SendingTones signal if modem can
296 provide approximate starting and stopping times for DTMF tones. Signal
297 argument contains a string of DTMF tones to be sent, or empty string when
298 all tones has been sent.
302 Owner: Pekka Pessi <pekka.pessi@nokia.com>
304 - Blacklisting. According to 3GPP TS 22.001 annex E, the TE must provide
305 automatic calling repeat call attempt restrictions.
307 There should be a method to manually reset blacklisting.
316 - Support Refresh proactive command. The specification defines 7 types
319 - NAA File Change Notification
320 - NAA Initialization and File Change Notification
321 - NAA Initialization and Full File Change Notification
323 - NAA Application Reset (2G only)
324 - NAA Session Reset (3G only)
326 The 'NAA Initialization' type will be ignored by oFono, it is assumed
327 this is handled by the modem.
329 For 'UICC Reset', 'NAA Application Reset' and 'NAA Session Reset' oFono
330 will first check whether there are any calls or ussd operations active.
331 If there are, the appropriate response will be sent (e.g. busy on call
332 or screen busy terminal response.) Otherwise a positive response will be
333 sent to the driver. In the case of a 'UICC Reset' the driver / modem
334 can interpret this that it is safe to reset the UICC.
336 Alternatively, the driver / modem can notify the core of the SIM removal
337 / SIM insertion events without using the Refresh proactive command. It
338 is up to the driver / modem to perform a warm reset. In particular, 3GPP
339 31.111 mandates that any change to EFimsi is done by using 'UICC Reset',
340 'NAA Application Reset' or 'NAA Session Reset'. Please see 3GPP 31.111
343 Other types will be handled by oFono flushing the EF cache of the files
344 affected (or the entire SIM cache in case of Full File Change Notifications)
345 and re-reading the affected files. Any properties derived from these
346 Elementary Files will be updated and signaled using PropertyChanged.
351 - Support Send Short Message proactive command.
355 Owner: Andrzej Zaborowski <andrew.zaborowski@intel.com>
357 - Support Set Up Call proactive command. If the UICC has indicated that
358 the user should be informed, then the SimToolkitAgent will be called
359 in order to request user's confirmation of the call setup. If the user
360 has confirmed, or if user's confirmation was not requested, oFono will
361 setup the call and optionally inform the user.
370 - Modem Emergency mode. Support network registration and online/offline
371 mode during the emergency calls and related network activity (e.g.,
372 network-initiated location request via supplementary service channel).
374 Proposed solution is to introduce a new Emergency boolean property to the
375 Modem D-Bus interface and new functions to modem interface:
377 - ofono_modem_emergency_mode_inc()
378 - ofono_modem_emergency_mode_dec()
379 - ofono_modem_emergency_mode_get()
380 - ofono_modem_add_emergency_mode_watch()
381 - ofono_modem_remove_emergency_mode_watch()
383 When emergency mode is requested, modem is set to online (if needed) and
384 the watchers are notified. There can be multiple parties requesting
385 emergency mode. When all of them have completed the emergency-related
386 operation and called ofono_modem_emergency_mode_dec(), modem is set to
387 offline (if needed) and the watchers are again notified.
392 - Country / Operator specific emergency numbers. Figure out how to support
393 countries / operators with specific mandated emergency numbers which are
394 not part of the standard emergency number list. This needs to be queried
395 by the voicecall atom every time a new SIM is inserted. The list is
396 assumed to be managed by the modem. If no such functionality is available,
397 then the 3GPP mandated behavior is used.
402 - Network updating the emergency number list. Support the list of emergency
403 numbers dynamically updated by the network.
407 Owner: Petteri Tikander <petteri.tikander@ixonos.com>
413 - Bluetooth SAP Client support. The Telit UC864-G devices support Bluetooth
414 SAP client mode. This requires the use of a modem side-channel to read the
415 APDU & CPDU data and send it to the remote phone device over Bluetooth RFCOMM
421 - Frequency Band Selection. Add frequency band selection capability to the
423 Owner: Lucas De Marchi <lucas.demarchi@profusion.mobi>
425 This feature is not discussed in 27.007, thus manufacturer specific commands
431 - PolicyKit support. Add support for PolicyKit checking of all oFono D-Bus
437 - Internet Access Provider database. Have oFono automatically configure
438 GPRS contexts based on an internal database. Database format to be decided.
439 If there are multiple matches in the database, then some user intervention
444 Owner: Jukka Saunamäki <jukka.saunamaki@nokia.com>
446 - Support for modem 'silent' reset notifications. oFono will remove all atoms
451 Owner: Gustavo F Padovan <padovan@profusion.mobi>
453 - Add support for Modem 'power down & lock' and 'unlock & power up'. When the
454 'power down & lock' is given, the calling application is noted and all
455 other applications are blocked from powering up the modem. Only the calling
456 application can lift the lock. Alternatively, if the calling application
457 exits prematurely the lock is lifted as well.
459 The proposed property name is "Lockdown" as part of the Modem interface.
463 Owner: Gustavo F Padovan <padovan@profusion.mobi>
465 - Add support for GPS power control atom. Many modem manufacturers provide
466 a GPS unit with their modem hardware. This unit can be turned on or off
467 and frequently takes over one of the tty ports that the modem provides.
469 This feature is not discussed in 27.007, thus manufacturer specific commands
474 Owner: Rafael Ignacio Zurita <rafael.zurita@profusion.mobi>
476 - Add Location Service API for providing basic E911 suport.
477 This will be based on the 27.007 defined AT commands using
478 XML for transport of positioning request and responses.
482 Owner: Sjur Brændeland <sjur.brandeland@stericsson.com>