French Power Platform User Group

Please login or click SIGN UP FOR FREE to create your PowerPlatformUG account to join this user group.
Expand all | Collapse all

notification à la demande

  • 1.  notification à la demande

    Posted Mar 17, 2021 12:38 PM
    Bonjour,
    dans une app, est-il possible de lancer une notification aux utilisateurs (une icone en haut de page, une vibration du tél) quand le proprietaire le demande ?
    Merci de votre aide

    ------------------------------
    Eric Mereau
    ------------------------------


  • 2.  RE: notification à la demande

    Gold Contributor
    Posted Mar 17, 2021 12:49 PM
    Salut Eric,
    Le connecteur Power Apps Notifications V2 te permet d'envoyer des notifications push sur le mobile de l'utilisateur. Je sais pas si c'est ce que tu cherchais... Tu peux y faire appel à partir d'un flow lancé depuis Power Apps ou en intégrant le connecteur directement à ton application.

    ------------------------------
    EMMANUEL GALLIS
    Power Platform Consultant
    France
    ------------------------------



  • 3.  RE: notification à la demande

    Posted Mar 21, 2021 09:57 AM
    Bonjour Emmanuel
    dois-je refaire une manip similaire a celle de l'envoi d'un mail ? (dans un de mes post précedent)

    ------------------------------
    Eric Mereau
    ------------------------------



  • 4.  RE: notification à la demande

    Posted Mar 22, 2021 04:34 AM

    Eric, en suivant les instructions d'Emmanuel tu dois faire la manip suivante pour ajouter ton connecteur Power Apps Notifications V2:
    Ensuite la syntaxe est relativement simple, POwerapps te donnera les infos.

    NotificationPowerAppsv2.SendPushNotificationV2(

    Sinon tu peux passer par power automate, je l'ai fait mais c'est moins modulable (mais plus intuitif) :


    J'attends ton retour.



    ------------------------------
    Cordialement,
    PRELOT Clement
    Engineer
    ------------------------------



  • 5.  RE: notification à la demande

    Posted Mar 22, 2021 08:46 AM
    Salut Clement

    Peux-tu m'aider à completer la suite du code, stp ?

    NotificationPowerAppsv2.SendPushNotificationV2(

    J'avoue que "playerType", "app", "recipents"..... ça me perd un peu !

    J'ai toujours du mal à copier-coller le code....


    Merci de ton aide
    Eric

    ------------------------------
    Eric Mereau
    ------------------------------



  • 6.  RE: notification à la demande

    Posted Mar 22, 2021 10:13 AM

    Alors pour l'insertion de ton code, il suffit de cliquer sur le l'icone suivant dans ta saisie de réponse :
    Et cela t'ouvrira la fenêtre suivante :

    A ce moment la tu aura juste à copier ton code dans la fenêtre.

    Alors pour en revenir à ta fonction :

    PowerAppsNotification.SendPushNotification(
        {
            recipients: email_list;
            message: "message que tu souhaites transmettre dans le message de ta notification";
            params: paramètre transmissible via ta notification (une table de données par exemple);
            openApp: true ou false (true si tu souhaites que ton app s'ouvre au clique, false sinon)
        }
    )

    En effet, les fonctions playerType et app n'ont as grand interêt ici puisque tu "restes" dans ton app (mais je laisse à Emmanuel le soin de me corriger car ce n'est pas une fonction que je maîtrise à 100%)



    ------------------------------
    Cordialement,
    PRELOT Clement
    Engineer
    ------------------------------



  • 7.  RE: notification à la demande

    Gold Contributor
    Posted Mar 22, 2021 11:37 AM
    Pas mieux... Je l'ai jamais utilisée directement dans Power Apps.
    Attention par contre, la fonction de Clément est celle du connecteur V1. Il y a désormais un connecteur V2 dont voici les paramètres :
    ...et la doc officielle qui va avec : https://docs.microsoft.com/en-us/connectors/powerappsnotificationv2/#send-push-notification-v2
    Alors, je sais, la doc aide pas beaucoup... Donc, faut tester un peu ou chercher sur le net si quelqu'un l'a déjà fait...
    ...
    Bon, du coup j'ai pris 10mn pour essayer de faire marcher le bouzin... Ca a pas été facile de trouver la structure des paramètres à transmettre mais j'y suis arrivé (grâce à Power Automate et le "Lire le code" de l'action correspondante) :
    PowerAppsNotificationV2.SendPushNotificationV2("PowerApps"; JSON({  appIdentifier: "334e8377-a399-4e76-8d05-5cbedf6fca6a";  displayName: "What's Wrong";  type: "CanvasApp"}); Table({Value:"emmanuel@gallisdev3.onmicrosoft.com"}); "This is a test!"; false; {})​
    Dans appIdentifier tu dois mettre l'ID de ton application (tu la trouveras dans la page de détail de ton application depuis le menu "..." de la page d'accueil Power Apps.
    Dans displayName tu dois mettre le libellé du nom de ton application.
    type tu touches pas.
    Pour les destinataires, tu peux en mettre plusieurs comme ceci :
    Table({Value:"emmanuel@gallisdev3.onmicrosoft.com"};{Value:"autreadressemail@gmail.com"}).​

    "This is a test!" c'est là où tu mets le texte de ta notification.

    Les 2 derniers paramètres te servent à ouvrir l'application concernée lorsque l'utilisateur clique sur la notification. Mais bon, commençons déjà par envoyer la notif. 😉

    ------------------------------
    EMMANUEL GALLIS
    Power Platform Consultant
    France
    ------------------------------



  • 8.  RE: notification à la demande

    Posted Mar 22, 2021 04:21 PM
    Bonsoir Emmanuel
    je viens de tester avec mon mail et ça fonctionne nickel !
    j'ai juste 2 questions:
    - y'a t'il moyen d'envoyer cette notif a tous les utilisateurs de l'app ?
    - si je veux qu'en cliquant sur la notif, l'appli s'ouvre, il faut que je mette un "true" quelque part ? mais où ?


    Merci de ton aide
    Eric

    ------------------------------
    Eric Mereau
    ------------------------------



  • 9.  RE: notification à la demande

    Gold Contributor
    Posted Mar 23, 2021 05:58 AM
    Oui tu peux l'envoyer à tous les utilisateurs de l'app. Pour ça il faut que tu récupères le code de ton autre sujet Mails aux "partagés" d'une app et que tu envoies la notif à ta variable email_list.

    Si tu veux que l'app se lance lorsque l'utilisateur clique sur la notification, il suffit de mettre l'avant dernier paramètre à true :

    PowerAppsNotificationV2.SendPushNotificationV2("PowerApps"; JSON({ appIdentifier: "334e8377-a399-4e76-8d05-5cbedf6fca6a"; displayName: "What's Wrong"; type: "CanvasApp"}); Table({Value:"emmanuel@gallisdev3.onmicrosoft.com"}); "This is a test!"; true; {})​

    ------------------------------
    EMMANUEL GALLIS
    Power Platform Consultant
    France
    ------------------------------



  • 10.  RE: notification à la demande

    Posted Mar 24, 2021 08:14 AM
    Bonjour Emmanuel
    avec l'aide d'un collègue (immense merci à lui), j'ai récuperé le code qui fonctionne.
    Si cela peut aider, je le poste ci-dessous
    Set(gloRoles;PowerAppspourlescréateurs.GetAppRoleAssignment(AppID;{'api-version':"2017-06-01";'$top':50}).value);;Clear(colSharedUsers);;Clear(colSharedGroups);;
    ForAll(Filter(gloRoles;properties.principal.type="User");Collect(colSharedUsers;{Value:properties.principal.email}));;
    ForAll(Filter(gloRoles;properties.principal.type="Group");Collect(colSharedGroups;AzureAD.GetGroupMembers(properties.principal.id;{'$top':50}).value));;ForAll(colSharedGroups;Collect(colSharedUsers;{Value:mail}));;Set(email_list;Concat(colSharedUsers;email;";"));;NotificationPowerAppsv2.SendPushNotificationV2("PowerApps"; JSON({  appIdentifier: AppID;  displayName: "Business 3,0 TEST";  type: "CanvasApp"}); colSharedUsers; "Test 2 eric"; true; {})​


    ------------------------------
    Eric Mereau
    ------------------------------



  • 11.  RE: notification à la demande

    Posted Mar 24, 2021 08:15 AM
    En revancje, peux-tu me dire à quoui correspond
    '$top':50​
    ?

    ------------------------------
    Eric Mereau
    ------------------------------



  • 12.  RE: notification à la demande

    Gold Contributor
    Posted Mar 24, 2021 09:14 AM
    C'est le nombre max. d'éléments qui vont être renvoyés par la fonction GetAppRoleAssignment. Donc, dans ce cas, parmi toutes les personnes avec qui l'application est partagée, seules 50 seront renvoyées. Si tu veux en récupérer plus, augmente la valeur.

    ------------------------------
    EMMANUEL GALLIS
    Power Platform Consultant
    France
    ------------------------------



  • 13.  RE: notification à la demande

    Posted Mar 24, 2021 12:44 PM
    Merci beaucoup

    ------------------------------
    Eric Mereau
    ------------------------------



  • 14.  RE: notification à la demande

    Posted May 26, 2021 07:36 AM
    Bonjour,
    je viens de tester l'envoi d'un push, mais j'ai un probleme:
    lorsque j'essaie d'envoyer une notification à tous mes "users" de mon app, j'obtiens un message d'erreur suivant. cette erreur n'apparait que lorsque j'ai fait "lecture" et envoyé le push (mais le push n'est pas reçu et j'ai ce message a mon retour dans le studio"

    par ailleurs, voici le contenu du "on select" j'ai masqué l'ID de l'app
    Set(
        gloRoles;
        PowerAppspourlescréateurs.GetAppRoleAssignment(
            "ID de l'app";
            {
                'api-version': "2017-06-01";
                '$top': 20
            }
        ).value
    );;
    Clear(colSharedUsers);;
    Clear(colSharedGroups);;
    ForAll(
        Filter(
            gloRoles;
            properties.principal.type = "User"
        );
        Collect(
            colSharedUsers;
            {Value: properties.principal.email}
        )
    );;
    ForAll(
        Filter(
            gloRoles;
            properties.principal.type = "Group"
        );
        Collect(
            colSharedGroups;
            AzureAD.GetGroupMembers(
                properties.principal.id;
                {'$top': 20}
            ).value
        )
    );;
    ForAll(
        colSharedGroups;
        Collect(
            colSharedUsers;
            {Value: mail}
        )
    );;
    Set(
        email_list;
        Concat(
            colSharedUsers;
            Value;
            ";"
        )
    );;
    NotificationPowerAppsv2.SendPushNotificationV2(
        "PowerApps";
        JSON(
            {
                appIdentifier: "ID de l'app";
                displayName: "nom de l'app";
                type: "CanvasApp"
            }
        );
        colSharedUsers;
        "c'est mis à jour ! Cliquez sur ce message pour y accéder ";
        true;
        {}​


    ------------------------------
    Eric Mereau
    ------------------------------



  • 15.  RE: notification à la demande

    Gold Contributor
    Posted May 26, 2021 10:44 AM
    Bizarre, chez moi ça marche je viens de faire le test...
    Essaie peut-être de supprimer ta connexion associée au connecteur Power Apps Notification V2 et de le recréer...

    ------------------------------
    EMMANUEL GALLIS
    Power Platform Consultant
    France
    ------------------------------



  • 16.  RE: notification à la demande

    Posted May 26, 2021 11:48 AM
    Edited by Eric Mereau May 26, 2021 12:17 PM
    Merci pour ton aide Emmanuel
    j'ai toujours le même pb.
    j'essaie avec IE (et non edge), mais j'ai le meme probleme
    le probleme peut il venir du grand nombre de "partages" (Environ 6 groupes et une 50aine de users individuels)
    ou de bridage de mon entreprise ?​

    autre piste: ce bouton est sur une 2e app et concerne une 1er app (c'est bien l'Id de l'app n°1 qui est saisie dane ID de l'app)

    ------------------------------
    Eric Mereau
    ------------------------------



  • 17.  RE: notification à la demande

    Gold Contributor
    Posted May 27, 2021 04:22 AM
    Il est possible que ton entreprise empêche l'envoi de mails à + de 50 destinataires, effectivement... Après, je peux pas garantir que ce soit ça le pb... Mais ça vaut le coup de faire un essai sur un nombre plus réduit de destinataires.

    Quelque soit l'endroit où est effectué l'envoi de la notification, il suffit que tu précises bien l'ID de l'app DANS laquelle tu veux que la notif apparaisse et ça marchera.

    ------------------------------
    EMMANUEL GALLIS
    Power Platform Consultant
    France
    ------------------------------