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 un brindis 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 basada en modelo y seleccione el menú dividido Editar para abrirla utilizando el diseñador de aplicaciones modernas.

  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

Las notificaciones se pueden enviar mediante el mensaje SendAppNotification.

Consulte Acción SendAppNotification para obtener información sobre el mensaje y los parámetros.

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

El mensaje SendAppNotification utiliza tipos abiertos, lo que permite propiedades dinámicas en la notificación dentro de la aplicación. Por ejemplo, una notificación puede tener de cero a muchas acciones y cada acción puede tener diferentes tipos de acción. Los tipos abiertos permiten tener propiedades dinámicas para las acciones según los tipos de acción seleccionados. Más información: Usar 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.

Este ejemplo utiliza la función Example.SendAppNotificationRequest personalizada descrita en Creación de una función para su script de cliente a continuación.

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. Las nuevas notificaciones se recuperan al inicio de la aplicación basada en modelo y cuando se producen navegaciones en la página, siempre que la última recuperación haya sido hace más de un minuto. Si un usuario permanece en una página durante mucho tiempo, no se recuperan hasta que el usuario navegue a otra página.

Tabla de notificación

Las notificaciones enviadas mediante el mensaje SendAppNotification se almacenan en la tabla Notification (appnotification) (Web API appnotification). Las siguientes son las columnas seleccionadas para la tabla.

Nombre Nombre de esquema Descripción
Nombre Title El título de la notificación.
Propietario OwnerId El usuario que recibe la notificación. Si bien esta columna se puede configurar para un usuario o un equipo, solo debe configurarla para un usuario. La notificación no se puede configurar 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, vaya a 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, vaya a Cambiar el 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, vea Cambiar el 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 5000 caracteres.

Nota

El campo appmoduleid no se utiliza en la tabla.

Personalizar la notificación

Además de las propiedades básicas de la notificación, tiene opciones para personalizar la notificación enviada 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 usando 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.

A continuación se muestra el 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)

En el cuerpo, se pueden incluir líneas nuevas usando \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.

Este ejemplo utiliza la función Example.SendAppNotificationRequest personalizada descrita en Creación de una función para su script de cliente a continuación.

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.

Este ejemplo utiliza la función Example.SendAppNotificationRequest personalizada descrita en Creación de una función para su script de cliente a continuación.

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

No se admite OverrideContent en Power Fx con la función xSendAppNotification.

Cambiar el comportamiento de las notificaciones

Puede cambiar el comportamiento de las notificaciones en la aplicación configurando ToastType con uno de los siguientes valores.

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

Puede cambiar el icono de las notificaciones en la aplicación configurando IconType con uno de los siguientes valores. Cuando utilice un icono personalizado, especifique el parámetro iconUrl dentro del parámetro OverrideContent.

Tipo de icono valor Imagen
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. Estos valores son opcionales:

Prioridad valor
Normal 200000000
Alto 200000001

El valor predeterminado es Normal. Las notificaciones se ordenan en el centro de notificaciones por Prioridad y fecha de Creacioń, en orden descendente. Las notificaciones de alta prioridad se muestran en la parte superior de la lista en el 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. Hay tres tipos de acción admitidas:

  • URL: cuando se selecciona la acción, el navegador web navega a la URL definida.
  • Panel lateral: cuando se selecciona la acción, se abre un panel lateral en la aplicación y carga el contexto definido en el panel.
  • Chat de equipos: cuando se selecciona la acción, se inicia un chat de Teams 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. Los siguientes parámetros están disponibles para este tipo de acción:

Parámetro Obligatorio Tipo de datos Descripción
url String La URL de la dirección web que se abrirá cuando se seleccione 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.

Este ejemplo utiliza la función Example.SendAppNotificationRequest personalizada descrita en Creación de una función para su script de cliente a continuación.

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 cuando la acción se selecciona desde la notificación de la aplicación. Más información: Creación de paneles laterales mediante una API de cliente para más información.

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

El siguiente ejemplo muestra la creación de una notificación de aplicación con dos acciones de panel lateral.

Este ejemplo utiliza la función Example.SendAppNotificationRequest personalizada descrita en Creación de una función para su script de cliente a continuación.

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 función integrada de Teams para las aplicaciones de Dynamics 365, que brinda a los vendedores y agentes la capacidad de chatear en Microsoft Teams desde las aplicaciones de participación del cliente, como Centro de ventas, Centro de servicio al cliente y aplicaciones personalizadas.

Nota

El chat de Microsoft Teams en Dynamics 365 debe estar habilitado para usar el tipo de acción de chat de Teams. Consulte Trabajar con Microsoft Teams chat en Dynamics 365 para obtener más información.

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.

Los siguientes son 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 es el ID de la sesión de chat de Teams, que se puede obtener de la propiedad id de la entidad chat en Microsoft Graph. Más información: Accede al chat para obtener más información. Para las sesiones de chat de Teams que se vincularon a registros de Dynamics 365, la asociación se almacena en la tabla de la entidad de asociación de chat de Microsoft Teams (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[] Una matriz de valores de identificador de usuario de Microsoft Entra ID de cada uno de los participantes que quiere incluirse en una sesión de chat nueva. Los valores de ID de miembro no deben definirse si se ha definido un valor para el parámetro chatId. Si se ha definido chatId, se 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 la entidad incluye los parámetros entityName y recordId, que deben definirse para identificar el registro para el contexto de la entidad. .

Un contexto de entidad no debe definirse si se ha definido un valor para el parámetro chatId. Si se ha definido chatId, entonces se abre el chat existente y entityContext, ya sea vinculado o no vinculado, ya se habrá definido para el charla existente. Si la acción es crear una nueva sesión de chat (es decir, no se proporcionó el parámetro chatId) y el contexto de la entidad no está definido, entonces el nuevo chat sesión no se vinculará 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 presentación que puede proporcionar opcionalmente y que se enviará automáticamente cuando se cree 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 se selecciona la acción en la notificación del brindis, inicia el chat con los participantes definidos. El chat está vinculado a un registro de cuenta definido.

Este ejemplo utiliza la función Example.SendAppNotificationRequest personalizada descrita en Creación de una función para su script de cliente a continuación.

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 función SendAppNotificationRequest. Para completar los ejemplos, deberá construir la función reutilizable en su entorno. A continuación, 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 secuencias de comandos de cliente mediante la API de cliente, consulte Tutorial: Escriba su primera secuencia de comandos de cliente.

Administrar la seguridad de las notificaciones

La característica de notificación en aplicación usa tres tablas. Un usuario debe tener los roles de seguridad correctos para recibir notificaciones y enviarse notificaciones a sí mismo o a otros usuarios.

Además de los permisos de tabla apropiados, 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 a la función Environment Maker de forma predeterminada. No es necesario para enviar notificaciones in-app creando directamente registros de entidad appnotification sin ejecutar el mensaje SendAppNotification. No es necesario para 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.

El privilegio Enviar notificación dentro de la aplicación se puede agregar a un rol usando 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

Debido a que la tabla de notificaciones de la aplicación usa la capacidad de almacenamiento de la base de datos de la organización, es importante tener en cuenta el volumen de notificaciones enviadas y la configuración de vencimiento. Más información: capacidad de almacenamiento de Microsoft Dataverse

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

El conector de notificación de Power Apps es para notificaciones de inserción, que son independientes de las notificaciones en 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. Recomendamos limitar el uso de notificaciones de inserción a elementos de alta prioridad, para evitar abrumar al usuario. Para más información, vaya a:

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 EntityType
Referencia de la tabla/entidad de notificación (appnotification)