|
Use Case - Green Room
This use case is designed for the following scenario.
You have a large and vocal audience trying to ask questions of a VIP guest. The guest is incapable of tracking ALL the comments and participating in the torrent of items, and the guests are unable to see any replies to items because the stream is moving too fast.
Instead, we set up a second 'Green Room' where the VIP guest sees a curated version of the stream and is able to create special replies to questions. Think of it as a specialized moderation dashboard.
Moderators pick out questions from the public stream. Those hand selected items are fed into the Green Room stream. As the VIP guest replies to the items in his Green Room stream, those items are removed from the Green Room.
The replies from the VIP guest are included as NEW items in the public stream and are highlighted to stand out from the crowd.
Setting up the Public Stream
Step 1: Set up a standard comment stream or social chat implementation. This will be your pubic chat room/discussion stream.
Additional information can be found on the Commenting and Chat use case pages.
Step 2: Add the plugins to the stream client
Install the "UserMetadataManager" (to mark the user as a VIP guest), "MetadataManager" (to mark good questions from the crowd to be displayed in the Green Room for the VIP guest) and "GreenRoomReplies" (to insert additional CSS rules for the VIP guest replies) plugins into the Echo.Stream application to assemble the Green Room use case controls for the public stream. The plugins installation instructions can be found on the corresponding pages. The Echo.Stream application initialization code may look like:
new Echo.Stream({
"target": document.getElementById("stream"),
"appkey": "test.aboutecho.com",
"query": "childrenof:http://example.com/chat/ state:Untouched,ModeratorApproved children:1 state:Untouched,ModeratorApproved",
"plugins": [
{
"name": "UserMetadataManager",
"controls": [{
"markers": "special-guest,show-id",
"labelSet": "Assign as Special Guest",
"labelUnset": "Demote from Special Guest"
}]
},{
"name": "MetadataManager",
"controls": [{
"marker": "editorpick",
"labelMark": "Send to Green Room",
"labelUnmark": "Remove from Green Room"
}]
},{
"name": "GreenRoomReplies",
"view": "public"
}
]
});
Setting up the Green Room
Step 1: Set up a separate/second copy of the public stream without plugins, described in the previous section. This will be your green room that only the VIP guest should see/use. You might like to host it on a secret URL or in a Tab on the same page that only users with the Admin/Moderator role or special-guest marker can see.
Step 2: Update the same search query as the one you used for the public stream however also include the following predicates:
markers:editorpick -markers:answered
It means that the new stream will contain the items from the public stream but with the "editorpick" marker and without "answered" marker, i.e. only items selected by the moderators and not yet answered by the VIP guest. The Echo.Stream installation code may look like:
new Echo.Stream({
"target": document.getElementById("stream"),
"appkey": "test.aboutecho.com",
"query": "childrenof:http://example.com/chat/ markers:editorpick -markers:answered state:Untouched,ModeratorApproved children:1 state:Untouched,ModeratorApproved"
});
Step 3: Add the "GreenRoomReplies" plugin as shown below to append extra logic for items processing when the VIP guest posts a reply:
new Echo.Stream({
"target": document.getElementById("stream"),
"appkey": "test.aboutecho.com",
"query": "childrenof:http://example.com/chat/ markers:editorpick -markers:answered state:Untouched,ModeratorApproved children:1 state:Untouched,ModeratorApproved",
"plugins": [
{
"name": "GreenRoomReplies",
"copyTo": {
"target": "http://example.com/chat/"
},
"view": "private"
}
]
});
Please note: the "copyTo.target" parameter value should be defined to make the copy of the VIP guest reply appear as a root node in the public stream. This would be the same target used on the public stream's Submit form for example.
Using your Green Room in production
Step 1: Ensure that your moderators have the correct role
Step 2: Ensure that your special guest is marked as such
Step 3: Promote your 'Public Stream' URL
Step 4: Ensure your guest is on your 'Green Room' page
Step 5: Have moderators mark items they think worthy of being answered by the guest using the 'Send to Green Room' button
Step 6: Have your guest reply to the items he/she sees in the Green Room
Further Reading
|