Mi aplicación utiliza eventos de Google para programar citas para los usuarios y permitirles enviar invitaciones a sus clientes. Los eventos y todas las invitaciones se están configurando correctamente. Sin embargo, las invitaciones por correo electrónico enviadas a los usuarios tienen la fecha establecida en UTC o la fecha está en la zona horaria predeterminada del organizador en lugar de la zona horaria predeterminada del invitado. A continuación se muestra mi objeto de evento
const eventData = { "summary": "Appointment booking for service ABC" "description": "Appointment booking for service ABC", 'start': { 'dateTime': new Date(booking.date+" UTC"), 'timeZone': defaultTimezone() }, 'end': { 'dateTime': addDateMins(new Date(booking.date+" UTC"), parseInt(booking.duration)), 'timeZone': defaultTimezone() }, "extendedProperties": { "private": { "priority": "high" } }, 'attendees': [ { 'email' : client.email, 'displayName' :client.fName ? client.fName: "Unknown User", 'organizer' : false, 'responseStatus' : "needsAction", } ], 'reminders': { 'useDefault': false, 'overrides': [ {'method': 'email', 'minutes': 24 * 60}, {'method': 'popup', 'minutes': 10} ] } }; addEvent(eventData, gMeetVersion).then((gEventResult)=>{ console.log("yeey") })mi función de agregar evento es la siguiente:
export const addEvent = (eventData, conferenceDataVersion = 0)=>new Promise(function(successCallBack, errorCallback){ refreshGoogleTokens().then(()=>{ const user = JSON.parse(localStorage.getItem("user")) const headers = { "Content-Type": "application/json", "Authorization": "Bearer "+ user.token } const url = "https://www.googleapis.com/calendar/v3/calendars/primary/events?conferenceDataVersion=" +conferenceDataVersion+"&sendUpdates=all" axios.post(url, eventData, {headers:headers}) .then(successCallBack) .catch(errorCallback); }).catch(errorCallback) })