I am developing a calendar add-on. According to my use-case, the add-on needs to be updated for the below scenarios.
- Once the user opens an event.
- Once the user adds/deletes a guest from the guests list.
Now I am facing a performance lag for the second scenario, can see calendar.eventOpenTrigger has been called multiple times when I am adding a new guest. Is there any to prevent multiple event triggering?
Manifest
"calendar": {
"eventOpenTrigger": {
"runFunction": "onCalendarEventOpen"
},
"currentEventAccess": "READ"
}
Trigger Function
function onCalendarEventOpen(e) {
console.log(e);
if(e.calendar.attendees) {
var emails = e.calendar.attendees.map(attendee => attendee.email);
if(emails.length > 0) {
var w2pData = w2pClient().getUsersList(emails);
return buildW2pCommunicationCard(w2pData);
} else {
return createHomeCard();
}
} else {
return createHomeCard();
}
}
Log
