Firebase proporciona herramientas para personalizar la experiencia de los usuarios mediante la orientación a grupos de ellos en los servicios de Firebase, como Remote Config, In‑App Messaging y Cloud Messaging. Si usas una cuenta vinculada de BigQuery, puedes importar segmentos que hayas identificado fuera de Firebase para crear experiencias orientadas con los servicios de Firebase.
Configura los segmentos importados
Puedes usar Google Cloud BigQuery para importar datos de segmentos a Firebase. BigQuery proporciona varias formas de cargar datos, y puedes elegir la que se adapte mejor a tu configuración.
Cuando se habilita la integración, ocurre lo siguiente:
- Firebase crea un conjunto de datos en BigQuery que te pertenece, pero Firebase tiene acceso de lectura a él.
- Firebase transfiere los datos de forma periódica, lo que permite que los segmentos actualizados estén disponibles en Firebase console para la segmentación.
- Firebase solo tiene acceso de lectura a estos datos. Firebase guarda una copia de estos datos en su almacenamiento interno.
- Si se borra información del conjunto de datos de BigQuery, también se borrará del almacenamiento de Firebase.
Habilita la importación de BigQuery
- Ve a la página Integración de BigQuery en Firebase console.
- Si no configuraste la integración de BigQuery, sigue las instrucciones en pantalla para habilitar la herramienta. Firebase console">
- Habilita el botón de activación Segmentos importados (Imported segments).
Cuando habilitas la importación de segmentos de BigQuery, ocurre lo siguiente:
- Firebase crea automáticamente un nuevo conjunto de datos de BigQuery llamado
firebase_imported_segments
, que contiene tablas vacías llamadasSegmentMemberships
ySegmentMetadata
. - El conjunto de datos “firebase_imported_segments” también se comparte con una cuenta de servicio de Firebase con el dominio
@gcp-sa-firebasesegmentation.iam.gserviceaccount.com
. - Firebase ejecuta un trabajo cada 12 horas como mínimo para leer este conjunto de datos y puede realizar importaciones con una frecuencia mayor.
Importa datos a BigQuery
Puedes usar cualquier mecanismo admitido para cargar datos en BigQuery y propagar las tablas SegmentMemberships
y SegmentMetadata
. Los datos deben seguir el esquema que se describe a continuación:
SegmentMemberships
[
{
"name": "instance_id",
"type": "STRING"
},
{
"name": "segment_labels",
"type": "STRING",
"mode": "REPEATED"
},
{
"name": "update_time",
"type": "TIMESTAMP"
}
]
instance_id: Es el ID de instalación de Firebase de una instalación específica de la app. Deberás recuperar el ID de instalación de cada instalación de la app que quieras incluir en un segmento y usar esos valores para completar este campo.
segment_labels: Son los segmentos en los que se incluyen
los dispositivos ("instance_id"
). No es obligatorio que sean fáciles de comprender para seres humanos, y pueden ser cortos a fin de disminuir el uso de almacenamiento de BigQuery. Todas las "segment_labels"
que se usen aquí debe tener una entrada correspondiente en la tabla SegmentMetadata
. Ten en cuenta que esta es la forma plural, mientras que la tabla SegmentMetadata
tiene el campo "segment_label"
.
update_time: Firebase no usa este valor en la actualidad, pero permite borrar de BigQuery las membresías de segmentos antiguas que ya no se usen.
SegmentMetadata
[
{
"name": "segment_label",
"type": "STRING"
},
{
"name": "display_name",
"type": "STRING"
}
]
segment_label: Permite identificar un segmento específico. Cada segmento de la tabla SegmentMemberships
debe tener una entrada correspondiente en esta. Ten en cuenta que esta es la forma singular, mientras que la tabla SegmentMemberships tiene el campo "segment_labels"
.
display_name: Es un nombre legible y compatible con la IU para el segmento, Se usa para etiquetar tu segmento en Firebase console.
Configura la facturación de BigQuery
Si pruebas la función nueva en una app que tiene muy pocas instalaciones, es posible que solo debas configurar la zona de pruebas de BigQuery.
Sin embargo, si la usas en una app de producción que tiene muchos usuarios, debes configurar la facturación para el uso de BigQuery a fin de pagar el almacenamiento y el mecanismo utilizado para cargar datos en BigQuery. No se te cobrará por las operaciones de lectura que inicie Firebase.
Desactiva la integración
Para desactivar esta integración, ve a la página Integración de BigQuery en Firebase console y desactiva el botón de activación Segmentos personalizados.
Usa los segmentos importados
Una vez que se transfieran los datos, estarán disponibles en Firebase console para la orientación con servicios como Remote Config o In-App Messaging. Funciona de la misma manera que la segmentación con propiedades o públicos de Google Analytics.
Puedes usar "Segmentos importados" (Imported segments) como uno de los atributos de orientación, y los segmentos que importaste estarán disponibles para seleccionarlos. También incluyen una aproximación de la cantidad de instancias de la app que pertenecen a cada segmento.
Además, está disponible una aproximación de la cantidad de instancias que coinciden con todos los criterios de orientación. Este valor se actualiza a medida que modificas los criterios de orientación.
Casos de uso
Existen diversas formas de utilizar los segmentos importados a fin de crear experiencias orientadas para los usuarios. En esta sección, se describen algunas situaciones comunes en las que puedes usar la función.
Envía notificaciones a un grupo de usuarios
Supongamos que tienes una app que permite compras directas desde la aplicación con un carrito de compras. También puedes usar soluciones de estadísticas personalizadas o de terceros (que no tengan la tecnología de Google Analytics) para recopilar diversas métricas asociadas con el comportamiento que tienen los usuarios en tu app. Estas métricas te permiten identificar a un grupo de usuarios que agregaron artículos al carrito, pero que no completaron la confirmación de la compra.
Ahora, supongamos que quieres usar Firebase Cloud Messaging para enviar una notificación a estos usuarios y recordarles que tienen artículos en su carrito. Puedes crear un segmento llamado "confirmación-incompleta" y, además, incluir a estos usuarios, identificados por el ID de instalación de Firebase, y subirlo a BigQuery para compartirlo con Firebase.
Una vez que Firebase transfiera estos datos, el segmento estará disponible en el Compositor de Notifications, en el que podrás crear una nueva campaña de notificaciones orientada a “confirmación-incompleta” y enviar un mensaje para animar a los usuarios a completar la confirmación de la compra.
Configura una app para un subconjunto de usuarios
Supongamos que usas una solución de estadísticas interna que indica que algunos usuarios tienen dificultades para navegar por la app. A fin de ayudarlos, quieres configurar el comportamiento de la app para mostrarles un video instructivo corto.
Puedes incorporar Remote Config en tu app y usar un parámetro llamado, por ejemplo, "necesitan_ayuda", en la app para mostrar condicionalmente el video instructivo.
Con tus datos de estadísticas, crea un segmento llamado “usuarios-con-dificultades” que incluya a los usuarios adecuados, identificados por el ID de instalación de Firebase. Luego, sube el segmento y sus miembros a BigQuery para compartirlos con Firebase.
Una vez que Firebase transfiera estos datos, estarán disponibles en la consola de Remote Config como segmento de orientación. Luego, puedes crear una condición que se oriente a “usuarios-con-dificultades” y establecer el parámetro “necesitan_ayuda” como verdadero en esta condición y como falso en la configuración predeterminada. Cuando se publique la configuración, la app mostrará el video instructivo solo a los usuarios del segmento “usuarios-con-dificultades”.
Sigue los recorridos del usuario en distintos dispositivos
Imagina que compilaste una app de opiniones sobre restaurantes con Firebase y Google Analytics. Las métricas recopiladas indican que los usuarios suelen acceder a la app desde dispositivos móviles y tablets, y que prefieren escribir opiniones en tablets, pero pueden leerlas en cualquier dispositivo.
Algunos usuarios comienzan a escribir opiniones en el teléfono y se rinden, posiblemente debido al factor de forma más pequeño. Decides enviar una notificación a las tablets de esos usuarios para pedirles que terminen de escribir sus opiniones.
Para hacerlo, puedes definir un reviewerId generado internamente como UserId con Google Analytics para los usuarios que accedieron a sus cuentas y activar un evento para identificar las opiniones canceladas. Luego, puedes exportar los datos de Google Analytics de tu app a BigQuery.
Si analizas estos datos en BigQuery, puedes identificar el ID de instalación de Firebase de las tablets de los usuarios que no terminaron de escribir una opinión en el teléfono. Puedes asignarle el nombre “tablets-de-usuarios-que-cancelaron-en-el-teléfono” a este grupo y subir el segmento a BigQuery para compartir la lista de miembros con Firebase.
Una vez que Firebase transfiera estos datos, estarán disponibles en el Compositor de Notifications como segmento de orientación. Luego, puedes crear una nueva campaña de notificaciones orientada a “tablets-de-usuarios-que-cancelaron-en-el-teléfono” para enviar un mensaje a fin de animar a los usuarios a terminar de escribir sus opiniones en la tablet.