Version User Scope of changes
Jun 4 2008, 4:03 PM EDT ryan_wetpaint 2 words deleted
Jun 3 2008, 2:29 PM EDT ryan_wetpaint

Changes

Key:  Additions   Deletions
This section provides a basic overview on the architecture as well as deeper links for those seeking more detail. At a high-level Wetpaint Injected is made possible through the use of:

Embedded Content
The user-generated content is embedded directly on your page before it is sent to the browser. This enables search engines to index your user-generated content and improve your search engine ranking.

Lightweight Integration
Injecting user-generated content into your site(s) is simple. By incorporating the client application and data access API calls into your page’s architecture, users are able to add and edit content on any page you choose.

Seamless User Experience
Your users are not required to log in a second time to access the features. Instead, their existing credentials are honored by Wetpaint Injected. Content is styled to match your site’s look and feel. And the on-demand design and light-weight nature will introduce minimal latency to their browsing experience. Learn more about the features and functionality of BALCO.


Architecture Overview

Any page on your site can feature user-generated content via data access APIs. The APIs allow you to register a user with our system, retrieve content directly to your page, and introduce client-side controls – all before returning an assembled page to the user.

BALCO Architecture
Figure 1: This is the flow of information for page data.

As with any interaction with a page on the web the first action is the request of a page by a user. Without Injected enabled on a page, the publisher receives the request and returns a page with standard features and construction for the user to view. When Injected is enabled for a page, the experience becomes much richer. When your server generates a page, it requests and receives content and features via an API set. The page returned to the user includes static and editable content. The experience for the user is now interactive and editable.


Interface Formats

Three types of interface formats are available that allow direct access to the content and user data; and developers may mix and match these methods throughout a site.

Data Access APIs
Data access calls can be made from server-side code, providing you with access to granular features and data. Using RESTful commands, your data can be created, retrieved, updated, or deleted programmatically. The response from these calls is XML. These calls offer you the greatest flexibility of all interfaces, but require more developer effort to integrate. Most calls to the data access API will be made on behalf of an end user. For example, the following types of calls provide access control appropriate to the signed in state and level of permissions of a user: retrieve and edit content, retrieve reputation data associated with a user account, or interact with a social feature set. A small number of API calls, such as to authenticate users, will be system-level calls. Such calls must be made from your server and require additional security parameters.

Client Application APIs
A collection of public methods and event handlers are made available from the JavaScript Library. These methods provide your own JavaScript access to the client application. By accessing these methods, you are able to affect the appearance and functionality of the user experience. All JavaScript executed on your pages is contained within a restricted namespace to avoid variable collision. The initial payload includes only a minimum set of functionality to ensure timely loading of your web pages; additional code is retrieved on-demand as the user interacts with the client application.

Server-side Includes

To easily allow search engine access to your user-generated content, server-side includes apply browser-ready HTML to your server pages. Because the content is rendered with the rest of your page, it may be crawled and indexed by search engines, which then attribute the content to your domain. The HTML content returned by this API may also include the user controls and JavaScript necessary to engageinteractive capabilities, such as the Wetpaint WYSIWYG Content Editor. Standard server-side include snippets provide the quickest and easiest option for most developers to integrate Injected capabilities.