Langage de segmentation
Pushwoosh propose un puissant moteur de segmentation pour créer des Segments granulaires basés sur les valeurs des Tags. Le langage de segmentation est une manière spécifique d’écrire et de combiner des critères de segmentation pour décrire un groupe particulier d’utilisateurs qui correspondent à ces critères et les traiter comme un seul segment d’audience.
Cet article décrit les concepts de base et la syntaxe du langage de segmentation, et fournit des exemples complets pour la construction de critères de segmentation pour divers cas d’usage.
Principes de base
Anchor link toChaque appareil dans votre base d’utilisateurs possède des attributs spécifiques qui lui sont associés via des valeurs de Tag.
Par exemple, disons qu’une utilisatrice nommée Jane vit à Tokyo et a 28 ans. Cette utilisatrice aura les Tags suivants définis pour son appareil :
- Nom : Jane
- Ville : Tokyo
- Âge : 28
Pour cibler Jane, vous devrez décrire un segment comme suit :
T("Name", eq, "Jane") * T("Age", eq, 28) * T("City", eq, "Tokyo")
Cette combinaison de conditions est une expression de filtre utilisée dans le langage de segmentation pour décrire des groupes d’utilisateurs, c’est-à-dire des Segments d’audience.
Expressions de filtre
Anchor link toL’expression de filtre est une chaîne de caractères qui contient une condition ou une combinaison de conditions décrivant le segment dont vous avez besoin.
Conditions
Anchor link toChaque condition décrit un segment d’appareils qui correspondent aux critères spécifiés dans cette condition.
Par exemple, la condition suivante construit un segment d’utilisateurs qui vivent à Tokyo :
T("City", e, "Tokyo")
où
- T est un Tag (type de condition) ;
- eq est un opérateur à appliquer ;
- “Tokyo” est une valeur de Tag associée aux appareils des utilisateurs.
Types de condition
Anchor link toIl existe quatre types de conditions que vous pouvez utiliser pour votre segmentation :
- A (Application) – décrit un segment d’appareils sur lesquels une application particulière est installée ;
- T (Tag) – décrit un segment d’appareils avec les valeurs de Tag spécifiées ;
- AT (Tag spécifique à l’application) – s’applique en combinaison avec les codes d’application pour les tags qui sont spécifiques à une application ;
- Event (Événement) – décrit un segment d’appareils ayant déclenché un événement Pushwoosh spécifique ;
Opérations sur les conditions
Anchor link toPour construire des segments sophistiqués, les opérations suivantes peuvent être appliquées aux conditions dans l’expression de filtre :
Union (+)
Anchor link toJoint les segments, c’est-à-dire qu’il construit un nouveau segment d’utilisateurs qui correspondent à au moins une des conditions spécifiées.

Par exemple, pour cibler les utilisateurs qui vivent à Tokyo ou à Osaka, vous devrez décrire le segment avec les conditions suivantes :
T("City", eq, "Tokyo") + T("City", eq, "Osaka")
Intersection (*)
Anchor link toConstruit un segment d’utilisateurs appartenant aux deux segments décrits par les conditions. Ainsi, seuls les utilisateurs qui respectent chaque condition que vous spécifiez seront inclus.

L’expression suivante décrit un segment d’utilisateurs qui vivent à Tokyo et qui ont spécifié leur nom :
T("City", eq, "Tokyo") * T("Name", any)
Différence (\)
Anchor link toConstruit un segment d’utilisateurs qui appartiennent à l’un des segments décrits et n’appartiennent pas à un autre.

Les utilisateurs qui vivent à Tokyo mais ne vous ont pas donné leur nom seront décrits comme suit :
T("City", eq, "Tokyo") \ T("Name", any)
Parenthèses
Anchor link toDéterminent l’ordre des opérations à effectuer avec les conditions dans votre expression de filtre.
Par exemple, l’expression de filtre suivante obtiendra d’abord un segment des abonnés de l’application 12345-67890 dont l’âge est 18 ans, puis soustraira tous les hommes de ce segment :
( A("12345-67890") * T("Age", eq, 18) ) \ T("Gender", eq, "Male")
Opérateurs de condition de Tag
Anchor link toPour chaque type de Tag, des opérateurs spécifiques sont appliqués.
Opérateurs pour les Tags de type entier (Integer)
Anchor link to- eq - égal à une valeur spécifiée
- noteq - différent d’une valeur spécifiée
- lte - inférieur ou égal à une valeur spécifiée
- gte - supérieur ou égal à une valeur spécifiée
- in - l’une des valeurs spécifiées
- notin - différent de l’une des valeurs spécifiées
- between - dans un intervalle spécifié
- any - appareils avec n’importe quelle valeur définie pour le tag
- notset - appareils sans valeur définie pour le tag
Opérateurs pour les Tags de type chaîne de caractères (String)
Anchor link to- eq - égal à une valeur spécifiée
- noteq - différent d’une valeur spécifiée
- in - égal à l’une des valeurs spécifiées
- notin - différent de l’une des valeurs spécifiées
- any - appareils avec n’importe quelle valeur définie pour le tag
- notset - appareils sans valeur définie pour le tag
Opérateurs pour les Tags de type liste (List)
Anchor link to- in - appareils avec l’une des valeurs de tag spécifiées
- notin - aucune des valeurs de tag spécifiées n’est associée à l’appareil
- any - appareils avec n’importe quelle valeur définie pour le tag
- notset - appareils sans valeur définie pour le tag
Opérateurs pour les Tags de type date (Date)
Anchor link to- eq - égal à la date spécifiée
- noteq - différent de la date spécifiée
- lte - avant ou à la date spécifiée
- gte - après ou à la date spécifiée
- in - égal à l’une des dates spécifiées
- notin - différent de l’une des dates spécifiées
- between - dans un intervalle spécifié
- any - appareils avec n’importe quelle valeur définie pour le tag
- notset - appareils sans valeur définie pour le tag
- match - correspond à un mois de l’année et un jour du mois spécifiés.
- daysago eq - égal à un nombre de jours spécifié avant le jour présent
- daysago noteq - différent d’un nombre de jours spécifié avant le jour présent
- daysago lte - inférieur ou égal à un nombre de jours spécifié avant le jour présent
- daysago gte - supérieur ou égal à un nombre de jours spécifié avant le jour présent
- daysago between - entre les nombres de jours spécifiés
Opérateurs pour les Tags de type booléen (Boolean)
Anchor link to- eq - égal à une valeur spécifiée
- noteq - différent d’une valeur spécifiée
- any - appareils avec n’importe quelle valeur définie pour le tag
- notset - appareils sans valeur définie pour le tag
Opérateurs pour les Tags de type prix (Price)
Anchor link to- eq - égal à une valeur spécifiée
- noteq - différent d’une valeur spécifiée
- lte - inférieur ou égal à une valeur spécifiée
- gte - supérieur ou égal à une valeur spécifiée
- in - égal à l’une des valeurs spécifiées
- notin - différent de l’une des valeurs spécifiées
- between - dans un intervalle spécifié
- any - appareils avec n’importe quelle valeur définie pour le tag
- notset - appareils sans valeur définie pour le tag
Opérateurs pour les Tags de type version (Version)
Anchor link to- eq - égal à une valeur spécifiée
- noteq - différent d’une valeur spécifiée
- lte - inférieur ou égal à une valeur spécifiée
- gte - supérieur ou égal à une valeur spécifiée
- in - égal à l’une des valeurs spécifiées
- notin - différent de l’une des valeurs spécifiées
- between - dans un intervalle spécifié
- any - appareils avec n’importe quelle valeur définie pour le tag
- notset - appareils sans valeur définie pour le tag
Opérateurs de condition “Event”
Anchor link toNombre d’événements
Anchor link to- count gte - appareils ayant déclenché l’événement plus ou exactement n fois
- count lte - appareils ayant déclenché l’événement moins ou exactement n fois
- count eq - appareils ayant déclenché l’événement exactement n fois
- count noteq - appareils ayant déclenché l’événement un nombre de fois quelconque mais différent de n
Date de l’événement
Anchor link to- date gte - appareils ayant déclenché l’événement après ou exactement à la date spécifiée
- date lte - appareils ayant déclenché l’événement avant ou exactement à la date spécifiée
- date eq - appareils ayant déclenché l’événement exactement à la date spécifiée
- date noteq - appareils ayant déclenché l’événement à n’importe quel moment sauf à la date spécifiée
- date in - appareils ayant déclenché l’événement à l’une des dates spécifiées
- date notin - appareils ayant déclenché l’événement à n’importe quel moment sauf à l’une des dates spécifiées
- date between - appareils ayant déclenché l’événement pendant une période spécifiée
- date daysago eq - la date de déclenchement de l’événement est égale à un nombre de jours spécifié avant le jour présent
- date daysago noteq - la date de déclenchement de l’événement est différente d’un nombre de jours spécifié avant le jour présent
- date daysago lte - la date de déclenchement de l’événement est inférieure ou égale à un nombre de jours spécifié avant le jour présent
- date daysago gte - la date de déclenchement de l’événement est supérieure ou égale à un nombre de jours spécifié avant le jour présent
- date daysago between - la date de déclenchement de l’événement se situe entre les nombres de jours spécifiés
Exemple d’expression de filtre
Anchor link to- Appareils iOS et Android avec l’application installée et avec des jetons push :
A("11111-11111", ["ios","android"], [with_tokens])
- Appareils iOS et Android avec l’application installée mais sans jetons push :
A("11111-11111", ["ios","android"], [without_tokens])
- Appareils iOS et Android avec l’application installée, qu’ils aient des jetons push ou non :
A("11111-11111", ["ios","android"], [with_tokens, without_tokens])
- Tous les abonnés de l’application qui ont acheté quelque chose dans l’application :
AT( "11111-11111", "In-App Purchase", gte, 1)