Features/OnlineAccountsService

= Feature Name = Online Accounts Service

Summary
Provides applications with credentials for user's online accounts listed on online.gnome.org or stored in GConf.

Owner

 * Name: Marina Zhurakhinskaya

Current status

 * Targeted release:  Fedora 10
 * Last updated: 11/05/08
 * Percentage of completion: 100%

Detailed Description
Online Accounts is a new DBus service available at org.gnome.OnlineAccounts that desktop applications can use to create and retrieve user's online accounts (such as Google, Twitter, etc.).

Online Accounts service The list of supported account types is stored on online.gnome.org server and is easy to expand.
 * stores online account information in GConf and passwords in GNOME Keyring
 * gets the account information from online.gnome.org server if it is available, otherwise relies on GConf
 * provides a dialog for adding and removing online accounts, as well as supplying passwords for existing accounts
 * is currently used by Online Desktop's sidebar to get user's Google and Twitter accounts, but patches for other applications will be coming soon

Benefit to Fedora

 * user only has to enter or update information for a particular account type once
 * desktop applications do not need to do own GConf and GNOME Keyring manipulations
 * desktop applications do not need to create a custom dialog
 * new applications can be recommended based on online accounts added by the user

Scope
Done:

The Online Accounts DBus service is available at org.gnome.OnlineAccounts and can be used by the desktop applications to create and retrieve accounts with specific types.

The Online Accounts service stores account information in GConf and passwords in GNOME Keyring.

The Online Accounts service gets account information from the online.gnome.org server if it is available, otherwise just uses GConf.

The Online Accounts service provides a stock dialog for adding and removing accounts, as well as supplying passwords for the accounts. The desktop applications can specify which account types should show up in the dialog.

Supported account types are stored on the server and the list is easy to expand. Desktop applications can ensure that information about an account type they need is available by sending it to the Online Accounts service, so that it can be used if the server is not available or for testing before adding an account type on the server.

Multiple accounts of the same type can be added on both the desktop and the server. Individual accounts can be disabled on the desktop, which means that they shouldn't be used by any application on a particular desktop.

Desktop-data-model and online-desktop packages are available by default, and desktop-data-engine and web-login-driver processes are started automatically when a call is made to the Online Accounts service.

Online Accounts service works well when the user is not signed in to online.gnome.org, and the stock dialog for managing accounts presents the user with options to enable storing accounts online and to sign in.

The Online Accounts service is currently used by Bigboard to get user's Google and Twitter accounts.

A patch was created for Twitux to use the Online Accounts DBus service to obtain user Twitter accounts.

MyTime is using an earlier version of the Online Accounts service.

Test Plan
Accounts entered by the user on online.gnome.org should be available to the desktop applications that request those accounts when the user signs in to online.gnome.org.

The user should still be able to add, remove, and supply credentials for online accounts when they are not signed in to online.gnome.org

User Experience
The users will only notice the change if an application they use switches to using the Online Accounts DBus service. In which case, the application can use the stock dialog pictured for getting the online account credentials. The user may also be offered to log in to online.gnome.org and modify their online accounts information there.

The dialog tab for providing account password, disabling, or removing an online account:



The dialog tab for adding a new online account for one of the supported account types:



Dependencies
None.

Contingency Plan
Online Accounts service not used by any of the applications in the regular GNOME session.

Documentation
http://marinaz.fedorapeople.org/OnlineAccountsReference/

http://online.gnome.org/accounts-learnmore

http://mail.gnome.org/archives/online-desktop-list/2008-May/msg00043.html

http://live.gnome.org/OnlineDesktop/CreatingSidebarWidget

Release Notes
New feature, no upgrades necessary.

Comments and Discussion

 * See Talk:Features/OnlineAccountsService