Partager via


Routage et expressions de balise

Les expressions de balise vous permettent de cibler des ensembles d’appareils spécifiques, ou plus spécifiquement des inscriptions, lors de l’envoi d’une notification Push via Notification Hubs.

Ciblage d’inscriptions spécifiques

La seule façon de cibler des inscriptions spécifiques consiste à les associer à une balise, puis à cibler cette balise. Comme indiqué dans gestion des inscriptions, afin de recevoir des notifications Push, une application doit inscrire un handle d’appareil sur un hub de notification. Une fois qu’une inscription est créée sur un hub de notification, le serveur principal de l’application peut lui envoyer des notifications Push.

Le back-end d’application peut choisir les inscriptions à cibler avec une notification spécifique de la manière suivante :

  1. de diffusion : toutes les inscriptions dans le hub de notification reçoivent la notification.

  2. balise: toutes les inscriptions contenant la balise spécifiée reçoivent la notification.

  3. expression de balise: toutes les inscriptions dont l’ensemble de balises correspond à l’expression spécifiée reçoivent la notification.

Note

Lors de l’envoi d’une charge utile spécifique à la plateforme (par exemple, une notification spécifique au Windows Store), seules les inscriptions pour cette plateforme spécifique recevront la notification. Lors de l’envoi d’une notification de modèle, seules les inscriptions spécifiant un modèle sont ciblées. Pour plus d’informations, consultez Gestion des inscriptions.

Étiquettes

Une balise peut être n’importe quelle chaîne, jusqu’à 120 caractères, contenant des caractères alphanumériques et les caractères non alphanumériques suivants : '_', '@', '#', '.', ' :', '-'. L’exemple suivant montre une application à partir de laquelle vous pouvez recevoir des notifications toast sur des groupes de musique spécifiques. Dans ce scénario, un moyen simple d’acheminer les notifications consiste à étiqueter les inscriptions avec des balises qui représentent les différentes bandes, comme dans l’image suivante.

d’expressions de balise

Dans cette image, le message étiqueté Beatles atteint uniquement la tablette inscrite avec la balise Beatles.

Pour plus d’informations sur la création d’inscriptions pour les étiquettes, consultez Gestion des inscriptions .

Vous pouvez envoyer des notifications à des balises à l’aide de la envoyer des notifications méthodes de la classe Microsoft.ServiceBus.Notifications.NotificationHubClient dans le Kit de développement logiciel (SDK). Vous pouvez également utiliser Node.js, ou les API REST de notifications Push .

Notez les exemples suivants :

await hub.SendWindowsNativeNotificationAsync(wnsToast, "tag");
notificationHubService.wns.sendToastText01('tag', {
            text1: 'Hello World!'
        }, callback);

Les balises ne doivent pas être préconfigurées et peuvent faire référence à plusieurs concepts spécifiques à l’application. Par exemple, les utilisateurs de cet exemple d’application peuvent commenter des bandes et veulent recevoir des toasts, non seulement pour les commentaires sur leurs groupes favoris, mais aussi pour tous les commentaires de leurs amis, quel que soit le groupe sur lequel ils commentent. L’image suivante montre un exemple de ce scénario :

d’expressions de balise

Dans cette image, Alice s’intéresse aux mises à jour pour les Beatles, et Bob est intéressé par les mises à jour pour les Wailers. Bob est également intéressé par les commentaires de Charlie, et Charlie est intéressé par les Wailers. Lorsqu’une notification est envoyée pour le commentaire de Charlie sur les Beatles, Alice et Bob le reçoivent.

Important

Bien que vous puissiez encoder plusieurs préoccupations dans les balises (par exemple, « band_Beatles » ou « follows_Chanrlie »), les balises sont des chaînes simples et non des propriétés avec des valeurs. Une inscription est mise en correspondance uniquement sur la présence ou l’absence d’une balise spécifique.

Pour obtenir un didacticiel détaillé sur l’utilisation de balises pour l’envoi à des groupes d’intérêt, consultez dernières nouvelles.

Note

Dans l’exemple précédent, vous devez envoyer une notification unique à deux balises (en fournissant un tableau de balises ou à l’aide d’une expression de balise avec OR) au lieu de deux notifications. L’envoi de deux notifications à des étiquettes individuelles entraîne des doublons pour les inscriptions qui ont les deux balises, tandis que l’utilisation d’expressions de balise n’est pas effectuée.

Utilisation de balises pour cibler des utilisateurs

Une autre façon d’utiliser des balises consiste à identifier tous les appareils d’un utilisateur particulier. Les inscriptions peuvent être marquées avec une balise qui contient un ID d’utilisateur, comme dans l’image suivante :

d’expressions de balise

Dans cette image, le message étiqueté uid :Alice atteint toutes les inscriptions marquées uid :Alice; par conséquent, tous les appareils d’Alice.

Expressions de balise

Il existe des cas dans lesquels une notification doit cibler un ensemble d’inscriptions identifiées non par une seule balise, mais par une expression booléenne sur les balises.

Considérez une application sportive qui envoie un rappel à tout le monde à Boston à propos d’un match entre les Red Sox et cardinals. Si l’application cliente inscrit des étiquettes sur l’intérêt des équipes et de l’emplacement, la notification doit être destinée à tous les utilisateurs de Boston qui sont intéressés par le Red Sox ou les Cardinals. Cette condition peut être exprimée avec l’expression booléenne suivante :

(follows_RedSox || follows_Cardinals) && location_Boston

d’expressions de balise

Les expressions de balise peuvent contenir tous les opérateurs booléens, tels que AND (&&), OR (||) et NOT ( !). Ils peuvent également contenir des parenthèses. Les expressions de balise sont limitées à 20 balises s’ils contiennent uniquement des unités d’organisation ; sinon, ils sont limités à 6 balises.

Vous pouvez envoyer des notifications à des expressions de balise à l’aide de la envoyer des notifications méthodes de la classe Microsoft.ServiceBus.Notifications.NotificationHubClient dans le Kit de développement logiciel (SDK). Vous pouvez également utiliser Node.js, ou les API REST de notifications Push . Notez les exemples suivants :

await hub.SendWindowsNativeNotificationAsync(wnsToast, "(tagA && !tagB)");
notificationHubService.wns.sendToastText01('(tagA && !tagB)', {
            text1: 'Hello World!'
        }, callback);

Voir aussi

Autres ressources

Références d’API
didacticiel Dernières nouvelles
envoyer des notifications aux utilisateurs