集成谷歌日历
部署 Google 日历集成,从任何设备或内部网安排日历事件,并列出用户的事件和办公时间。此集成提供了以下四种使用案例:
- 使用创建事件微应用程序,用户可以主持一次性或定期会议、添加被邀请者以及选择不同的时区。微应用还会向所有受邀者发送电子邮件,并附有相应的事件对象,以便轻松集成日历。
- 使用我的日历(本月)微应用程序,用户可以查看当月即将举行的所有活动。
- 使用 “我的办公时间” 微应用程序,用户可以设置虚拟办公时间或列出用户当月的所有办公时间。
注意:
我们提供两个 Google 日历集成模板供您使用。这种基于 HTTP 的新模板(在目录中的 “预览” 类别下)更加灵活,并提供了配置缓存的数据结构的更多功能。基于 java 的模板(在目录中的集成类别下)提供了更多用例。
有关 Google 日历的开箱即用微应用的全面详细信息,请参阅 使用谷歌日历微应用。
注意:
此集成模板处于“预览”状态,并在添加新集成时在产品中显示的可用模板列表中标记为“预览”。在预览版中,没有提供支持的承诺,支持由开发人员在最大努力的基础上提供。共享预览集成模板以进行测试和验证。我们不建议在生产环境中部署它们。有关详细信息,请参阅微应用集成模板维护声明。
检查必备项
这些先决条件假定管理员将参与组织的 Google 日历集成设置。此 Google 日历管理员帐户必须具有用户信息的完全读取权限。与 Google 日历设置此集成后,您需要以下工件才能在 Citrix Workspace 微应用中添加集成:
- 基本 URL:
https://www.googleapis.com/
- 令牌 URL:
https://oauth2.googleapis.com/token
- 授权 URL:
https://accounts.google.com/o/oauth2/v2/auth?access_type=offline&prompt=consent
- 客户端 ID:客户端 ID 是表示授权服务器唯一的客户端注册信息的字符串。
- 秘密:客户端密钥是设置目标应用程序集成时发出的唯一字符串。
注意:
我们建议您始终使用 OAuth 2.0 作为服务身份验证方法(如果可用)。OAuth 2.0 可确保您的集成满足您配置的微应用程序的最高安全性合规性。
将 Citrix Gateway 配置为支持 Google Meet 的单点登录,以便用户在登录后自动重新登录,而无需再次输入凭据。有关配置 SSO 的详细信息,请参阅 Citrix Gateway 服务 https://docs.citrix.com/en-us/citrix-gateway-service/。
集成需要定期访问您的 Google 日历实例,因此我们建议您创建专用用户帐户。此帐户必须具有以下权限:
-
服务帐户所需的权限:完全管理员权限
-
服务帐户所需的范围:
https://www.googleapis.com/auth/calendar
https://www.googleapis.com/auth/calendar.events
https://www.googleapis.com/auth/admin.directory.user
可以向特定资源发出的 API 请求数量有限,因此我们建议采取以下措施:
- 谷歌 API 限制表单链接: https://developers.google.com/calendar/pricing
- 推荐计划:企业加
创建新的服务帐户
在此处登录: https://workspace.google.com/intl/en/pricing.html
如何启用 API
默认情况下,Google 日历 API 可以通过网络服务访问付费帐户。
配置 OAuth
- 使用服务帐户登录至: https://console.cloud.google.com
- 在左侧菜单中选择 API 和服务 。
- 从导航菜单的项目列表中选择相应的项目。
- 选择 启用 API 和服务,然后启用 G-Suite 中的所有必需 API。推荐的 API: Google 日历 API 和管理 SDK。
- 返回 API 和服务 页面,选择左侧 屏幕上的 OAuth 同意 屏幕。
- 根据您的要求选择 用户类型 (我们建议: 内部),然后选择 ****创建**。
-
填写必填字段,包括 服务帐户所需的范围,并保存详细信息。这些是必需的范围:
配置回调 URL 服务器
将 OAuth 服务器配置为通过 Google 日历集成读取数据。
- 使用服务帐户登录至: https://console.cloud.google.com
- 在左侧菜单中选择 API 和服务 。
- 从导航菜单的项目列表中选择相应的项目。
- 选择左侧屏幕上的 凭据 。
- 选择 创建凭据,然后从列表中选择 OAuth 客户端 ID 。
- 从“应用程序类型”列表中选择“Web 应用程序”,然后输入名称。
- 在 授权的重定向URI 下选择添加 URI。
-
在 URI 字段中输入此集成的以下授权重定向 URL:
https://{yourmicroappserverurl}/admin/api/gwsc/auth/serverContext
- 选择 创建。
- 复制并保存屏幕上显示的客户端 ID 和密码。配置集成时,您将这些详细信息用于服务身份验证。
配置回调 URL 客户端
将 OAuth 客户端配置为通过 Google 日历集成写回数据。
- 使用服务帐户登录至: https://console.cloud.google.com
- 在左侧菜单中选择 API 和服务 。
- 从导航菜单的项目列表中选择相应的项目。
- 选择左侧屏幕上的 凭据 。
- 选择 创建凭据,然后从列表中选择 OAuth 客户端 ID 。
- 从“应用程序类型”列表中选择“Web 应用程序”,然后输入名称。
- 在 授权的重定向URI 下选择添加 URI。
-
在 URI 字段中输入此集成的以下授权重定向 URL:
https://{yourmicroappserverurl}/app/api/auth/serviceAction/callback
- 选择 创建。
- 复制并保存屏幕上显示的客户端 ID 和密码。配置集成时,您将这些详细信息用于服务操作身份验证。
将集成添加到 Citrix Workspace 微应用
将 Google 日历集成添加到 Citrix Workspace 微应用程序以连接到应用程序。这样可以提供现成的微应用,以及可以在 Workspace 内使用的预配置通知和操作。
请按照以下步骤进行操作:
- 在微应用集成页面中,选择添加新集成,然后选择从 Citrix 提供的模板添加新集成。
- 选择谷歌日历磁贴。
- 输入集成的名称。
- 输入实例 基本 URL:
https://www.googleapis.com/
。 - 从 图标 库中选择集成的图标,或将其保留为默认图标。
- 输入实例 基本 URL:
-
在服务身份验证下,从身份验证方法菜单中选择 OAuth 2.0,然后填写身份验证详细信息。身份验证选项已预先选择。确保在完成此过程时选择了这些选项。使用 OAuth 2.0 安全协议为委派访问生成请求/授权令牌。建议您始终使用 OAuth 2.0 作为服务身份验证方法(如果可用)。OAuth 2.0 可确保您的集成符合您配置的微应用的最大安全合规性。
- 从授权类型菜单中选择授权代码。这将授予客户端交换访问令牌的临时代码。代码从授权服务器获取,您可以在其中查看客户端请求的信息。只有此授权类型才能启用安全用户模拟。这将显示您在注册应用程序时使用的 回调 URL。
- 从令牌授权菜单中选择请求正文。
-
授权 URL 已预填充:
https://accounts.google.com/o/oauth2/v2/auth?access_type=offline&prompt=consent
-
令牌 URL 已预填充:
https://oauth2.googleapis.com/token
- 确保为范围输入以下内容:
https://www.googleapis.com/auth/calendar
https://www.googleapis.com/auth/calendar.events
https://www.googleapis.com/auth/admin.directory.user
- 输入您的客户端 ID。客户端 ID 是表示授权服务器唯一的客户端注册信息的字符串。在配置 OAuth 服务器时,您将收集这些信息和密码。您需要添加集成配置页面上看到的回调 URL 。
- 输入您的客户端密钥。客户端密钥是设置目标应用程序集成时发出的唯一字符串。
-
在服务操作身份验证下,启用在操作中使用单独用户身份验证开关。服务操作身份验证在服务操作级别进行身份验证。身份验证选项已预先选择。确保在完成此过程时选择了这些选项。
- 从“身份验证方法”菜单中选择“OAuth 2.0”,然后完成身份验证详细信息。
- 从授权类型菜单中选择授权代码。这将授予客户端交换访问令牌的临时代码。代码从授权服务器获取,您可以在其中查看客户端请求的信息。只有此授权类型才能启用安全用户模拟。这将显示您在注册应用程序时使用的回调 URL。
- 从令牌授权菜单中选择请求正文。
-
授权 URL 已预填充:
https://accounts.google.com/o/oauth2/v2/auth?access_type=offline&prompt=consent
-
令牌 URL 已预填充:
https://oauth2.googleapis.com/token
- 确保为范围输入以下内容:
https://www.googleapis.com/auth/calendar
https://www.googleapis.com/auth/calendar.events
- 输入您的客户端 ID。客户端 ID 是表示授权服务器唯一的客户端注册信息的字符串。您在配置 OAuth 客户端时收集此信息和密码。您需要添加集成配置页面上看到的回调 URL 。
- 输入您的客户端密钥。客户端密钥是设置目标应用程序集成时发出的唯一字符串。
- 启用 启用请求速率限制 切换。为请求数输入 100,在时间间隔中输入 1 分钟。
-
(可选)启用日志记录开关以保留 24 小时的日志记录以供支持。
- 选择 保存 以继续。
- 在 OAuth 授权下,选择 授权 以使用您的服务帐户登录。此时将出现一个带有 Google 登录屏幕的弹出窗口。
- 输入您的服务帐户用户名和密码,然后选择“登录”。
- 选择“接受”。
微应用集成页面将打开,其中包含您添加的集成及其微应用。在这里,您可以添加另一个集成,继续设置现成的微应用,或者为此集成创建一个新的微应用。
现在,您可以设置和运行第一个数据同步。由于可以将大量数据从集成应用程序提取到 微应用平台,因此我们建议您使用表页面筛选第一次数据同步的实体,以加快同步速度。有关详细信息,请参阅验证所需实体。有关同步规则、不符合其计划的同步以及否决规则的完整信息,请参阅 同步数据。
注意:
建议将“完全同步”时间间隔设置为每周,以便从微应用平台以及随后从用户的日历中删除已取消或删除的事件。
有关 API 端点和表实体的更多详细信息,请参阅谷歌日历连接器规格。
使用谷歌日历微应用
现有的应用程序集成带有现成的微应用。从这些微应用开始,并根据您的需求定制它们。
注意:
由于当前可用的时区是在创建事件、我的办公时间和我的日历(当月)微应用中硬编码的,因此添加任何其他时区都需要管理员手动添加它们。
创建事件: 根据用户首选项安排活动。
通知或页面 | 用例工作流 |
---|---|
“创建事件”页 | 提供一个表单来安排事件,其中包含以下详细信息:事件标题、Google Meet Video 链接、开始和结束时间、时区、重复(一次、每日、每周、每月)、描述、地点和事件参与者。 |
我的日历(本月): 查看即将到来的本月的一次性和定期日历事件的列表以及编辑活动的功能。
通知或页面 | 用例工作流 |
---|---|
事件通知详情页面 | 详情页面显示事件的所有相应详细信息,立即加入按钮用于开始会议。用户还可以通过选择打开我的日历来重定向至 Google 日历。 |
“加载事件”页 | 使用刷新列表按钮为用户提供一次性和重复性日历事件列表以刷新列表。用户可以通过单击列表中的可用事件来查看事件详细信息。 |
“列出事件”页 | 提供用户可用的一次性和定期日历事件的最新列表。用户可以通过单击列表中的可用事件来查看事件详细信息。 |
事件详情页 | 详情页面显示事件的所有相应详细信息。用户可以通过选择加入事件来开始/加入会议,用户可以通过选择打开我的日历重定向至 Google 日历。 |
全天事件详情页面 | 详情页面显示全天事件的所有适当详情。用户可以通过选择加入事件来启动(加入)会议,用户可以通过选择打开我的日历重定向至 Google 日历。 |
编辑 OneTime 事件页面 | 用于编辑一次性事件的表单页面。 |
编辑定期事件页面 | 用于编辑现有定期事件的表单页面。 |
我的办公时间: 创建、编辑和查看办公时间。
注意:
刷新按钮用于将缓存与最新数据同步,而不是完全同步或增量同步。
通知或页面 | 用例工作流 |
---|---|
“创建办公时间” 页 | 提供创建办公时间的表单,其中包含以下详细信息:开始和结束时间、时区、重复(一次、每日、每周、每月)。 |
我的办公时间列表页 | 通过刷新列表/加载我的时间按钮提供可用的用户办公时间列表,以更新/刷新列表。用户可以通过选择添加办公时间来添加办公时间。 |
编辑我的办公时间页面 | 用于编辑用户办公时间的表单页面。 |