Since Microsoft Teams is taking more and more control over organization communications, there might be a need for displaying certain discussion, like important announcement or conversations from organization wide team, on SharePoint Online. As a low-code solutions, this requirement can be fulfilled with help of Microsoft Flow, SharePoint list and list view formatting.
#1 Create the list on SharePoint
For this example, couple of fields are required for storing information about conversation.
- Message (multi-lined text)
- From (User)
- DateCreated, (Date)
- DeepLink, (Single-lined text)
- Importance, (Single-lined text)
Notice that Out-of-the-Box Web Parts can only display contents of the lists located on current site.
#2 Create the Flow
Flow is triggered with “When a new channel message is added” trigger, which currently in Preview. Just pick a team and a channel, where converstations should be displayed.
Content of the conversation is commonly on HTML format, which causes some issues with SharePoint view formatting, so it needs to modified to plain text on the Flow. I used “Html to text” action to handle it, just put in a “Message body content” from the trigger.
User profile is needed also to store user information correctly to the list in SharePoint and it can be done with “Get user profile (V2)” action.
Last piece is to create a new item to the list using “Create item” action. webUrl parameter for DeepLink can be retrieved with this expression:
#3 Create a view and format it
Now data is on the list, but it’s not looking nice by default.
Little bit of View Formatting will help out here. I suggest to create completely new view for this, add all customized columns to the view and save it. Format the created view.
#4 Add List Web Part to a page
For configuration pick the correct list, change view setting to newly created view, set number of items and hide command bar.
Since this is a low-code solution, there is of course some limitations. It’s only one way, list item is created after new conversation is started. List Web Part only supports lists on current site, so if there is need for more global utilization list needs to be copied and Flow needs to save information to several lists. Still a minor change, but maybe in these cases, for example SharePoint Framework Web Part would suit better.
I noticed that, announcements cannot be reliably identified, at least yet. Flow returns announcement banner as an message attachment, but it didn’t happen in every run. Attachment contains information about set background or background image, but headline is not returned. If you find a way, please ping me.
Download the formatter for annoucement style view here.