Flock | the social web browser

Accounts Management

A "web service" is a third-party service for which the user may sign up for accounts, and which may have a social aspect and/or allow the user to manage information such as bookmarks or rich media. Support for a third-party web service in Flock is accomplished by implementing an XPCOM service (to represent the web service) and, generally speaking, a separate class to represent an account with that web service.

Contents

[edit] Conceptual model

Coming soon...

[edit] Responsibilities of a Web Service component

  • Login detection
  • Account creation
  • Raising notifications to the user for feature discovery, etc.

[edit] Interfaces

Danphe introduces a new set of interfaces for dealing with web services and accounts. The base interface for a web service component is flockIWebService. This basically just represents a web service that can have user accounts. The associated account class would then implement flockIWebServiceAccount. Depending on the features of the web service in question, however, there are some other interfaces that you might consider implementing:

Service typePrimary Service interfacePrimary Account interfaceExamples
Social web services support contact lists that could be imported into Flock. flockISocialWebService (src) flockISocialWebServiceAccount src MySpace, del.icio.us, Flickr...
Media web services support sharing of rich media collections, such as photos or video. flockIMediaWebService src flockIMediaWebServiceAccount src Flickr, Photobucket, Youtube...
Blog web services support creation of and posting to blogs. flockIBlogWebService src flockIBlogWebServiceAccount src LiveJournal, Blogger...
Bookmarks web services store a user's bookmarks/favorites. flockIBookmarkWebService src flockIBookmarkWebServiceAccount src del.icio.us, Shadows...
Web mail services [ flockIWebMailService] src [ flockIWebMailServiceAccount] src ...

Each of the service interfaces above has a corresponding account interface. So flockIBlogWebService has flockIBlogWebServiceAccount, and so on...

[edit] Data model

Coming soon...

[edit] Event notifications

Services are responsible for observing the Observer Service event topic 'FlockDocumentReady' and raising notifications for the following events:

Coming soon...

[edit] The Web Service Manager

Web service components may take advantage of the overarching Web Service Manager (see the flockIWebServiceManager (src) interface for documentation). The Web Service Manager provides common workflow logic for login detection and account creation. In order to take advantage of the Web Service Manager, your component must implement flockIManageableWebService (src).

[edit] Account Utils and Web Detective

There are two helper services that most (if not all) web service components will want to make use of.

The Account Utils service ("@flock.com;account-utils;1") implements the flockIAccountUtils interface, which has a bunch of convenient helper functions for doing accounts and services types of things.

Web Detective is special enough to have it's own page: Web Detective.