Compartir a través de


Enviar notificaciones en la aplicación dentro de aplicaciones basadas en modelos

Los desarrolladores de aplicaciones basadas en modelos pueden configurar notificaciones para que se muestren a los usuarios de la aplicación como una notificación emergente o dentro del centro de notificaciones. Su aplicación basada en modelos sondea automáticamente el sistema en busca de nuevas notificaciones y las muestra al usuario. El remitente de la notificación o su administrador del sistema pueden configurar cómo se muestra la notificación y cómo se puede descartar. Las notificaciones aparecen en el centro de notificaciones hasta que el destinatario las descarta o caducan. De forma predeterminada, una notificación caduca después de 14 días, pero su administrador puede anular esta configuración.

Las notificaciones son específicas del usuario. Cada notificación está destinada a un único usuario, identificado como destinatario en el momento del envío de la notificación. No se admite el envío de una notificación a un equipo. Si necesita enviar notificaciones a varios usuarios, debe crear notificaciones para cada usuario individual.

Este artículo describe los pasos para enviar notificaciones en la aplicación a un usuario específico. Para ver cómo aparecen estas notificaciones en las aplicaciones, consulte Notificaciones en aplicación en aplicaciones basadas en modelo.

Habilitar la característica de notificación en aplicación

Para usar la función de notificación en aplicación, debe habilitar el parámetro de configuración Notificaciones en la aplicación. Este parámetro de configuración se almacena dentro de la aplicación basada en modelo.

  1. Inicie sesión en Power Apps.

  2. Abra la solución que contiene la aplicación basada en modelo.

  3. Seleccione la aplicación controlada por modelos y seleccione el menú desplegable Editar para abrirla mediante el diseñador de aplicaciones moderno.

  4. Abra Configuración y cambie a Características.

  5. Habilite Notificaciones en aplicación.

    Página personalizada como página principal

  6. Seleccione Guardar para guardar los cambios en los parámetros de configuración.

  7. Seleccione Publicar en la aplicación basada en modelo.

Enviar notificaciones en aplicación básicas

Use el SendAppNotification mensaje para enviar notificaciones.

Para obtener más información sobre el mensaje y sus parámetros, vea SendAppNotification Action.

El SDK de Dataverse para .NET no incluye actualmente clases de solicitud y respuesta para el SendAppNotification mensaje. Para obtener clases fuertemente tipadas para este mensaje, debe generar clases o utilizar las clases subyacentes OrganizationRequest y OrganizationResponse. Para obtener más información, consulte Uso de mensajes con el SDK para .NET.

El SendAppNotification mensaje usa tipos abiertos, que habilitan las propiedades dinámicas en la notificación desde la aplicación. Por ejemplo, una notificación puede tener cero a muchas acciones y cada acción puede tener tipos de acción diferentes. Los tipos abiertos permiten tener propiedades dinámicas para las acciones según los tipos de acción seleccionados. Para más información, consulte Uso de tipos abiertos con API personalizadas.

Los siguientes ejemplos básicos muestran cómo usar la API para enviar notificaciones dentro de la aplicación.

Captura de pantalla de una notificación de bienvenida.

En este ejemplo se usa la función personalizada Example.SendAppNotificationRequest descrita en la sección Creación de una función para el script de cliente .

var SendAppNotificationRequest = new Example.SendAppNotificationRequest(
    title = "Welcome",
    recipient = "/systemusers(<GUID of the user>)",
    body = "Welcome to the world of app notifications!",
    priority = 200000000,
    iconType = 100000000,
    toastType = 200000000,
);

Xrm.WebApi.online.execute(SendAppNotificationRequest).then(function (response) {
    if (response.ok) {
        console.log("Status: %s %s", response.status, response.statusText);

        return response.json();
    }
})
.then(function (responseBody) {
    console.log("Response Body: %s", responseBody.NotificationId);
})
.catch(function (error) {
    console.log(error.message);
});

Sondeo de notificaciones

Las notificaciones en aplicación usan sondeos para recuperar notificaciones periódicamente cuando la aplicación se está ejecutando. La aplicación recupera nuevas notificaciones al inicio de la aplicación modelo y cuando se produce una navegación de página, siempre y cuando la última recuperación sea de más de un minuto. Si un usuario permanece en una página durante mucho tiempo, la aplicación no recupera nuevas notificaciones hasta que el usuario navega a otra página.

Tabla de notificación

La aplicación almacena las notificaciones enviadas mediante el SendAppNotification mensaje de la tabla Notificación (appnotification) (API appnotificationweb). En la tabla siguiente se muestran las columnas seleccionadas para la tabla.

Nombre Nombre de esquema Descripción
Puesto Title El título de la notificación.
Propietario OwnerId El usuario que recibe la notificación. Aunque esta columna se puede establecer en un usuario o equipo, establézcala solo en un usuario. No se puede establecer la notificación para un equipo.
Cuerpo Body Detalles sobre la notificación.
IconType IconType La lista de iconos predefinidos. El valor predeterminado es Info. Para obtener más información, vea Cambiar el icono de notificación más adelante en este artículo.
Tipo de notificación ToastType La lista de comportamientos de notificación. El valor predeterminado es Timed. Para obtener más información, consulte Cambio del comportamiento de notificación más adelante en este artículo.
Prioridad Priority Habilita la priorización de notificaciones, lo que determina el orden en que se muestran las notificaciones en el centro de notificaciones. Para obtener más información, consulte Cambio del comportamiento de notificación más adelante en este artículo.
Caducidad (segundos) TTLInSeconds La cantidad de segundos desde que se debe eliminar la notificación si aún no se descartó.
Datos Data JSON que se usa para la extensibilidad y el análisis de datos más completos en la notificación. La longitud máxima es de 5,000 caracteres.

Nota

La tabla no usa el appmoduleid campo .

Personalizar la notificación

Además de las propiedades básicas de la notificación, puede personalizar la notificación entregada al usuario. Personalizar la notificación implica cambiar los estilos en el Title y Body de la notificación, personalizar el icono de notificación y cambiar el comportamiento de la notificación.

Uso de Markdown en el título y el cuerpo

Los parámetros Title y Body del mensaje SendAppNotification no admite el descuento definido dentro de las propiedades. Puede ajustar los estilos de estas propiedades mediante markdown en la propiedad OverrideContent. Este campo admite la anulación de las cadenas simples de Title y Body con un subconjunto limitado de estilos Markdown.

En la tabla siguiente se muestra markdown compatible.

Estilo de texto Markdown
Negrita **Bold**
Cursiva _Italic_
Lista de viñetas - Item 1\r- Item 2\r- Item 3
Lista numerada 1. Green\r2. Orange\r3. Blue
Hipervínculos [Title](url)

Incluya nuevas líneas en el cuerpo mediante \n\n\n\n.

Este ejemplo muestra cómo crear una notificación agregando una definición de cuerpo personalizada que incluye un enlace en línea.

Notificación con un bloque de texto que incluye un enlace en línea.

En este ejemplo se usa la función personalizada Example.SendAppNotificationRequest descrita en la sección Creación de una función para el script de cliente .

var SendAppNotificationRequest = new Example.SendAppNotificationRequest(title = "SLA critical",
    recipient = "/systemusers(<GUID of the user>)",
    body = "Record assigned to you is critically past SLA.",
    iconType = 100000003,
    toastType = 200000000,
    overrideContent = {
        "@odata.type": "#Microsoft.Dynamics.CRM.expando",
        "title": "**SLA critical**",
        "body": "Case record [Complete overhaul required (sample)](?pagetype=entityrecord&etn=incident&id=0a9f62a8-90df-e311-9565-a45d36fc5fe8) assigned is critically past SLA and has been escalated to your manager."

    }
);

Xrm.WebApi.online.execute(SendAppNotificationRequest).then(function (response) {
    if (response.ok) {
        console.log("Status: %s %s", response.status, response.statusText);

        return response.json();
    }
})
.then(function (responseBody) {
    console.log("Response Body: %s", responseBody.NotificationId);
})
.catch(function (error) {
    console.log(error.message);
});

Este ejemplo agrega un título personalizado y una definición de cuerpo que permite múltiples enlaces, formato en negrita y formato en cursiva.

Notificación que incluye un título personalizado, varios enlaces, texto en negrita y formato de cursiva.

En este ejemplo se usa la función personalizada Example.SendAppNotificationRequest descrita en la sección Creación de una función para el script de cliente .

var SendAppNotificationRequest = new Example.SendAppNotificationRequest(title = "Complete overhaul required (sample)",
    recipient = "/systemusers(<GUID of the user>)",
    body = "Maria Campbell mentioned you in a post.",
    priority = 200000000,
    iconType = 100000004,
    toastType = 200000000,
    expiry = 120000,
    overrideContent = {
        "@odata.type": "#Microsoft.Dynamics.CRM.expando",
        "title": "[Complete overhaul required (sample)](?pagetype=entityrecord&etn=incident&id=0a9f62a8-90df-e311-9565-a45d36fc5fe8)",
        "body": "[Maria Campbell](?pagetype=entityrecord&etn=contact&id=43m770h2-6567-ebm1-ob2b-000d3ac3kd6c) mentioned you in a post: _\"**[@Paul](?pagetype=entityrecord&etn=contact&id=03f770b2-6567-eb11-bb2b-000d3ac2be4d)** we need to prioritize this overdue case, [@Robert](?pagetype=entityrecord&etn=contact&id=73f970b2-6567-eb11-bb2b-000d3ac2se4h) will work with you to engage with engineering team ASAP.\"_"
    }
);

// Use the request object to execute the function
Xrm.WebApi.online.execute(SendAppNotificationRequest).then(function (response) {
    if (response.ok) {
        console.log("Status: %s %s", response.status, response.statusText);

        // Use response.json() to access the content of the response body.
        return response.json();
    }
})
.then(function (responseBody) {
    console.log("Response Body: %s", responseBody.NotificationId);
})
.catch(function (error) {
    console.log(error.message);
    // handle error conditions
});

Nota

Power Fx con la función xSendAppNotification no admite OverrideContent.

Cambiar el comportamiento de la notificación

Cambie el comportamiento de notificación desde la aplicación estableciendo ToastType en uno de los valores siguientes.

Tipo de notificación Behavior valor
Programada La notificación aparece durante un breve periodo (el valor predeterminado es cuatro segundos) y luego desaparece. 200000000
Oculto La notificación aparece solo en el centro de notificaciones y no como una notificación del sistema. 200000001

Cambiar el icono de notificación

Cambie el icono de notificación desde la aplicación estableciendo IconType en uno de los valores siguientes. Al usar un icono personalizado, especifique el iconUrl parámetro dentro del OverrideContent parámetro .

Tipo de icono valor Image
Información 100000000 Icono de información
Correcto 100000001 Icono de correcto
Error 100000002 Icono de error
Advertencia 100000003 Icono de advertencia
Mención 100000004 Icono de mención
Personalizado 100000005

El siguiente ejemplo demuestra el uso de Web API para enviar una notificación con un icono personalizado.

POST [Organization URI]/api/data/v9.2/SendAppNotification 
HTTP/1.1
Content-Type: application/json; charset=utf-8
OData-MaxVersion: 4.0
OData-Version: 4.0
Accept: application/json

{
  "Title": "Welcome",
  "Body": "Welcome to the world of app notifications!",
  "Recipient": "/systemusers(<Guid of the user>)",
  "IconType": 100000005, // custom
  "OverrideContent": {
    "@odata.type": "#Microsoft.Dynamics.CRM.expando",
    "iconUrl": "/WebResources/cr245_AlertOn" //URL of the image file to be used for the notification icon
  }
}

Configuración de la prioridad de notificación

Puede cambiar el orden en que se muestran las notificaciones en el centro de notificaciones configurando Priority. Los siguientes valores están disponibles:

Prioridad valor
Normal 200000000
Alto 200000001

El valor predeterminado es Normal. El centro de notificaciones ordena las notificaciones por prioridad y creadas en fecha, en orden descendente. Las notificaciones de prioridad alta aparecen en la parte superior de la lista del centro de notificaciones.

Acciones de notificación

Las notificaciones en la aplicación admiten de cero a muchas acciones en la tarjeta de notificación. Se admiten tres tipos de acciones:

  • Dirección URL: al seleccionar esta acción, el explorador web va a la dirección URL definida.
  • Panel lateral: al seleccionar esta acción, se abre un panel lateral en la aplicación y carga el contexto definido en el panel.
  • Chat de Teams: al seleccionar esta acción, un chat de Teams comienza con usuarios definidos en el contexto de un registro de Dynamics 365.

Definir una acción de URL

El tipo de acción URL permite la navegación desde la acción en la notificación de la aplicación a una URL definida. En la tabla siguiente se enumeran los parámetros de este tipo de acción:

Parámetro Obligatorio Tipo de datos Descripción
url String Dirección URL de la dirección web que se va a abrir cuando se selecciona la acción.
navigationTarget No String Este parámetro controla dónde se abre un enlace de navegación. Las opciones son:
  • dialog: se abre en el cuadro de diálogo central.
  • inline: predeterminado. Se abre en la página actual.
  • newWindow: se abre en una nueva pestaña del explorador.

El siguiente ejemplo muestra cómo crear una notificación con una sola acción de URL.

Notificación de la aplicación con una sola acción.

En este ejemplo se usa la función personalizada Example.SendAppNotificationRequest descrita en la sección Creación de una función para el script de cliente .

var SendAppNotificationRequest = new Example.SendAppNotificationRequest(title = "Congratulations",
    recipient = "/systemusers(<GUID of the user>)",
    body = "Your customer rating is now an A. You resolved 80% of your cases within SLA thi week and average customer rating was A+",
    iconType = 100000001,
    toastType = 200000000,
    overrideContent = {
        "@odata.type": "#Microsoft.Dynamics.CRM.expando",
        "title": "**SLA critical**",
        "body": "Case record [Complete overhaul required (sample)](?pagetype=entityrecord&etn=incident&id=0a9f62a8-90df-e311-9565-a45d36fc5fe8) assigned is critically past SLA and has been escalated to your manager."

    },
    actions = {
        "@odata.type": "Microsoft.Dynamics.CRM.expando",
        "actions@odata.type": "#Collection(Microsoft.Dynamics.CRM.expando)",
        "actions": [
            {
                "title": "View cases",
                "data": {
                    "@odata.type": "#Microsoft.Dynamics.CRM.expando",
                    "type": "url",
                    "url": "?pagetype=entitylist&etn=incident&viewid=00000000-0000-0000-00aa-000010001028&viewType=1039",
                    "navigationTarget": "newWindow"
                }
            }
        ]
    }
);

Xrm.WebApi.online.execute(SendAppNotificationRequest).then(function (response) {
    if (response.ok) {
        console.log("Status: %s %s", response.status, response.statusText);

        return response.json();
    }
})
.then(function (responseBody) {
    console.log("Response Body: %s", responseBody.NotificationId);
})
.catch(function (error) {
    console.log(error.message);
});

Definición de una acción de panel lateral

Una acción de panel lateral permite abrir un panel lateral para cargar una página definida al seleccionar la acción de la notificación de la aplicación. Para más información, consulte Creación de paneles laterales mediante una API de cliente.

Cuando se usa el tipo de acción del panel lateral, se controlan las opciones del propio panel lateral y la página que se carga en el panel lateral.

En el ejemplo siguiente se muestra cómo crear una notificación de aplicación con dos acciones de panel lateral.

En este ejemplo se usa la función personalizada Example.SendAppNotificationRequest descrita en la sección Creación de una función para el script de cliente .

var SendAppNotificationRequest = new Example.SendAppNotificationRequest(title = "New task",
    recipient = "/systemusers(<GUID of the user>)",
    body = "A new task has been assigned to you to follow up on the Contoso account",
    iconType = 100000000,
    toastType = 200000000,
    actions = {
        "@odata.type": "Microsoft.Dynamics.CRM.expando",
        "actions@odata.type": "#Collection(Microsoft.Dynamics.CRM.expando)",
        "actions": [
            {
                "title": "View task",
                "data": {
                    "@odata.type": "#Microsoft.Dynamics.CRM.expando",
                    "type": "sidepane",
                    "paneOptions": {
                        "@odata.type": "#Microsoft.Dynamics.CRM.expando",
                        "title": "Task Record",
                        "width": 400
                    },
                    "navigationTarget": {
                        "@odata.type": "#Microsoft.Dynamics.CRM.expando",
                        "pageType": "entityrecord",
                        "entityName": "task",
                        "entityId": "<Task ID>"
                    }
                }
            }
        ]
    }
);

Xrm.WebApi.online.execute(SendAppNotificationRequest).then(function (response) {
    if (response.ok) {
        console.log("Status: %s %s", response.status, response.statusText);

        return response.json();
    }
})
.then(function (responseBody) {
    console.log("Response Body: %s", responseBody.NotificationId);
})
.catch(function (error) {
    console.log(error.message);
});

Definición de una acción de chat de Teams

Una acción de chat de Teams habilita escenarios en los que se inicia un chat de Teams desde la notificación de la aplicación. Esta acción utiliza la característica integrada de Teams para las aplicaciones de Dynamics 365, que ofrece a los vendedores y agentes la capacidad de charlar en Microsoft Teams desde las aplicaciones de involucración del cliente, como Centro de ventas, Centro de servicio al cliente y aplicaciones personalizadas.

Nota

Para usar el tipo de acción de chat de Teams, debe habilitar el chat de Microsoft Teams en Dynamics 365. Para obtener más información, consulte Trabajar con el chat de Microsoft Teams en Dynamics 365.

El tipo de acción proporciona las siguientes opciones:

  • Crear una nueva sesión de chat o abre una existente.
  • Vincule la sesión de chat a un registro de Dynamics 365 o cree un chat desvinculado.

En la tabla siguiente se describen los parámetros para definir una acción de chat de Teams en la notificación de la aplicación.

Parámetro Tipo de datos Descripción
chatId String Defina un valor para la ID de chat para abrir un chat existente. Este valor es el identificador de la sesión de chat de Teams, que puede obtener de la propiedad id de la entidad de chat en Microsoft Graph. Para obtener más información, consulte Acceder al chat. Para las sesiones de chat de Teams que vincule a registros de Dynamics 365, la asociación se almacena en la tabla de la entidad "Microsoft Teams chat association (msdyn_teamschatassociation)" en Dataverse. El ID de la sesión de chat se almacena en la propiedad Id. de chat de Teams de esta tabla.

Deje este parámetro en blanco para iniciar una nueva sesión de chat.
memberIds GUID[] Matriz de los valores de ID de usuario de Microsoft Entra ID de cada uno de los participantes que desea incluir en una nueva sesión de chat. No defina valores de identificador de miembro si define un valor para el parámetro chatId . Si define el chatId, abre el chat existente y los miembros del chat existente se incluyen en el chat cuando se abre.
entityContext Expando El contexto de la entidad proporciona el registro de Dynamics 365 al que se debe vincular la sesión de chat. Por ejemplo, si la sesión de chat es sobre un registro de cuenta de cliente específico, defina el registro de cuenta en este parámetro para que la sesión de chat se vincule a la cuenta y se muestre en la línea de tiempo de la cuenta.

El contexto de entidad incluye los parámetros entityName y recordId , que debe definir para identificar el registro para el contexto de entidad.

No defina un contexto de entidad si define un valor para el parámetro chatId . Si define el chatId, abre el chat ya existente, y el entityContext, ya sea vinculado o desvinculado, ya está establecido para el chat ya existente. Si la acción está creando una nueva sesión de chat (es decir, no proporcionó el parámetro chatId ) y no define el contexto de entidad, la nueva sesión de chat no está vinculada a un registro de Dynamics 365.
entityName String Parte del contexto de la entidad, el nombre lógico de la tabla de Dataverse para el registro con el que está relacionado el chat.
recordId GUID Parte del contexto de la entidad, esta es la propiedad ID de la tabla definida en el parámetro entityName para el registro al que se vinculará el chat.
chatTitle String El título del chat de Teams.
initialMessage String El texto de un mensaje de introducción que puede proporcionar de forma opcional y que se envía automáticamente cuando se crea el chat.

El siguiente ejemplo muestra la creación de una notificación de aplicación con una acción de chat de Teams. Cuando el usuario selecciona la opción en la notificación emergente, inicia el chat con los participantes definidos. El chat está vinculado a un registro de cuenta definido.

En este ejemplo se usa la función personalizada Example.SendAppNotificationRequest descrita en la sección Creación de una función para el script de cliente .

var SendAppNotificationRequest = new Example.SendAppNotificationRequest(title = "New order posted",
    recipient = "/systemusers(<GUID of the user>)",
    body = "A new sales order has been posted for Contoso",
    iconType = 100000000,
    toastType = 200000000,
    actions = {
        "@odata.type": "Microsoft.Dynamics.CRM.expando",
        "actions@odata.type": "#Collection(Microsoft.Dynamics.CRM.expando)",
        "actions": [
            {
                "title": "Chat with sales rep",
                "data": {
                    "@odata.type": "#Microsoft.Dynamics.CRM.expando",
                    "type": "teamsChat",
                    "memberIds@odata.type": "#Collection(String)",
                    "memberIds": ["<Microsoft Entra ID User ID 1>", "<Microsoft Entra ID User ID 2>"],
                    "entityContext": {
                        "@odata.type": "#Microsoft.Dynamics.CRM.expando",
                        "entityName": "account",
                        "recordId": "<Account ID value>"
                    }
                }
            }
        ]
    }
);

Xrm.WebApi.online.execute(SendAppNotificationRequest).then(function (response) {
    if (response.ok) {
        console.log("Status: %s %s", response.status, response.statusText);

        return response.json();
    }
})
.then(function (responseBody) {
    console.log("Response Body: %s", responseBody.NotificationId);
})
.catch(function (error) {
    console.log(error.message);
});

Crear una función para su script de cliente

Los ejemplos de la API del cliente en este tema proporcionan ejemplos de secuencias de comandos del cliente para enviar notificaciones dentro de la aplicación. Los ejemplos llaman a una SendAppNotificationRequest función. Para completar los ejemplos, debe crear la función reutilizable en su entorno. En el código siguiente se muestra un ejemplo de la función .

var Example = window.Example || {};
Example.SendAppNotificationRequest = function (
   title, 
   recipient, 
   body, 
   priority, 
   iconType, 
   toastType, 
   expiry, 
   overrideContent, 
   actions) 
{
    this.Title = title;
    this.Recipient = recipient;
    this.Body = body;
    this.Priority = priority;
    this.IconType = iconType;
    this.ToastType = toastType;
    this.Expiry = expiry;
    this.OverrideContent = overrideContent;
    this.Actions = actions;
};

Example.SendAppNotificationRequest.prototype.getMetadata = function () {
    return {
        boundParameter: null,
        parameterTypes: {
            "Title": {
                "typeName": "Edm.String",
                "structuralProperty": 1
            },
            "Recipient": {
                "typeName": "mscrm.systemuser",
                "structuralProperty": 5
            },
            "Body": {
                "typeName": "Edm.String",
                "structuralProperty": 1
            },
            "Priority": {
                "typeName": "Edm.Int",
                "structuralProperty": 1
            },
            "IconType": {
                "typeName": "Edm.Int",
                "structuralProperty": 1
            },
            "ToastType": {
                "typeName": "Edm.Int",
                "structuralProperty": 1
            },
            "Expiry": {
                "typeName": "Edm.Int",
                "structuralProperty": 1
            },
            "OverrideContent": {
                "typeName": "mscrm.expando",
                "structuralProperty": 5
            },
            "Actions": {
                "typeName": "mscrm.expando",
                "structuralProperty": 5
            },
        },
        operationType: 0, 
        operationName: "SendAppNotification",
    };
};

Para obtener más ejemplos de scripting de cliente mediante la API de cliente, consulte Tutorial: Escritura del primer script de cliente.

Administrar la seguridad de las notificaciones

La característica de notificación en aplicación usa tres tablas. Un usuario necesita los roles de seguridad correctos para recibir notificaciones y enviar notificaciones a sí mismos u otros usuarios.

Además de los permisos de tabla adecuados, se debe asignar a un usuario el privilegio Enviar notificación dentro de la aplicaciónprvSendAppNotification para ejecutar el mensaje SendAppNotification. El privilegio se otorga al rol Creador de entorno de forma predeterminada. No es necesario enviar notificaciones dentro de la aplicación mediante la creación directa de registros de entidad sin ejecutar el mensaje SendAppNotification. No es necesario recibir notificaciones.

Uso Privilegios de tabla obligatorios
El usuario no tiene una campana de notificación en aplicación y no recibe ninguna notificación en la aplicación None
El usuario puede recibir notificaciones en aplicación
  • Básico: privilegio de lectura en la tabla de notificaciones de la aplicación.
  • Los privilegios Crear, Lectura, Escritura y Anexar en la configuración de usuario de la aplicación basada en modelo.
  • Privilegios Lectura y Anexar a sobre la definición de configuración.
El usuario puede enviar notificaciones en aplicación a él mismo Básico: privilegio de creación en la tabla de notificaciones de la aplicación. Además, se necesita el privilegio Enviar notificación en la aplicación si se usa SendAppNotification un mensaje.
El usuario puede enviar notificaciones en aplicación a otros Privilegio de creación con nivel de acceso local, profundo o global en la tabla de notificación de la aplicación según la unidad de negocio del usuario receptor. Además, se necesita el privilegio Enviar notificación en la aplicación si se usa SendAppNotification un mensaje.
El usuario puede eliminar notificaciones en aplicación Global: privilegios Eliminar en la tabla de notificaciones de la aplicación.

Agregue el privilegio Enviar notificación en la aplicación a un rol mediante el Selector de privilegios de rol en la pestaña Miscellaneous privileges.

Asignar el privilegio Enviar notificación dentro de la aplicación.

Almacenamiento de notificación

Dado que la tabla de notificaciones de la aplicación usa la capacidad de almacenamiento de la base de datos de la organización, tenga en cuenta el volumen de notificaciones enviadas y la configuración de expiración. Para obtener más información, consulte Capacidad de almacenamiento de Microsoft Dataverse.

Notificaciones en aplicación frente a notificaciones de inserción

El conector de notificaciones de Power Apps es para las notificaciones push, que son independientes de las notificaciones dentro de la aplicación. Las notificaciones de inserción solo aparecen en la lista de notificaciones del dispositivo móvil para abrir la aplicación. Las notificaciones en aplicación aparecen cuando la aplicación está abierta. Limite el uso de notificaciones push a elementos de alta prioridad, por lo que no sobrecarga al usuario. Para obtener más información, consulte:

Acción SendAppNotification
Crear una fila de tabla usando la API web
createRecord (referencia de API de cliente)
Notificaciones en aplicación en aplicaciones basadas en modelo
appnotification TipoDeEntidad
Referencia de la tabla/entidad de notificación (appnotification)