Suppose you work as a Salesforce developer for a company that has a Salesforce organization and an account with a fictional company called “VideoChat.” Users have been saying they want to do more from Salesforce1. You’re asked to create an app that lets users create and join video chats directly from Salesforce1.
For the first requirement, you create a {!Bindings.roomId} binding variable in the Action URL template field. When the Salesforce1 user clicks OK to create the video chat room, your Apex code generates a unique room ID. The Apex code uses that unique room ID as the binding variable value when it instantiates the action link group, associates it with the feed item, and posts the feed item.
For the second requirement, the action link must include the user ID. Action links support a predefined set of context variables. When an action link is invoked, Salesforce substitutes the variables with values. Context variables include information about who clicked the action link and in what context it was invoked. You decide to include a {!userId} context variable in the Action URL so that when a user clicks the action link in the feed, Salesforce substitutes the user’s ID and the video chat room knows who’s entering.
This is the action link template for the Join action link:
Every action link must be associated with an action link group. The group defines
properties shared by all the action links associated with it. Even if you’re using a single
action link (as in this example) it must be associated with a group. The first field of the
action link template is Action Link Group Template, which in this case
is Video Chat, which is the action link group template the action
link template is associated with:.