Ok. So this is somehow a mixup between documentation and  
implementation. From my testing, calendar currently creates default  
reminders when you send an entry looking like this:

<entry>
   ...
   <gd:reminder/>
</entry>

So you need to have a completely empty reminder element inside the  
eventEntry.

Now the current version of .NET does not do that :) There is an  
optimization in the save code that says, don't send empty stuff  
around for the reminder.

I removed that optimization, and then code like below works if you  
add the following line:

entry.Reminder = new Reminder()

to create the empty <gd:reminder/>. If you don't want to send a  
Reminder element at all, just do

entry.Reminder= null;


I have updated Release/ASP/Mobile dlls in subversion. If you could  
please see if that fixes your issue, and let me know.

Regards

Frank Mantek
Google

On Oct 17, 2007, at 9:29 PM, grinndaddy wrote:

>
> Sure. Here's the code that produces the EventEntry object (ee).
> Nothing else is added to ee before it is sent. If you guys need more
> code (such as the portion that does the actual inserting of the entry)
> then just ask.
>
>               ee.Title.Text = title
>
>               Dim wn As New [When]
>               If Not day Is Nothing Then
>                       '' Set when (and extent) to event
>                       day = extraction.GetDateFromSaid(day.Trim)
>                       wn.StartTime = CDate(Trim(day & " " & time))
>                       If time Is Nothing Then
>                               wn.AllDay = True
>                               wn.EndTime = wn.StartTime.AddDays(1)
>                       Else
>                               extent = IIf(extent Is Nothing, "1 hour", 
> extent)
>                               Dim endTime As Date = EndTimeFromExtent(extent, 
> wn.StartTime)
>                               wn.EndTime = endTime
>                       End If
>               Else
>                       wn.StartTime = Date.Today
>                       wn.EndTime = Date.Today.AddDays(1)
>                       wn.AllDay = True
>               End If
>               ee.Times.Add(wn)
>
> On Oct 17, 9:05 am, Frank Mantek <[EMAIL PROTECTED]> wrote:
>> I think kulvinders problem was subsequently solved (setting the
>> remindner in .net to unspecified fixes this, so that we send no
>> reminder at all.
>>
>> In your case, i need more details. Can you trace what is send over
>> the wire when you do this? Or post the code that is doing it?
>>
>> Frank Mantek
>> Google
>>
>> On Oct 17, 2007, at 2:30 PM,grinndaddywrote:
>>
>>
>>
>>> Have you guys come up with an answer to this?
>>
>>> On Oct 9, 4:29 am, Frank Mantek <[EMAIL PROTECTED]> wrote:
>>>> First thing i like to understand is:
>>
>>>> a) is that happening with older versions of .net?
>>>> b) is that happening with java?
>>
>>>> This sounds like a service bug. If it is not i need to investigate
>>>> more.
>>
>>>> Frank Mantek
>>>> Google
>>>> On Oct 9, 2007, at 6:46 AM, Kulvinder Singh wrote:
>>
>>>>> Hi,
>>
>>>>> The following is the summary of the Reminder.cs class from
>>>>> extensions :
>>
>>>>> /// <summary>
>>
>>>>> /// GData schema extension describing a reminder on an event.
>>
>>>>> /// </summary>
>>
>>>>> /// <remarks>
>>
>>>>> /// <para>You can represent a set of reminders where each has a  
>>>>> (1)
>>>>> reminder
>>
>>>>> /// period and (2) notification method. The method can be either
>>>>> "sms",
>>
>>>>> /// "email", "alert", "none", "all".</para>
>>
>>>>> ///
>>
>>>>> /// <para>The meaning of this set of reminders differs based on
>>>>> whether you
>>
>>>>> /// are reading or writing feeds. When reading, the set of  
>>>>> reminders
>>
>>>>> /// returned on an event takes into account both defaults on a
>>
>>>>> /// parent recurring event (when applicable) as well as the user's
>>
>>>>> /// defaults on calendar. If there are no gd:reminders returned  
>>>>> that
>>
>>>>> /// means the event has absolutely no reminders. "none" or "all"
>>>>> will
>>
>>>>> /// not apply in this case.</para>
>>
>>>>> ///
>>
>>>>> /// <para>Writing is different because we have to be backwards-
>>>>> compatible
>>
>>>>> /// (see *) with the old way of setting reminders. For easier
>>>>> analysis
>>
>>>>> /// we describe all the behaviors defined in the table below.
>>>>> (Notice
>>
>>>>> /// we only include cases for minutes, as the other cases
>>>>> specified in
>>
>>>>> /// terms of days/hours/absoluteTime can be converted to this  
>>>>> case.)
>>>>> </para>
>>
>>>>> ///
>>
>>>>> /// <para>Notice method is case-sensitive: must be in lowercase!</
>>>>> para>
>>
>>>>> ///
>>
>>>>> /// <list type="table">
>>
>>>>> /// <listheader>
>>
>>>>> /// <term></term>
>>
>>>>> /// <term>No method or method=all</term>
>>
>>>>> /// <term>method=none</term>
>>
>>>>> /// <term>method=email|sms|alert</term>
>>
>>>>> /// </listheader>
>>
>>>>> /// <item>
>>
>>>>> /// <term>No gd:rem</term>
>>
>>>>> /// <term>*No reminder</term>
>>
>>>>> /// <term>N/A</term>
>>
>>>>> /// <term>N/A</term>
>>
>>>>> /// </item>
>>
>>>>> /// <item>
>>
>>>>> /// <term>1 gd:rem</term>
>>
>>>>> /// <term>*Use user's default settings</term>
>>
>>>>> /// <term>No reminder</term>
>>
>>>>> /// <term>InvalidEntryException</term>
>>
>>>>> /// </item>
>>
>>>>> /// <item>
>>
>>>>> /// <term>1 gd:rem min=0</term>
>>
>>>>> /// <term>*Use user's default settings</term>
>>
>>>>> /// <term>No reminder</term>
>>
>>>>> /// <term>InvalidEntryException</term>
>>
>>>>> /// </item>
>>
>>>>> /// <item>
>>
>>>>> /// <term>1 gd:rem min=-1</term>
>>
>>>>> /// <term>*No reminder</term>
>>
>>>>> /// <term>No reminder</term>
>>
>>>>> /// <term>InvalidEntryException</term>
>>
>>>>> /// </item>
>>
>>>>> /// <item>
>>
>>>>> /// <term>1 gd:rem min=+n</term>
>>
>>>>> /// <term>*Override with no +n for user's selected methods</term>
>>
>>>>> /// <term>No reminder</term>
>>
>>>>> /// <term>Set exactly one reminder on event at +n with given
>>>>> method</term>
>>
>>>>> /// </item>
>>
>>>>> /// <item>
>>
>>>>> /// <term>Multiple gd:rem</term>
>>
>>>>> /// <term>InvalidEntryException</term>
>>
>>>>> /// <term>InvalidEntryException</term>
>>
>>>>> /// <term>Copy this set exactly</term>
>>
>>>>> /// </item>
>>
>>>>> /// </list>
>>
>>>>> ///
>>
>>>>> /// <para>Hence, to override an event with a set of reminder time,
>>>>> method
>>
>>>>> /// pairs, just specify them exactly. To clear an event of all
>>
>>>>> /// overrides (and go back to inheriting the user's defaults),
>>>>> one can
>>
>>>>> /// simply specify a single gd:reminder with no extra  
>>>>> attributes. To
>>
>>>>> /// have NO event reminders on an event, either set a single
>>
>>>>> /// gd:reminder with negative reminder time, or simply update the
>>>>> event
>>
>>>>> /// with a single gd:reminder method=none.</para>
>>
>>>>> /// </remarks>
>>
>>>>> I am using .NET 1.1.0.0 Calendar API and i am sending a reminder
>>>>> with 30 min and i havent set any "method" attribute. My calendar
>>>>> has a default reminder of 10 min Popup and it was added as a popup
>>>>> reminder of 30 min. I event i added was a single event.
>>
>>>>> I then tried using a recurring event and what you see is correct.
>>>>> When you look at the newly created event with a 30 min reminder  
>>>>> and
>>>>> no method attribute specified, reminder is not available on this
>>>>> event when you go and edit it to see all the values but if you see
>>>>> the "agenda" view, there is a clock still hanging after the  
>>>>> subject
>>>>> of the recurring event.
>>
>>>>> Any ideas from Google guys ?
>>
>>>>> Thanks
>>
>>>>> Kulvinder Singh
>>
>>>>> ----- Original Message ----
>>>>> From:grinndaddy<[EMAIL PROTECTED]>
>>>>> To: Google Calendar Data API <google-calendar-help-
>>>>> [EMAIL PROTECTED]>
>>>>> Sent: Tuesday, October 9, 2007 2:15:46 AM
>>>>> Subject: Default Event Reminders in .NET
>>
>>>>> I'm using the .NET API to add events to a user's calendar. When an
>>>>> event is added it doesn't have any event reminders set, even if  
>>>>> the
>>>>> calendar has default reminders set.
>>
>>>>> For example, if I have a default reminder to send an SMS  
>>>>> message 15
>>>>> min before an event for my calendar and add an event via the UI,
>>>>> that
>>>>> event will be set to have an SMS reminder sent 15 min before it
>>>>> occurs. However, if I add it via the API, that event won't have  
>>>>> any
>>>>> reminders.
>>
>>>>> In the API documentation (http://code.google.com/apis/calendar/
>>>>> developers_guide_dotnet.html#Reminders) it says "If no reminder
>>>>> method
>>>>> is specified, the event will use the calendar's default reminder
>>>>> settings." but this does not appear to be the case.
>>
>>>>> How can I make an event added via the .NET API use the default
>>>>> reminders for its parent calendar?
>>
>>>>> Check out the hottest 2008 models today at Yahoo! Autos.
>
>
> >


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google Calendar Data API" group.
To post to this group, send email to 
[email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/google-calendar-help-dataapi?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to