General
¿Cuál es la estructura de los recursos de Notification Hubs?
Azure Notification Hubs tiene dos niveles de recursos, concentradores y espacios de nombres. Un concentrador es un recurso de inserción que puede contener la información de inserción multiplataforma de una aplicación. Un espacio de nombres es una colección de concentradores en una región. La asignación recomendada hace coincidir un espacio de nombres con una aplicación. Dentro de un espacio de nombres, puede tener un concentrador de producción que funcione con la aplicación de producción, un concentrador de prueba que funcione con la aplicación de prueba, etc.
¿Cuál es el modelo de precios para Notification Hubs?
Los detalles más recientes sobre los precios pueden encontrarse en la página Precios de Notification Hubs. Notification Hubs se factura a nivel de espacio de nombres. (Si necesita ver la definición de espacio de nombres, consulte "¿Cuál es la estructura de los recursos de Notification Hubs?") Notification Hubs ofrece tres niveles:
- Gratis: este nivel es un buen punto de partida para explorar las funcionalidades de inserción. No se recomienda para las aplicaciones de producción. Se incluyen 500 dispositivos y 1 millón de inserciones por suscripción por mes, sin garantía de Acuerdo de Nivel de Servicio (SLA).
- Básico: este nivel (o el Estándar) se recomienda para las aplicaciones de producción más pequeñas. Se incluyen 200 000 dispositivos y 10 millones de inserciones por suscripción por mes como línea base.
- Estándar: es el nivel recomendado para aplicaciones de producción de tamaño medio a grande. Se incluyen 10 millones de dispositivos y 10 millones de inserciones por suscripción por mes como línea base. Incluye telemetría enriquecida (se proporcionan datos adicionales sobre el estado de inserción).
Características del nivel Estándar:
- Telemetría enriquecida: puede usar Telemetría por mensaje de Notification Hubs para realizar el seguimiento de cualquier solicitud de inserción y comentarios del Sistema de notificación de plataforma para depurar.
- Servicios multiinquilino: puede trabajar con credenciales del Sistema de notificación de plataforma en el nivel de un espacio de nombres. Esta opción permite dividir fácilmente los inquilinos en los concentradores dentro del mismo espacio de nombres.
- Inserción programada: puede programar que las notificaciones se envíen en cualquier momento.
- Operaciones masivas: Permite la funcionalidad de exportación/importación de registros, tal como se describe en el documento Procedimiento: cómo exportar y modificar registros en bloque.
¿Cuál es el SLA de Notification Hubs?
En el caso de los niveles Básico y Estándar de Notification Hubs, las aplicaciones configuradas correctamente pueden enviar notificaciones push o realizar operaciones de administración de registros al menos un 99,9 por ciento del tiempo. Para más información sobre el Acuerdo de Nivel de Servicio, vaya a la página Contrato de nivel de servicio para Notification Hubs.
Nota:
Dado que las notificaciones push dependen de Sistemas de notificación de plataforma de terceros como Apple Push Notification Service (APNs) y Google's Firebase Cloud Messaging (FCM), no hay ninguna garantía de Acuerdo de Nivel de Servicio para la entrega de estos mensajes. Una vez que Notification Hubs envía los lotes a los Sistemas de notificación de plataforma (Acuerdo de Nivel de Servicio garantizado), entregar las notificaciones es responsabilidad de los Sistemas de notificación de plataforma (no se garantiza ningún Acuerdo de Nivel de Servicio).
¿Cómo se puede subir o bajar de nivel mi concentrador o espacio de nombres?
Vaya a Azure Portal>Espacios de nombres de Notification Hubs o Notification Hubs. Seleccione el recurso que desea actualizar y, luego, vaya a Plan de tarifa. Tenga en cuenta los siguientes requisitos:
- El plan de tarifa actualizado se aplica a todos los concentradores del espacio de nombres con el que esté trabajando.
- Si el número de dispositivos supera el límite del nivel al que está cambiando, deberá eliminar dispositivos antes de bajar de nivel.
Diseño y desarrollo
¿Qué plataformas de servicio se admiten?
Hay SDK de servidor para .NET, Java, Node.js, PHP y Python. Las API de Notification Hubs se basan en interfaces REST, por lo que puede trabajar directamente con las API de REST si usa distintas plataformas o no desea una dependencia adicional. Para más información, vaya a la página API de REST de Notification Hubs.
¿Qué plataformas de cliente se admiten?
Las notificaciones de inserción son compatibles con iOS, Android, Windows Universal, Windows Phone, Android China (vía Baidu), Xamarin iOS y Android y Safari. Para más información, vea la página Tutoriales de introducción a Notification Hubs.
¿Se admiten notificaciones por mensaje de texto, correo electrónico o web?
Notification Hubs envía notificaciones a los dispositivos que ejecutan aplicaciones móviles. No ofrece funcionalidades de correo electrónico ni mensaje de texto. Notification Hubs tampoco proporciona un servicio de entrega de notificaciones push en el explorador listo para usarse. Los clientes pueden implementar esta característica con SignalR sobre las plataformas de servidor admitidas.
¿Cuántos dispositivos puedo admitir si envío notificaciones push a través de Notification Hubs?
Consulte la página Precios de Notification Hubs para detalles sobre la cantidad de dispositivos admitidos.
Si necesita compatibilidad con más de 10 millones de dispositivos registrados, debe crear particiones de los dispositivos en varios espacios de nombres.
¿Cuántas notificaciones de inserción puedo enviar?
Dependiendo del nivel seleccionado, Azure Notification Hubs realizará un escalado vertical y automático en función del número de notificaciones que fluyan a través del sistema.
Nota:
El costo de uso total puede aumentar en función del número de notificaciones push enviadas. Asegúrese de conocer los límites de nivel que se describen en la página Precios de Notification Hubs.
Nuestros clientes usan Notification Hubs para enviar millones de notificaciones push a diario. No es necesario hacer nada especial para escalar la cobertura de las notificaciones push, siempre y cuando esté usando Azure Notification Hubs.
¿Cuánto tiempo pasa desde que las notificaciones push enviadas llegan a mi dispositivo?
En un escenario de uso normal, donde la carga entrante es coherente y uniforme, Azure Notification Hubs puede procesar al menos el envío de 1 millón de notificaciones push en un minuto. Esta velocidad puede variar según el número de etiquetas, la naturaleza de los envíos entrantes y otros factores externos.
Durante el tiempo estimado de entrega, el servicio calcula los destinos por plataforma y enruta los mensajes Push Notification Service (PNS) según las etiquetas registradas o las expresiones de etiquetas. Enviar notificaciones al dispositivo es responsabilidad de PNS.
PNS no garantiza ningún Acuerdo de Nivel de Servicio por la entrega de notificaciones. Sin embargo, la mayoría de las notificaciones push se entregan a los dispositivos de destino en cuestión de minutos (habitualmente en 10 minutos) desde el momento en que se envían a Notification Hubs. Algunas notificaciones podrían tardar más.
Nota:
Azure Notification Hubs tiene una directiva para retirar las notificaciones push que no se pueden entregar a PNS dentro de 30 minutos. Este retraso puede ocurrir por una serie de motivos, aunque más comúnmente se debe a que PNS está limitando la aplicación.
¿Hay alguna garantía de latencia?
Debido a la naturaleza de las notificaciones push (la entrega la realiza un PNS externo específico para la plataforma), no hay ninguna garantía de latencia. Habitualmente, la mayoría de las notificaciones push se entregan en cuestión de minutos.
¿Dónde almacena los datos Azure Notification Hubs?
Azure Notification Hubs almacena los datos de registro del cliente en la región seleccionada por el cliente. Notification Hubs ofrece cobertura de recuperación ante desastres de metadatos (el nombre de Notification Hubs, la cadena de conexión y otra información crítica). En todas las regiones, excepto Sur de Brasil y Sudeste Asiático, la copia de seguridad de metadatos se hospeda en otra región (normalmente la región emparejada de Azure). En el caso de las regiones Sur de Brasil y Sudeste Asiático, las copias de seguridad se almacenan en la misma región para adaptarse a los requisitos de residencia de datos de dichas regiones.
¿Qué es necesario considerar a la hora de diseñar una solución con espacios de nombres y centros de notificaciones?
Entorno/aplicación móvil
- Use un centro de notificaciones por aplicación móvil por entorno.
- En un escenario multiinquilino, cada inquilino debe tener un centro independiente.
- No comparta nunca el mismo centro de notificaciones para entornos de producción y prueba. Si lo hace, podría tener problemas al enviar notificaciones. (Apple ofrece puntos de conexión de inserción de producción y espacio aislado, cada uno con credenciales independientes).
- De forma predeterminada, puede enviar notificaciones de prueba a los dispositivos registrados a través de Azure Portal o del componente de Azure integrado en Visual Studio. El umbral se establece en 10 dispositivos que se seleccionan de forma aleatoria desde el grupo de registro.
Nota:
Si el centro se configuró originalmente con un certificado de espacio aislado de Apple y luego se reconfiguró para usar un certificado de producción de Apple, los tokens originales de dispositivo no son válidos. Los tokens no válidos generan errores en las inserciones. Separe los entornos de producción y prueba y use centros distintos para entornos diferentes.
Credenciales PNS:
Cuando una aplicación móvil se registra con un portal para desarrolladores de una plataforma (por ejemplo, Apple o Google), se envían tokens de seguridad y un identificador de aplicación. El back-end de aplicación proporciona estos tokens al PNS de la plataforma para que se puedan enviar notificaciones push a los dispositivos. Los tokens de seguridad pueden tener el formato de certificados (por ejemplo, Apple iOS o Windows Phone) o claves de seguridad (por ejemplo, Google Android o Windows). Se deben configurar en los centros de notificaciones. La configuración habitualmente se hace en el nivel de centro de notificaciones, pero también se puede hacer en el nivel de espacio de nombres en un escenario multiinquilino.
Espacios de nombres
Los espacios de nombres pueden usarse para la agrupación de implementación. También se pueden usar para representar todos los centros de notificaciones para todos los inquilinos de la misma aplicación en un escenario multiinquilino.
Distribución geográfica
La distribución geográfica no siempre es fundamental en el caso de las notificaciones push. Los diversos PNS (por ejemplo, APNs o FCM) que entregan notificaciones push a los dispositivos no están distribuidos de manera uniforme.
Si tiene una aplicación que se usa globalmente, puede crear centros en distintos espacios de nombres; para ello, se usa el servicio de Notification Hubs en distintas regiones de Azure de todo el mundo.
Nota:
No se recomienda esta disposición porque aumenta el costo de administración, en especial para los registros. Solo se debe hacer si es explícitamente necesario.
¿Debo hacer registros desde el back-end de aplicación o directamente a través de los dispositivos cliente?
Los registros desde el back-end de aplicación son útiles cuando tiene que autenticar clientes antes de crear el registro. También son útiles cuando se tienen etiquetas que el back-end de aplicación debe crear o modificar según la lógica de aplicación. Para más información, vaya a las páginas Registro desde el back-end de la aplicación y Administración de registro.
¿Cuál es el modelo de seguridad de entrega de las notificaciones push?
Azure Notification Hubs usa un modelo de seguridad basado en firma de acceso compartido. Puede usar los tokens de firma de acceso compartido en el nivel de espacio de nombres raíz o en el nivel de centro de notificaciones detallado. Los tokens de firma de acceso compartido se pueden establecer para que sigan distintas reglas de autorización, por ejemplo, para enviar permisos de mensajes o para escuchar los permisos de notificaciones. Para más información, consulte el documento sobre el modelo de seguridad de Notification Hubs.
¿Cómo debo controlar la carga confidencial de las notificaciones push?
Todas las notificaciones se entregan a los dispositivos de destino mediante el PNS de la plataforma. Cuando se envía una notificación a Azure Notification Hubs, se procesa y transmite al PNS respectivo.
Todas las conexiones, desde el remitente a Azure Notification Hubs al PNS, usan HTTPS.
Nota:
Azure Notification Hubs no registra la carga de los mensajes.
Para enviar cargas confidenciales, se recomienda usar un patrón de inserción segura. El remitente entrega una notificación de ping con un identificador de mensaje al dispositivo sin la carga confidencial. Cuando la aplicación del dispositivo recibe la carga, llama directamente a una API segura para capturar los detalles del mensaje. Para una guía sobre cómo implementar este patrón, vaya a la página del tutorial sobre inserciones seguras de Notification Hubs.
Operations
¿Qué compatibilidad se proporciona para la recuperación ante desastres?
¿Están todos mis datos almacenados en un formato cifrado?
Azure Notification Hubs cifra todos los datos en reposo del cliente a excepción de las etiquetas de registro. Por esta razón, no debe almacenar datos personales o confidenciales mediante etiquetas.
¿Hay alguna funcionalidad de registro de auditoría?
Sí. Todas las operaciones de administración de Notification Hubs actualizan el registro de actividad de Azure que se expone en Azure Portal. El registro de actividad de Azure proporciona información sobre las operaciones que se realizan en los recursos de las suscripciones. Con el registro de actividad, se puede dar respuesta a los interrogantes qué, quién y cuándo de las operaciones de escritura (PUT, POST y DELETE) realizadas en los recursos de la suscripción. También permite entender el estado de las operaciones y otras propiedades relevantes. Sin embargo, el registro de actividad no incluye las operaciones de lectura (GET).
¿Detecta Notification Hubs la desinstalación?
Si almacenó el dispositivo como un Registration
, la primera vez que envía a ese registro y el PNS responde con un código de estado de error que indica que el dispositivo no es válido, el dispositivo se elimina del centro de notificaciones.
Si almacenó los dispositivos mediante las API de Installation
, no se eliminarán en el escenario anterior. Esta decisión se tomó para conservar etiquetas y otros metadatos sobre un usuario determinado que podría ser relevante si el usuario vuelve a instalar.
En el caso de los registros y las instalaciones, puede establecer una expiración para que el dispositivo se limpie automáticamente en un momento dado. Un patrón común es que la aplicación cliente actualice esa fecha de expiración una vez al día para volver a moverla siempre que el usuario use la aplicación.
Supervisión y solución de problemas
¿Qué funcionalidades de solución de problemas hay disponibles?
Azure Notification Hubs proporciona varias características de solución de problemas, especialmente para el escenario más común relacionado con las notificaciones quitadas. Para detalles, consulte las notas del producto sobre la solución de problemas de Notification Hubs.
¿Qué características de telemetría hay disponibles?
Azure Notification Hubs le permite ver los datos de telemetría en Azure Portal. Puede encontrar detalles sobre las métricas en la página Métricas de Notification Hubs.
También puede acceder a las métricas mediante programación. Para más información, consulte los siguientes artículos.
- Retrieve Azure Monitor metrics with .NET (Recuperación de métricas de Azure Monitor con .NET). En este ejemplo, se utiliza el nombre de usuario y la contraseña. Si quiere usar un certificado, sobrecargue el método FromServicePrincipal para proporcionar un certificado, tal y como se muestra en este ejemplo.
- Getting metrics and activity logs for a resource (Obtención de métricas y registros de actividad de un recurso)
- Tutorial sobre la API de REST de supervisión de Azure
Nota:
La entrega correcta de las notificaciones significa simplemente que las notificaciones push se entregaron al PNS externo (por ejemplo APNs para iOS y macOS, o FCM para dispositivos Android). Entregar las notificaciones a los dispositivos de destino es responsabilidad del PNS. Habitualmente, el PNS no muestra las métricas de entrega a terceros.