从ruby访问Google日历的最佳方式是什么?

时间:2010-05-21 03:31:25

标签: ruby-on-rails ruby google-calendar-api

我正在为一家内部使用Google日历的公司编写应用,并且需要在应用中使用他们日历中已有的活动。因此,我需要从应用程序中获取对其日历的只读权限(即我需要事件标题,开始和结束日期以及所有未来事件的与会者电子邮件)。

在ruby中执行此操作的最简单方法是什么(我需要它在Heroku上相对无缝地工作)?

我尝试使用GCal4Ruby gem,这似乎是我发现的最不合适的{{3}}但我甚至无法通过库进行身份验证(HTTPRequestFailed - Captcha required error)更不用说了我需要的信息。

澄清:我所说的是日历的Google Apps版本,不是 calendar.google.com上的版本。

2 个答案:

答案 0 :(得分:8)

好的,我通过GCal4Ruby工作得到了api。我不确定第一次出了什么问题。感谢Mike和James的建议。这是我用于任何感兴趣的人的示例代码:

require "rubygems"
require "gcal4ruby"

serv = GCal4Ruby::Service.new
serv.authenticate "username@example.com", "password"

events = GCal4Ruby::Event.find serv, {'start-min' => Time.now.utc.xmlschema, 
    :calendar => 'example-cal%40example.com'}

events.each do |event|
    puts event.title
    puts event.attendees.join ", "
    puts event.start_time
    puts event.end_time
    puts '-----------------------'
end

答案 1 :(得分:1)

您应该可以使用Google日历private xml address功能来提取所需的数据。

然后,您可以使用hpricot或nokogiri解析它以提取您需要的任何字段。