Passer au contenu

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 to

Chaque 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 to

L’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 to

Chaque 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")

  • 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 to

Il 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 to

Pour construire des segments sophistiqués, les opérations suivantes peuvent être appliquées aux conditions dans l’expression de filtre :

Joint 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 to

Construit 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 to

Construit 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 to

Dé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 to

Pour 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 to

Nombre 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
  1. Appareils iOS et Android avec l’application installée et avec des jetons push :
A("11111-11111", ["ios","android"], [with_tokens])
  1. Appareils iOS et Android avec l’application installée mais sans jetons push :
A("11111-11111", ["ios","android"], [without_tokens])
  1. 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])
  1. Tous les abonnés de l’application qui ont acheté quelque chose dans l’application :
AT( "11111-11111", "In-App Purchase", gte, 1)