Organizer does not receive email notification when attendee declines the event - google-api

We use a service account to authenticate google calendar and programmatically create calendars and appointment events. However, when a customer declines an event, there's no notification whatsoever of the decline and we cannot find any email regarding the decline in the admin or organizer's email inbox. is it because the service account is a dummy user? How can we get the organizer to be tied to an actual email account so people can get notification of the response status of the attendee?
We tried
create the calendar and event programmatically, attendee declines, no notification (despite setSendNotification("all") in the API call)
create the calendar and event programmatically, move the organizer to a different calendar (new organizer), attendee declines, no notification for the new organizer (despite setSendNotification("all") in the API call)
update code
googleAPIHelper.executeWithThrottling(service.events().update(calendarId, remoteEvent.getId(), remoteEvent).setSendUpdates("all"), Event.class);
insert code
googleAPIHelper.executeWithThrottling(service.events().insert(calendarId, eventToInsert).setSendUpdates("all"), Event.class);
move organizer code
googleAPIHelper.executeWithThrottling(service.events().move(calendarId, remoteEvent.getId(), destinationCalendarId), Event.class);

As it turned out, for each calendar the organizer owns (found in "Other Calendars"), we have to toggle the "Other notifications" settings to receive an email (i.e. Event responses). The default is set to "None."
E.g.
See also: https://www.youtube.com/watch?v=wgbpsm82AaY

Related

Why doesn't my shared calendar event show the updated attendee response statuses in Office365?

If I create a calendar in Office365 and share it with user A, then create an event on that calendar with user A as an attendee, user A's response status is never reflected on the shared event. It always just says, "user A didn't respond." on my calendar. Even when viewing the shared event from user A's calendar, it says "You didn't respond."
For example:
I create an event on a shared calendar and add user A as an attendee
User A sees two calendar events, one on their default calendar and one on the shared calendar
User A declines the event on their default calendar (they have no response options on the shared calendar event)
The event on User A's default calendar disappears. The event on the shared calendar, as seen by User A does not show their response status
The event as seen on my calendar also does not show User A's response status
This happens regardless of the level of permission that User A has on the shared calendar. Even in the case where the calendar isn't shared with User A at all (they only see the event on their default calendar), their response status never shows on the shared calendar event.

Outlook - Copy group calendar events to user outlook calendar

We have a recurring event setup in Office 365 group calendar. If a new member is added to this group, that member can see the event in "Group" calendar and in order to see this event in main calendar, user have to click on "Copy to My calendar" in group event.
Is there any way to do this via code/script? Basically achieve "Copy to My calendar" for Office 365 group calendar to User's main calendar via code.
I'm not sure when you click "Copy to my calendar" if it has some smart link or if it is just a copy at a point in time.
You could subscribe to the calendar using a webhook. That webhook would call your API hosted somewhere (an Azure Function, a web api hosted on Azure App Service). Your API would recieve the event id, it could then fetch the full details of the event and then create a new event on the users calendar.
I'm assuming that you'd want this to create it on all users calendar and also to update it if there were changes on the source event.
Its complex for sure doing it this way.
https://learn.microsoft.com/en-us/graph/webhooks
https://learn.microsoft.com/en-us/graph/api/resources/event?view=graph-rest-1.0

Exchange EWS ErrorCalendarIsNotOrganizer despite being the organizer

I'm trying to cancel a meeting I created by using an EWS XML CreateItem request (against a 2013 server):
<ns2:CreateItem MessageDisposition="SendAndSaveCopy"><ns2:Items>
<ns1:CancelCalendarItem>
<ns1:ReferenceItemId Id="AAMkA...." ChangeKey="DwAAA..."/>
</ns1:CancelCalendarItem>
</ns2:Items></ns2:CreateItem>
So far so good, however Outlook denies me access with the ResponseCode "ErrorCalendarIsNotOrganizer" / "User must be an organizer for CancelCalendarItem action".
A look in the event detail by using GetItem with BaseShape=ALL_PROPERTIES reveals that the account I use is set as Organizer, however at the same time:
the IsOrganizer field is set to false
in EffectiveRights the fields Read, Modify and Delete are true.
I can delete the appointment lateron using a DeleteItem request and it works, however it only removes the appointment from the room's calendar but not from the mailboxes of the attendees.
What causes this? There is no impersonation in use, only the service account I use has delegation access to every room mailbox (to be able to see all appointments).
I can delete the appointment lateron using a DeleteItem request and it works, however it only removes the appointment from the room's calendar but not from the mailboxes of the attendees.
It sounds like your accessing the appointment in the Room Mailboxes calendar ? this is why even if your using the account that is the organizer of that appointment the isOrganizer will return as false because this property is only true on the copy of the Appointment in the Organizers calendar. To correctly cancel the meeting you need to do that on the calendar of the Organizer (not the rooms or any attendee instance of the meeting). This will still only delete the appointment in the organizer calendar and send cancellation messages to the attendees.
An important point is that all instances of the meeting stored in the Attendees and Meeting Room calendars are separate Exchange Store items with no direct link. So deleting the organizer instance (or any attendee instance) has no affect on the other attendees instances these must be processed separately by the attendees themselves based on the cancellation message that is received.

How to change the event organizer on google calendar when creating an event?

I'm using the Google Calendar Api to create events, I'm trying to pass the parameter organizer with the email of the person that I want to be the owner but it is not working and the organizer it is always the same creator.

Sending ical events to Outlook and making the recipient the Organizer

I am trying to write an application that can manage meetings, I want to be able to send an vcal/ical event via email and have the recipient be the organizer. I have populated the organizer field with the recipients email address which does not have the required result. (in outlook 2010 at least) It appears in their calendar but it does not acknowledge them as the organizer so when trying to move the event a message is displayed notifying them that they are not the organizer.
You could try the solution in the answer found here:
Change organizer of outlook AppointmentItem via VSTO
You could also create appointments directly into the intended organizer's calendar using the GetSharedDefaultFolder method, as long as you have delegate access to their mailbox.
Otherwise I do not believe there is any way to remotely set the organizer of a meeting.

Resources