update holidays google for event calendarservice apis google-api google-calendar

google-api - holidays - google calendar event



GoogleCalendarAPI aceptar/rechazar evento (3)

Estoy trabajando en GoogleCalendar API y utilizando node.js como una plataforma para construir mi aplicación. Puedo crear eventos usando el procedimiento de autenticación y creando el evento del calendario usando el token de acceso generado durante la autenticación.

Mi pregunta es: supongamos que si tenemos un asistente en el evento y quiero aceptar / rechazar el evento usando la API de calendario del lado del asistente, ¿cómo podemos hacer eso?

Intenté buscar el evento del calendario del asistente y compararlo con el iCalUID del evento que se creó originalmente y luego modificar el evento utilizando el evento de actualización en el calendario del asistente.


El creador o el propietario del evento no puede modificar la respuesta de los asistentes. Solo los asistentes pueden modificar su estado.

Para actualizar el estado en el lado del usuario, puede usar Event.update API y proporcionar valor para ''attendees.responseStatus''. El estado de respuesta del asistente tiene 4 (cuatro) valores posibles (se describe a continuación).

''needsAction'' - no ha respondido a la invitación. ''rechazado'': ha rechazado la invitación. ''tentativo'' - ha aceptado tentativamente la invitación ''aceptado'' - ha aceptado la invitación.

Además de esto, puede usar la palabra "principal" como valor para el ID del calendario para representar al usuario que está conectado actualmente.

CalendarId: identificador de calendario. Para recuperar los ID de calendario, llame al método calendarList.list. Si desea acceder al calendario principal del usuario actualmente conectado, use la palabra clave "principal". (cuerda).

Para el ID, debe usar el "id" devuelto por la API Events.list no el "iCalUID". Esos dos son diferentes como se describe aquí .

Otros campos que debe proporcionar son el correo electrónico (del asistente), fecha de inicio y fecha de finalización.

Para obtener más información, puede ver la documentación oficial, enlace a continuación: https://developers.google.com/google-apps/calendar/v3/reference/events


Para responder, debe obtener el evento con el mismo ID de evento del calendario del asistente y luego realizar un parche o una operación de actualización cambiando el estado de respuesta de este asistente de needsAction a accept / refused.

Un poco de documentación sobre cómo se copian los eventos entre los asistentes y los organizadores: https://developers.google.com/google-apps/calendar/concepts/sharing


Aquí hay un ejemplo en java, usando PATCH. Cree un objeto de evento con la información que desea cambiar, en este caso, el asistente y el estado de la respuesta. Este código se está ejecutando como el asistente.

final Event event = new Event() .setAttendees(Arrays.asList(new EventAttendee().setEmail(email) .setResponseStatus("declined"))); try getCalendarService(googleAccountCredential).events() .patch(CALENDAR_PRIMARY, calendarEventId, event) .setSendNotifications(true) .setOauthToken(googleAccountCredential.getToken()).execute(); return true; } catch (final Exception ex) { ... return false; } }