Google 日历同步

将 Google 日历与 Odoo 进行同步,即可从两个平台查看和管理会议(更新会双向进行)。此集成有助于安排日程,确保不会错过任何会议。

在 Google 中设置

选择(或创建)一个项目

创建一个新的 Google API 项目并启用 Google 日历 API。首先,前往 Google API 控制台 并使用 Google 账户登录。

注解

如果这是您第一次访问此页面,Google 将提示用户输入国家并同意服务条款。从下拉列表中选择一个国家,并同意 ToS

接下来,点击 选择一个项目,并选择(或创建)一个用于配置 OAuth 的 API 项目,以存储凭据。点击 新建项目

创建一个新的 API 项目以存储凭据。

小技巧

为 API 项目取一个清晰的名称,例如“Odoo 同步”,以便于识别。

启用 Google 日历 API

现在,点击左侧菜单中的 启用的 API 和服务。如果 搜索栏 没有出现,请再次选择 启用的 API 和服务

在 API 项目上启用 API 和服务。

之后,使用搜索栏搜索 Google Calendar API,并在搜索结果中选择 Google Calendar API。点击 启用

启用 Google 日历 API。

创建凭据

客户端ID客户端密钥 都是将 Google 日历连接到 Odoo 所需的。这是 Google 控制台中的最后一步。首先点击左侧菜单中的 凭据。然后点击 创建凭据,并选择 OAuth 客户端 ID,Google 将打开一个指南以创建凭据。

创建 OAuth 客户端 ID 下,将 应用类型 字段选择为 网站应用,并将 名称 字段输入 My Odoo Database

  • 授权的 JavaScript 源 部分,点击 + 添加 URI,并输入公司的 Odoo 完整 URL(统一资源定位符) 地址。

  • 授权重定向 URI 部分,点击 + 添加 URI,然后输入公司的 Odoo URL(统一资源定位符) 地址,后面加上 /google_account/authentication。最后,点击 创建

添加授权的 JavaScript 源和授权的重定向 URI。

一个 客户端ID客户端密钥 将会显示出来,请将它们复制到记事本中。

Odoo 中的设置

一旦找到 客户端ID客户端密钥,打开 Odoo 数据库并进入 设置 ‣ 常规设置 ‣ 集成 ‣ Google 日历。勾选 Google 日历 旁边的复选框。

通用设置中的 Google 日历复选框。

接下来,将从 Google 日历 API 凭据页面复制的 客户端 ID客户端密钥 粘贴到下方 Google 日历 复选框对应的字段中。然后,点击 保存

在 Odoo 中同步日历

最后,在 Odoo 中打开 日历 应用,然后点击 Google 同步按钮,将 Google 日历与 Odoo 进行同步。

点击 Odoo 日历中的 Google 同步按钮,将 Google 日历与 Odoo 进行同步。

注解

首次将 Google 日历与 Odoo 进行同步时,页面将重定向到 Google 账户。从那里,选择应具有访问权限的 电子邮件账户,然后选择 :guilabel:`继续`(如果应用未经过验证),最后再次选择 :guilabel:`继续`(以授权数据传输权限)。

允许 Odoo 访问 Google 日历。

现在,Odoo 日历已成功与 Google 日历同步!

警告

Odoo 建议在尝试将所需的 Google 日历与用户的生产数据库进行同步之前,先在测试数据库和测试电子邮件地址(该地址不用于其他任何用途)上测试 Google 日历的同步功能。

一旦用户将他们的 Google 日历与 Odoo 日历同步:

  • 在 Odoo 中创建活动会促使 Google 向所有活动参与者发送邀请。

  • 在 Odoo 中删除一个事件会导致 Google 向所有活动参与者发送取消通知。

  • 将联系人添加到活动会导致 Google 向所有活动参与者发送邀请。

  • 将联系人从活动中移除会导致 Google 向所有活动参与者发送取消通知。

可以通过在提示发送邀请邮件时选择 不发送,在 Google Calendar 中创建事件而不发送通知。

疑难解答同步

有时 Google Calendar 账户可能无法与 Odoo 正确同步。同步问题可以在数据库日志中看到。

在这些情况下,需要对账户进行故障排查。可以通过使用 重置账户 按钮来执行重置操作,该按钮可通过导航至 设置应用 ‣ 管理用户 进行访问。然后,选择要修改日历的用户,并点击 日历 选项卡。

用户日历选项卡上的重置按钮被突出显示。

接下来,单击正确日历下的 重置账户

重置选项

以下可用于排查 Odoo 与 Google 日历同步问题的重置选项可用:

Odoo 中的 Google 日历重置选项

用户现有活动:

  • 保持原样: 不对事件进行任何更改。

  • 从当前的 Google 日历账户中删除: 从 Google 日历 中删除事件。

  • 从 Odoo 删除: 从 Odoo 日历中删除事件。

  • 从两者中删除: 从 Google Calendar 和 Odoo 日历中删除事件。

下次同步

  • 仅同步新事件: 仅在 Google 日历 和/或 Odoo 日历上同步新事件。

  • 同步所有现有事件: 在 Google 日历 和/或 Odoo 日历上同步所有事件。

单击 确认 以修改用户的事件和日历同步。

Google OAuth 常见问题

有时可能会出现配置错误,需要进行故障排除以解决这些问题。以下是配置 Google Calendar 以在 Odoo 中使用时可能出现的最常见的错误。

生产与测试发布状态

选择 生产 作为 发布状态`(而不是 :guilabel:`测试)时,将显示以下警告信息:

OAuth 仅限于在 OAuth 同意屏幕验证之前进行 100 次敏感作用域登录。此过程可能需要一个持续数天的验证流程。

要更正此警告,请导航到 Google API 平台。如果 发布状态生产中,请单击 返回测试 以更正此问题。

没有添加测试用户

如果未向 OAuth 同意屏幕 添加测试用户,则会显示 错误 403:access_denied

403 访问被拒绝错误。

要更正此错误,请返回到 OAuth 同意屏幕,在 APIs & Services 下,将测试用户添加到应用中。添加要在 Odoo 中配置的电子邮件地址。

应用类型

在创建凭据(OAuth 客户端ID客户端密钥)时,如果为 应用类型 选择了 桌面应用,将出现 授权错误 (错误 400: redirect_uri_mismatch)。

错误 400 回调 URI 不匹配。

要更正此错误,请删除现有的凭据,然后通过为 应用类型 选择 网络应用程序 来创建新的凭据。

然后,在 授权重定向 URI 下,点击 添加 URI,并在字段中输入:https://yourdbname.odoo.com/google_account/authentication,确保将 URL 中的 yourdbname 替换为 实际 的 Odoo 数据库名称。

小技巧

请确保域名(在 URI 中使用:https://yourdbname.odoo.com/google_account/authentication)与系统参数 web.base.url 中配置的域名完全一致。

通过启用 开发者模式 来访问 web.base.url,然后导航至 设置应用 ‣ 技术菜单栏 ‣ 参数部分 ‣ 系统参数