以编程方式订阅外部

时间:2016-03-15 00:54:52

标签: google-api google-calendar-api google-apps icalendar

通过Google日历用户界面,用户可以将外部iCAL日历添加到其CalendarList中。

通过CalendarList检索该日历时,不包括日历URL。此外,似乎没有可能将外部iCal日历添加到用户的CalendarList中。

是这样的吗?有没有办法以编程方式将Google日历用户订阅到外部iCal Feed?

日历用户界面在内部使用以下网址添加外部日历:

  

https://calendar.google.com/calendar/addcalendarfromurl

此URL通过POST或GET获取以下参数:

  • curl :日历网址(网址已编码)。
  • cimp :UI将此设置为true,不确定它的作用。
  • cpub :true | false - 将日历设为公开
  • secid :来自客户端的安全ID(可能是会话ID)。不指定这会带来403错误。

如果用户未登录日历,则会将其重定向到Google登录屏幕。如果我有办法生成一个secid(也许是OAUTH?),我可以添加一个链接,允许用户自动添加日历。

1 个答案:

答案 0 :(得分:0)

不幸的是,Google Calendar API似乎没有任何具有导入.ics功能的更新。 A ticket自2007年以来一直被记录,截至目前仍然没有任何解决方案。

我能找到的唯一选择是在用户的Google日历网络用户界面中手动导入.ics文件。 Import events to Google Calendar支持页面讨论了此问题。

  

第2步:将事件导入Google日历

     

导出活动后,您可以将其导入Google日历。

     
      
  1. 在计算机上打开Goog​​le日历。注意:您只能从计算机导入,而不能从手机或平板电脑导入。
  2.   
  3. 点击右上角的设置设置齿轮按钮>设置。
  4.   
  5. 打开“日历”标签。
  6.   
  7. 点击“我的日历”和“其他日历”部分之间的导入日历。
  8.   
  9. 单击“选择文件”,然后选择导出的文件。该文件应以“ics”或“csv”
  10. 结尾   
  11. 选择要将导入的事件添加到的日历。默认情况下,事件将导入主日历。
  12.   
  13. 点击导入
  14.         

    如果您使用的是ZIP文件,请在计算机上找到并打开它。您将看到每个日历的ICS文件。从ZIP文件中取出单个文件,然后单独导入每个ICS文件。

         

    注意:如果您从CSV文件导入重复事件,则重复事件可能不会以这种方式显示,但它们将作为一系列一次性事件出现在您的日历上。

相关问题