消息扩展(Message extension)
Microsoft Teams 及其同类产品,引领的是一个所谓的基于会话(Chat-based)的协同工作解决方案。这里所谓的会话,核心就是消息(Message),这也是它与传统的邮件不一样的地方。
某种意义上说,现在的社会节奏更快,各种新的媒体形式层出不穷,人和人交流的方式也发生了显而易见且不可逆转的变化。姑且不评论好坏,两三年前,任凭是谁也想不到现在做大生意都是通过直播的形式来实现的吧。工作中,我们现在确实发现越来越多的事情是通过聊着聊着就谈好了,或者就解决了。
在Microsoft Teams 中,围绕消息这个核心的载体,提供了消息扩展(Message extension)的平台能力,帮助用户更快、更有趣地发送消息,以及根据消息的上下文进行任务跟进。
技术上来说,消息扩展是一个特殊的机器人,或者说是机器人的一种特殊功能。消息扩展可以为个人所用,但大部分是在团队、群聊、会议中使用,所以也需要通过 @ 来呼唤它。
消息扩展可以在三个不同的位置进行访问:
- 消息输入框(Compose),在每个消息的输入区域。
- 命令输入框(CommandBox),在Teams客户端顶部的中间区域。
- 消息的快捷菜单(Message), 在每个消息的右上角有一个“更多选项(...)”,点击可打开快捷菜单。
用一种新的方式发送消息
想象一下你要给同事分享一个有趣的新闻,传统情况下,你会需要怎么做呢?
- 打开浏览器,搜索找到这个新闻
- 摘录该新闻的关键信息,复制新闻链接
- 粘贴,并且对文字和链接进行适当排版
- 发送给同事
使用消息扩展,就简单多了。以上的场景,Microsoft Teams 有一个内置的 ”新闻“ 消息扩展,使用Bing 搜索引擎来实现的。在消息输入框中,输入 @News
后回车,然后在出现的搜索框中,输入你要查找的新闻关键字,例如Teams 平台。机器人会自动调用后台的服务进行搜索,然后提供候选的新闻结果列表,如下图所示。
选择某一个新闻,单击鼠标或者直接回车,这个新闻会以一个卡片的形式插入到消息框中,再次按下回车,你就可以发送给你的同事了。
类似的场景还有查天气,查股票,分享视频,请留意内置的 Weather
, Stock
, Youtube
等消息扩展。
这些消息扩展也可以通过点击在输入框下方的小按钮来调用,效果完全一样,只是取决于你是更习惯用鼠标,还是用键盘。
基于消息进行任务跟进
大多数人的日常工作,都是由一个一个的任务组成,不管这些任务是提前计划好的,还是临时发起的。基于Microsoft Teams的现代办公,是以对话为基础的高效沟通与协作,但沟通和协作的最终目的,还是为了更好更快地完成更多任务。
使用消息扩展的 操作(Action)
能力,一个典型场景是让用户可以根据某个消息的上下文进行操作,例如创建一个任务待办,或者跟消息的发起人计划一个会议等等。
在每个消息的右上角,有一个 更多选项
的按钮(...),如下图所示:
点击这个按钮,会出现一个快捷菜单,这里有一些内置的操作,包括保存消息,共享和翻译等,也支持第三方应用进行扩展,这些扩展出来的操作,会集中出现在 更多操作
这个二级菜单中。
通常这些自定义操作都会通过任务模块(Task Module)的形式弹出一个对话框,然后用预先定义好的自适应卡片(Adaptive Card)或者自定义的网页,收集用户的一些信息,并且在用户点击提交时完成后续的操作。下图是一个使用自适应卡片的例子。
对消息中的链接进行可视化
除了上述两种用途(查询信息和执行操作)之外,消息扩展还有一个有意思的功能,是自动对消息中的链接进行可视化,以便让用户能更加直观地了解消息中的链接内容,即便是没有点击打开的情况下。
值得说明的是,Microsoft Teams默认会尝试对链接(尤其是一个网页的话)进行解析,例如我想分享 这个链接 给同事时,当我在消息框中输入或者粘贴时,几乎是立即它就被解析成下面这样。
这是怎么做到的呢?其实只要网页的源文件中包含了og:title
和 og:description
和 og:image 就足够了,Teams 客户端会自动读取这三个属性,然后生成一个卡片。
如果链接不是一个简单的网页,而且想在卡片上显示更多的信息,或者添加一些用户可以进行操作的按钮,这都是可以通过自定义消息扩展中通过对特定域名的链接进行解析,并且实现自定义的卡片逻辑的。下图是Power BI 的报表链接展现的样式,和一般的网页不同,它会尝试解析报表的基本信息,并且提供两个额外的按钮。
以上提到的三项强大的消息扩展功能,不仅仅在Microsoft Teams 客户端能够工作,在移动端也可以完美支持。