As the first step of implementing social features for WOS2 products we are
planning to implement a commenting system. It will be integrated to store
first and subsequently to the AF. Italicized terms are used in the meaning
as it’s defined by the Activity Stream specification [0]. A PoC will be
done based on the architecture described below, and we shall re-review this
architecture after that.
*
Implementation details*


   - Each input will be an activity including comments and ratings. this
   will be extendible to receive activities form the host application (i.e.
   WSO2 ES/AF)  as well as from third party systems (such as JIRA).
   - Cassandra will be used as the database. this will allow us to plug-in
   BAM and CEP for analyzing and event generation later-on. we will reuse the
   BAM’s Event Stream architecture to store data. but we will try to retrieve
   data (at least most of it) directly via CQL interface rather than going
   through HIVE to avoid update delays.
   - UI will be a separate Jaggery app, and it will be integrated to the
   host application UI via a HTML IFrame. UI will be SSOed with the host
   application.
   - Permission will be handled using existing carbon user role system. we
   plan to be aligned with  AF’s future model, since we should be able to use
   AF’s team concept.To do this, we define a  UI-visible sub set of user’s
   roles. each action of the user will be published against one of these
   roles. any action published to a role will be visible to all the users in
   that role.
   - A REST API will be available for publishing activities to roles.

*
Use-cases to be implemented in first release (with Store 1.0 and AF APasS)*


   - View
      - View commnet stream for an object. an object can be a Store asset,
      API, AF application, etc.
      - View my activity stream - this will show all activities that are
      visible for me including relevant comments.


   - Comment
      - Comment on an object
      - Comment on comments
   - Rate
      - Rate objects
      - Rate comments

*
Possible future use-cases*

   - Real time updating the UI when events occur
   - Extend the same back-end to a forum
   - Integrate with a platform wide friend/circles concept

[0] http://activitystrea.ms/specs/json/1.0/

-- 
With regards,
*Manu*ranga Perera.
_______________________________________________
Architecture mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to