2010-05-21 33 views
7

我正在爲內部使用Google日曆的公司開發應用程序,並且需要使用應用程序中日曆中已有的事件。所以我需要從應用程序中讀取他們的日曆(即我需要事件標題,開始和結束日期以及所有未來事件的參與者電子郵件)。從紅寶石訪問Google日曆的最佳方式是什麼?

什麼是最簡單的方法來做到這一點在紅寶石(我需要它在Heroku上相對無縫工作)?

我試着用這似乎是最不合時宜,我發現的那些的GCal4Ruby gem但我無法甚至通過庫(HTTPRequestFailed - Captcha required error)認證更不用說得到我需要的信息。

澄清:什麼我說的是谷歌企業應用套件版本的日曆,一個在calendar.google.com。

+1

Google Apps版本是否支持私人iCal地址?如果是這樣,ri_cal框架在解析.ics文件方面做得很好。 – 2010-05-21 12:14:18

+0

可悲的私人地址似乎不被支持。 – 2010-05-21 14:51:22

回答

8

好的我通過GCal4Ruby得到了API。我不確定第一次出了什麼問題。感謝Mike和James的建議。這是我用於任何感興趣的人的示例代碼:

require "rubygems" 
require "gcal4ruby" 

serv = GCal4Ruby::Service.new 
serv.authenticate "[email protected]", "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 
+0

Thx這個樣本我運行了3分鐘。 – Denis 2011-08-27 09:07:49

+0

感謝這對我也 – vinothini 2011-12-02 07:26:09

+1

這似乎很好是真實的,事實上,直接登錄API在2012年停止 – b1nary 2015-07-14 16:22:50

1

您應該可以使用Google日曆private xml address功能提取所需的數據。

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

+0

很遺憾,Google Apps版本似乎沒有支持。雖然這將是理想的。 – 2010-05-21 08:42:47

+0

您的Google Apps安裝的網域管理員應該可以啓用此功能 - > [說明](http://groups.google.com/group/google-calendar-help-howto/msg/bd4b7416102d5950) – 2010-05-21 13:42:47

+0

這是否有其他安全影響? – 2010-05-21 14:55:00