(Created page with "= Communication History = Communication History is solution used to automatically log communication events, such as calls and messages. It contains the following components: * …") |
(Removed mentions of csd and skyhost, some proofreading, fixed the headers) |
||
| Line 19: | Line 19: | ||
* Support Synchronization. | * Support Synchronization. | ||
| - | + | == Behavioral view == | |
A typical use case usually involves the following processes: | A typical use case usually involves the following processes: | ||
| Line 31: | Line 31: | ||
* conversations application. | * conversations application. | ||
| - | Usually communication between them happens via session DBus, except telepathy-ring <-> | + | Usually communication between them happens via session DBus, except telepathy-ring <-> oFono communication that uses system DBus. In certain cases/protocols, other IPC mechanisms are used. commhistory-daemon does not perform any periodic tasks, and only reacts to external events. commhistory-daemon should be started during boot in order to perform the following tasks: |
* check unhandled incoming SMS messages and initiate their re-delivery; | * check unhandled incoming SMS messages and initiate their re-delivery; | ||
| - | *check voicemail MWI status from SIM card and activate/deactivate corresponding notification. | + | * check voicemail MWI status from SIM card and activate/deactivate corresponding notification. |
Its startup time including the initial checks takes around 3 sec. | Its startup time including the initial checks takes around 3 sec. | ||
| Line 64: | Line 64: | ||
Sequence diagrams for data access | Sequence diagrams for data access | ||
| - | + | == Data storage == | |
Events are stored in the Tracker database. Libcommhistory uses the local file ~/.commhistoryd/ids.dat to keep track of unique running event and group ids for use with device syncing. When used with sqlite database backend, database configuration settings are stored (sqlite3). Private database is stored in ~/.rtcom-commhistory/commhistory.db | Events are stored in the Tracker database. Libcommhistory uses the local file ~/.commhistoryd/ids.dat to keep track of unique running event and group ids for use with device syncing. When used with sqlite database backend, database configuration settings are stored (sqlite3). Private database is stored in ~/.rtcom-commhistory/commhistory.db | ||
| - | + | == Development == | |
Communications History runs in Scratchbox. | Communications History runs in Scratchbox. | ||
Contents |
Communication History is solution used to automatically log communication events, such as calls and messages. It contains the following components:
A summary of requirements relative to data logging:
A typical use case usually involves the following processes:
Usually communication between them happens via session DBus, except telepathy-ring <-> oFono communication that uses system DBus. In certain cases/protocols, other IPC mechanisms are used. commhistory-daemon does not perform any periodic tasks, and only reacts to external events. commhistory-daemon should be started during boot in order to perform the following tasks:
Its startup time including the initial checks takes around 3 sec.
End users interacts with the subsystem only via notifications. commhistory-daemon encapsulates remote actions for individual notifications and each notification group. The remote actions usually invokes the daemon itself which then redirects it to a final service. This is necessary in order to manage notifications and their content in the daemon. Other subsystems access the subsystem via telepathy interfaces. (The daemon also provides dbus service for contact authorization handling.) A typical usage scenario for the system would be receiving a SMS message or registering a missed call. The typical steps includes the following:
Sequence for sent and received messages:
Typical queries from/to Contacts are:
Sequence diagrams for data access
Events are stored in the Tracker database. Libcommhistory uses the local file ~/.commhistoryd/ids.dat to keep track of unique running event and group ids for use with device syncing. When used with sqlite database backend, database configuration settings are stored (sqlite3). Private database is stored in ~/.rtcom-commhistory/commhistory.db
Communications History runs in Scratchbox.