From sroberts at uniserve.com Sat Apr 29 11:56:42 2006 From: sroberts at uniserve.com (Sam Roberts) Date: Sat, 29 Apr 2006 08:56:42 -0700 Subject: [Vpim-talk] vpim In-Reply-To: <3DCBEBE1-36AA-4BBE-9954-127D20F90F79@joyent.com> References: <1D7DD567-EA53-4D7E-B724-EE320BCDBE27@joyent.com> <20060424055612.GC450@ensemble.local> <2D580767-E3E2-4EE7-B44C-4EBBD73EC528@joyent.com> <20060426064512.GB441@ensemble.local> <7F9B1D74-30B7-4992-9046-4F344FAF239F@joyent.com> <20060427030256.GA475@ensemble.local> <3DCBEBE1-36AA-4BBE-9954-127D20F90F79@joyent.com> Message-ID: <20060429155642.GB552@ensemble.local> Quoting chris at joyent.com, on Fri, Apr 28, 2006 at 07:55:25PM -0700: > Hey Sam, > > Random question...have you been able to successfully use your APIs > and create a vCard with photos that can import into AddressBook with > the photos intact? I am having a heck of a time getting the photos > to come into AddressBook. Didn't know if you had success here. No, I'd decoded, but not encoded. Tell me what you find, I can add support to make it easy. Probably won't have time myself today, have to address the issues you and another reported over the last week. Only have a few hours. Might try if I have time. Btw, subscribing to vpim-talk might be convenient, its very low traffic, and allows anything you have trouble with to be noticed by others. You might get lucky, maybe someone else has done this sucessfully. Cheers, Sam From cosmin at speakeasy.net Sat May 6 17:35:24 2006 From: cosmin at speakeasy.net (Cosmin Andriescu) Date: Sat, 6 May 2006 14:35:24 -0700 Subject: [Vpim-talk] [vpim] Support for RDATE In-Reply-To: <20060506201248.GC499@ensemble.local> Message-ID: Hi Sam, >> Thats great. Did you implement support for timezones? Ruby has only the >> support >> that basic posix/C apis have, which is not good. Yes, I did this in Windows though. >> I think RDATE support means a few things, some easy, some taking more >> work. I need it for parsing some VCALENDARS that have VEVENTS with one RDATE property with a bunch of DATE values or VEVENTS with RRULE. I don't have VEVENTS with both properties which I assume it's a bit more work. >> An RDATE field itself looks like it is allowed to occur just once. >> Anyhow, its value is a list of date-time, date, or period values. >> decode_date_time() and others in rfc2425.rb can decode these values. Its >> a fixed length list, nowhere near as complex as RRULE. I can add support >> for that with a fix I'm currently trying to get out to properly return >> a Date for fields whose value is DATE. >> Maybe thats all you need? Currently, I'm using the occurs_in? method trying to extract recurrent occurances from a specific date range. I only get occurrences for events with RRULE. So adding the RDATE support will fix my issue. >> The bigger problem is to take multiple RRULE enumerators, the RDATE >> array of values multiple EXRULE enumerators, an EXDATE array of values, >> and integrate them into a single enumerator returning all the recurrence >> times... thats a lot more work. Yes, I agree. No need for now. I didn't get to implement those as well in the past as I didn't have to deal with lots of interop issues (I only did RRULE). >> I don't know if I'll have the time for the full aggregation support, >> though I'll bump it to next on the list after bug fixes. >> The aggregation algorithm below could be implemented outside of vPim >> initially. If you implemented the algorithm, I'd be even happier to >> take it and merge it into icalendar components! If you have implemented >> the algorithm before, you might have a head start in doing it in ruby. Ok. I could give it a try once I'm finishing my stuff. >> One thing that could help me is if you could send example calendar >> components or calendars with the kinds of recurring events you need >> support for, that would help a bunch. Here are some of the events I need to parse: BEGIN:VEVENT DTSTART;VALUE=DATE:20000423 DTEND;VALUE=DATE:20000424 RDATE;VALUE=DATE:20000423,20010415,20020331 SEQUENCE:0 UID:SOME-GUID DTSTAMP:20060506T120000Z SUMMARY:Some event END:VEVENT And another one: BEGIN:VEVENT DTSTART;VALUE=DATE:20021130 DTEND;VALUE=DATE:20021201 RDATE;VALUE=DATE:20021130 SEQUENCE:0 UID:ANOTHER-GUID DTSTAMP:20060420T120000Z SUMMARY:Another event END:VEVENT Thank you in advance, Cosmin From sroberts at uniserve.com Sat May 6 16:12:48 2006 From: sroberts at uniserve.com (Sam Roberts) Date: Sat, 6 May 2006 13:12:48 -0700 Subject: [Vpim-talk] [vpim] Support for RDATE In-Reply-To: References: Message-ID: <20060506201248.GC499@ensemble.local> Quoting cosmin at speakeasy.net, on Sat, May 06, 2006 at 11:27:07AM -0700: > I noticed a comment in the code and was wondering if I can bump the > priority on the ToDo list for this. > > I need support for RDATE when parsing recurrent events. > > Is there any chance on getting this in soon? Also, if you don't have > the time maybe you can point me what/where I need to change to > implement it. I'm just a newbie with Ruby, but I know a bit more about > iCal/iTIP as I implemented a few years ago a C++ parser for this. Thats great. Did you implement support for timezones? Ruby has only the support that basic posix/C apis have, which is not good. I think RDATE support means a few things, some easy, some taking more work. An RDATE field itself looks like it is allowed to occur just once. Anyhow, its value is a list of date-time, date, or period values. decode_date_time() and others in rfc2425.rb can decode these values. Its a fixed length list, nowhere near as complex as RRULE. I can add support for that with a fix I'm currently trying to get out to properly return a Date for fields whose value is DATE. Maybe thats all you need? The bigger problem is to take multiple RRULE enumerators, the RDATE array of values multiple EXRULE enumerators, an EXDATE array of values, and integrate them into a single enumerator returning all the recurrence times... thats a lot more work. I don't know if I'll have the time for the full aggregation support, though I'll bump it to next on the list after bug fixes. The aggregation algorithm below could be implemented outside of vPim initially. If you implemented the algorithm, I'd be even happier to take it and merge it into icalendar components! If you have implemented the algorithm before, you might have a head start in doing it in ruby. One thing that could help me is if you could send example calendar components or calendars with the kinds of recurring events you need support for, that would help a bunch. Cheers, Sam RDATE .... Description: This property can appear along with the "RRULE" property to define an aggregate set of repeating occurrences. When they both appear in an iCalendar object, the recurring events are defined by the union of occurrences defined by both the "RDATE" and "RRULE". The recurrence dates, if specified, are used in computing the recurrence set. The recurrence set is the complete set of recurrence instances for a calendar component. The recurrence set is generated by considering the initial "DTSTART" property along with the "RRULE", "RDATE", "EXDATE" and "EXRULE" properties contained within the iCalendar object. The "DTSTART" property defines the first instance in the recurrence set. Multiple instances of the "RRULE" and "EXRULE" properties can also be specified to define more sophisticated recurrence sets. The final recurrence set is generated by gathering all of the start date/times generated by any of the specified "RRULE" and "RDATE" properties, and excluding any start date/times which fall within the union of start date/times generated by any specified "EXRULE" and "EXDATE" properties. This implies that start date/times within exclusion related properties (i.e., "EXDATE" and "EXRULE") take precedence over those specified by inclusion properties (i.e., "RDATE" and "RRULE"). Where duplicate instances are generated by the "RRULE" and "RDATE" properties, only one recurrence is considered. Duplicate instances are ignored. From sroberts at uniserve.com Sat May 6 16:12:48 2006 From: sroberts at uniserve.com (Sam Roberts) Date: Sat, 6 May 2006 13:12:48 -0700 Subject: [Vpim-talk] [vpim] Support for RDATE In-Reply-To: References: Message-ID: <20060506201248.GC499@ensemble.local> Quoting cosmin at speakeasy.net, on Sat, May 06, 2006 at 11:27:07AM -0700: > I noticed a comment in the code and was wondering if I can bump the > priority on the ToDo list for this. > > I need support for RDATE when parsing recurrent events. > > Is there any chance on getting this in soon? Also, if you don't have > the time maybe you can point me what/where I need to change to > implement it. I'm just a newbie with Ruby, but I know a bit more about > iCal/iTIP as I implemented a few years ago a C++ parser for this. Thats great. Did you implement support for timezones? Ruby has only the support that basic posix/C apis have, which is not good. I think RDATE support means a few things, some easy, some taking more work. An RDATE field itself looks like it is allowed to occur just once. Anyhow, its value is a list of date-time, date, or period values. decode_date_time() and others in rfc2425.rb can decode these values. Its a fixed length list, nowhere near as complex as RRULE. I can add support for that with a fix I'm currently trying to get out to properly return a Date for fields whose value is DATE. Maybe thats all you need? The bigger problem is to take multiple RRULE enumerators, the RDATE array of values multiple EXRULE enumerators, an EXDATE array of values, and integrate them into a single enumerator returning all the recurrence times... thats a lot more work. I don't know if I'll have the time for the full aggregation support, though I'll bump it to next on the list after bug fixes. The aggregation algorithm below could be implemented outside of vPim initially. If you implemented the algorithm, I'd be even happier to take it and merge it into icalendar components! If you have implemented the algorithm before, you might have a head start in doing it in ruby. One thing that could help me is if you could send example calendar components or calendars with the kinds of recurring events you need support for, that would help a bunch. Cheers, Sam RDATE .... Description: This property can appear along with the "RRULE" property to define an aggregate set of repeating occurrences. When they both appear in an iCalendar object, the recurring events are defined by the union of occurrences defined by both the "RDATE" and "RRULE". The recurrence dates, if specified, are used in computing the recurrence set. The recurrence set is the complete set of recurrence instances for a calendar component. The recurrence set is generated by considering the initial "DTSTART" property along with the "RRULE", "RDATE", "EXDATE" and "EXRULE" properties contained within the iCalendar object. The "DTSTART" property defines the first instance in the recurrence set. Multiple instances of the "RRULE" and "EXRULE" properties can also be specified to define more sophisticated recurrence sets. The final recurrence set is generated by gathering all of the start date/times generated by any of the specified "RRULE" and "RDATE" properties, and excluding any start date/times which fall within the union of start date/times generated by any specified "EXRULE" and "EXDATE" properties. This implies that start date/times within exclusion related properties (i.e., "EXDATE" and "EXRULE") take precedence over those specified by inclusion properties (i.e., "RDATE" and "RRULE"). Where duplicate instances are generated by the "RRULE" and "RDATE" properties, only one recurrence is considered. Duplicate instances are ignored. From lars at pinds.com Mon May 22 05:43:05 2006 From: lars at pinds.com (Lars Pind) Date: Mon, 22 May 2006 11:43:05 +0200 Subject: [Vpim-talk] BYDAY Message-ID: <2325D47E-E7B0-49AC-BFE5-7A74E1E9C9A3@pinds.com> Hi Sam Thanks for a great piece of software. I'm working on a project that needs recurrence of the sort: FREQ=WEEKLY;COUNT=10;WKST=SU;BYDAY=TU,TH but looking at test_rrule.rb:275 it seems the BYDAY feature isn't implemented. I'm guessing this: "TODO - BYWEEKLY, BYWEEKNO, WKST: rules that recur by the week, or are limited to particular weeks, not hard, but not trivial, I?ll do it for the next release" from the documentation refers to BYDAY as well? Any update on the status of this? I could go about implementing it, if you don't plan or want to. Any hints would be greatly appreciated. Thanks, /Lars Pind -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/vpim-talk/attachments/20060522/3fa4862a/attachment.htm From sroberts at uniserve.com Mon May 22 17:39:38 2006 From: sroberts at uniserve.com (Sam Roberts) Date: Mon, 22 May 2006 14:39:38 -0700 Subject: [Vpim-talk] BYDAY In-Reply-To: <2325D47E-E7B0-49AC-BFE5-7A74E1E9C9A3@pinds.com> References: <2325D47E-E7B0-49AC-BFE5-7A74E1E9C9A3@pinds.com> Message-ID: <20060522213938.GD461@ensemble.local> Quoting lars at pinds.com, on Mon, May 22, 2006 at 11:43:05AM +0200: > I'm working on a project that needs recurrence of the sort: > > FREQ=WEEKLY;COUNT=10;WKST=SU;BYDAY=TU,TH > > but looking at test_rrule.rb:275 it seems the BYDAY feature isn't > implemented. BYDAY is supposed to beimplemented, see test_rrule.rb:190 for an example, but trying your example definitely doesn't work for me. It has nothing to do with WKST, though, this is broken, too: % ruby -Ilib rrule.rb --start '2006-05-04' 'FREQ=WEEKLY;COUNT=5;BYDAY=WE,TH' Start: Thu May 04 00:00:00 PDT 2006 Rrule: FREQ=WEEKLY;COUNT=5;BYDAY=WE,TH count= 0 Thu May 04 00:00:00 PDT 2006 count= 1 Thu May 11 00:00:00 PDT 2006 count= 2 Thu May 18 00:00:00 PDT 2006 count= 3 Thu May 25 00:00:00 PDT 2006 count= 4 Thu Jun 01 00:00:00 PDT 2006 Should be weds and thursdays, but its only thursdays. Thats a bug in the BYDAY, it looks like. > I'm guessing this: > > "TODO - BYWEEKLY, BYWEEKNO, WKST: rules that recur by the week, or > are limited to particular weeks, not hard, but not trivial, I?ll do > it for the next release" > > from the documentation refers to BYDAY as well? No, I thought BYDAY worked fine, turns out its broken. > I could go about implementing it, if you don't plan or want to. Any > hints would be greatly appreciated. WKST is important only in very specific scenarios, but not in your example, I don't think, so maybe you don't need it. Perhaps you can get away with just fixing the BYDAY implementation? I'm sorry, I just don't have the time to do this. It might be easy, you'll have to look at vpim/rrule.rb. Thanks Sam From lars at pinds.com Mon May 22 17:47:51 2006 From: lars at pinds.com (Lars Pind) Date: Mon, 22 May 2006 23:47:51 +0200 Subject: [Vpim-talk] BYDAY In-Reply-To: <20060522213938.GD461@ensemble.local> References: <2325D47E-E7B0-49AC-BFE5-7A74E1E9C9A3@pinds.com> <20060522213938.GD461@ensemble.local> Message-ID: <7F839B06-CB69-404B-9D39-6CF67CE9E2DF@pinds.com> Actually, I've looked a bit closer at the code, and it turns out that rrule.rb:232, which deals with BYDAY when FREQ=WEEKLY is commented out! when 'WEEKLY' # dates = byday_in_weekly(t.year, wkstart, t.month, t.day, byday) Moreover, the byday_in_weekly method doesn't exist. Should be fairly easy to do, I suspect. I'll look into it when it gets critical for my needs. Will you accept patches and have time to put out a new release? Thanks, /Lars On May 22, 2006, at 11:39 PM, Sam Roberts wrote: > Quoting lars at pinds.com, on Mon, May 22, 2006 at 11:43:05AM +0200: >> I'm working on a project that needs recurrence of the sort: >> >> FREQ=WEEKLY;COUNT=10;WKST=SU;BYDAY=TU,TH >> >> but looking at test_rrule.rb:275 it seems the BYDAY feature isn't >> implemented. > > BYDAY is supposed to beimplemented, see test_rrule.rb:190 for an > example, but trying your example definitely doesn't work for me. > It has > nothing to do with WKST, though, this is broken, too: > > % ruby -Ilib rrule.rb --start '2006-05-04' > 'FREQ=WEEKLY;COUNT=5;BYDAY=WE,TH' > Start: Thu May 04 00:00:00 PDT 2006 > Rrule: FREQ=WEEKLY;COUNT=5;BYDAY=WE,TH > count= 0 Thu May 04 00:00:00 PDT 2006 > count= 1 Thu May 11 00:00:00 PDT 2006 > count= 2 Thu May 18 00:00:00 PDT 2006 > count= 3 Thu May 25 00:00:00 PDT 2006 > count= 4 Thu Jun 01 00:00:00 PDT 2006 > > Should be weds and thursdays, but its only thursdays. > > Thats a bug in the BYDAY, it looks like. > >> I'm guessing this: >> >> "TODO - BYWEEKLY, BYWEEKNO, WKST: rules that recur by the week, or >> are limited to particular weeks, not hard, but not trivial, I?ll do >> it for the next release" >> >> from the documentation refers to BYDAY as well? > > No, I thought BYDAY worked fine, turns out its broken. > >> I could go about implementing it, if you don't plan or want to. Any >> hints would be greatly appreciated. > > WKST is important only in very specific scenarios, but not in your > example, I don't think, so maybe you don't need it. Perhaps you can > get > away with just fixing the BYDAY implementation? > > I'm sorry, I just don't have the time to do this. It might be easy, > you'll have to look at vpim/rrule.rb. > > Thanks > Sam > > _______________________________________________ > Vpim-talk mailing list > Vpim-talk at rubyforge.org > http://rubyforge.org/mailman/listinfo/vpim-talk From sroberts at uniserve.com Mon May 22 17:55:43 2006 From: sroberts at uniserve.com (Sam Roberts) Date: Mon, 22 May 2006 14:55:43 -0700 Subject: [Vpim-talk] BYDAY In-Reply-To: <7F839B06-CB69-404B-9D39-6CF67CE9E2DF@pinds.com> References: <2325D47E-E7B0-49AC-BFE5-7A74E1E9C9A3@pinds.com> <20060522213938.GD461@ensemble.local> <7F839B06-CB69-404B-9D39-6CF67CE9E2DF@pinds.com> Message-ID: <20060522215543.GA713@ensemble.local> Quoting lars at pinds.com, on Mon, May 22, 2006 at 11:47:51PM +0200: > Actually, I've looked a bit closer at the code, and it turns out that > rrule.rb:232, which deals with BYDAY when FREQ=WEEKLY is commented out! Oops. :-) > when 'WEEKLY' > # dates = byday_in_weekly(t.year, wkstart, t.month, > t.day, byday) > > Moreover, the byday_in_weekly method doesn't exist. > > Should be fairly easy to do, I suspect. I'll look into it when it > gets critical for my needs. > > Will you accept patches and have time to put out a new release? Clean patches that keep in the sprit of the current code are easy to accept. I think implementing byday_in_weekly() should be in that category. Unit tests, at least uncommenting the ones in test_rrule from the RFC, would grealy help. I'm also trying to accept patches that don't conform to how I want vPim to work, because I just don't have the time to work on vPim, its taking time away from other things that are much higher priority. Releasing is pretty easy and fast. Thanks, Sam From sroberts at uniserve.com Mon May 22 18:10:05 2006 From: sroberts at uniserve.com (Sam Roberts) Date: Mon, 22 May 2006 15:10:05 -0700 Subject: [Vpim-talk] [vpim] Some small rrule.rb changes In-Reply-To: References: Message-ID: <20060522221004.GB713@ensemble.local> Quoting cosmin at speakeasy.net, on Sat, May 20, 2006 at 11:40:06AM -0700: > I did some changes to the rrule.rb. I needed some getters/setters for > each of the attributes from RRULE. Attached is the diff. If it makes > sense to you to be included in the lib, please do so. If you think > it's worth to be included, I can add more validation to the setters. I confess to not really liking it, but I'll include it because I don't have time for anything better. Partly, I don't understand what its for. You have an Rrule, and you want to change it on the fly? Whats the use-case? I want to make an Rrule maker that would hopefully make it easy to build rrules programatically. I'm impressed by the flexibility and power of apples' iCal gui for building recurrent events, and basically wanted to reuse the model. It can't do everything, but it can do lots. > I would be interested in testing the RDATE change if you already > implemented it... If not, I"ll try to dig into the code. Can you > please point me what/where needs to be changed? Here is a fast hack, note that it only works with one RDATE field, but multiple are allowed! ensemble:~/p/ruby/vpim/trunk % svn diff lib/vpim/property/recurrence.rb Index: lib/vpim/property/recurrence.rb =================================================================== --- lib/vpim/property/recurrence.rb (revision 360) +++ lib/vpim/property/recurrence.rb (working copy) @@ -39,6 +39,10 @@ occurences.each_until(t1).detect { |t| tend = t + (duration || 0); tend > t0 } end + def rdates + Vpim.decode_date_time_list(propvalue('RDATE')) + end + end end end Better would be an Rdate class with the same interfaces as Rrule, and none of the complexity, RDATE is just a list of date or date-time. See propvalueall(). Even better would be a reimplementation of occurrences that creates one Rrule for every RRULE and for every EXRRULE, one Rdate for every RDATE and EXRDATE, and uses ruby generators to return an enumerable class (Occurrences?) that combines correctly all the occurrences. I did a proof-of-concept a few days that takes multiple sorted sequences (Rrule and Rdate would be this) and combines them. Looks pretty straightforward, actually, if you'd like to take a crack at it. See example code below, I think Union as-is would unify multiple Rrule instances as a single enumerable. Btw, I got date and date-time values correctly returned as Date and Time, but I still have to fix some things to get the unit tests working. I haven't forgotten, its just going slowly. Cheers, Sam require 'generator' class Union include Enumerable def initialize(*args) @args = args; end def each generators = {} @args.each do |a| g = Generator.new(a) if g.next? generators[g] = g.next end end current = nil while generators.size > 0 current = generators.values.min yield current collect = generators.select{ |k,v| v == current } collect.each do |g,v| if g.next? generators[g] = g.next else generators.delete(g) end end end end end require 'pp' pp Union.new([1,2,3], [2,3,4]).to_a pp Union.new([1,3], [3,4,5,6]).to_a class Seq def initialize(multiplier) @multiplier = multiplier @start = 1 end def each start = @start loop do yield start start *= @multiplier end end include Enumerable end s3 = Seq.new(3) s4 = Seq.new(4) union = Union.new(s3, s4) union.each do |v| break if v > 100 puts v end From svakil at gmail.com Thu May 25 00:12:35 2006 From: svakil at gmail.com (Sanjay Vakil) Date: Thu, 25 May 2006 00:12:35 -0400 Subject: [Vpim-talk] differentiating dates and times in dtstart/dtend? Message-ID: Hiya! First off, thanks for the incredible work. Secondly, is there a way to distinguish between events which are fundamentally "day" events and those which have a time component? Looking at a .ics file, the latter looks like this: DTSTART:20060428T220000Z DTEND:20060429T040000Z and date events like this: DTSTART;VALUE=DATE:20060426 DTEND;VALUE=DATE:20060427 Looking at the pretty printed output of a decoded event, it looks like the distinction is being maintained: #["DATE"]}, @value="20060426">, But I'm wondering if there is a way to distinguish this without diving down into the DirectoryInfo layer. Ideally, I'd like to be able to query an event directly. Here's hoping I haven't asked a dippy question, sanjay -- The world tends to work out for me. I try to give it reason to. From sroberts at uniserve.com Thu May 25 13:08:41 2006 From: sroberts at uniserve.com (Sam Roberts) Date: Thu, 25 May 2006 10:08:41 -0700 Subject: [Vpim-talk] differentiating dates and times in dtstart/dtend? In-Reply-To: References: Message-ID: <20060525170841.GA19856@pebble> On Thu, May 25, 2006 at 12:12:35AM -0400, Sanjay Vakil wrote: > Secondly, is there a way to distinguish between events which are > fundamentally "day" events and those which have a time component? I have the changes locally to make dtstart/... return Date or Time, depending on what the start is. The change breaks other things. :-( I will try and release this weekend. And of course its not a dippy question! Cheers, Sam From cosmin at speakeasy.net Sun Jun 4 19:20:12 2006 From: cosmin at speakeasy.net (Cosmin Andriescu) Date: Sun, 4 Jun 2006 16:20:12 -0700 Subject: [Vpim-talk] [vpim] Some small rrule.rb changes In-Reply-To: <20060522221004.GB713@ensemble.local> Message-ID: An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/vpim-talk/attachments/20060604/3e2c27c6/attachment-0001.htm From sroberts at uniserve.com Sun Jun 4 20:07:46 2006 From: sroberts at uniserve.com (Sam Roberts) Date: Sun, 4 Jun 2006 17:07:46 -0700 Subject: [Vpim-talk] [vpim] Some small rrule.rb changes In-Reply-To: References: <20060522221004.GB713@ensemble.local> Message-ID: <20060605000745.GB545@ensemble.local> Quoting cosmin at speakeasy.net, on Sun, Jun 04, 2006 at 04:20:12PM -0700: > >> I confess to not really liking it, but I'll include it because I > don't > >> have time for anything better. > > No need to include it then. It will help others if it helps you, and I don't have time to work on this. I should send you my patch to make DTSTART and friends return a Date if the value is a DATE. I've no time to finish it, but it might work well-enough for you. > >> Better would be an Rdate class with the same interfaces as Rrule, > and none > >> of > >> the complexity, RDATE is just a list of date or date-time. See > >> propvalueall(). > > I implemented it like this. A different class but with a similar > interface with Rrule. I also changed a bit the occurrences method so > it will read the rdates too. I can send you the code if you think it's > worth it. Please do. > >> Even better would be a reimplementation of occurrences that > creates one > >> Rrule > >> for every RRULE and for every EXRRULE, one Rdate for every RDATE > and > >> EXRDATE, > >> and uses ruby generators to return an enumerable class > (Occurrences?) that > >> combines correctly all the occurrences. > > This is a bit wrong actually as the EXRULEs and EXRDATEs need to be > excluded out of the list of occurrences. Absolutely, by "correctly" I meant add the ones that need adding, and remove the ones that need removing. > Your Union class looks good though... :) I guess the easiest way to > do this is to generate a union out of RRULEs and RDATEs and then > exclude the instances that are in a second union which was created > from EXRRULE and EXRDATE. I think what would be needed would be a version of Union that does Rejection... rrule1 rdate1 rrule2 exdate3 exrule4 occurences = Rejection.new( Union.new(rrule1,rdate1,rrule2), Union.new(exdate3,exrule4) ) > The code that I have (and I can e-mail it to you if you want to review > it) is for generating recurrence sets with RRULE and/or RDATE (I > assumed only 1 instance of each property max.. I know that in the > standard it says it could be more than one, but I never seen anyone > using it). I can't find the time to work on vPim lately. I will try and get the DATE patch I started to you, so you can see where it is going and maybe finish it? It works, just some unit tests are failing (because they have been generating invalid calendar files). Sam From ryan at theryanking.com Wed Jun 14 18:51:47 2006 From: ryan at theryanking.com (Ryan King) Date: Wed, 14 Jun 2006 15:51:47 -0700 Subject: [Vpim-talk] possible bug? Message-ID: <2DFC1C6E-1C35-45EE-A9C0-E617737A7582@theryanking.com> Forgive me if this is a known issue, but I'm new here.... I just started using Vpim, and I'm getting this error when trying to access the url method of a vcard: > /usr/local/lib/ruby/gems/1.8/gems/vpim-0.360/lib/vpim/vcard.rb: > 505:in `decode_uri': uninitialized constant Vpim::Vcard::Uri > (NameError) > from /usr/local/lib/ruby/gems/1.8/gems/vpim-0.360/lib/vpim/ > vcard.rb:581:in `decode' > from /usr/local/lib/ruby/gems/1.8/gems/vpim-0.360/lib/vpim/ > vcard.rb:772:in `value' > from ./mf-parser.rb:262:in `compare' > from ./mf-parser.rb:189:in `test' > from ./mf-parser.rb:188:in `test' > from ./mf-parser.rb:270 Am I doing something wrong? I'm using ruby 1.8.4 on Mac OSX. thanks, ryan From sroberts at uniserve.com Wed Jun 14 23:05:22 2006 From: sroberts at uniserve.com (Sam Roberts) Date: Wed, 14 Jun 2006 20:05:22 -0700 Subject: [Vpim-talk] possible bug? In-Reply-To: <2DFC1C6E-1C35-45EE-A9C0-E617737A7582@theryanking.com> References: <2DFC1C6E-1C35-45EE-A9C0-E617737A7582@theryanking.com> Message-ID: <20060615030522.GA447@ensemble.local> Quoting ryan at theryanking.com, on Wed, Jun 14, 2006 at 03:51:47PM -0700: > I just started using Vpim, and I'm getting this error when trying to > access the url method of a vcard: > > /usr/local/lib/ruby/gems/1.8/gems/vpim-0.360/lib/vpim/vcard.rb: > > 505:in `decode_uri': uninitialized constant Vpim::Vcard::Uri Thats a bug. As a workaround until a new release, I suggest the following: require 'vpim/vcard' module Vpim class Vcard Uri = Vpim::Attachment::Uri end end Thanks, Sam From svakil at gmail.com Thu Jun 15 12:07:43 2006 From: svakil at gmail.com (Sanjay Vakil) Date: Thu, 15 Jun 2006 12:07:43 -0400 Subject: [Vpim-talk] Timezone support Message-ID: Hiya! I was wondering if you could give a rundown on the current state of timezone support in Vpim. I realize it is a big hairy mess to deal with, but I'm expecting to have to fight it to a standstill. I've figured out what I needed to know from TZInfo to be able to help out. At minimum, can I suggest that the following method (in rfc2425.rb) be patched? module Vpim # Encode a Time or DateTime object as "yyyymmddThhmmssZ" def Vpim.encode_date_time(d) # :nodoc: "%0.4d%0.2d%0.2dT%0.2d%0.2d%0.2d#{d.utc? ? "Z", ""}" % [ d.year, d.mon, d.day, d.hour, d.min, d.sec ] end end This allows everything to be coerced down into UTC, which may be the best workable solution. Thanks again for the wonderful work, sanjay -- The world tends to work out for me. I try to give it reason to. From ryan at theryanking.com Thu Jun 15 13:52:44 2006 From: ryan at theryanking.com (Ryan King) Date: Thu, 15 Jun 2006 10:52:44 -0700 Subject: [Vpim-talk] possible bug? In-Reply-To: <20060615030522.GA447@ensemble.local> References: <2DFC1C6E-1C35-45EE-A9C0-E617737A7582@theryanking.com> <20060615030522.GA447@ensemble.local> Message-ID: <093F4219-E189-404D-8420-B62B5411F0CA@theryanking.com> On Jun 14, 2006, at 8:05 PM, Sam Roberts wrote: > Quoting ryan at theryanking.com, on Wed, Jun 14, 2006 at 03:51:47PM > -0700: >> I just started using Vpim, and I'm getting this error when trying to >> access the url method of a vcard: > >>> /usr/local/lib/ruby/gems/1.8/gems/vpim-0.360/lib/vpim/vcard.rb: >>> 505:in `decode_uri': uninitialized constant Vpim::Vcard::Uri > > Thats a bug. As a workaround until a new release, I suggest the > following: > > require 'vpim/vcard' > > module Vpim > class Vcard > Uri = Vpim::Attachment::Uri > end > end Hmm, not quite: /usr/local/lib/ruby/gems/1.8/gems/vpim-0.360/lib/vpim/vcard.rb:505:in `initialize': wrong number of arguments (1 for 2) (ArgumentError) from /usr/local/lib/ruby/gems/1.8/gems/vpim-0.360/lib/vpim/ vcard.rb:505:in `decode_uri' from /usr/local/lib/ruby/gems/1.8/gems/vpim-0.360/lib/vpim/ vcard.rb:581:in `decode' from /usr/local/lib/ruby/gems/1.8/gems/vpim-0.360/lib/vpim/ vcard.rb:772:in `value' from /usr/local/lib/ruby/gems/1.8/gems/vpim-0.360/lib/vpim/ vcard.rb:960:in `url' Looks like you're dealing with two different Uri classes in there. -ryan From ryan at theryanking.com Thu Jun 15 14:03:24 2006 From: ryan at theryanking.com (Ryan King) Date: Thu, 15 Jun 2006 11:03:24 -0700 Subject: [Vpim-talk] question / feature request Message-ID: <9A0CBA32-2D8B-4D23-819E-93486EDEFF27@theryanking.com> Sorry to be "that new guy who has a comment on everything", but... It appears that for vCard properties with can have URI values, the vpim library will use the open-uri Uri class and try to connect and retrieve the resource. If the resource doesn't exist (esp. if the host doesn't exist), the library fails with an uncaught exception: /usr/local/lib/ruby/1.8/net/http.rb:562:in `initialize': Connection refused - connect(2) (Errno::ECONNREFUSED) from /usr/local/lib/ruby/1.8/net/http.rb:562:in `connect' from /usr/local/lib/ruby/1.8/timeout.rb:48:in `timeout' from /usr/local/lib/ruby/1.8/timeout.rb:76:in `timeout' from /usr/local/lib/ruby/1.8/net/http.rb:562:in `connect' from /usr/local/lib/ruby/1.8/net/http.rb:555:in `do_start' from /usr/local/lib/ruby/1.8/net/http.rb:544:in `start' from /usr/local/lib/ruby/1.8/open-uri.rb:245:in `open_http' from /usr/local/lib/ruby/1.8/open-uri.rb:629:in `buffer_open' ... 7 levels... Two questions: 1. Is there a way to turn this off and do an "offline mode"? I really only care about the URL, not the resource. 2. Is there a public repository for the code? Thanks, ryan From sroberts at uniserve.com Thu Jun 15 14:34:08 2006 From: sroberts at uniserve.com (Sam Roberts) Date: Thu, 15 Jun 2006 11:34:08 -0700 Subject: [Vpim-talk] Timezone support In-Reply-To: References: Message-ID: <20060615183408.GA29737@pebble> On Thu, Jun 15, 2006 at 12:07:43PM -0400, Sanjay Vakil wrote: > Hiya! I was wondering if you could give a rundown on the current > state of timezone support in Vpim. I realize it is a big hairy mess > to deal with, but I'm expecting to have to fight it to a standstill. Doesn't really support timezones. Uses basic C library support (i.e., UTC and local, nothing else). > I've figured out what I needed to know from TZInfo to be able to help out. > > At minimum, can I suggest that the following method (in rfc2425.rb) be patched? > > module Vpim # Encode a Time or DateTime object as "yyyymmddThhmmssZ" > def Vpim.encode_date_time(d) # :nodoc: > "%0.4d%0.2d%0.2dT%0.2d%0.2d%0.2d#{d.utc? ? "Z", ""}" % [ d.year, > d.mon, d.day, d.hour, d.min, d.sec ] > end > end > > This allows everything to be coerced down into UTC, which may be the > best workable solution. Seems reasonable, I'll try it. Sam From sroberts at uniserve.com Thu Jun 15 14:39:43 2006 From: sroberts at uniserve.com (Sam Roberts) Date: Thu, 15 Jun 2006 11:39:43 -0700 Subject: [Vpim-talk] possible bug? with Vcard and Uri values In-Reply-To: <093F4219-E189-404D-8420-B62B5411F0CA@theryanking.com> References: <2DFC1C6E-1C35-45EE-A9C0-E617737A7582@theryanking.com> <20060615030522.GA447@ensemble.local> <093F4219-E189-404D-8420-B62B5411F0CA@theryanking.com> Message-ID: <20060615183943.GB29737@pebble> On Thu, Jun 15, 2006 at 10:52:44AM -0700, Ryan King wrote: > Hmm, not quite: > > /usr/local/lib/ruby/gems/1.8/gems/vpim-0.360/lib/vpim/vcard.rb:505:in > `initialize': wrong number of arguments (1 for 2) (ArgumentError) > from /usr/local/lib/ruby/gems/1.8/gems/vpim-0.360/lib/vpim/ > vcard.rb:505:in `decode_uri' > from /usr/local/lib/ruby/gems/1.8/gems/vpim-0.360/lib/vpim/ > vcard.rb:581:in `decode' > from /usr/local/lib/ruby/gems/1.8/gems/vpim-0.360/lib/vpim/ > vcard.rb:772:in `value' > from /usr/local/lib/ruby/gems/1.8/gems/vpim-0.360/lib/vpim/ > vcard.rb:960:in `url' > > Looks like you're dealing with two different Uri classes in there. I unified attachment handling for Icalendar and Vcard, looks like I didn't finish though. If you can get it working, I'll integrate a patch. It should be using Vpim::Attachment::Uri. Sam From sroberts at uniserve.com Thu Jun 15 14:41:23 2006 From: sroberts at uniserve.com (Sam Roberts) Date: Thu, 15 Jun 2006 11:41:23 -0700 Subject: [Vpim-talk] Timezone support In-Reply-To: <20060615183408.GA29737@pebble> References: <20060615183408.GA29737@pebble> Message-ID: <20060615184123.GC29737@pebble> On Thu, Jun 15, 2006 at 11:34:08AM -0700, Sam Roberts wrote: > On Thu, Jun 15, 2006 at 12:07:43PM -0400, Sanjay Vakil wrote: > > Hiya! I was wondering if you could give a rundown on the current > > state of timezone support in Vpim. I realize it is a big hairy mess > > to deal with, but I'm expecting to have to fight it to a standstill. > > Doesn't really support timezones. Uses basic C library support (i.e., > UTC and local, nothing else). Oh, and btw, the largest problem is actually just having a library that can do TZ manipulations. Such a library exists now on rubyforge, luckily, so "only" the Icalendar side needs to be implemented. I'm happy to work with you if you implement TZ support. Sam From sroberts at uniserve.com Thu Jun 15 14:50:45 2006 From: sroberts at uniserve.com (Sam Roberts) Date: Thu, 15 Jun 2006 11:50:45 -0700 Subject: [Vpim-talk] question / feature request In-Reply-To: <9A0CBA32-2D8B-4D23-819E-93486EDEFF27@theryanking.com> References: <9A0CBA32-2D8B-4D23-819E-93486EDEFF27@theryanking.com> Message-ID: <20060615185045.GD29737@pebble> On Thu, Jun 15, 2006 at 11:03:24AM -0700, Ryan King wrote: > It appears that for vCard properties with can have URI values, the > vpim library will use the open-uri Uri class and try to connect and > retrieve the resource. If the resource doesn't exist (esp. if the > host doesn't exist), the library fails with an uncaught exception: > > /usr/local/lib/ruby/1.8/net/http.rb:562:in `initialize': Connection > refused - connect(2) (Errno::ECONNREFUSED) > from /usr/local/lib/ruby/1.8/net/http.rb:562:in `connect' > from /usr/local/lib/ruby/1.8/timeout.rb:48:in `timeout' > from /usr/local/lib/ruby/1.8/timeout.rb:76:in `timeout' > from /usr/local/lib/ruby/1.8/net/http.rb:562:in `connect' > from /usr/local/lib/ruby/1.8/net/http.rb:555:in `do_start' > from /usr/local/lib/ruby/1.8/net/http.rb:544:in `start' > from /usr/local/lib/ruby/1.8/open-uri.rb:245:in `open_http' > from /usr/local/lib/ruby/1.8/open-uri.rb:629:in `buffer_open' > ... 7 levels... > > Two questions: > > 1. Is there a way to turn this off and do an "offline mode"? I really > only care about the URL, not the resource. Yes, modify Vcard to correctly use Vpim::Attachment::Uri (send me the patches) and then use the Uri#uri method: http://vpim.rubyforge.org/classes/Vpim/Attachment/Uri.html > 2. Is there a public repository for the code? No. rubyforge had no svn support for the first years of development, and I have tired of cvs. When I get enough patches from somebody that integrating the patches locally becomes more painful than moving the code to rubyforge (assuming it has svn now, I think it does) and giving them commit access, I will move the code. Btw, if you are hoping my local repository is more cutting-edge but basically useful, as is common on projects whose maintainers are actively working on it, you would be dissappointed. vpim is in pieces here, and I haven't the time to put it back together. Sam From ryan at theryanking.com Fri Jun 16 13:52:37 2006 From: ryan at theryanking.com (Ryan King) Date: Fri, 16 Jun 2006 10:52:37 -0700 Subject: [Vpim-talk] possible bug? with Vcard and Uri values In-Reply-To: <20060615183943.GB29737@pebble> References: <2DFC1C6E-1C35-45EE-A9C0-E617737A7582@theryanking.com> <20060615030522.GA447@ensemble.local> <093F4219-E189-404D-8420-B62B5411F0CA@theryanking.com> <20060615183943.GB29737@pebble> Message-ID: <03F80F3D-9915-4AEC-9565-5DD0E8E62FCA@theryanking.com> Attached is the simplest patched for making this work, at least for my use case. -ryan -------------- next part -------------- A non-text attachment was scrubbed... Name: vcard-uri.diff Type: application/octet-stream Size: 161 bytes Desc: not available Url : http://rubyforge.org/pipermail/vpim-talk/attachments/20060616/f83a36f4/attachment-0001.obj -------------- next part -------------- On Jun 15, 2006, at 11:39 AM, Sam Roberts wrote: > On Thu, Jun 15, 2006 at 10:52:44AM -0700, Ryan King wrote: >> Hmm, not quite: >> >> /usr/local/lib/ruby/gems/1.8/gems/vpim-0.360/lib/vpim/vcard.rb:505:in >> `initialize': wrong number of arguments (1 for 2) (ArgumentError) >> from /usr/local/lib/ruby/gems/1.8/gems/vpim-0.360/lib/vpim/ >> vcard.rb:505:in `decode_uri' >> from /usr/local/lib/ruby/gems/1.8/gems/vpim-0.360/lib/vpim/ >> vcard.rb:581:in `decode' >> from /usr/local/lib/ruby/gems/1.8/gems/vpim-0.360/lib/vpim/ >> vcard.rb:772:in `value' >> from /usr/local/lib/ruby/gems/1.8/gems/vpim-0.360/lib/vpim/ >> vcard.rb:960:in `url' >> >> Looks like you're dealing with two different Uri classes in there. > > I unified attachment handling for Icalendar and Vcard, looks like I > didn't finish though. > > If you can get it working, I'll integrate a patch. It should be using > Vpim::Attachment::Uri. > > Sam > > _______________________________________________ > Vpim-talk mailing list > Vpim-talk at rubyforge.org > http://rubyforge.org/mailman/listinfo/vpim-talk From ryan at theryanking.com Tue Jun 20 19:28:12 2006 From: ryan at theryanking.com (ryan king) Date: Tue, 20 Jun 2006 16:28:12 -0700 Subject: [Vpim-talk] multiple URIs Message-ID: <61162FD2-1FF7-4A87-8646-B92B7FB0F7DD@theryanking.com> It seems that VPIM's vCard implementation interprets the RFC as limiting vCards to only one URL, whereas it allows multiple PHOTOs and LOGOs. I'm curious... why? They all seem to be specified in the same way, so perhaps they should all be allowed to occur more than once. -ryan From sroberts at uniserve.com Tue Jun 20 20:09:36 2006 From: sroberts at uniserve.com (Sam Roberts) Date: Tue, 20 Jun 2006 17:09:36 -0700 Subject: [Vpim-talk] multiple URIs In-Reply-To: <61162FD2-1FF7-4A87-8646-B92B7FB0F7DD@theryanking.com> References: <61162FD2-1FF7-4A87-8646-B92B7FB0F7DD@theryanking.com> Message-ID: <20060621000936.GA14585@pebble> On Tue, Jun 20, 2006 at 04:28:12PM -0700, ryan king wrote: > It seems that VPIM's vCard implementation interprets the RFC as > limiting vCards to only one URL, whereas it allows multiple PHOTOs > and LOGOs. > > I'm curious... why? I got tired of typing, basically, there is no end to the fields that vCard supports. From the docs: For types that do not sensibly occur multiple times (like BDAY or GEO), sometimes a wrapper exists only to return a single line, using value. However, if you find the need, you can still call values to get all the lines, and both the singular and plural forms will eventually be implemented. I'll accept patches of course, and I'll try to get some time this week to integrate the ones sitting in my inbox, yours included. Sam From kgarner at kgarner.com Tue Aug 1 10:11:37 2006 From: kgarner at kgarner.com (Keith T. Garner) Date: Tue, 01 Aug 2006 09:11:37 -0500 Subject: [Vpim-talk] Alarm support Message-ID: <44CF6119.9050401@kgarner.com> I looked in the list history and went over the code, but I don't see alarm/reminder support in the latest release. Its also possible I just missed it. :) Assuming its not there yet, is it still on the todo? Is there anything I can do to help? I haven't had a chance to go over the code in fine detail, but a pointer in the right direction would be helpful. BTW, the library is awesome. I was able to whip up a preliminary version of ics2hiptop (aka ics2sidekick) in a matter of minutes instead. I greatly appreciate all the work to date. Keith -- Keith T. Garner kgarner at kgarner.com "Make no little plans; they have no magic to stir men's blood." - Daniel H. Burnham From sroberts at uniserve.com Thu Aug 3 19:20:38 2006 From: sroberts at uniserve.com (Sam Roberts) Date: Thu, 3 Aug 2006 16:20:38 -0700 Subject: [Vpim-talk] Alarm support In-Reply-To: <44CF6119.9050401@kgarner.com> References: <44CF6119.9050401@kgarner.com> Message-ID: <20060803232038.GB17109@pebble> On Tue, Aug 01, 2006 at 09:11:37AM -0500, Keith T. Garner wrote: > I looked in the list history and went over the code, but I don't see > alarm/reminder support in the latest release. Its also possible I just > missed it. :) You should be so lucky! :-( > Assuming its not there yet, is it still on the todo? Is there anything I > can do to help? I haven't had a chance to go over the code in fine detail, > but a pointer in the right direction would be helpful. I have time to discuss what might be useful in terms of a Valarm class, and how to implement it, but I don't have time to maintain vPim right now. It should be pretty easy, actually, decoding anyhow. Encoding is always harder, and not done that well by vPim right now, but alarms are pretty simple. I'd like to finish vPim, because I've put a lot of work into it, and it is just starting to become useful to people, but I don't use it, and my employer doesn't use it, and I can't spend my evenings in front of a crt right now. Possibly this fall I will have time again. > BTW, the library is awesome. I was able to whip up a preliminary version of > ics2hiptop (aka ics2sidekick) in a matter of minutes instead. I greatly > appreciate all the work to date. Thanks, sorry that progress isn't faster. Sam From ssankar at gmail.com Mon Nov 27 17:31:11 2006 From: ssankar at gmail.com (Shyam Sankar) Date: Mon, 27 Nov 2006 14:31:11 -0800 Subject: [Vpim-talk] Fwd: can't open ics encoded output in outlook 2003 In-Reply-To: <4c66f3600611271345m15d5eb73g8b5e0f1f2d0f129@mail.gmail.com> References: <4c66f3600611271345m15d5eb73g8b5e0f1f2d0f129@mail.gmail.com> Message-ID: <4c66f3600611271431r2d2f0089s137121cf90ec676a@mail.gmail.com> I'm trying to attach ics files to emails that my application sends out. Only problem is that while applications like gmail understand and correctly parse the attachment, I can't get outlook to do the same. First my attachment settings: :content_type => 'multipart/mixed' # I have to use this since 'text/calendar' doesn't work-- outlook things it is an untitled email .msg attachment :transfer_encoding => 'Base64' #I also tried 'Quoted-printable' to no success body of attachment BEGIN:VCALENDAR VERSION:2.0 PRODID:-//Ensemble Independent//vPim 0.360//EN CALSCALE:Gregorian BEGIN:VEVENT DTSTART:20061127T120200 DTEND:20061127T130200 SUMMARY:For Shyam TEST:Sh yam (54) DESCRIPTION:---\nNote from Sankar, Shyam on 20061113T132704Z\ntest\n CATEGORIES:APPOINTMENT,RECRUITING SEQUENCE:0 CREATED:20061127T131016 LAST-MODIFIED:20061127T131016 ORGANIZER;CN="Sankar, Shyam":mailto:ssankar at gmail.com ATTENDEE;RSVP=true:mailto:ssankar at palantirtech.com UID:20061127T131016Z_297365195 at SSANKAR END:VEVENT END:VCALENDAR code the generates the body: def generate_vpim_ical(notify_users_array) require 'vpim/icalendar' cal = Vpim:: Icalendar.create2 cal.add_event do |e| e.dtstart self.start_time e.dtend self.end_time e.summary self.description + ":" + self.candidate.print_name_and_id notes = History.get_recent_notes(self.candidate,2) desc = "" for n in notes desc << "Note from " + n.user.printname + " on " + n.created_at.strftime("%Y%m%dT%H%M%SZ") + "\n" desc << n.user_notes desc << "\n" end e.description desc #TODO: last note and candidate url/resume url e.categories [ 'APPOINTMENT'] e.categories do |c| c.push 'RECRUITING' end e.sequence 0 e.transparency 'OPAQUE' now = Time.now e.created now e.lastmod now e.organizer do |o| o.cn = self.user.printname o.uri = "mailto:" + self.user.email end for user in notify_users_array attendee = Vpim::Icalendar::Address.create('mailto:' + user.email) attendee.rsvp = true e.add_attendee attendee end e.uid "#{Time.now.localtime.strftime("%Y%m%dT%H%M%SZ")}_#{rand(999999999)}@#{ Socket.gethostname} end What am I doing wrong? -- Shyam Sankar 2142 University Ave Mountain View, CA 94040 +1.415.244.5545 ssankar at gmail.com -- Shyam Sankar 2142 University Ave Mountain View, CA 94040 +1.415.244.5545 ssankar at gmail.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/vpim-talk/attachments/20061127/84573eaa/attachment.html From sroberts at uniserve.com Tue Nov 28 17:29:56 2006 From: sroberts at uniserve.com (Sam Roberts) Date: Tue, 28 Nov 2006 14:29:56 -0800 Subject: [Vpim-talk] can't open ics encoded output in outlook 2003 In-Reply-To: <4c66f3600611271431r2d2f0089s137121cf90ec676a@mail.gmail.com> References: <4c66f3600611271345m15d5eb73g8b5e0f1f2d0f129@mail.gmail.com> <4c66f3600611271431r2d2f0089s137121cf90ec676a@mail.gmail.com> Message-ID: <20061128222955.GA21410@pebble> On Mon, Nov 27, 2006 at 02:31:11PM -0800, Shyam Sankar wrote: > I'm trying to attach ics files to emails that my application sends out. > Only problem is that while applications like gmail understand and correctly > parse the attachment, I can't get outlook to do the same. I've never attached a calendar to an email, so I can't tell you why Outlook does or doesn't like the attachment. You should probably be familiar with the iMIP RFCs, and I'd also suggest finding a message that Outlook does accept (maybe mail a calendar with Outlook to get one), see what they do, and see if you can do likewise. Post back when you figure it out, it will probably help somebody else. Cheers, Sam