开始使用Teams JavaScript SDK v2.0

183 阅读6分钟

微软正在将团队应用主机引入Office的其他部分,从Outlook开始。

这场大流行可能使人们关注视频会议和在线会议工具,但微软团队不仅仅是另一个通信平台。随着与微软365平台的深度整合,它也许被认为是你工作的一个中心,提供了一个管理任务和与其他团队成员协作的地方。

到目前为止,它的大部分整合都是将工具带入Teams,用它来管理应用程序,如Bookings调度工具,或提供一个应用程序和服务可以呈现内容的画布。这使得它成为一个我们可以进行 "微工作 "的地方,这些任务不需要密集的互动,而回应是简单的点击或批准。这使得它能够成为你的应用程序的另一个用户界面,使用自适应卡片微软图表等技术。

Teams只是生活在企业桌面上的应用程序之一。这种渲染表面可以扩展到其他生产力工具中,仍然建立在Teams之上,但现在将其功能带入熟悉的应用程序中。当然,逻辑上的起点是Outlook。它是我们管理大部分协作的地方,电子邮件为会议和评论提供了有用的审计跟踪。

突破团队的限制

微软最近公布了第二代Teams JavaScript SDK的预览版,其目的是开始将Teams应用程序从沙盒中带出来,进入我们其他的协作工具中。这样,你就可以继续在你选择的工具中工作,同时仍然利用Teams的微工作能力。你可以把它看作是一种多任务处理的方式,而不会因为在应用程序之间切换而破坏流程。在Office应用程序的工具栏或窗格中进行Teams交互,可以让你在继续完成主要任务的同时异步地使用它。

这是一种适用于任务工作者和信息工作者的方法,你可能只在虚拟桌面上推出了Office的一个子集,但仍然希望这些工作者成为整个任务工作流程的一部分。这样一来,在工作地点运行Outlook的共享PC就可以用来收集电子邮件,同时参与时间表的收集或与HR Teams应用程序互动。

Teams JavaScript SDK v2.0的初始预览允许你在桌面和网页Outlook以及Office.com网络门户中运行为Teams个人标签设计的应用程序。它将基于搜索的消息应用程序带入Outlook,将它们添加到消息组成窗格中,这样你就可以在写邮件时访问相关信息。

构建一个团队的开发环境

这个新SDK的一个有用工具是Office 365开发者计划。这将创建并预先填充一个Office 365租户,让你在不影响任何生产租户的情况下测试微软图形应用程序。一旦你建立了一个新的Teams应用程序,通过开发者租户进行部署,在网络和桌面应用程序中进行测试。开发者计划提供了一套样本数据包,可以简化入门,不仅预先填充了用户和图形数据,而且还设置了Teams App Studio和开发者门户,这样你就可以在环境启动和运行后立即开始构建代码。

为了试验新的SDK,你应该确保你的开发者租户使用Outlook和Teams的预览版。这将需要首先使用租户的管理中心,向其虚拟用户提供目标版本。然后,你可以使用Office部署工具,在你的开发电脑或任何开发者虚拟机上安装测试频道Office版本。一旦它们被安装在Teams中,你就可以使用Outlook窗口左侧的省略号菜单访问个人标签。

升级现有的Teams应用程序

在你的开发环境准备就绪后,将Teams工具包添加到Visual Studio Code中,以加快清单和应用程序脚手架的创建,是一个好主意。这在Visual Studio中增加了一些命令,可以将现有代码升级到新的清单格式,并具有验证功能,确保你的代码能够正确加载。其他命令更新了JavaScript引用,增加了对预览SDK的支持。

值得注意的是,升级工具只适用于JavaScript和TypeScript文件。如果你使用HTML内容对SDK的内联调用,这将不会被更新,所以你需要手动完成。同时,你必须编辑任何内容安全策略标题,以说明用于托管团队内容的框架的来源。

微软并没有改变你用新的SDK构建Teams应用程序的方式。相反,它已将Teams渲染画布添加到其他平台,因此,你可以写一次代码,并知道它将在Outlook中运行,没有任何变化,并具有相同的用户体验。Teams中的个人标签和Outlook中的个人标签看起来是一样的,所以你只需要培训用户一次。

v2.0版SDK的新功能和变化

这并不是说新的SDK中没有任何架构上的变化。如果你使用升级工具,旧的调用将被标记为废弃的,使你有机会更新到较新的API。其他变化是利用了现代JavaScript工具,例如,将使用回调的API迁移到使用承诺。使用承诺可以利用异步操作,将控制逻辑从你的代码中转移到JavaScript引擎中。

其他变化是将API调用转移到能力组中,使用命名空间,控制托管应用程序如何使用API调用。如果一个能力不被支持,代码将抛出一个异常,允许你为不同平台调整体验。然后,你可以使用isSupported()调用来提前检查能力,这将允许你在不同的主机应用程序中启用特定的功能。这种方法表明,微软正计划将这些功能带到其他Office应用程序以及其他平台上

以这种方式扩展Teams是很有意义的,即使看起来Office确实越来越像90年代末的Lotus Notes。我们需要将生产力工具视为工作的画布,我们可以帮助人们停留在熟悉的用户体验中,同时扩展这些应用程序的功能。Office的附加模式被广泛使用,因此使用它和微软图形API链接到Teams中,就可以提供一个现成的工作流引擎,为微观工作和异步操作而优化。