const admin = require('firebase-admin'); module.exports = async (req, res) => { console.info(`[START]\tWEBHOOKS/Conference End\nID:${req.body.conference.confId}\nParty:${req.body.conference.confAlias}`); if (req.body.eventType === 'Conference.Ended') { if (req.body.participants.length > 0) { if (req.body.confAlias.startsWith('AUTODELETE_')) { const partyName = req.body.confAlias.replace(/AUTODELETE_/, ""); admin.firestore() .collection('rooms') .doc(partyName) .update({ conference: admin.firestore.FieldValue.delete() }) .then(() => { console.info(`[DONE]\tWEBHOOKS/Conference End\nID:${req.body.conference.confId}\nParty:${req.body.conference.confAlias}`); return; }) .catch(err => { console.error(`[ERROR]\tWEBHOOKS/Conference End/Firebase Error\nID:${req.body.conference.confId}\nParty:${req.body.conference.confAlias}\nError:${JSON.stringify(err)}`) }); res.status(200).send({ message: 'Processed conference end'}); } } else { console.info(`[DONE]\tWEBHOOKS/Conference End/End Of Duplicate Conference\nID:${req.body.conference.confId}\nParty:${req.body.conference.confAlias}`); } } else { console.error(`[ERROR]\tWEBHOOKS/Conference End/Wrong Event Type\nID:${req.body.conference.confId}\nParty:${req.body.conference.confAlias}`) res.status(400).send({ message: 'Wrong event type' }); } return; };