Envío de una notificación push en PowerAppsSend a push notification in PowerApps

Las notificaciones push se utilizan en aplicaciones para dispositivos móviles en escenarios tanto empresariales como de consumo para interactuar con los usuarios de las aplicaciones y les ayuda a dar prioridad a las tareas clave.Push notifications are used in mobile apps for consumer and business scenarios primarily to engage app users and help them prioritize key tasks. En PowerApps, se pueden enviar notificaciones mediante el conector PowerApps Notification.In PowerApps, you can send notifications by using the PowerApps Notification connector. Puede enviarse notificaciones push nativas a cualquier aplicación que se cree en PowerApps.You can send native push notifications to any app that you create in PowerApps. Está previsto agregar más tipos de notificación en el futuro.We plan to add more notification types in the future.

Ejemplo de cómo es una notificación push

Las notificaciones push se agregan a aplicaciones en los siguientes casos:Add a push notification to your app if:

  • Los usuarios necesitan conocer la información inmediatamente.Your users need to know information immediately.
  • Los usuarios deben completar tareas importantes mediante el uso de la aplicación en un contexto cargado previamente.Your users must complete important tasks by using your app, in a preloaded context.
  • Desea ponerse en contacto a los usuarios en un intervalo específico o necesita que los usuarios interactúen con la aplicación en un contexto concreto.You want to engage your users on a specific interval, or you need users to enter the app in a specific context.

Nota: para recibir notificaciones push, todos los usuarios deben haber abierto la aplicación en PowerApps Mobile una vez o haber obtenido la aplicación en AppSource en Dynamics 365.Note: To receive push notifications, each user must have opened the app in PowerApps Mobile once or gotten the app from AppSource in Dynamics 365.

Antes de comenzarBefore you start

En una aplicación en la que tenga permiso de colaborador, agregue una conexión de PowerApps Notification.In an app for which you have the Contributor permission, add a PowerApps Notification connection. Si no tiene una aplicación, puede crearla rápidamente a partir de una plantilla, y tendrá el permiso necesario de forma predeterminada.If you don't already have an app, you can quickly create one from a template, and you'll have the required permission by default. Este tutorial y éste usan una aplicación basada en la plantilla de administración de casos.That tutorial and this one use an app based on the Case Management template.

Envío de una notificación desde un flujoSend a notification from a flow

Nota: si desencadena una notificación push desde un flujo, dicha notificación no se puede enviar a más de un usuario o grupo de seguridad la vez.Note: If you trigger a push notification from a flow, you can send the notification to only one user or security group at a time currently.

  1. En Microsoft Flow, cree un desencadenador que especifique cuándo se envía la notificación push.In Microsoft Flow, create a trigger that specifies when the push notification is sent.

    Por ejemplo, puede enviar una notificación cuando se agregue un registro a la entidad Case de Common Data Service.For example, you might want to send a notification when a record is added to the Case entity in the Common Data Service.

    Captura de pantalla de la creación de un flujo con un desencadenador de Common Data Service

  2. Cree una acción para el flujo mediante el conector PowerApps Notification y escriba la identificador de la aplicación a la que desea enviar notificaciones.Create an action for the flow by using the PowerApps Notification connector, and enter the App ID of the app to which you want to send notifications.

    También puede cambiar el nombre de la conexión para que refleje su escenario.You can also rename the connection to reflect your scenario.

    Captura de pantalla de creación de una conexión con la instancia de PowerApps que recibirá las notificaciones push

  3. (opcional) Pase parámetros a la aplicación cuando se abra (después de que el usuario pulse la notificación push).(optional) Pass parameters to the app when it opens (after the user taps the push notification).

    En este ejemplo, se distribuyen los campos Case ID e Initial Owner del contacto seleccionado.In our example, we pass along the Case ID and Initial Owner fields for the selected contact.

    Captura de pantalla del paso de parámetros opcionales en la notificación push

Envío de una notificación desde una aplicaciónSend a notification from an app

Puede enviar una notificación push de una aplicación a otra o a la misma aplicación.You can send a push notification from one app to another or to the same app.

  1. En PowerApps, vaya a la aplicación a la que desea enviar notificaciones push.In PowerApps, go to the app to which you want to send push notifications.
  2. En la pestaña Detalles, copie el contenido de Id. de la aplicación de dicha aplicación.On the Details tab, copy the App ID of that app.

    Obtener el identificador de la aplicación

  3. Vaya a la pestaña Conexiones, cree una conexión con el conector PowerApps Notification y péguela en el identificador de la aplicación del paso anterior.On the Connections tab, create a connection to the PowerApps Notification connector, and paste in the app ID from the previous step.

    Crear conexión

  4. Agregue la conexión a la aplicación de desencadenador.Add the connection to the trigger app.

    En nuestro ejemplo, usamos la misma aplicación que la aplicación de desencadenador.In our example, we use the same app as the trigger app. El usuario que se reasigna el caso también desencadena una notificación push para el nuevo propietario del caso.The user who reassigns the case also triggers a push notification to the new case owner.

    Añadir conexión

  5. Desde la conexión de la notificación push, llame al método SendPushNotification.From the push notification connection, call the SendPushNotification method.

    En nuestro ejemplo, esta notificación se desencadena mediante el uso de la propiedad OnSuccess en un formulario.In our example, we trigger this notification by using the OnSuccess property in a form.

    Fórmula de PowerApps

Carga de una página y contexto concretos cuando un usuario pulsa la notificaciónLoad a specific page and context when a user taps the notification

Paso de parámetrosPass parameters

Su notificación push puede pasar parámetros concretos a la aplicación.Your push notification can pass specific parameters to the app. Por ejemplo, para leer el valor de CaseID, use Param("CaseID").For example, to read the CaseID value, use Param("CaseID"). Para identificar rápidamente dicho parámetro, agregue un control Etiqueta a la aplicación.To quickly identify this parameter, add a Label control to your app. Establezca la propiedad Texto de dicho control en Param("CaseID").Set the Text property of that control to Param("CaseID"). Si el usuario abre la aplicación desde la lista Todas las aplicaciones, el valor estará vacío.If the user opens the app from the All apps list, the value is empty. Si el usuario abre la aplicación desde otra ubicación del dispositivo, el valor se rellena con el valor de CaseID.If the user opens the app from another location on the device, the value is populated with the CaseID value.

Establecimiento de la página de inicioSet the start page

Puede establecer que la aplicación abra, por ejemplo, la página Detalles del caso en cuanto se abra la aplicación:You can set your app to open, for example, the Case details page as soon as the app opens:

  1. Agregue un control Timer (Temporizador) y establezca su propiedad OnTimerEnd en esta fórmula:Add a Timer control, and set its OnTimerEnd property to this formula:
    Navigate(EditCase, ScreenTransition.None)Navigate(EditCase, ScreenTransition.None)
  2. (opcional) Oculte el control Timer (Temporizador) estableciendo la propiedad Visible en false.(optional) Hide the Timer control by setting its Visible property to false.
  3. Establezca la propiedad AlEstarVisible de la pantalla en Timer.Start().Set the OnVisible property of the screen to Timer.Start().

Sugerencia: se recomienda crear una primera página única en la aplicación de la notificación:Tip: It's a good idea to create a unique first page in the app for the notification:

  1. Cree una página vacía que la aplicación no abra, agregue un control Entrada de texto y establezca su valor timer.Duration.Create an empty page that your app doesn't already open, add a Text Input control, and set its timer.Duration value.
  2. Cuando cree la aplicación, establezca el temporizador en un valor distinto de cero.When you create the app, set the timer to a non-zero value. Cuando esté listo para publicar la aplicación, establezca el valor en 0 para desencadenar inmediatamente el temporizador.When you're ready to publish the app, set the value to 0 to immediately trigger the timer.

SintaxisSyntax

NombreName DescripciónDescription
SendPushNotificationSendPushNotification Envía una notificación push a la aplicación que se especifica en la configuración de conexión de la notificación.Sends a push notification to the app that's specified in the connection settings for the notification.

ParámetrosParameters

NombreName TipoType DescripciónDescription
recipientsrecipients Matriz de cadenas, se requiereString array, required Una lista de:A list of:
  • Direcciones de correo electrónico para usuarios o grupos de seguridadEmail addresses for users or security groups
  • Identificadores de objeto para usuarios o grupos de seguridad de Azure Active DirectoryObject IDs for users or security groups in Azure Active Directory
messagemessage Cadena, se requiereString, required El cuerpo del mensaje de la notificación push.The message body of the push notification.
openAppopenApp Booleano, opcionalBoolean, optional Si la aplicación se abre cuando el usuario pulsa la notificación push.Whether to open the app when the user taps the push notification.
paramsparams Parámetros, opcionalParameters, optional Parámetros de clave y valor que se pasan con la notificación.Key-value parameters to pass with the notification. Se pueden procesar más en la aplicación para abrir una página concreta y cargar un estado concreto.These can be further processed in the app to open a specific page and load a specific state.

Fórmulas de ejemploSample formulas

Enviar una notificación básica.Send a basic notification.

PowerAppsNotification.SendPushNotification(
{
  recipients: [""f60ccf6f-7579-4f92-967c-2920473c966b", 72f988bf-86f1-41af-91ab-2d7cd011db47],
  message: "A new case was assigned to you."
 }
)

Enviar una notificación que abra una aplicación y distribuya parámetros concretos.Send a notification that opens an app and passes along specific parameters.

PowerAppsNotification.SendPushNotification(
{
  recipients:["email1@contoso.com", "email2@contoso.com"],
  message:"message in the notif toast",
  params:Table({key:"notificationKey", value:"The value for notificationKey"}),
  openApp:true
 }
)

Limitaciones conocidasKnown limitations

  • Actualmente, las notificaciones no se muestran en PowerApps Mobile para Windows Phone.Currently, notifications aren't displayed on PowerApps Mobile for Windows Phone.
  • Actualmente, no proporcionamos notificaciones push a los usuarios que ejecutan aplicaciones solo en un explorador web.Currently, we don't provide push notifications for users who run apps only in a web browser.
  • Las notificaciones muestran el icono de PowerApps genérico, en lugar de un icono específico de la aplicación.Notifications show the generic PowerApps icon instead of a specific app icon.
  • Cuando se utiliza Microsoft Flow, no se pueden enviar notificaciones push a varios destinatarios a la vez.When you use Microsoft Flow, you can send a push notification to only one recipient at a time.

Para obtener información de referencia, consulte el artículo PowerApps Notification (versión preliminar).For reference information, see PowerApps Notification reference.