Re: What I can do with Online Desktop at this moment?



I should also mention that the goal is that the Accounts system (accounts.py) takes care of getting the accounts from the online.gnome.org server and storing them in the GConf, and the accounts dialog (accounts_dialog.py) takes care of letting the user enter passwords and new accounts, while other applications and widgets get this information from the Accounts system. You can find an example of how this currently happens in bigboard/bigboard/google_stock.py -- we make a get_accounts_with_kind(accounts.KIND_GOOGLE) call to the Accounts system, and also connect to the "account-added" and "account-removed" signals.

If you have an interest in an application outside of the bigboard getting the accounts information, we can prioritize breaking the Accounts system out into a separate python module and providing a D-Bus API for it. We can also change accounts.py if there is some functionality that is missing in it or if there are some other account types that need to be added if you plan to use it for a new bigboard widget. There is also a plan to have the accounts dialog have a version that only lets the user edit a subset of account types, so that the user can concentrate on the current task. For example, a dialog with only Twitter accounts that is opened up for a Twitter widget or a dialog with only photo site accounts that is opened up for F-Spot.

In addition to continuing this discussion on the mailing list, feel free to join #online-desktop on GimpNet with any questions!

Marina

Marina Zhurakhinskaya wrote:
Manuel Rego Casasnovas wrote:
About this I have a question, where the Gmail account is stored?

For example for each loved accounts there are four properties stored:
iconURL, link, sentiment and accountType.

If an application uses an external web service like Gmail, it needs to
store at least: link and user.
This information is stored in any place at this moment?

I see that Big Board stores this information at GConf
below /apps/bigboard/accounts/, however I don't know if this is the
suitable place.
I think that could be that it gets this information from any resource at
online.gnome.org, it's only an idea I don't know which is the right way.
Hi!

You can find the logic for getting GMail accounts in bigboard/bigboard/accounts.py In particular, you can see a request to the data model for "googleEnabledEmails" and how we process the response.

Google accounts are provided by online.gnome.org (you can see that get_provided_by_server() is True for KIND_GOOGLE account kind). In the future, we'll have other accounts that might not necessarily be provided by online.gnome.org. All accounts are stored locally in the GConf, under /apps/bigboard/accounts/, just as you pointed out. In the case with Google accounts, GConf will only have the accounts that were obtained from online.gnome.org. It is possible to disable an account locally, and that setting is stored locally in the GConf, and synced across different instances of Online Desktop due to the GConf sync. The password is stored locally in the GNOME Keyring.

Google enabled e-mails can include e-mails that are supported by Google Apps For Your Domain (GAFYD). Currently, the Google Calendar widget and the e-mail notifier are supposed to work for multiple accounts, including GAFYD ones (though this hasn't been tested for a while), but the Google Mail widget doesn't -- it only supports one Gmail account. The user can indicate which e-mails are supported by Google in the "Google Services" section of their online.gnome.org account page. GMail e-mails are automatically marked as such. If you want to write an application or a widget that uses Google accounts, you should decide if it's going to support multiple accounts and if it's going to support GAFYD accounts (this is not very hard). Of course just supporting one GMail account is a start too :).

Marina
_______________________________________________
online-desktop-list mailing list
online-desktop-list gnome org
http://mail.gnome.org/mailman/listinfo/online-desktop-list



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]