Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Utilisation des assistants de modèles de messages
Avec les modèles Amazon Pinpoint, les clients peuvent créer des modèles de messages réutilisables basés sur le langage Handlebars.js. Les assistants fournissent diverses fonctionnalités, telles que le formatage d’un prix dans la devise d’une région spécifique ou l’ajout d’un lieu basé sur un fuseau horaire. Un assistant peut utiliser une chaîne ou un nombre entier spécifique pour la valeur ou une variable de message Amazon Pinpoint spécifique.
Voici les catégories d’assistants, décrites dans les sections suivantes :
Cette section décrit les assistants intégrés fournis par Handlebars. Pour la liste complète, voir les assistants intégrés
-
each
: itère une liste.Note
La taille maximale de la liste est de 15 éléments.
-
if
: évalue une déclaration.
- each
-
Itère une liste. Cet assistant utilise uniquement une instruction de bloc. Vous pouvez éventuellement :
-
envoyer
@index
dans la demande pour référencer l’indice de boucle actuel. -
utiliser l’assistant
this
pour référencer l’élément en cours d’itération. -
renvoyer la réponse de l’assistant sous forme de liste, à l’aide de la balise
<li>
.
Utilisation
{{#each
value
}}La valeur à la position
{{@index}}
est{{this}}
.{{else}}
La condition est false.
{{/each}}
each
doit être précédé d’un signe dièse (#
) et se terminer par un symbole{{/each}}
fermant dans l’instruction de bloc.Exemple
Dans cet exemple,
each
est utilisé pour renvoyer une liste des couleurs préférées d’un utilisateur. Dans le cas d’une valeurfalse
, une déclarationelse
est renvoyée. Si la demande est la suivante :{{#each User.UserAttributes.FavoriteColors}}
<li>{{this}}</li>
{{else}}
You have no favorite colors.
{{/each}}
renvoie-
red
-
blue
-
yellow
pour une déclaration true.
-
- if
-
Évalue si quelque chose est « true » et renvoie une réponse basée sur l’évaluation.
Utilisation
{{#if
value
}}La valeur n'est pas indéfinie
{{else}}
La valeur est indéfinie
{{/if}}
if
doit être précédé d’un signe dièse (#
) et se terminer par un symbole{{/if}}
fermant dans l’instruction de bloc.Exemple
Dans cet exemple, l’assistant
if
est utilisé pour évaluer le prénom d’un utilisateur. Si le nom est trouvé, un message d’accueil est renvoyé qui transmet le prénom de l’utilisateur dans la réponse. Dans le cas contraire, l’instructionelse
renvoie un autre message d’accueil.{{#if User.UserAttributes.FirstName.[0]}}
Hello
{{User.UserAttributes.FirstName.[0]}},
{{else}}
Hello,
{{/if}}
renvoie
Hello, Jane
si l'if
assistant est vrai.
Cette section décrit les assistants conditionnels.
Les assistants conditionnels peuvent être utilisés sur une seule ligne ou dans une instruction de bloc. Vous pouvez personnaliser la réponse quelle que soit la méthode d’assistance que vous utilisez. Vous pouvez transmettre des aides conditionnelles supplémentaires dans les instructions sur une seule ligne et dans les instructions par blocs. Les assistants conditionnels suivants indiquent d’abord l’utilisation d’une seule ligne, puis d’une instruction de bloc à l’aide d’une clause else
facultative. Voici les assistants conditionnelles :
-
and
— Compare si tous les éléments transmis sont égaux. -
eq
: teste si deux éléments sont égaux. -
gt
: teste si un élément est supérieur à un autre. -
gte
: teste si un élément est supérieur ou égal à un autre. -
if
— Évalue si quelque chose est vrai. -
lt
: teste si un élément est inférieur à un autre. -
lte
: teste si un élément est inférieur ou égal à un autre. -
neq
: évalue si deux éléments ne sont pas égaux. -
not
— Inverse la réponse d'une opération booléenne. -
or
: compare si l’un des éléments de l’argument est égal.
- and
-
Compare si tous les éléments transmis dans un argument sont égaux, puis renvoie la réponse en fonction du résultat. Cet assistant peut être utilisé pour les valeurs non booléennes. Vous devez transmettre au moins deux éléments pour la condition.
Utilisation
-
{{and
valuea
valueb
valuec
valued
yes='y
' no='n
'}}Vous pouvez remplacer
y
andn
avec d'autres valeurs, telles queyes
andno
, ou toute autre chaîne que vous souhaitez renvoyer, en fonction de la condition. -
{{#and
valuea
valueb
}}La condition est true.
{{else}}
La condition est false.
{{/and}}
and
doit être précédé d’un signe dièse (#
) et se terminer par un symbole{{/and}}
fermant dans l’instruction de bloc.
Exemple
Dans cet exemple,
eq
est utilisé dans l’instruction de blocand
pour déterminer si les deux chaînes transmises pour les attributsLocation.City
etLocation.Country
sont vraies. Si les deux conditions sont égales, une déclaration true est renvoyée. Si l’un de ces attributs est faux, une déclarationelse
est renvoyée.{{#and (eq Location.City "Los Angeles") (eq Location.Country "US")}}
You live in Los Angeles and the US.
{{else}}
You don’t live in Los Angeles and the US.
{{/and}}
-
- eq
-
Teste si deux éléments sont égaux ou si la valeur d’un élément est égale à une chaîne passée.
Utilisation
-
{{eq
valuea
valueb
yes='y
' no='n
'}}Vous pouvez remplacer
y
andn
avec d'autres valeurs, telles queyes
andno
, ou toute autre chaîne que vous souhaitez renvoyer, en fonction de la condition. -
{{#eq
valuea
valueb
}}La condition est true.
{{else}}
La condition est false.
{{/eq}}
eq
doit être précédé d’un signe dièse (#
) et se terminer par un symbole{{/eq}}
fermant dans l’instruction de bloc.
Exemple
Dans cet exemple,
eq
est utilisé pour évaluer si la valeur deUser.UserAttributes.FavoriteColors.[0]
estRed
. Si la réponse esttrue
positive, une déclaration vraie est renvoyée. Si la réponse estfalse
, une déclarationelse
est renvoyée.{{#eq User.UserAttributes.FavoriteColors.[0] "
red
"}}Your favorite color is red.
{{else}}
You don't like red.
{{/eq}}
-
- gt
-
Teste si la valeur d’un élément est supérieure à celle d’un autre.
Utilisation
-
{{gt
valuea
valueb
yes='y
' no='n
'}}Vous pouvez remplacer
y
andn
avec d'autres valeurs, telles queyes
andno
, ou toute autre chaîne que vous souhaitez renvoyer, en fonction de la condition. -
{{#gt
valuea
valueb
}}La condition est true.
{{else}}
La condition est false.
{{/gt}}
gt
doit être précédé d’un signe dièse (#
) et se terminer par un symbole{{/gt}}
fermant dans l’instruction de bloc.
Exemple
Dans cet exemple, l'assistant compare la valeur de l'
User.UserAttributes.UserAge.[0]
attribut à une chaîne17
, pour vérifier si l'âge de l'utilisateur est supérieur à 17 ans. Si la réponse esttrue
, une déclaration true est renvoyée. Si la réponse estfalse
, une déclarationelse
est renvoyée.{{#gt User.UserAttributes.UserAge.[0] "
17
"}}You are old enough to rent a car.
{{else}}
You are not old enough to rent a car.
{{/gt}}
-
- gte
-
Teste si la valeur d’un élément est supérieure ou égale à celle d’un autre.
Usage
-
{{gte
valuea
valueb
yes='y
' no='n
'}}Vous pouvez remplacer
y
andn
avec d'autres valeurs, telles queyes
andno
, ou toute autre chaîne que vous souhaitez renvoyer, en fonction de la condition. -
{{#gte
valuea
valueb
}}La condition est true.
{{else}}
La condition est false.
{{/gte}}
get
doit être précédé d’un signe dièse (#
) et se terminer par un symbole{{/gte}}
fermant dans l’instruction de bloc.
Exemple
Dans cet exemple, l'assistant compare l'
User.UserAttributes.UserAge.[0]
attribut à une chaîne18
, pour vérifier si l'âge de l'utilisateur est supérieur ou égal à 18 ans. Si la réponse esttrue
, une déclaration true est renvoyée. Si la réponse estfalse
, une déclarationelse
est renvoyée.{{#gte User.UserAttributes.UserAge.[0] "
18
"}}You are old enough to rent a car.
{{else}}
You are not old enough to rent a car.
{{/gte}}
-
- if
-
Évalue si quelque chose est « true » et renvoie une réponse basée sur l’évaluation.
Utilisation
-
{{#if
value
}}Vous pouvez remplacer
y
andn
avec d'autres valeurs, telles queyes
andno
, ou toute autre chaîne que vous souhaitez renvoyer, en fonction de la condition. -
{{#if
}}value
La condition est true.
{{else}}
La condition est false.
{{/if}}
if
doit être précédé d’un signe dièse (#
) et se terminer par un symbole{{/if}}
fermant dans l’instruction de bloc.
Exemple
Dans cet exemple, l’assistant est utilisé pour évaluer le prénom d’un utilisateur. Si le nom est trouvé, un message d’accueil est renvoyé qui transmet le prénom de l’utilisateur dans la réponse. Dans le cas contraire, l’instruction « else » renvoie un autre message d’accueil.
{{#if User.UserAttributes.FirstName.[0]}}
Hello
{{User.UserAttributes.FirstName.[0]}}
,
{{else}}
Hello,
{{/if}}
renvoie
Hello Jane,
si l'assistant est vrai. -
- lt
-
Teste si la valeur d’un élément est inférieure à la valeur d’un autre.
Utilisation
-
{{lt
valuea
valueb
yes='y
' no='n
'}}Vous pouvez remplacer
y
andn
avec d'autres valeurs, telles queyes
andno
, ou toute autre chaîne que vous souhaitez renvoyer, en fonction de la condition. -
{{#lt
valuea
valueb
}}La condition est true.
{{else}}
La condition est false.
{{/lt}}
lt
doit être précédé d’un signe dièse (#
) et se terminer par un symbole{{/lt}}
fermant dans l’instruction de bloc.
Exemple
Dans cet exemple, l'assistant compare l'
User.UserAttributes.UserAge.[0]
attribut à une chaîne18
, pour vérifier si l'utilisateur est âgé de moins de 18 ans. Si la réponse esttrue
, une déclaration true est renvoyée. Si la réponse estfalse
, une déclarationelse
est renvoyée.{{#lt User.UserAttributes.UserAge.[0] "
18
"}}You are not old enough to rent a car.
{{else}}
You are old enough to rent a car.
{{/lt}}
-
- lte
-
Teste si la valeur d’un élément est inférieure ou égale à celle d’un autre.
Utilisation
-
{{lte
valuea
valueb
yes='y
' no='n
'}}Vous pouvez remplacer
y
andn
avec d'autres valeurs, telles queyes
andno
, ou toute autre chaîne que vous souhaitez renvoyer, en fonction de la condition. -
{{#lte
valuea
valueb
}}La condition est true.
{{else}}
La condition est false.
{{/lte}}
lte
doit être précédé d’un signe dièse (#
) et se terminer par un symbole{{/lte}}
fermant dans l’instruction de bloc.
Exemple
Dans cette instruction de bloc, l'assistant compare l'
User.UserAttributes.UserAge.[0]
attribut à une chaîne17
, pour vérifier si l'âge de l'utilisateur est inférieur ou égal à 17 ans. Si la réponse esttrue
, une déclaration true est renvoyée. Si la réponse estfalse
, une déclarationelse
est renvoyée.{{#lte User.UserAttributes.Age.[0] "
17
"}}You are not old enough to rent a car.
{{else}}
You are old enough to rent a car.
{{/lte}}
-
- neq
-
Vérifiez si deux éléments ne sont pas égaux.
Utilisation
-
{{neq
valuea
valueb
yes='y
' no='n
'}}Vous pouvez remplacer
y
andn
avec d'autres valeurs, telles queyes
andno
, ou toute autre chaîne que vous souhaitez renvoyer, en fonction de la condition. -
{{#neq
valuea
valueb
}}La condition est true.
{{else}}
La condition est false.
{{/neq}}
neq
doit être précédé d’un signe dièse (#
) et se terminer par un symbole{{/neq}}
fermant dans l’instruction de bloc.
Exemple
Dans cette instruction de bloc, l'
User.UserAttributes.FavoriteColors.[0]
attribut est comparé à une chaîne
. Si la réponse estRed
true
, une déclaration true est renvoyée. Si la réponse estfalse
, une déclarationelse
est renvoyée.{{#neq User.UserAttributes.Favorite.Colors.[0] "
red
"}}You do not like red.
{{else}}
You like red.
{{/neq}}
-
- not
-
Inverse la réponse d’une opération booléenne, de sorte que si
not
est une comparaison positive, une instructiontrue
soit renvoyée. Si la réponse est false, une instruction « else » est renvoyée.Utilisation
-
{{not
value
yes='y
' no='n
'}}Vous pouvez remplacer
y
andn
avec d'autres valeurs, telles queyes
andno
, ou toute autre chaîne que vous souhaitez renvoyer, en fonction de la condition. -
{{#not
}}value
La condition est true.
{{else}}
La condition est false.
{{/not}}
not
doit être précédé d’un signe dièse (#
) et se terminer par un symbole{{/not}}
fermant dans l’instruction de bloc.
Exemple
Dans cette instruction de bloc, l'
User.UerAttributes.FavoriteColors.[0]
attribut est vérifié par rapport à une chaînered
, à l'aide de l'eq
assistant. L’assistantnot
renvoie alors le contraire de l’assistanteq
. Si la réponse renvoie une couleur autre quered
a,true
un relevé est renvoyé. Si la réponse est renvoyéered
, puis uneelse
déclaration est renvoyée indiquant une fausse déclaration.{{#not (eq User.UserAttributes.Favorite.Colors.[0] "
red
")}}You do not like red.
{{else}}
You like red.
{{/not}}
Exemple
Dans cet exemple,
{{not (eq User.UserAttributes.FavoriteColors.[0] "
red
")}}renvoie faux si
User.UserAttributes.FavoriteColors.[0]
c'estred
. -
- or
-
Compare si l’un des éléments de l’argument est égal, puis renvoie une réponse basée sur le résultat. Cet assistant peut être utilisé pour les valeurs non booléennes.
Utilisation
-
{{or
valuea
valueb
valuec
valued
yes='y
' no='n
'}}Vous pouvez remplacer
y
andn
avec d'autres valeurs, telles queyes
andno
, ou toute autre chaîne que vous souhaitez renvoyer, en fonction de la condition. Vous devez transmettre au moins deux éléments pour la condition. -
{{#or
valuea
valueb
}}La condition est true.
{{else}}
La condition est false.
{{/or}}
or
doit être précédé d’un signe dièse (#
) et se terminer par un symbole{{/or}}
fermant dans l’instruction de bloc.
Exemple
Dans cette instruction de bloc
or
, deux chaînes de l’attributLocation.City
sont également comparées à l’aide de l’assistanteq
. Si l’un des attributs esttrue
, une déclaration true est renvoyée. Si une ou plusieurs réponses sontfalse
, une instructionelse
est renvoyée.{{#or (eq Location.City "Los Angeles") (eq Location.City "Seattle")}}
You live on the West Coast of the United States.
{{else}}
You do not live on the West Coast of the United States.
{{/or}}
-
Cette section décrit les assistants de chaîne suivants :
-
abbreviate
: tronque une valeur. -
capitalize
: met en majuscule chaque mot entre des espaces blancs. -
capitalizeFirst
: met en majuscule le premier caractère d’une valeur. -
center
: centre une valeur. -
cut
: supprime une valeur. -
dateFormat
: définit le style de date. -
inflect
: renvoie une chaîne au singulier ou au pluriel en fonction du nombre. -
join
: joint un tableau, un itérateur ou un objet itérable. -
ljust
: justifie une valeur dans la marge de gauche. -
lower
: convertit une valeur en minuscules. -
now
: imprime la date actuelle. -
ordinalize
: ordinalise une valeur numérique. -
replace
: remplace une chaîne par une autre. -
rjust
: justifie une valeur par la marge droite. -
slugify
: convertit une valeur en minuscules et supprime les caractères autres que des mots, convertit les espaces en tirets et supprime les espaces blancs de fin. -
stripTags
— Supprime les HTML balises [X] d'une valeur. -
substring
: renvoie une nouvelle chaîne sous forme de sous-chaîne d’une valeur transmise. -
upper
: convertit la valeur transmise en majuscules.
-
yesno
: remplace true, false et « no » par « Oui », « Non » et « Peut-être ».
- abbreviate
-
Tronque une valeur si celle-ci dépasse le nombre spécifié. Les espaces blancs sont inclus dans le décompte des longueurs. Des points de suspension apparaissent dans la réponse pour indiquer une valeur tronquée. Les points de suspension sont pris en compte dans la valeur tronquée de la réponse. Ce type d’assistant est pratique si vous avez une grande table et un espace minimal. Le fait de tronquer les valeurs d’une cellule permet d’uniformiser l’apparence du tableau.
Utilisation
{{abbreviate
, remplaçantvalue
X
}}X
avec une valeur numérique indiquant le nombre de caractères à conserver. Les nombres négatifs ne sont pas pris en charge.Exemple
Dans cet exemple,
abbreviate
est utilisé pour tronquerUser.UserAttributes.LastName.[0]
à six (6) caractères. La réponse comprend des points de suspension, dont les points sont pris en compte dans le total des six caractères.{{abbreviate
renvoieUser.UserAttributes.LastName.[0]
6
}}Ale...
ifAlejandro
est la valeur de[0]
. - capitalize
-
Met en majuscule chaque mot entre des espaces blancs.
Utilisation
{{capitalize
value
}}Exemple
Dans cet exemple, la capitalisation initiale est appliquée à chaque mot de l’entrée
Attributes.description.[0]
.{{capitalize
Attributes.description.[0]
}}Si
Attributes.description.[0]
renvoieMy First Post
, si la valeur deAttributes.description.[0]
estmy first post
. - capitalizeFirst
-
Met en majuscule le premier caractère d’une valeur.
Utilisation
{{capitalizeFirst
value
}}Exemple
Dans cet exemple, la mise en majuscule est appliquée au premier caractère du premier mot de l’entrée
Attributes.description.[0]
.{{capitalizeFirst
renvoieAttributes.description.[0]
}}My first post
, si la valeur de
estAttributes.description.[0]
my first post
.Exemple
- center
-
Centre la valeur dans un champ d’une largeur donnée par le nombre spécifié. Vous pouvez éventuellement transmettre un caractère à afficher pour le remplissage ou laisser le champ vide. Si aucun caractère n’est transmis, un espace blanc est utilisé.
Utilisation
{{center
, remplaçantvalue
size=X
[pad=" "}}X
avec une valeur numérique.Si
pad
est laissé vide, un espace blanc est utilisé comme remplissage dans la réponse. Si vous transmettez un caractère, celui-ci apparaît dans chaque espace du remplissage. Les nombres négatifs ne sont pas pris en charge.Exemple
Dans cet exemple, la valeur de
Location.City
est centrée sur une taille de19
.{{center
renvoieLocation.City
size=19
}}" Los Angeles "
SiLocation.City
c'estLos Angeles
. Notez que les guillemets affichés dans l'exemple de sortie ne sont fournis qu'à titre d'accentuation. - cut
-
Supprime la valeur spécifiée d’une chaîne de caractères.
Utilisation
{{cut
, en remplaçant l’espace dans le paramètre entre guillemets par la valeur à couper. Si aucune valeur de paramètre n’est transmise, un espace blanc est utilisé.value
[" "
]}}Exemple
Cet exemple supprime la lettre
e
à partir deLocation.City
l'attribut.{{cut
renvoieLocation.City
"e
"}}Los Angls
si[Location.City
c'estLos Angeles
. - dateFormat
-
Définit le style de date par défaut pour la date dans n’importe quelle réponse. Pour obtenir la liste des fuseaux horairesIDs, voirhttps://en.wikipedia.org/wiki/List_of_tz_database_time_zones
. Utilisation
{{dateFormat date [inputFormat="format1"] [outputFormat="format2"] [tz=timeZoneId] [locale=localeID]}}
Le paramètre
format
doit être défini sur .-
«
full
» : format de date complet. Par exemple :Tuesday, September 19, 2020
-
«
long
» : format de date long. Par exemple :September 19, 2020
-
«
medium
» : format de date moyen. Par exemple :Sept 19, 2020
-
«
short
» : format de date court. Par exemple :9/19/20
-
«
pattern
» : utilise un format de modèle de date personnalisé. Pour plus d’informations sur les modèles de date, consultez https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html.
«
locale
» : utilise un format de date basé sur des paramètres régionaux donnés. Pour plus d’informations concernant les paramètres régionaux, consultez https://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/LocaleUtils.html#toLocale-java.lang.String-. Si un format n’est pas transmis,
medium
est utilisé par défaut.Exemple
Dans cet exemple, l'
[0]
entrée
estUser.UserAttributes.StartDate.[0]
09/19/2020
et un message est envoyé à un utilisateur en utilisant le format defull
date basé surAmerica/Los_Angeles
fuseau horaire.We can meet with you any time on
{{dateFormat User.UserAttributes.StartDate.[0] inputFormat="MM/dd/yyyy" outputFormat="full" tz=America/Los_Angeles}}.
renvoieWe can meet with you any time on Tuesday, September 19, 2020.
-
- inflect
-
Renvoie une chaîne au singulier ou au pluriel en fonction de la valeur du décompte.
Utilisation
{{inflect
count
singular
plural
[includeCount=false]}}-
Entrez les formes singulière et plurielle de la chaîne que vous souhaitez transmettre dans l’argument.
-
Si
includeCount
est défini surfalse
, aucun nombre n’est renvoyé dans la réponse. S’il est défini surtrue
, lecount
est inclus dans la réponse.
Exemple
Les exemples suivants montrent l’inflexion d’un achat de pommes, avec ou sans
includeCount
.Thank you for your purchase of {{inflect
renvoie :3
apple
apples
includeCount=false
}}.Thank you for your purchase of apples.
Si
includeCount
est défini surtrue
, la réponse estThank you for your purchase of 3 apples.
-
- join
-
Joint un tableau, un itérateur ou un objet itérable. La réponse renvoie une liste, chaque valeur de la liste étant concaténée par le caractère que vous avez transmis à
join
. Par exemple, vous pouvez séparer les valeurs à l’aide d’une virgule (,
). La valeur de cet assistant doit être une liste sans indice de position d’attribut. Par exemple,Attributes.custom_attribute
.Utilisation
{{join
value
" // " [prefix=""] [suffix=""]}}Exemple
Dans cet exemple, une liste de couleurs est renvoyée, séparée par une virgule et un espace (
", "
) :{{join
renvoieAttributes.favorite_colors
",
"}}blue, red, green
siAttributes.favorite_colors
c'est la listeblue,red,green
. - ljust
-
Justifie la valeur dans la marge de gauche et ajoute de l’espace sur la droite pour que la longueur de la valeur corresponde au nombre. Les nombres négatifs ne sont pas pris en charge.
Vous pouvez éventuellement transmettre un caractère à afficher pour le
pad
ou laisser le champ vide. Si vous laissez la valeurpad
vide, la valeur par défaut est un espace blanc.Utilisation
{{ljust
, oùvalue
size=X
[pad=" "]}}X
est la longueur totale de la valeur, espaces blancs compris.Exemple
Dans cet exemple, une valeur de justification gauche de
15
est appliqué à Location.City.{{ljust
renvoieLocation.City
size=15
}}"Los Angeles "
si la valeur deLocation.City
estLos Angeles
. Notez que les guillemets affichés dans l'exemple de sortie ne sont fournis qu'à titre d'accentuation. - lower
-
Convertit une valeur en minuscules.
Utilisation
{{lower
value
}}Exemple
Dans cet exemple, l'
[0]
entrée pourUser.UserAttributes.LastName.[0]
est remplacée par des minuscules.{{lower
renvoieUser.UserAttributes.LastName.[0]
}}santos
ifSantos
est la valeur de[0]
. - maintenant
-
Imprime la date actuelle en fonction de l’ID de fuseau horaire passé. Pour obtenir la liste des fuseaux horairesIDs, voirhttps://en.wikipedia.org/wiki/List_of_tz_database_time_zones
. Utilisation
{{now ["format"] [tz=timeZoneId] [locale=localeID]}}
Le paramètre
format
doit être défini sur .-
«
full
» : format de date complet. Par exemple :Tuesday, September 19, 2020
-
«
long
» : format de date long. Par exemple :September 19, 2020
-
«
medium
» : format de date moyen. Par exemple : 19 sept 2020 -
«
short
» : format de date court. Par exemple : 19/9/20 -
«
pattern
» : un modèle de date. Pour plus d’informations sur les modèles de date, consultez https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html.
«
locale
» : utilise un format de date basé sur des paramètres régionaux donnés. Pour plus d’informations concernant les paramètres régionaux, consultez https://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/LocaleUtils.html#toLocale-java.lang.String-. Si un format n’est pas transmis,
medium
est utilisé par défaut.Exemple
Dans cet exemple, la date actuelle à Los Angeles est renvoyée au format
medium
.{{now "medium" tz=
renvoieAmerica/Los_Angeles
}}Sept 19, 2020
. -
- ordinalize
-
Ordinalise la valeur numérique transmise dans l’argument. Par exemple,
1
est ordinalisé comme1st
and2
comme2nd
. Seules les valeurs numériques sont prises en charge.Utilisation
{{ordinalize [
number
]}}Exemple
Dans cet exemple, l’entrée
[0]
deUser.UserAttributes.UserAge
est ordinalisée et renvoyée, accompagnée d’un message.Congratulations on your {{ordinalize User.UserAttributes.UserAge.[0]}} birthday!
renvoie22
ordinalisé comme22nd
.Congratulations on your 22nd birthday!
- replace
-
Remplace une chaîne par une autre. Une chaîne ou une valeur numérique doit être littérale. Les caractères génériques ne sont pas pris en charge.
Utilisation
{{replace
stringToReplace
replacementValue
}}Exemple
Dans cet exemple, un trait de soulignement (_) remplace un espace blanc.
{{replace
renvoieLocation.City
" " "_"
}}Los_Angeles
siLocation.City
c'estLos Angeles
. - rjust
-
Justifie la valeur par la marge de droite et ajoute de l’espace vers la gauche pour que la longueur de la valeur corresponde au nombre. Les nombres négatifs ne sont pas pris en charge.
Vous pouvez éventuellement transmettre un caractère à afficher pour le
pad
ou laisser le champ vide. Si vous conservez la valeurpad
vide, la valeur par défaut est un espace blanc.Utilisation
{{rjust
, oùvalue
size=X
[pad=" "]}}X
est la longueur totale de la valeur, espaces blancs compris.Exemple
Dans cet exemple, une valeur de justification correcte de
15
est appliqué à l'Location.City
attribut.{{rjust
renvoieLocation.City
size=15
}}" Los Angeles"
. siLocation.City
c'estLos Angeles
. Notez que les guillemets affichés dans la sortie ne sont fournis qu'à titre d'accentuation. - slugify
-
Convertit la valeur transmise en minuscules, supprime les caractères autres que les mots (alphanumériques et traits de soulignement), convertit les espaces en traits d’union et supprime tout espace blanc en début ou en fin de texte.
Utilisation
{{slugify
value
}}Exemple
Dans cet exemple, l’opération slugify est effectuée pour l’attribut
Location.City
.{{slugify
renvoieLocation.City
}}los-angeles
siLocation.City
c'estLos Angeles
. - stripTags
-
Supprime les HTML balises [X] d'une valeur.
Utilisation
{{stripTags
value
}}Exemple
Dans cet exemple, les HTML tags de l'utilisateur. UserAttributes.interest. [0] sont supprimés.
{{stripTags
renvoieUser.UserAttributes.interests.[0]
}}Art
, siUser.UserAttributes.interests.[0]
c'est le cas<h1>Art</h1>
. - substring
-
Renvoie une nouvelle chaîne sous forme de sous-chaîne de la valeur transmise. La longueur et la position sont déterminées par les paramètres
startOffset
etendOffset
, qui doivent être des entiers. Les nombres négatifs ne sont pas pris en charge. Si unendOffset
n’est pas transmis, la sous-chaîne utilise la valeur de fin d’origine de la chaîne.Utilisation
{{substring
value
startOffset
[endOffset]
}}Exemple
Dans cet exemple, un décalage de 4 et endOffset de 9 est appliqué à l'attribut Location.City.
{{substring
renvoieLocation.City 4 9
}}
si Los Angeles est la valeurAngel
Location.City
deLos Angeles
. - upper
-
Convertit la valeur transmise en majuscules.
Utilisation
{{upper
value
}}Exemple
Dans cet exemple, l’entrée
[0]
de l’attributUser.UserAttributes.LastName
est convertie en majuscules.{{upper User.UserAttributes.LastName.[0]}}
renvoieROE
si laUser.UserAttributes.LastName.[0]
valeur estRoe
. - yesno
-
Remplace
true
,false
etNULL
parYes
,No
etMaybe
.Utilisation
{{yesno value [yes="yes"] [no="no"] maybe=["maybe"]}}
Exemple
Dans cet exemple, l’attribut
IsUserSubscribed
indique si un utilisateur est abonné à une liste particulière.{{yesno Attributes.IsUserSubscribed}}
renvoieyes
siAttributes.IsUserSubscribed
c'esttrue
.
Cette section décrit les assistants mathématiques et d’encodage.
-
add
: renvoie la somme de deux nombres. -
ceiling
: arrondit un entier à son plafond mathématique. -
decode64
— Décode une valeur codée en base64 en chaîne. -
divide
: renvoie le quotient de deux nombres. -
encode64
— Encode une chaîne en utilisant base64. -
floor
: arrondit un entier à son plancher mathématique. -
md5
— Hache une chaîne transmise à l'aide de l'MD5algorithme. -
modulo
— Renvoie le reste des deux nombres en utilisant des virgules flottantes. -
multiply
: renvoie le produit de deux nombres. -
round
: arrondit une valeur décimale au nombre entier le plus proche. -
sha256
— Hache une chaîne transmise en utilisant SHA -256. -
sha512
— Hache une chaîne transmise en utilisant SHA -512. -
subtract
: renvoie la différence de deux nombres. -
uuid
— Génère aléatoirement un UUID dans un format 128 bits.
- ajouter
-
Renvoie la somme de deux nombres avec des virgules flottantes.
Utilisation
{{add
arg1
arg2
}}Exemple
{{add
renvoie5 2.3
}}7.3
- ceiling
-
Arrondit un entier à son plafond mathématique, qui est le nombre entier le plus élevé le plus proche de la valeur transmise.
Utilisation
{{ceiling
value
}}Exemple
{{ceiling
renvoie5.23
}}6
- decode64
-
Décode une valeur codée en base64 en chaîne.
Utilisation
{{decode64 "
string
"}}Exemple
{{decode64 "
renvoieSGVsbG8gd29ybGQ
="}}Hello World
- divide
-
Renvoie le quotient de deux nombres, virgules flottantes comprises.
Utilisation
{{divide
arg1
arg2
}}Exemple
{{divide
renvoie5 2.3
}}2.17391304
- encode64
-
Encode la chaîne transmise dans l'argument à l'aide de base64.
Utilisation
{{encode64 "
string
"}}Exemple
{{encode64 "
Hello World"
}}SGVsbG8gd29ybGQ=
- floor
-
Arrondit un entier à son plancher mathématique, qui est le plus petit nombre entier le plus proche de la valeur transmise.
Utilisation
{{floor
value
}}Exemple
{{floor
renvoie5.23
}}5
- md5
-
Hache une chaîne transmise à l'aide de l'MD5algorithme.
Utilisation
{{md5 "
string
"}}Exemple
{{md5 "
Hello World
"}}3e25960a79dbc69b674cd4ec67a72c62
- modulo
-
Renvoie le reste de deux nombres en utilisant des nombres à virgule flottante.
Utilisation
{{modulo
arg1
arg2
}}Exemple
{{modulo
renvoie7 2
}}1
- multiply
-
Renvoie le produit de deux nombres, avec les virgules flottantes éventuelles.
Utilisation
{{multiply
arg1
arg2
}}Exemple
{{multiply
renvoie5 2.3
}}11.5
- round
-
Arrondit une décimale vers le haut ou vers le bas au nombre entier le plus proche.
Utilisation
{{round
value
}}Exemple
You spent an average of {{round
renvoie :19.21
}} minutes on our website each day.You spent an average of 19 minutes on our website each day.
- sha256
-
Hache une chaîne transmise en utilisant la sécurité cryptographique SHA -256.
Utilisation
{{sha256 "
string
"}}Exemple
{{sha256 "
renvoieHello World
"}}a591a6d40bf420404a011733cfb7b190d62c65bf0bcda32b57b277d9ad9f146e
- sha512
-
Hache une chaîne transmise en utilisant la sécurité cryptographique SHA -512.
Utilisation
{{sha512 "
string
"}}Exemple
{{sha512 "
renvoieHello World
"}}2c74fd17edafd80e8447b0d46741ee243b7eb74dd2149a0ab1b9246fb30382f27e853d8585719e0e67cbda0daa8f51671064615d645ae27acb15bfb1447f459b
- subtract
-
Renvoie la différence de deux nombres, avec des virgules flottantes éventuelles.
Utilisation
{{subtract
arg1
arg2
}}Exemple
renvoie{{subtract
5 2.3
}}2.7
- uuid
-
Génère aléatoirement un UUID dans un format standard de 128 bits. Aucune valeur ne doit être transmise dans l’argument.
Utilisation
{{uuid}}
Exemple
renvoie{{uuid}}
95f36680-152c-4052-99ec-cc3cdf7ca594
Bien qu'ils ne soient techniquement pas utiles, les partiels intégrés sont un moyen de Handlebar de rationaliser les modèles qui incluent des chaînes répétées, ce qui est préférable pour les réutiliser. Pour plus d'informations, consultez la section Inline partials
Utilisation
{{#* inline "inlineName"}}Content to reuse{{/inline}}
Pour référencer le contenu du partiel en ligne ailleurs, utilisez :
{{> inlineName}}
Exemple
L'exemple suivant crée un extrait intégré qui inclut le prénom du destinataire et, s'il est disponible, son nom de famille, en ajoutant le code suivant au début du modèle :
{{#* inline "
fullName
"}}
{{User.UserAttributes.FirstName.[0]}} {{#if
User.UserAttributes.LastName.[0]}} {{User.UserAttributes.LastName.[0]}} {{/if}}
{{/inline}}
Après avoir créé le partiel fullName
, vous pouvez l’inclure n’importe où dans votre modèle en faisant précéder le nom du partiel d’un symbole >
(plus grand que), suivi d’un espace, comme dans l’exemple suivant : {{>
fullName}}
.
Bonjour {{>fullName}}
renvoie le prénom et le nom de famille de l'utilisateur s'ils sont vrais, par exemple, Hello
Jane Doe
. Sinon, si aucun nom de famille n'est trouvé, Hello
Jane
est renvoyé.
Les guidons incluent des fonctionnalités supplémentaires en plus de celles décrites ici. Pour plus d’informations, consultez handlebarsjs.com
Utilisation de variables avec des assistants de modèles de messages
Les attributs personnalisés d’Amazon Pinpoint, tels que User.UserAttributes.LastName
, sont stockés sous forme de liste, qu’il s’agisse d’un ou de plusieurs éléments. Lorsque vous transmettez une liste dans un assistant qui attend une chaîne, vous devez spécifier la valeur de l’index d’attribut ainsi que le nom de l’attribut. Cette valeur d’index d’attribut indique la position d’une valeur dans la liste d’attributs : .[0]
pour la première entrée de la liste, .[1]
pour la deuxième, .[2]
pour la troisième, etc. Par exemple, supposons que vous utilisiez l’assistant upper
pour convertir la première entrée ([0]
) de User.UserAttributes.LastName
en majuscules. L’utilisation de l’assistant est {{upper
, et l’attribut formaté comme value
}}User.UserAttributes.LastName
. Remplacez value
avec le nom de l'attribut et la valeur de l'index de l'attribut
comme suit :.[0]
{{upper
User.UserAttributes.LastName.[0]}}
. La réponse renvoie ensuite l’entrée [0]
de la liste, mise en forme entièrement en majuscules. Par exemple, si la valeur de [0]
est Santos
, la réponse renvoie SANTOS
.
Les noms des attributs personnalisés Amazon Pinpoint prennent en charge les espaces. Pour qu'un attribut personnalisé soit appelé"Last Name"
, vous devez formater l'attribut comme suitUser.UserAttributes.[Last Name]
. Pour accéder à la première entrée de la liste des index d'attributs, le format est le suivantUser.UserAttributes.[Last
Name].[0]
.
Un nom d’attribut personnalisé peut contenir jusqu’à 50 caractères. Une valeur d’attribut peut contenir jusqu’à 100 caractères. Lorsque vous définissez le nom d’un attribut personnalisé, évitez d’utiliser les caractères suivants : signe numérique (#), deux-points (:), point d’interrogation (?) et barres obliques (\/). La console Amazon Pinpoint ne peut pas afficher les noms d’attributs contenant ces caractères. Cette restriction ne s’applique pas aux valeurs d’attributs.
Utilisation d’assistants imbriqués
Vous pouvez imbriquer plusieurs modèles de messages d’assistance les uns dans les autres. L’exemple suivant montre comment formater deux assistants : {{ first helper (second helper)}}
. Le second assistant est traité en premier, suivi du premier assistant. N’oubliez pas que le premier assistant détermine toujours la sortie. Les assistants suivants doivent être imbriqués dans l’assistant précédent comme suit : {{ first helper (second helper (third helper)
)}}
.
L’exemple suivant montre comment imbriquer deux assistants pour transformer JANE
en Jane
: {{capitalizeFirst
(lower "
. JANE
")}}lower
convertit d’abord JANE
en jane
. Puis capitalizeFirst
convertit jane
en Jane
.