Uso de ayudantes de plantillas de mensajes - Amazon Pinpoint

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Uso de ayudantes de plantillas de mensajes

Con las plantillas de Amazon Pinpoint, los clientes pueden crear plantillas de mensajes reutilizables basadas en el lenguaje Handlebars.js. Los ayudantes ofrecen una variedad de características, como dar formato a un precio según la moneda de una región específica o agregar una ubicación basada en la zona horaria. Un ayudante puede usar una cadena o un entero específicos para el valor o una variable de mensaje de Amazon Pinpoint específica.

Estas son las categorías de ayudantes, que se describen en las secciones siguientes:

En esta sección se describen los ayudantes integrados que proporciona Handlebars. Para ver la lista completa, consulte los ayudantes integrados en handlebarsjs.com. Estos son los ayudantes integrados:

  • each: itera una lista.

    nota

    El tamaño máximo de la lista es de 15 elementos.

  • if: evalúa una instrucción.

cada

Itera una lista. Este ayudante usa solo una instrucción de bloque. Si lo desea, puede:

  • Pase @index en la solicitud para hacer referencia al índice de bucle actual.

  • Use el ayudante this para hacer referencia al elemento actual que está iterando.

  • Devuelva la respuesta del ayudante en una lista, con la etiqueta <li>.

Uso

{{#each value}}

El valor en la posición {{@index}} es {{this}}.

{{else}}

La condición es falsa.

{{/each}}

each debe ir precedido de un signo de almohadilla (#) y concluir con {{/each}} de cierre en la instrucción de bloque.

Ejemplo

En este ejemplo, each se utiliza para devolver una lista de los colores favoritos de un usuario. Para false, se devuelve una instrucción else. Si la solicitud es la siguiente:

{{#each User.UserAttributes.FavoriteColors}}

<li>{{this}}</li>

{{else}}

You have no favorite colors.

{{/each}} devuelve

  • red

  • blue

  • yellow

para una declaración verdadera.

if

Evalúa si algo es cierto y devuelve una respuesta en función de la evaluación.

Uso

{{#if value}}

El valor no está indefinido

{{else}}

El valor es indefinido

{{/if}}

if debe ir precedido de un signo de almohadilla (#) y concluir con {{/if}} de cierre en la instrucción de bloque.

Ejemplo

En este ejemplo, el ayudante if se utiliza para evaluar si el nombre de un usuario es el primero. Si se encuentra el nombre, se devuelve un saludo que pasa por el nombre del usuario en la respuesta. De lo contrario, la instrucción else devuelve un saludo alternativo.

{{#if User.UserAttributes.FirstName.[0]}}

Hello {{User.UserAttributes.FirstName.[0]}},

{{else}}

Hello,

{{/if}}

returns Hello, Jane si el if ayudante es verdadero.

En esta sección se describen los ayudantes condicionales.

Los ayudantes condicionales se pueden usar en una sola línea o en una instrucción de bloque. Puede personalizar la respuesta independientemente del método de ayudante que utilice. Puede pasar ayudantes condicionales adicionales en las instrucciones de una sola línea y en las de bloque. Los siguientes asistentes condicionales muestran el uso primero de una sola línea y, después, de una instrucción de bloque mediante una cláusula else opcional. Estos son los ayudantes condicionales:

  • and— Compara si todos los elementos pasados son iguales.

  • eq: comprueba si dos elementos son iguales.

  • gt: comprueba si un elemento es mayor que otro.

  • gte: comprueba si un elemento es mayor que otro o igual a otro.

  • if— Evalúa si algo es cierto.

  • lt: comprueba si un elemento es inferior a otro.

  • lte: comprueba si un elemento es inferior o igual a otro.

  • neq: evalúa si dos elementos no son iguales.

  • not— Invierte la respuesta de una operación booleana.

  • or: compara si alguno de los elementos del argumento es igual.

y

Compara si todos los elementos transferidos en un argumento son iguales y, a continuación, devuelve la respuesta en función del resultado. Este ayudante se puede utilizar para valores no booleanos. Debe transferir al menos dos elementos para la condición.

Uso

  • {{and valuea valueb valuec valued yes='y' no='n'}}

    Se puede reemplazar y y n con otros valores, como yes y no, o cualquier otra cadena que desee que se devuelva, según la condición.

  • {{#and valuea valueb}}

    La condición es verdadera.

    {{else}}

    La condición es falsa.

    {{/and}}

    and debe ir precedido de un signo de almohadilla (#) y concluir con {{/and}} de cierre en la instrucción de bloque.

Ejemplo

En este ejemplo, eq se utiliza en la instrucción de bloque and para determinar si las dos cadenas pasadas para los atributos Location.City y Location.Country son verdaderas. Si ambas condiciones son iguales, se devuelve una instrucción verdadera. Si alguno de esos atributos es falso, se devuelve una instrucción else.

{{#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

Comprueba si dos elementos son iguales o si el valor de un elemento es igual al de una cadena pasada.

Uso

  • {{eq valuea valueb yes='y' no='n'}}

    Se puede reemplazar y y n con otros valores, como yes y no, o cualquier otra cadena que desee que se devuelva, según la condición.

  • {{#eq valuea valueb}}

    La condición es verdadera.

    {{else}}

    La condición es falsa.

    {{/eq}}

    eq debe ir precedido de un signo de almohadilla (#) y concluir con {{/eq}} de cierre en la instrucción de bloque.

Ejemplo

En este ejemplo, eq se usa para evaluar si el valor de User.UserAttributes.FavoriteColors.[0] es Red. Si la respuesta estrue, se devuelve una afirmación verdadera. Si la respuesta es false, se devuelve una instrucción else.

{{#eq User.UserAttributes.FavoriteColors.[0] "red"}}

Your favorite color is red.

{{else}}

You don't like red.

{{/eq}}

gt

Prueba si el valor de un elemento es mayor que otro.

Uso

  • {{gt valuea valueb yes='y' no='n'}}

    Puede reemplazar y y n con otros valores, como yes y no, o cualquier otra cadena que desee que se devuelva, según la condición.

  • {{#gt valuea valueb}}

    La condición es verdadera.

    {{else}}

    La condición es falsa.

    {{/gt}}

    gt debe ir precedido de un signo de almohadilla (#) y concluir con {{/gt}} de cierre en la instrucción de bloque.

Ejemplo

En este ejemplo, el ayudante compara el valor del User.UserAttributes.UserAge.[0] atributo con una cadena 17, para comprobar si la edad del usuario es mayor de 17 años. Si la respuesta es true, se devuelve una instrucción verdadera. Si la respuesta es false, se devuelve una instrucción else.

{{#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

Prueba si el valor de un elemento es mayor o igual que otro.

Usage

  • {{gte valuea valueb yes='y' no='n'}}

    Puedes reemplazar y y n con otros valores, como yes y no, o cualquier otra cadena que desee que se devuelva, según la condición.

  • {{#gte valuea valueb}}

    La condición es verdadera.

    {{else}}

    La condición es falsa.

    {{/gte}}

    get debe ir precedido de un signo de almohadilla (#) y concluir con {{/gte}} de cierre en la instrucción de bloque.

Ejemplo

En este ejemplo, el ayudante compara el User.UserAttributes.UserAge.[0] atributo con una cadena 18, para comprobar si la edad del usuario es mayor o igual a 18 años. Si la respuesta es true, se devuelve una instrucción verdadera. Si la respuesta es false, se devuelve una instrucción else.

{{#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

Evalúa si algo es cierto y devuelve una respuesta en función de la evaluación.

Uso

  • {{#if value}}

    Puedes reemplazar y y n con otros valores, como yes y no, o cualquier otra cadena que desee que se devuelva, según la condición.

  • {{#if value}}

    La condición es verdadera.

    {{else}}

    La condición es falsa.

    {{/if}}

    if debe ir precedido de un signo de almohadilla (#) y concluir con {{/if}} de cierre en la instrucción de bloque.

Ejemplo

En este ejemplo, el ayudante se utiliza para evaluar si el nombre de un usuario es el primero. Si se encuentra el nombre, se devuelve un saludo que pasa por el nombre del usuario en la respuesta. De lo contrario, la instrucción else devuelve un saludo alternativo.

{{#if User.UserAttributes.FirstName.[0]}}

Hello {{User.UserAttributes.FirstName.[0]}},

{{else}}

Hello,

{{/if}}

returns Hello Jane, si el ayudante es verdadero.

lt

Prueba si el valor de un elemento es inferior al valor de otro.

Uso

  • {{lt valuea valueb yes='y' no='n'}}

    Puedes reemplazar y y n con otros valores, como yes y no, o cualquier otra cadena que desee que se devuelva, según la condición.

  • {{#lt valuea valueb}}

    La condición es verdadera.

    {{else}}

    La condición es falsa.

    {{/lt}}

    lt debe ir precedido de un signo de almohadilla (#) y concluir con {{/lt}} de cierre en la instrucción de bloque.

Ejemplo

En este ejemplo, el ayudante compara el User.UserAttributes.UserAge.[0] atributo con una cadena 18 , para comprobar si el usuario es menor de 18 años. Si la respuesta es true, se devuelve una instrucción verdadera. Si la respuesta es false, se devuelve una instrucción else.

{{#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

Prueba si el valor de un elemento es inferior o igual que otro.

Uso

  • {{lte valuea valueb yes='y' no='n'}}

    Puedes reemplazar y y n con otros valores, como yes y no, o cualquier otra cadena que desee que se devuelva, según la condición.

  • {{#lte valuea valueb}}

    La condición es verdadera.

    {{else}}

    La condición es falsa.

    {{/lte}}

    lte debe ir precedido de un signo de almohadilla (#) y concluir con {{/lte}} de cierre en la instrucción de bloque.

Ejemplo

En esta sentencia de bloque, el ayudante compara el User.UserAttributes.UserAge.[0] atributo con una cadena 17, para comprobar si el usuario tiene 17 años o menos. Si la respuesta es true, se devuelve una instrucción verdadera. Si la respuesta es false, se devuelve una instrucción else.

{{#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

Pruebe si dos elementos no son iguales.

Uso

  • {{neq valuea valueb yes='y' no='n'}}

    Puedes reemplazar y y n con otros valores, como yes y no, o cualquier otra cadena que desee que se devuelva, según la condición.

  • {{#neq valuea valueb}}

    La condición es verdadera.

    {{else}}

    La condición es falsa.

    {{/neq}}

    neq debe ir precedido de un signo de almohadilla (#) y concluir con {{/neq}} de cierre en la instrucción de bloque.

Ejemplo

En esta sentencia de bloque, el User.UserAttributes.FavoriteColors.[0] atributo se compara con una cadenaRed. Si la respuesta es true, se devuelve una instrucción verdadera. Si la respuesta es false, se devuelve una instrucción else.

{{#neq User.UserAttributes.Favorite.Colors.[0] "red"}}

You do not like red.

{{else}}

You like red.

{{/neq}}

no

Invierte la respuesta de una operación booleana, de modo que si not es una comparación positiva, se devuelve una instrucción true. Si la respuesta es falsa, se devuelve una instrucción else.

Uso

  • {{not value yes='y' no='n'}}

    Se puede reemplazar y y n con otros valores, como yes y no, o cualquier otra cadena que desee que se devuelva, según la condición.

  • {{#not value}}

    La condición es verdadera.

    {{else}}

    La condición es falsa.

    {{/not}}

    not debe ir precedido de un signo de almohadilla (#) y concluir con {{/not}} de cierre en la instrucción de bloque.

Ejemplo

En esta sentencia de bloque, el User.UerAttributes.FavoriteColors.[0] atributo se compara con una cadena red, utilizando el eq ayudante. A continuación, el ayudante not devuelve lo contrario del ayudante eq. Si la respuesta devuelve un color que no sea reda, se devuelve true una declaración. Si la respuesta regresa red, se devuelve una else declaración que indica que es falsa.

{{#not (eq User.UserAttributes.Favorite.Colors.[0] "red")}}

You do not like red.

{{else}}

You like red.

{{/not}}

Ejemplo

En este ejemplo,

{{not (eq User.UserAttributes.FavoriteColors.[0] "red")}}

devuelve falso si User.UserAttributes.FavoriteColors.[0] es red.

o

Compara si algunos de los elementos en el argumento son iguales y, a continuación, devuelve la respuesta en función del resultado. Este ayudante se puede utilizar para valores no booleanos.

Uso

  • {{or valuea valueb valuec valued yes='y' no='n'}}

    Se puede reemplazar y y n con otros valores, como yes y no, o cualquier otra cadena que desee que se devuelva, según la condición. Debe transferir al menos dos elementos para la condición.

  • {{#or valuea valueb}}

    La condición es verdadera.

    {{else}}

    La condición es falsa.

    {{/or}}

    or debe ir precedido de un signo de almohadilla (#) y concluir con {{/or}} de cierre en la instrucción de bloque.

Ejemplo

En esta instrucción de bloque or, se comparan adicionalmente dos cadenas del atributo Location.City mediante el ayudante eq. Si alguno de esos atributos es true, se devuelve una instrucción. Si una o más de las respuestas es false, se devuelve una instrucción else.

{{#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}}

En esta sección se describen los siguientes ayudantes de cadenas:

  • abbreviate: trunca un valor.

  • capitalize: escribe en mayúscula cada palabra entre espacios en blanco.

  • capitalizeFirst: pone en mayúscula el primer carácter de un valor.

  • center: centra un valor.

  • cut: recorta un valor.

  • dateFormat: establece el estilo de fecha.

  • inflect: devuelve una cadena singular o plural en función del recuento.

  • join: se une a una matriz, un iterador o un objeto iterable.

  • ljust: justifica un valor en el margen izquierdo.

  • lower: convierte un valor a minúsculas.

  • now: imprime la fecha actual.

  • ordinalize: ordinaliza un valor numérico.

  • replace: sustituye una cadena por otra.

  • rjust: justifica un valor en el margen derecho.

  • slugify: convierte un valor a minúsculas y elimina los caracteres que no son palabras, convierte los espacios en guiones y elimina los espacios en blanco del final.

  • stripTags— Elimina las HTML etiquetas [X] de un valor.

  • substring: devuelve una nueva cadena como subcadena de un valor pasado.

  • upper: convierte el valor pasado a mayúsculas.

  • yesno: sustituye verdadero, falso y no por Sí, No y Quizás.

abreviar

Trunca un valor si el valor supera el número especificado. Los espacios en blanco se incluyen en el recuento de longitudes. Se muestra una elipsis en la respuesta para indicar un valor truncado. La elipsis cuenta para el valor truncado de la respuesta. Este tipo de ayudante es útil si tiene una tabla grande y un espacio mínimo. Al truncar los valores de una celda, se obtiene un aspecto más uniforme de la tabla.

Uso

{{abbreviate value X}}, sustituyendo X con un valor numérico que indica el número de caracteres que se deben conservar. Los números negativos no se admiten.

Ejemplo

En este ejemplo, abbreviate se utiliza para truncar User.UserAttributes.LastName.[0] a seis (6) caracteres. La respuesta incluye una elipsis, cuyos puntos cuentan para el total de seis caracteres.

{{abbreviate User.UserAttributes.LastName.[0] 6}} devuelve

Ale... if Alejandro es el valor de[0].

escribir en mayúsculas

Escriba en mayúsculas cada palabra entre espacios en blanco.

Uso

{{capitalize value}}

Ejemplo

En este ejemplo, se aplica el uso inicial de mayúsculas a cada palabra de la entrada Attributes.description.[0].

{{capitalize Attributes.description.[0]}}

Si Attributes.description.[0] devuelve

My First Post, si el valor de Attributes.description.[0] es my first post.

capitalizeFirst

Escribe en mayúsculas el primer carácter de un valor.

Uso

{{capitalizeFirst value}}

Ejemplo

En este ejemplo, el uso de mayúsculas se aplica al primer carácter de la primera palabra de la entrada Attributes.description.[0].

{{capitalizeFirst Attributes.description.[0]}} devuelve

My first post, si el valor de Attributes.description.[0] es my first post.

Ejemplo

centro

Centra el valor en un campo de un ancho determinado mediante el número especificado. Si lo desea, puede pasar un carácter para que se muestre como relleno o dejar el campo en blanco. Si no se pasa ningún carácter, se utiliza un espacio en blanco.

Uso

{{center value size=X [pad=" "}}, en sustitución X con un valor numérico.

Si pad se mantiene en blanco, se utiliza un espacio en blanco como relleno en la respuesta. Si pasa un carácter, ese carácter se muestra en cada espacio del relleno. Los números negativos no se admiten.

Ejemplo

En este ejemplo, el valor de Location.City se centra con un tamaño de 19.

{{center Location.City size=19}} devuelve

"    Los Angeles    " Si Location.City es Los Angeles. Tenga en cuenta que las citas que se muestran en el resultado del ejemplo se proporcionan únicamente para enfatizar.

cortar

Elimina el valor especificado de una cadena.

Uso

{{cut value [" "]}}, que sustituye el espacio dentro del parámetro de comillas por el valor que se va a cortar. Si no se pasa ningún valor de parámetro, se utiliza un espacio en blanco.

Ejemplo

En este ejemplo se elimina la letra e del Location.City atributo.

{{cut Location.City "e"}} devuelve

Los Angls si [Location.City es Los Angeles.

dateFormat

Establece el estilo de fecha predeterminado para la fecha en cualquier respuesta. Para obtener una lista de la zona horariaIDs, consultehttps://en.wikipedia.org/wiki/List_of_tz_database_time_zones.

Uso

{{dateFormat date [inputFormat="format1"] [outputFormat="format2"] [tz=timeZoneId] [locale=localeID]}}

El parámetro format debe ser uno de:

  • full”: formato de fecha completo. Por ejemplo: Tuesday, September 19, 2020

  • long”: formato de fecha largo. Por ejemplo: September 19, 2020

  • medium”: formato de fecha medio. Por ejemplo: Sept 19, 2020

  • short”: formato de fecha corto. Por ejemplo: 9/19/20

  • pattern”: utiliza un formato de patrón de fechas personalizado. Para obtener más información acerca de patrones de fecha, consulte https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html.

locale”: utiliza un formato de fecha basado en una configuración local determinada. Para obtener más información sobre configuraciones locales, consulte https://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/LocaleUtils.html#toLocale-java.lang.String-.

Si no se pasa un formato, medium se utiliza de forma predeterminada.

Ejemplo

En este ejemplo, la [0] entrada User.UserAttributes.StartDate.[0] es 09/19/2020 y se envía un mensaje a un usuario con el formato de full fecha basado en America/Los_Angeles zona horaria.

We can meet with you any time on {{dateFormat User.UserAttributes.StartDate.[0] inputFormat="MM/dd/yyyy" outputFormat="full" tz=America/Los_Angeles}}. devuelve

We can meet with you any time on Tuesday, September 19, 2020.

modular

Devuelve una cadena singular o plural en función del valor del recuento.

Uso

{{inflect count singular plural [includeCount=false]}}

  • Ingrese las formas singular y plural de la cadena que desee incluir en el argumento.

  • Si includeCount se establece en false, no se devuelve ningún recuento en la respuesta. Si se establece en true, count se incluye en la respuesta.

Ejemplo

Los siguientes ejemplos muestran la inflexión de una compra de manzanas, con y sin includeCount.

Thank you for your purchase of {{inflect 3 apple apples includeCount=false}}. devuelve:

Thank you for your purchase of apples.

Si includeCount está establecido en true, entonces la respuesta es

Thank you for your purchase of 3 apples.

unirse

Se une a una matriz, un iterador o un objeto iterable. La respuesta devuelve una lista en la que cada valor de la lista está concatenado por el carácter que pase en join. Por ejemplo, es posible que separe los valores con una coma (,). El valor de este ayudante debe ser una lista sin un índice de posición de atributos. Por ejemplo, podría ser Attributes.custom_attribute.

Uso

{{join value " // " [prefix=""] [suffix=""]}}

Ejemplo

En este ejemplo, se devuelve una lista de colores, separada por una coma y un espacio (", "):

{{join Attributes.favorite_colors ", "}} devuelve

blue, red, green si Attributes.favorite_colors es la lista blue,red,green.

ljust

Justifica el valor en el margen izquierdo y agrega espacio a la derecha para que la longitud del valor coincida con el número. Los números negativos no se admiten.

Si lo desea, puede pasar un carácter para mostrar para pad o dejar el campo en blanco. Si deja en blanco el valor pad, el valor predeterminado es un espacio en blanco.

Uso

{{ljust value size=X [pad=" "]}}, dónde X es la longitud total del valor, incluidos los espacios en blanco.

Ejemplo

En este ejemplo, un valor de justificación izquierdo de 15 se aplica a Location.City.

{{ljust Location.City size=15}} devuelve

"Los Angeles    " si el valor de es Location.City Los Angeles. Tenga en cuenta que las citas que se muestran en el resultado del ejemplo se proporcionan únicamente para enfatizar.

lower

Convierte un valor a minúsculas.

Uso

{{lower value}}

Ejemplo

En este ejemplo, la [0] entrada para User.UserAttributes.LastName.[0] se cambia a minúscula.

{{lower User.UserAttributes.LastName.[0]}} devuelve

santos if Santos es el valor de[0].

now

Imprime la fecha actual en función del ID de zona horaria pasado. Para obtener una lista de la zona horariaIDs, consultehttps://en.wikipedia.org/wiki/List_of_tz_database_time_zones.

Uso

{{now ["format"] [tz=timeZoneId] [locale=localeID]}}

El parámetro format debe ser uno de:

  • full”: formato de fecha completo. Por ejemplo: Tuesday, September 19, 2020

  • long”: formato de fecha largo. Por ejemplo: September 19, 2020

  • medium”: formato de fecha medio. Por ejemplo: 19 de septiembre de 2020

  • short”: formato de fecha corto. Por ejemplo: 19/9/20

  • pattern”: un patrón de fechas. Para obtener más información acerca de patrones de fecha, consulte https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html.

locale”: utiliza un formato de fecha basado en una configuración local determinada. Para obtener más información sobre configuraciones locales, consulte https://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/LocaleUtils.html#toLocale-java.lang.String-.

Si no se pasa un formato, medium se utiliza de forma predeterminada.

Ejemplo

En este ejemplo, se devuelve la fecha actual de Los Ángeles con un formato medium.

{{now "medium" tz=America/Los_Angeles}} devuelve

Sept 19, 2020.

ordinalizar

Ordinaliza el valor numérico pasado en el argumento. Por ejemplo: 1 se ordinaliza como 1st y 2 tan 2nd. Solo se admiten valores numéricos.

Uso

{{ordinalize [number]}}

Ejemplo

En este ejemplo, la entrada [0] de User.UserAttributes.UserAge se ordinaliza y se devuelve junto con un mensaje.

Congratulations on your {{ordinalize User.UserAttributes.UserAge.[0]}} birthday! devuelve 22 ordinalizado como 22nd.

Congratulations on your 22nd birthday!

replace

Sustituye una cadena por otra. Una cadena o un valor numérico deben ser literales. No se admiten caracteres comodín.

Uso

{{replace stringToReplace replacementValue}}

Ejemplo

En este ejemplo, un guion bajo (_) sustituye un espacio en blanco.

{{replace Location.City " " "_"}} devuelve

Los_Angeles si el es Location.City Los Angeles.

rjust

Justifica el valor en el margen derecho y agrega espacio a la derecha para que la longitud del valor coincida con el número. Los números negativos no se admiten.

Si lo desea, puede pasar un carácter para mostrar para pad o mantener el campo en blanco. Si mantiene en blanco el valor de pad, el valor predeterminado es un espacio en blanco.

Uso

{{rjust value size=X [pad=" "]}}, dónde X es la longitud total del valor, incluidos los espacios en blanco.

Ejemplo

En este ejemplo, un valor de justificación correcto de 15 se aplica al Location.City atributo.

{{rjust Location.City size=15}} devuelve

"    Los Angeles" . si Location.City es Los Angeles. Tenga en cuenta que las citas que se muestran en la salida se proporcionan únicamente para enfatizar.

slugify

Convierte el valor pasado a minúsculas, elimina los caracteres que no son palabras (alfanuméricos y guiones bajos), convierte los espacios en guiones y elimina los espacios en blanco del principio y del final.

Uso

{{slugify value}}

Ejemplo

En este ejemplo, slugify se realiza para el atributo Location.City.

{{slugify Location.City}} devuelve

los-angeles si Location.City es Los Angeles.

stripTags

Elimina las HTML etiquetas [X] de un valor.

Uso

{{stripTags value}}

Ejemplo

En este ejemplo, las HTML etiquetas del usuario. UserAttributes.interest. [0] se eliminan.

{{stripTags User.UserAttributes.interests.[0]}} devuelve

Art, si lo User.UserAttributes.interests.[0] es<h1>Art</h1>.

subcadena

Devuelve una nueva cadena como subcadena del valor pasado. La longitud y la posición vienen determinadas por los parámetros startOffset y endOffset, que deben ser números enteros. Los números negativos no se admiten. Si endOffset no se transfiere, la subcadena utiliza el valor final original de la cadena.

Uso

{{substring value startOffset [endOffset]}}

Ejemplo

En este ejemplo, se aplica un desfase endOffset de 4 y 9 al atributo Location.City.

{{substring Location.City 4 9}} devuelve

Angelsi Los Ángeles es el valor de es Location.City Los Angeles.

upper

Convierte el valor pasado a mayúsculas.

Uso

{{upper value}}

Ejemplo

En este ejemplo, la entrada [0] del atributo User.UserAttributes.LastName se convierte completamente en mayúsculas.

{{upper User.UserAttributes.LastName.[0]}}devuelve

ROE si el User.UserAttributes.LastName.[0] valor es Roe.

yesno

Sustituye true, false y NULL con Yes, No y Maybe.

Uso

{{yesno value [yes="yes"] [no="no"] maybe=["maybe"]}}

Ejemplo

En este ejemplo, el atributo IsUserSubscribed devuelve si un usuario está suscrito a una lista determinada.

{{yesno Attributes.IsUserSubscribed}} devuelve

yes si Attributes.IsUserSubscribed es true.

En esta sección se describen los ayudantes matemáticos y de codificación.

  • add: devuelve la suma de dos números.

  • ceiling: redondea un entero hasta su límite matemático.

  • decode64— Decodifica un valor codificado en base64 en una cadena.

  • divide: devuelve el cociente de dos números.

  • encode64— Codifica una cadena mediante base64.

  • floor: redondea un entero hasta su límite matemático.

  • md5— Calcula una cadena pasada mediante el algoritmo. MD5

  • modulo— Devuelve el resto de dos números usando puntos flotantes.

  • multiply: devuelve el producto de dos números.

  • round: redondea un decimal al número entero más cercano.

  • sha256— Calcula una cadena pasada usando SHA -256.

  • sha512— Calcula una cadena pasada usando -512. SHA

  • subtract: devuelve la diferencia de dos números.

  • uuid— Genera aleatoriamente un UUID en un formato de 128 bits.

agregar

Devuelve la suma de dos números junto con los puntos flotantes.

Uso

{{add arg1 arg2}}

Ejemplo

{{add 5 2.3}} devuelve

7.3

límite

Redondea un entero hasta su límite matemático, que es el número entero más alto más cercano al valor pasado.

Uso

{{ceiling value}}

Ejemplo

{{ceiling 5.23}} devuelve

6

decode64

Decodifica un valor codificado en base64 en una cadena.

Uso

{{decode64 "string"}}

Ejemplo

{{decode64 "SGVsbG8gd29ybGQ="}} devuelve

Hello World

dividir

Devuelve el cociente de dos números, incluidos los puntos flotantes.

Uso

{{divide arg1 arg2}}

Ejemplo

{{divide 5 2.3}} devuelve

2.17391304

encode64

Codifica la cadena pasada en el argumento mediante base64.

Uso

{{encode64 "string"}}

Ejemplo

{{encode64 "Hello World"}}

SGVsbG8gd29ybGQ=

floor

Redondea un entero hasta su límite matemático, que es el número entero más bajo más cercano al valor pasado.

Uso

{{floor value}}

Ejemplo

{{floor 5.23}} devuelve

5

md5

Aplica un código hash a una cadena pasada mediante el algoritmo. MD5

Uso

{{md5 "string"}}

Ejemplo

{{md5 "Hello World"}}

3e25960a79dbc69b674cd4ec67a72c62

módulo

Devuelve el resto de dos números utilizando puntos flotantes.

Uso

{{modulo arg1 arg2}}

Ejemplo

{{modulo 7 2}} devuelve

1

multiplicar

Devuelve el producto de dos números, con los puntos flotantes.

Uso

{{multiply arg1 arg2}}

Ejemplo

{{multiply 5 2.3}} devuelve

11.5

round

Redondea un decimal al número entero más cercano.

Uso

{{round value}}

Ejemplo

You spent an average of {{round 19.21}} minutes on our website each day. devuelve:

You spent an average of 19 minutes on our website each day.

sha256

Aplica un código hash a una cadena pasada mediante una seguridad criptográfica SHA de 256 bits.

Uso

{{sha256 "string"}}

Ejemplo

{{sha256 "Hello World"}} devuelve

a591a6d40bf420404a011733cfb7b190d62c65bf0bcda32b57b277d9ad9f146e

sha512

Aplica un código hash a una cadena pasada mediante SHA una seguridad criptográfica de -512.

Uso

{{sha512 "string"}}

Ejemplo

{{sha512 "Hello World"}} devuelve

2c74fd17edafd80e8447b0d46741ee243b7eb74dd2149a0ab1b9246fb30382f27e853d8585719e0e67cbda0daa8f51671064615d645ae27acb15bfb1447f459b

restar

Devuelve la diferencia de dos números, con los puntos flotantes.

Uso

{{subtract arg1 arg2}}

Ejemplo

{{subtract 5 2.3}} devuelve

2.7

uuid

Genera aleatoriamente un UUID en un formato estándar de 128 bits. No es necesario ingresar ningún valor en el argumento.

Uso

{{uuid}}

Ejemplo

{{uuid}} devuelve

95f36680-152c-4052-99ec-cc3cdf7ca594

Si bien técnicamente no son una ayuda, los parciales en línea son la forma en que Handlebars optimiza las plantillas que incluyen cadenas repetidas, lo que es mejor reutilizarlas. Para obtener más información, consulta los parciales en línea en handlebarsjs.com.

Uso

{{#* inline "inlineName"}}Content to reuse{{/inline}}

Para hacer referencia al contenido del parcial insertado en otro lugar, use:

{{> inlineName}}

Ejemplo

En el siguiente ejemplo, se crea una versión parcial en línea que incluye el nombre del destinatario y, si está disponible, el apellido. Para ello, se añade el siguiente código al principio de la plantilla:

{{#* inline "fullName"}}

{{User.UserAttributes.FirstName.[0]}} {{#if User.UserAttributes.LastName.[0]}} {{User.UserAttributes.LastName.[0]}} {{/if}}

{{/inline}}

Después de crear la función parcial fullName, puede incluirla en cualquier lugar de la plantilla agregando delante del nombre de la función parcial un símbolo > (mayor que), seguido de un espacio, como en el siguiente ejemplo: {{> fullName}}.

Hola, {{>fullName}}

devuelve el nombre y apellidos del usuario si es verdadero, por ejemplo, Hello Jane Doe. De lo contrario, si no se encuentra ningún apellido, Hello Jane se devuelve.

Los manillares incluyen características adicionales además de las documentadas aquí. Para obtener más información, consulte handlebarsjs.com.

Uso de variables con ayudantes de plantillas de mensajes

Los atributos personalizados de Amazon Pinpoint, por ejemplo User.UserAttributes.LastName, se almacenan como una lista, independientemente de si hay un solo elemento o varios. Al pasar una lista a un ayudante que espera una cadena, debe especificar el valor del índice del atributo junto con el nombre del atributo. Este valor del índice de atributos indica la posición de un valor de la lista de atributos: .[0] para la primera entrada de la lista, .[1] para la segunda, .[2] para la tercera, etc. Por ejemplo, supongamos que está utilizando el asistente upper para convertir la primera entrada ([0]) de User.UserAttributes.LastName en mayúsculas. El uso del ayudante es {{upper value}} y el atributo tiene el formato correspondiente User.UserAttributes.LastName. Reemplazar value con el nombre del atributo y el valor del índice del atributo de la .[0] siguiente manera:. {{upper User.UserAttributes.LastName.[0]}} A continuación, la respuesta devuelve la entrada [0] de la lista, formateada en mayúsculas. Por ejemplo, si el valor de [0] es Santos, la respuesta devuelve SANTOS.

Los nombres de los atributos personalizados de Amazon Pinpoint admiten espacios. Para que se llame a un atributo personalizado"Last Name", debe formatearlo comoUser.UserAttributes.[Last Name]. Para acceder a la primera entrada de la lista de índices de atributos, el formato esUser.UserAttributes.[Last Name].[0].

Un nombre de atributo personalizado puede contener hasta 50 caracteres. Un valor de atributo puede contener hasta 100 caracteres. Al definir el nombre de un atributo personalizado, evite utilizar los siguientes caracteres: signo numérico (#), dos puntos (:), signo de interrogación (?) , barra diagonal inversa (\) y barra diagonal (/). La consola Amazon Pinpoint no puede mostrar nombres de atributos que contengan estos caracteres. Esta restricción no se aplica a los valores de atributo.

Uso de ayudantes anidados

Puede agrupar varios ayudantes de plantillas de mensajes uno dentro del otro. El siguiente ejemplo muestra cómo aplicar formato a dos ayudantes: {{ first helper (second helper)}}. El segundo ayudante se procesa primero, seguido del primer ayudante. Recuerde que el primer ayudante siempre determina el resultado. Los ayudantes posteriores deben estar anidados dentro del ayudante anterior de la siguiente manera: {{ first helper (second helper (third helper) )}}.

El siguiente ejemplo muestra cómo anidar dos ayudantes para cambiar JANE a Jane: {{capitalizeFirst (lower "JANE")}}. lower primero convierte JANE en jane. Luego capitalizeFirst convierte jane en Jane.