ofono/doc/features.txt

127 lines
5.7 KiB
Plaintext
Raw Normal View History

2010-09-15 21:42:39 +00:00
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.
2010-10-14 12:50:43 +00:00
- Sim icon support. oFono supports icons that are stored on the SIM. If the
SIM notifies oFono that an icon is available for a particular proactive
command, oFono passes this information to the UI. The UI is able to obtain
the icons by using GetIcon method on the SimManager interface. The icons
are read from the SIM and converted into XPM format.
2010-09-15 21:42:39 +00:00
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.
Short Messaging Service
=======================
- Unique identifier for incoming and outgoing SMS messages. Whenever a
message is received or sent by oFono, a unique ID is generated for that
message. The id is relevant to all segments of an SMS and in the case of
incoming messages is only generated when the SMS is fully assembled. The
hash used is SHA1. This unique identifier is used to identify the SMS
message to history plugins as well.
2010-09-22 21:31:54 +00:00
- SMS Status Report support. oFono allows requesting of SMS Status Reports
via the MessageManager UseDeliveryReports property. If enabled, oFono
will set the SRR bit and process incoming status reports. oFono takes
care of collating the status reports for multi-fragment messages. Once all
status reports are received, the UI is notified either via DBus or history
plugin API.
GPRS
====
- GPRS suspension event support. The packet data service may be temporarily
suspended while a circuit switched service such as voice call or SMS is
active.
2010-10-22 17:14:49 +00:00
SIM
===
- Fixed Dialing support. oFono reads the necessary bits from the SIM to
check if FDN support is allocated and enabled in the SIM. If enabled,
oFono halts the SIM initialization procedure and the modem remains in the
PRESIM state. In this state oFono will only allow emergency calls.