Amplía Google Analytics con Cloud Functions

Google Analytics proporciona informes de eventos que te ayudan a comprender la forma en que los usuarios interactúan con tu app. Cloud Functions (1ª gen.) te permite acceder a los eventos de conversión que registraste desde dispositivos Apple y Android, y activar funciones cuando se generen.

Activa una función de Google Analytics

Cloud Functions es compatible con AnalyticsEvent de Google Analytics. Este evento se activa cada vez que la actividad del usuario genera un evento de conversión. Por ejemplo, puedes escribir una función que se active cuando se genere el evento in_app_purchase para indicar que se produjo una compra directa desde la app. Debes especificar el evento de Analytics que deseas que active la función con el método functions.analytics.event() y supervisar el evento en el controlador onLog(), como se muestra a continuación:

exports.sendCouponOnPurchase = functions.analytics.event('in_app_purchase').onLog((event) => {
  // ...
});

Accede a los atributos del evento

Con cada evento de Analytics, tienes acceso a todos los parámetros y las propiedades de usuario relevantes. Estos incluyen información sobre el usuario, el dispositivo, la app y la información geográfica del evento. Para obtener una lista completa de los parámetros y las propiedades del usuario, consulta la referencia de functions.analytics.

Para usar una función activada por una compra, como se ilustra en esta muestra, te recomendamos acceder a los atributos del usuario, como su idioma y el valor del evento (valueInUSD). Este segundo atributo permite que la función de muestra evalúe si se trata de un evento de conversión de alto valor a fin de enviarles un cupón por un importe superior a los clientes valiosos.

/**
 * After a user has completed a purchase, send them a coupon via FCM valid on their next purchase.
 */
exports.sendCouponOnPurchase = functions.analytics.event('in_app_purchase').onLog((event) => {
  const user = event.user;
  const uid = user.userId; // The user ID set via the setUserId API.
  const purchaseValue = event.valueInUSD; // Amount of the purchase in USD.
  const userLanguage = user.deviceInfo.userDefaultLanguage; // The user language in language-country format.

  // For purchases above 500 USD, we send a coupon of higher value.
  if (purchaseValue > 500) {
    return sendHighValueCouponViaFCM(uid, userLanguage);
  }
  return sendCouponViaFCM(uid, userLanguage);
});

Próximos pasos

Si necesitas más información para manejar los eventos de Analytics en Cloud Functions, consulta la documentación de Google Analytics y la referencia de functions.analytics. Luego, ejecuta el código de muestra coupon-on-purchase.