iCal (ics) parser in Ruby

does exists an iCalendar (ics extension) exists un ruby ?
i do have to translate dose files into csv…

any advice appreciated.

On Sat, Sep 29, 2007 at 10:15:05PM +0900, Une B?vue wrote:

does exists an iCalendar (ics extension) exists un ruby ?
i do have to translate dose files into csv…

any advice appreciated.

Try out vpim. http://vpim.rubyforge.org/

enjoy,

-jeremy

Jeremy H. [email protected] wrote:

Try out vpim. http://vpim.rubyforge.org/

fine ! thanks a lot, it’s exactly what i needed !
i’ll use also the vCard par because i’ve another project “AB2Web” (for
AddressBook to web) producing html pages from AB contents…

Jeremy H. [email protected] wrote:

Try out vpim. http://vpim.rubyforge.org/

i get it :

~%> sudo gem install vpim
Password:
Need to update 49 gems from http://gems.rubyforge.org

complete
Successfully installed vpim-0.360
Installing ri documentation for vpim-0.360…
Installing RDoc documentation for vpim-0.360…
Could not find main page README
Could not find main page README
Could not find main page README
Could not find main page README

Une Bévue [email protected] wrote:

i’ll use also the vCard par because i’ve another project “AB2Web” (for
AddressBook to web) producing html pages from AB contents…

i’d like to say instead of vCards i’m using an xml version of those
following the proposal : draft-dawson-vcard-xml-dtd-01.dtd.

On Sun, Sep 30, 2007 at 08:55:19AM +0900, Une B?vue wrote:

complete
Successfully installed vpim-0.360
Installing ri documentation for vpim-0.360…
Installing RDoc documentation for vpim-0.360…
Could not find main page README
Could not find main page README
Could not find main page README
Could not find main page README

This all just means that the rdoc generation of the vpim gem has some
incorrect generation options. The the library itself is still
installed.

enjoy,

-jeremy

On Mon, Oct 01, 2007 at 01:45:12AM +0900, Une B?vue wrote:

Jeremy H. [email protected] wrote:

This all just means that the rdoc generation of the vpim gem has some
incorrect generation options. The the library itself is still
installed.

OK, i’ve tried one of your first example :

These aren’t my examles. I had nothing to do with the development of
vpim. I’ve used it once or twice to test some things out, but that’s
about it. I just knew it existed.

puts cal.encode
from ./vcf-to-ics.rb:11

the vCard i’ve exported being with a birthdat field, name in french :
“date de naissance”

do you think this could be the prob (ie french localisation of
AddressBook) ???

Sounds plausible to me. How bout posting it to the vpim mailing list
and see if the authors can help out.

http://rubyforge.org/mail/?group_id=218

enjoy,

-jeremy

Jeremy H. [email protected] wrote:

This all just means that the rdoc generation of the vpim gem has some
incorrect generation options. The the library itself is still
installed.

OK, i’ve tried one of your first example :


#!/usr/bin/env ruby

require ‘vpim/vcard’
require ‘vpim/icalendar’

$in = ARGV.first ? File.open(ARGV.shift) : $stdin
$out = ARGV.first ? File.open(ARGV.shift, ‘w’) : $stdout

cal = Vpim::Icalendar.create

Vpim::Vcard.decode($in).each do |card|
if card.birthday
cal.push Vpim::Icalendar::Vevent.create_yearly(
card.birthday,
“Birthday for #{card[‘fn’].strip}”
)
$stderr.puts “#{card[‘fn’]} → bday #{cal.events.last.dtstart}”
end
end

puts cal.encode

calling it by :
./vcf-to-ics.rb Anais.vcf Anais.ics

having an error :
~/work/Ruby/vpim-0.9/essais%> ./vcf-to-ics.rb Anais.vcf Anais.ics
./vcf-to-ics.rb:12: undefined method birthday' for #<Vpim::Vcard:0x10d81c0> (NoMethodError) from ./vcf-to-ics.rb:11:in each’
from ./vcf-to-ics.rb:11

the vCard i’ve exported being with a birthdat field, name in french :
“date de naissance”

do you think this could be the prob (ie french localisation of
AddressBook) ???

Jeremy H. [email protected] wrote:

Sounds plausible to me. How bout posting it to the vpim mailing list
and see if the authors can help out.

http://rubyforge.org/mail/?group_id=218

U’re right, done !