在 Teams 中使用自定义连接器构建 Power App 第 1 部分:Power Apps for Microsoft Teams 中自定义连接器使用入门





5.00/5 (1投票)
在本文中,我们将创建一个简单的事件信息 Power App,并将其连接到手动输入数据的表中。
在过去几年里,Microsoft Teams 已成为许多公司的重要工具。它已从一个用于会议的场所,发展成为日常工作活动的中心焦点。
与此同时,微软通过一个名为 Dataverse(以前称为 Common Data Service (CDS))的中央数据存储库,在其业务平台上进行了大量投资。Power Apps 的大幅扩展也推动了低代码应用程序的趋势,使企业能够创建自定义应用程序,供员工在他们日常工作的环境中随时使用。
本文将深入探讨如何结合 Teams + Power Apps + Power Automate(以前称为 Microsoft Flow)的强大功能来创建一个自定义应用程序。我们的应用程序将显示数据并发布到流行的 Meetup 服务,帮助员工在 Teams 标签页中协调线下或线上的活动。
您无需任何特定的编码经验或 Power Apps 和 Power Automate 的先前经验即可遵循本教程,但您需要一个付费的 Power Automate 订阅才能充分利用此演示。您可以注册以免费享受 Power Automate 的所有功能 30 天。
在第一篇文章中,我们将创建我们的 Teams Power App,然后构建并设置自定义连接器。在后续文章中,我们将读取 Meetup 数据并在我们的 Power App 中显示它,编辑数据,并将其写回应用程序。首先,让我们探索一些我们将使用的工具。
使用的工具
我们将使用几种不同的 Microsoft 工具来创建我们的应用程序。结合这些工具可以帮助我们充分利用 Microsoft Teams,并使最终用户更容易协调活动。
Dataverse
Dataverse 是您的数据存储。它的外观和行为类似于 SQL Server 表。请注意,Teams Dataverse 和您的 Office 365 Dataverse 目前是不同的环境,它们之间不通信。
Power Apps
作为专业开发人员,低代码起初可能看起来不吸引人。然而,我们对低代码的工作原理有着深刻的见解,并且在许多情况下,能够以远低于完全自定义开发成本的成本为客户提供解决方案。Power Apps 是一种快速为客户提供他们所需功能的途径,并且对他们来说,在此应用程序的基础上进行构建和更改非常容易。
Power Automate
Power Automate 支持后台和按需处理。主要组件称为 Flows。Flows 允许您根据数据或连接器触发器、计划任务或手动操作执行操作。
例如,当有人向数据表中添加新记录时,您可以触发一个 Flow。或者,也许您希望每天下午 5:00 检查一个文件。您可以安排这项任务。您还可以将 Flow 绑定到一个按钮以手动启动它。
在 Teams 中安装 Power Apps
要开始创建我们的应用程序,我们需要将 Power Apps 应用程序安装到我们的 Teams 环境中。在 Teams 左侧导航栏的底部,我们可以看到 **应用**。
如果您还没有探索过 Power Apps,您可能会惊讶于已经有哪些应用程序可供您使用。甚至还有一个您可以加载到 Teams 中的 Starbucks 应用程序,以简化您的日常咖啡购买。
在我们的例子中,我们搜索“Power Apps”,然后 Power Apps by Microsoft Corporation 的磁贴应该会出现在第一个位置。
当我们点击磁贴时,我们会看到更多信息,包括我们希望授予此应用程序的权限。我们点击 **添加** 按钮开始安装。
回到 Teams 左侧导航栏,我们点击省略号 (…) 来显示最近使用的应用程序。我们应该看到 Power Apps 旁边有一个 **新建** 气泡。我们右键单击此图标,然后单击 **固定**,Power Apps 现在就出现在 Teams 的左侧导航栏中了。
创建 Power App
接下来,我们通过单击左侧导航栏中的 **Power Apps** 来创建一个新应用程序。将显示一个对话框,要求我们选择一个团队。
选择团队后,我们单击 **创建** 按钮继续。现在我们为应用程序命名(例如,“Meetup Teams App”),然后 **保存** 它。
该应用程序将显示在 **最近使用的应用程序** 中。我们单击应用程序名称(例如,**Meetup Teams App**)来打开它。
新应用程序目前是一个 CustomGallerySample App。该应用程序有一个我们不会使用、稍后将删除的“screen 1”。
创建数据表
在以后的文章中,我们将探讨如何从外部源获取数据。目前,我们将创建一个表并手动填充一些数据。
要开始,我们在 Power Apps 的 **数据** 选项卡中单击 **创建新表** 按钮,并将表命名为“MeetingList”。高级选项卡还显示 **复数表名**(例如,“MeetingLists”),我们可以更改它。Power Apps 将在需要时使用复数名称。
这些操作会在团队的 Dataverse(以前称为 Common Data Service (CDS))中创建一个新表。如果您熟悉 Microsoft CRM,您会在基表看到标准字段,如 createdon、modifiedon 等。
接下来,我们单击 **创建** 继续。
现在我们看到一个表设计器,它使我们能够添加各种类型的字段。在这里,我们将处理来自 Meetup.com 和 .NET Foundation 的会议列表。
我们可以创建一个简单的数据流来捕获一些数据并创建一个匹配的表,但为了保持示例简单,我们将手动完成。
Meetup 会议结构包含许多字段和子对象,但我们将只关注其中一些。下面是一段 JSON,显示了会议数据。请注意,这是使用当前可用的 Meetup API 版本。他们正在过渡到 GraphQL API 接口。
目前,我们可以获取任何 Meetup 群组的会议列表。在此示例中,我们使用的是 .NET Virtual User Group meetup。
我们可以使用 curl、Postman、Fiddler 甚至浏览器来获取一组会议。为了简化示例,我们将选择一部分字段。
"id": "276852555", "name": "Embracing gRPC in .NET by Irina Scurtu", "local_date": "2021-03-30", "local_time": "09:00", "utc_offset": -25200000, "link": "https://www.meetup.com/dotnet-virtual-user-group/events/276852555/", "description": "<p>....</p> "
该表以一个默认必需的 **Name** 字段开始,该字段存储会议主题。我们将添加其他列作为文本,默认长度除外:
- utc_offset -> number
- link -> url
- description –> text length 4000(最大值)
现在我们有了以下表定义:
为了让我们有东西可以处理,我们将手动添加两行会议数据来得到这个:
设计屏幕
接下来,我们选择 **新屏幕**,然后选择 **空白**,然后将此屏幕重命名为“Meetups”。在左下角,有一个 **屏幕** 选择框。此时,我们有两个屏幕。当我们处于新屏幕时,我们单击左侧导航上的 **+** 按钮,将显示我们可以添加到屏幕的组件列表。为了简单起见,我们选择 **表格**,并选择 **MeetingList** 数据作为数据源。
接下来,我们编辑表格格式以调整网格大小,更改标题名称,并隐藏 **ID** 字段。单击右上角的 **预览** 按钮后,我们将看到表格在应用程序中的外观。
在将此应用程序发布到 Teams 之前,让我们回去做一些清理工作。我们单击 **树视图** 按钮,选择 **Screen 1**(原始默认屏幕),然后 **删除** 它。
现在,我们单击 **发布到 Teams**,这将显示下面的对话框:
在发布之前,我们可能想单击 **编辑详细信息** 来显示应用程序设置屏幕。至少,我们可能想添加一个描述。我们还可以更改图标和背景颜色,以及添加其他设计功能。
完成调整后,我们单击 **返回**,然后单击 **发布到 Teams** 按钮继续。单击 **发布到 Teams** 将显示 **添加到频道** 对话框,以选择我们将发布应用程序的频道。
使用应用程序
发布应用程序后,我们必须将其安装到用户界面中。我们的应用程序将显示为 Teams 中的一个选项卡,位于任何现有选项卡的右侧。要安装应用程序,我们单击选项卡右侧的 **+** 按钮,这将显示 **添加选项卡** 对话框。
然后,我们单击 **Power Apps** 以显示我们的 Power Apps 列表。我们找到并选择 **Meetup Teams App**,然后单击 **保存** 按钮。
Meetup Teams App 现在应该会显示为我们在其中安装它的频道的选项卡。现在我们单击该应用程序以显示我们的会议表。
Teams Power App 与 Office Power App
Teams Power App 的实现与 Power Apps hub 中的 Power Apps 完全分开,尽管它们是同一个 Microsoft 365 帐户的一部分。数据、连接器等也是分开的。这使得使用 Teams 的每个组,例如不同的企业或部门,都可以将它们的信息分开并保持私密。如果需要将团队完全集成到其他企业资源中,也可以将 Teams 环境升级到完整的“Dataverse”。
后续步骤
通过在 Teams 中添加具有特定于团队的数据和交互功能的选项卡,可以有效提高工作效率。Power Apps 提供了一种低代码方法,领域专家会很欣赏,业务用户也会觉得易于调整。
本文简要介绍了 Power Apps Teams 的使用。还有很多需要学习!了解更多关于 Teams Power Apps 的信息,或者继续阅读本系列的 第二篇文章,了解如何将外部数据引入您的应用程序,自动填充您的 Meetup Teams App,提供有关即将举行的活动的最新信息。