Puede activar una función en respuesta a eventos de Firebase Remote Config , incluida la publicación de una nueva versión de configuración o la reversión a una versión anterior. Esta guía describe cómo crear una función de fondo de Remote Config que realiza una diferencia de dos versiones de plantilla.
Activar una función de configuración remota
Para activar una función de configuración remota, use el controlador onUpdate
proporcionado por functions.remoteConfig
. El objeto TemplateVersion
devuelto por onUpdate
contiene los campos de metadatos clave para una actualización de plantilla, como el número de versión y la hora de la actualización. También puede recuperar el correo electrónico del usuario que realizó la actualización, con nombre y una imagen si está disponible.
Aquí hay un ejemplo de una función de configuración remota que devuelve una diferencia de cada versión actualizada y la versión que reemplazó. La función versionNumber
el campo número de versión del objeto de plantilla y recupera la versión actual (actualizada recientemente) junto con la versión un número inferior:
exports.showConfigDiff = functions.remoteConfig.onUpdate(versionMetadata => { return admin.credential.applicationDefault().getAccessToken() .then(accessTokenObj => { return accessTokenObj.access_token; }) .then(accessToken => { const currentVersion = versionMetadata.versionNumber; const templatePromises = []; templatePromises.push(getTemplate(currentVersion, accessToken)); templatePromises.push(getTemplate(currentVersion - 1, accessToken)); return Promise.all(templatePromises); }) .then(results => { const currentTemplate = results[0]; const previousTemplate = results[1]; const diff = jsonDiff.diffString(previousTemplate, currentTemplate); functions.logger.log(diff); return null; }).catch(error => { functions.logger.error(error); return null; }); });
Esta muestra usa los módulos json-diff
y request-promise
para crear la diferencia y compilar la solicitud para obtener el objeto de plantilla. Para obtener una muestra que incorpora la lógica del cliente de Remote Config, así como Firebase Cloud Messaging, consulte Propagación de actualizaciones de Remote Config en tiempo real .
Puede activar una función en respuesta a eventos de Firebase Remote Config , incluida la publicación de una nueva versión de configuración o la reversión a una versión anterior. Esta guía describe cómo crear una función de fondo de Remote Config que realiza una diferencia de dos versiones de plantilla.
Activar una función de configuración remota
Para activar una función de configuración remota, use el controlador onUpdate
proporcionado por functions.remoteConfig
. El objeto TemplateVersion
devuelto por onUpdate
contiene los campos de metadatos clave para una actualización de plantilla, como el número de versión y la hora de la actualización. También puede recuperar el correo electrónico del usuario que realizó la actualización, con nombre y una imagen si está disponible.
Aquí hay un ejemplo de una función de configuración remota que devuelve una diferencia de cada versión actualizada y la versión que reemplazó. La función versionNumber
el campo número de versión del objeto de plantilla y recupera la versión actual (actualizada recientemente) junto con la versión un número inferior:
exports.showConfigDiff = functions.remoteConfig.onUpdate(versionMetadata => { return admin.credential.applicationDefault().getAccessToken() .then(accessTokenObj => { return accessTokenObj.access_token; }) .then(accessToken => { const currentVersion = versionMetadata.versionNumber; const templatePromises = []; templatePromises.push(getTemplate(currentVersion, accessToken)); templatePromises.push(getTemplate(currentVersion - 1, accessToken)); return Promise.all(templatePromises); }) .then(results => { const currentTemplate = results[0]; const previousTemplate = results[1]; const diff = jsonDiff.diffString(previousTemplate, currentTemplate); functions.logger.log(diff); return null; }).catch(error => { functions.logger.error(error); return null; }); });
Esta muestra usa los módulos json-diff
y request-promise
para crear la diferencia y compilar la solicitud para obtener el objeto de plantilla. Para obtener una muestra que incorpora la lógica del cliente de Remote Config, así como Firebase Cloud Messaging, consulte Propagación de actualizaciones de Remote Config en tiempo real .