有没有办法修改从外部应用程序在Google日历中创建的事件?

时间:2015-07-18 11:07:47

标签: oauth calendar google-api google-calendar-api google-oauth

我们正在构建一个活动管理应用,我们正在调查是否可以让我们的用户直接通过Google日历创建活动。目前我们的工作流程是:

  1. 用户在Google日历中创建活动
  2. 用户添加我们的电子邮件地址作为活动的嘉宾
  3. 我们会收到来自Google日历的活动通知邮件,并在我们的系统中注册该活动。
  4. 现在,我们希望允许用户在我们的应用信息中心上编辑活动详情(特别是说明和位置),问题就出现了:我们如何在用户日历中更新活动?

    我尝试使用iMiP邮件但失败了,我尝试增加序列号,并将ORGANIZER字段更改为我们自己的邮件地址,即使我在Google日历中将该事件标记为来宾可修改,我们的邮件无法更新活动。 (更新:附加latest version of my test code,我在邮件中遗漏了什么吗?)我们还尝试将更新的事件作为常规ICS文件附件(直接通过GMail)发送,也失败了。

    另一方面,如果我们在事件ICS文件中更改UID,将其作为常规附件发送,并将其导入Google日历,则可以通过后续ICS文件更新此(新)事件相同UID。但是,我们不希望以这种方式实施,因为它会在用户的日历中创建新事件。

    所以我的问题是,除了使用Google的Calendar API(如果没有其他好的方法可以实现这一点,这是我们的最后手段),有没有办法从我们的用户更新用户的事件应用?

1 个答案:

答案 0 :(得分:6)

您的应用程序能够编辑事件的唯一方法是Google Calendar API

您将不得不使用Oauth2验证用户是否可以访问相关日历。使用events.list搜索事件可能会添加q tearm以搜索超过日期的事件。

一旦您遇到相关事件,您应该查看events.patch补丁,让您更新事件中的所选字段,而不是更新event.update,这将要求您更新所有字段事件。