diff --git a/Makefile.am b/Makefile.am index 802e94b7..aa669077 100644 --- a/Makefile.am +++ b/Makefile.am @@ -316,7 +316,7 @@ doc_files = doc/overview.txt doc/ofono-paper.txt \ doc/call-forwarding-api.txt doc/call-settings-api.txt \ doc/call-meter-api.txt \ doc/supplementaryservices-api.txt \ - doc/connman-api.txt + doc/connman-api.txt doc/features.txt test_scripts = test/backtrace \ test/create-context \ diff --git a/TODO b/TODO index 6cbc2064..8bd24677 100644 --- a/TODO +++ b/TODO @@ -332,40 +332,6 @@ Voicecall Sim Toolkit =========== -- Support Display Text proactive command. This should be implemented - by making the appropriate call into the SimToolkitAgent. This functionality - should support normal and high-priority messages; packed gsm, unpacked - gsm and ucs2 encoded strings; and immediate response command type. - - Priority: High - Complexity: C2 - Owner: Andrzej Zaborowski - -- Support Get Inkey proactive command. This should be implemented by - making the appropriate call into the SimToolkitAgent. This functionality - should support digits only, gsm alphabet only and ucs2 alphabet only - user responses. - - Priority: High - Complexity: C2 - Owner: Andrzej Zaborowski - -- Support Get Input proactive command. This should be implemented by - making the appropriate call into the SimToolkitAgent. This functionality - should support digits only; packed gsm, unpacked gsm and ucs2 encoded - responses; and opaque (e.g. password) user input. - - Priority: High - Complexity: C2 - Owner: Andrzej Zaborowski - -- Support More Time proactive command. This command should essentially - have no effect. - - Priority: High - Complexity: C1 - Owner: Andrzej Zaborowski - - Support the Play Tone proactive command. This should be implemented by making the appropriate call into the SimToolkitAgent. The sound that will be played will be determined by the agent based on the sound @@ -409,23 +375,6 @@ Sim Toolkit Priority: High Complexity: C8 -- Support Setup Menu proactive command. This should be supported by exporting - the main menu as a set of attributes on the SimToolkit interface. Both - icons, menu items and the Alpha identifier should be exposed. Support of - this command implies support of the 'Menu Selection' Envelope. - - Priority: High - Complexity: C2 - Owner: Andrzej Zaborowski - -- Support Select Item proactive command. This should be implemented by - making the appropriate call into the SimToolkitAgent. Both icons, menu - items and the Alpha identifier should be sent to the agent. - - Priority: High - Complexity: C2 - Owner: Andrzej Zaborowski - - Support Send Short Message proactive command. Priority: High @@ -453,23 +402,6 @@ Sim Toolkit Priority: High Complexity: C8 -- Support Timer Management proactive command. This should be handled - completely internally to oFono and does not require any UI interaction. - Support of this proactive command implies support of the 'Timer Expiration' - Envelope. - - Priority: High - Complexity: C2 - Owner: Andrzej Zaborowski - -- Support Set Up Idle Mode Text proactive command. The idle mode text - should be exposed on the SimToolkit interface as a property. The property - changed signal should be emitted whenever the idle mode text string changes. - - Priority: High - Complexity: C2 - Owner: Andrzej Zaborowski - - Support Send DTMF proactive command. The DTMF characters are passed directly to the voicecall atom and the SimToolkitAgent is notified if the USIM has indicated it is acceptable to inform the user. @@ -486,15 +418,6 @@ Sim Toolkit Priority: High Complexity: C2 -- Support 'CBS-PP' Download Envelope. Whenever a cell broadcast on a channel - listed in EFcbmid is received, this broadcast will be sent to the SIM via - a CBS-PP Download Envelope. No user interaction will be required. If the - modem hardware supports this transparently, then no indication to oFono - will be necessary. - - Priority: High - Complexity: C2 - - Support SIM icon files as defined in 3GPP 31.102. The icons should be automatically read from the SIM, converted to a usable format (such as XPM) and cached inside the daemon. This will require to read the contents of diff --git a/doc/features.txt b/doc/features.txt new file mode 100644 index 00000000..27ec74e3 --- /dev/null +++ b/doc/features.txt @@ -0,0 +1,88 @@ +oFono - Open Source Telephony +***************************** + +Purpose +======= + +The purpose of this document is to enumerate all major functionality areas +of oFono. In effect, this document will serve as the primary, up to date +source of oFono feature information. It is intended for developers, managers +and users alike to quickly gauge the progress of the project and feature +availability. + +Sim Toolkit +=========== + +Supported Proactive Commands: + +- Display Text proactive command support. Upon receiving the proactive + command notification oFono decodes it, including performing character + conversion from packed/unpacked GSM 7bit and UCS2 to UTF-8 encoded text. + The registered agent is then called using the DisplayText method on the + SimToolkitAgent interface to handle the user interaction aspects. + + SIM-specified duration are handled. If immediate response to the SIM + is required, oFono sends a terminal response immediately. DisplayText + method is still executed normally, until a timeout occurs or a new + proactive command arrives from the SIM. + +- Get Inkey proactive command support. When this command is received, + oFono decodes it and checks what "flavor" it is. Depending on this, the + SimToolkitAgent is called with a different method call: + * If the Get Inkey flavor indicates that this is a simple Yes/No + confirmation, then the RequestConfirmation method is called. + * If the Get Inkey flavor indicates that the SIM only expects digits, + then the RequestDigit method is called. + * Otherwise the RequestKey method is called + + SIM specified durations are handled, if the user agent does not respond + in the time allowed, then the 'No Response' Terminal Response is generated + automatically. + +- Get Input proactive command support. When this command is received, + oFono decodes it and checks what "flavor" it is. Depending on this, the + SimToolkitAgent is called with a different method call: + * If the Get Input flavor indicates that the SIM only expects digits, + then the RequestDigits method is called. + * Otherwise the RequestInput method is called + +- More Time proactive command support. This command is intended to notify + that the SIM is still busy processing a command. For oFono, this proactive + command is a no-op. It is always replied to successfully. + +- Setup Menu proactive command support. When this command is received, oFono + parses the new main menu structure and updates its MainMenu and MainMenuTitle + properties which reflect the items, icons and the alpha text of the + proactive command. Soft key support and menu help system are ignored by + oFono. + +- Select Item proactive command support. When this command is received, oFono + decodes it and dispatches it to the SimToolkitAgent by calling the + RequestSelection method. This method is passed the menu selection title, + the selectable items and the default, if any. + +- Timer Management proactive command support. oFono supports starting, + stopping and querying timer state flavors of this command. Up to eight + timers are supported. This proactive command is handled completely + inside oFono and no external user interaction is required. + +- Set Up Idle Mode Text proactive command support. Whenever oFono receives + this proactive command, it updates the IdleText property on the main + SimToolkit interface. Indications that this property has changed are + handled by the usual means. + +Envelopes: + +- Timer Expiration envelope support. Whenever a timer expires (as started by + the Timer Management proactive command) oFono forwards, this envelope type + to the SIM. No external user interaction is required. + +- Menu Selection envelope support. The user can initiate a proactive command + session by selecting something from the Sim Toolkit main menu. This is done + by using the SimToolkit's SelectItem method. As a result, oFono will send + the Menu Selection envelope to the SIM. + +- CBS-PP Download envelope support. When oFono receives a cell broadcast + and on a channel listed in EFcbmid, it is dispatched to the SIM using the + CBS-PP Download envelope. No user interaction is required or signaled + whenever this occurs.