Closed srenault-meeds closed 3 weeks ago
To check @margondicco thanks
Go Fonc (+ we should keep embeded video in comment)
Ok. Thanks (added the embedded video case)
Ready for tech review by DAO Members (eXo: @rdenarie )
ok for me
MIP ready for review by the DAO members (cc @rdenarie ). Acc up
Hello thank you @SaraBoutej . Tested and validated
cc @srenault-meeds
Ok for me, you can proceed to merge
Rationale
More knowledge is shared in the stream, more it can be difficult to know what is useful for me as a user. Indeed:
1. Functional Requirements
Top User Stories
Current As a user, when new activity is posted
New display / UX
Case 1: New unread activity I have not read the activity. Red dot is displayed AND until I reload the page, the activity is fully displayed
Case 2: Activity is read I have read the activity. Red dot has disappearred. It is no more considered as an unread activity. Considering the activity is longer than 5 lines When going back to the stream Then this activity is collapsed to see only the first 4 lines AND I can click to a see more to see the whole activity
Case 3: Unread activity "again" - Edit case I have read the activity. But since the last time I saw it, it is back to unread status. Indeed, the activity has been edited Then in addition to the red dot, the activity is fully displayed so I can acknowledge it has been edited
Case 4: Unread activity "again" - like case My activity has been liked. It is back to unread status Then the activity remains collapsed if longer than 5 lines
Case 5: Unread activity "again" - comment case / comment edition case My activity has been commented Then the activity remains collapsed if longer than 5 lines AND the most two recent comments are listed below
Case 6: Unread activity "again" - reply to a comment, like to a comment My comment has been replied or liked Then the activity remains collapsed if longer than 5 lines AND the related comment is displayed below (max the two most recent)
Case 7: Read activity (activity, comment, etc.) The activity is read and no activity is identified there (no like, no edit, no comment, no reply) Then:
Current As a user, when adding multiple links to a post Then only the first is embedded And both links are fully displayed
New display / UX
Case 1: When adding only one link, then don't display it As an embedded display is proposed
Case 2: When adding more than one link, Then display all links and keep the fact the first is embedded
Case 3: When posting links longer than 75 char., Then display an ellipsis
New display / UX When adding links to a comment Then:
Impacts
Gamification
NA
Notifications
NA
Analytics
NA
Unified Search
NA
2. Technical Requirements
Expected Volume & Performance
Security
Extensibility
Configurability
Upgradability
Existing Features
Feature Flags
Other Non Functional Requirements
3. Impacts
Documentation
Training
4. Software Architecture
Services & processing
Neither Rest nor WebSockets APIs will be added here.
The existing webSocket ActivityStreamWebSocketService will be used to broadcast activities events . Thus we need to subscribe to the Channel “/eXo/Application/ActivityStream” and listen to the following activities and comments actions:
To check the read/unread activity, we will adopt the same approach as the unread badge display. Therefore, we will utilize the
activity.metadata.unread
object to determine whether the activity should be displayed in its full or collapsed form.If the activity is fully displayed, we need to reload the page in order to collapse the activity content.
We Have to add a new param collapsed (default = true) to the activity content extension to enable the display of full or collapsed activity content.