---
description: >-
  Conozca las configuraciones fundamentales de un paso de flujo de trabajo y
  descubra todos los pasos disponibles.
---

# Pasos

## Pasos del flujo de trabajo

Una vez configurado el activador, puede construir el flujo de trabajo añadiendo pasos. Cuando un flujo de trabajo se ha activado, sus pasos se llevarán a cabo secuencialmente en el contacto desencadenante.

A continuación se muestran las acciones que se pueden realizar con los Pasos:

* [Añadiendo un paso](#anadiendo-un-paso)
* [Configurando un paso](#configurando-un-paso)
* [Moviendo un paso](#moviendo-un-paso)
* [Editar el nombre de un paso](#editing-a-step-name)
* [Duplicar un paso](#duplicar-un-paso)
* [Eliminar un paso](#deleting-a-step)

### Añadiendo un paso

Para especificar una nueva acción dentro del flujo de trabajo, añada un paso haciendo clic en el opción + y seleccionando la acción deseada.

### Configurando un paso

Después de añadir un paso, configure el paso en el cajón de configuración. Cada paso tiene diferentes posibilidades de configuración. Las configuraciones que se pueden añadir incluyen el contenido, el canal, la acción y la configuración avanzada.

### Moviendo un paso

Para mover un paso de flujo de trabajo, mantenga el paso y arrástrelo a la posición deseada. Los pasos padre que están ligados a las ramas hijo no pueden ser movidos.

### **Editar el nombre de un paso** <a href="#editing-a-step-name" id="editing-a-step-name"></a>

Para editar el nombre del paso, haga clic en el icono Editar e ingrese el nombre deseado para este paso. Haga clic en el icono verde ✓ para confirmar el nombre.

![Editar nombre de un paso](https://1483174595-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lkf9GnQKi9ZHOOeQZec%2Fuploads%2FZhWAqrI3txmMBtaT783H%2Fdesign%20message.gif?alt=media\&token=f65f4681-47f1-4015-a491-e4142aecc63d)

### Duplicar un paso

Para copiar un paso en el flujo de trabajo, coloque el cursor sobre el paso y haga clic en el icono Copiar que aparece en la parte superior derecha.

<figure><img src="https://1810233666-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-L8qsmIDw5_reabURkaE%2Fuploads%2FriAUAnA1j34CLZcliSkb%2FCopy%20Step.png?alt=media&#x26;token=183dee4b-c795-4759-b4e8-f0fd8ec60e5a" alt=""><figcaption><p>Copiar paso</p></figcaption></figure>

Para pegar un paso copiado en el flujo de trabajo, haga clic en el nodo + en el que desea pegar el paso y seleccione Pegar paso (con el nombre del paso copiado) en el menú Agregar Paso.

<figure><img src="https://1810233666-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-L8qsmIDw5_reabURkaE%2Fuploads%2FDr3SLIlhrwONBG1zNIPg%2FPaste%20Step.png?alt=media&#x26;token=aaaf4ea8-7083-4bbd-be51-a7af1e90d811" alt=""><figcaption><p>Agregar paso copiado</p></figcaption></figure>

### **Eliminar un paso** <a href="#deleting-a-step" id="deleting-a-step"></a>

Para eliminar un paso del flujo de trabajo, haga clic en Eliminar en la parte inferior de su cajón de configuración.

![Eliminar un paso](https://1483174595-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lkf9GnQKi9ZHOOeQZec%2Fuploads%2FEK4R3VEliMMSaLQYlsDw%2Fdelete.gif?alt=media\&token=cd20a6c9-83f1-451e-ab70-4c6c087e5934)

Todas las acciones derivadas de este paso (Ej: Rama, Hacer una pregunta) se eliminarán junto con él. Se abrirá un cuadro de diálogo para confirmar esta acción.

![](https://docs.respond.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-L8qsmIDw5_reabURkaE%2Fuploads%2F7uawOVGluyXJEfgspgR8%2Fdelete%20branch.gif?alt=media\&token=b6fe6618-1c21-43d8-b9b9-8b2af5f27faf)

Esta es la lista completa de los pasos disponibles:

<table><thead><tr><th width="150">Pasos</th><th>Descripción </th></tr></thead><tbody><tr><td><a href="#step-send-message">Enviar Mensaje</a></td><td>Enviar un mensaje con el contenido especificado al contacto.</td></tr><tr><td><a href="#paso-hacer-una-pregunta">Hacer una pregunta</a></td><td>Envíe una pregunta específica al contacto en el último canal interactuado</td></tr><tr><td><a href="#paso-asignar-a">Asignar a</a></td><td>Asignar contacto a un usuario.</td></tr><tr><td><a href="#paso-rama">Rama</a></td><td>Cree ramas de flujo de trabajo según las condiciones.</td></tr><tr><td><a href="#paso-actualizar-etiqueta-de-contacto">Actualizar etiqueta de contacto</a></td><td>Agrega o elimina una o varias etiquetas de contacto.</td></tr><tr><td><a href="#paso-actualizar-campo-de-contacto">Actualizar campo de contacto</a></td><td>Modifica los valores del campo de contacto para el contacto.</td></tr><tr><td><a href="#paso-abrir-conversacion">Conversación abierta</a></td><td>Abre una conversación para el contacto.</td></tr><tr><td><a href="#paso-cerrar-conversacion">Cerrar Conversación</a></td><td>Cierra la conversación con notas de cierre.</td></tr><tr><td><a href="#paso-agregar-comentario">Agregar comentario</a></td><td>Agregar un comentario al contacto.</td></tr><tr><td><a href="#paso-saltar-a">Saltar a</a></td><td>Saltar a un paso diferente en el viaje.</td></tr><tr><td><a href="#paso-esperar">Esperar a</a></td><td>Espere un tiempo antes de avanzar.</td></tr><tr><td><a href="#paso-fecha-y-hora">Fecha y Hora</a></td><td>Cree ramas de flujo de trabajo según las condiciones de fecha u hora</td></tr><tr><td><a href="#paso-solicitud-http">HTTP</a></td><td>Peticiones externas mediante API</td></tr><tr><td><a href="#paso-agregar-filas-de-hojas-de-calculo-de-google-sheets">Google Sheet </a></td><td>Integración con google sheet par el envio de información</td></tr></tbody></table>

***

## Paso: enviar mensaje <a href="#step-send-message" id="step-send-message"></a>

Este paso envía un mensaje con el contenido especificado a los Contactos que cumplen con todas las condiciones.

![Paso: Enviar mensaje](https://1483174595-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lkf9GnQKi9ZHOOeQZec%2Fuploads%2F49smZ3F2wdXibIHyiXwY%2Fimage.png?alt=media\&token=4bdda044-d215-458a-86b7-5d24e5ef6db7)

### Configuración

Hay dos configuraciones clave para enviar un mensaje:

* **Canal:** Este es el canal elegido para enviar el mensaje. Las opciones son _Último canal de interacción_, que especifica que el mensaje se enviará a través del último canal de interacción con un contacto, o una elección entre todos los canales conectados.
* **Contenido del mensaje:** Utilícelo una vez especificado el canal. El texto del mensaje predeterminado debe completarse para poder guardar y publicar su flujo de trabajo.&#x20;

Para enviar un mensaje predeterminado, elija entre dos tipos de mensajes: un mensaje de texto o un mensaje multimedia.

Los mensajes basados en texto se pueden configurar para incluir emojis, variables o fragmentos. Para incluir variables, agregue el prefijo "$" para admitir la interpolación de texto estático y variables. Para incluir un fragmento, agregue "/" y seleccione el fragmento preferido.

{% hint style="success" %}
Limitación: el mensaje no puede tener más de **2000 caracteres**.
{% endhint %}

Los mensajes multimedia se pueden enviar en forma de archivo o imagen. Seleccione el archivo deseado del dispositivo o de la biblioteca de archivos. Puede enviar hasta 5 archivos adjuntos por correo electrónico.

Para enviar una **respuesta de canal**, configure una respuesta específica del canal. Elija un canal y el tipo de mensaje (texto o archivo/imagen). Algunos canales incluso tienen tipos de mensajes especiales, que se pueden seleccionar en el menú desplegable _Tipo de mensaje_. Esto incluye mensajes de plantilla de canales compatibles como WhatsApp y Facebook.

**Redactor de mensajes del canal de correo electrónico**

Cuando utiliza un canal de correo electrónico, puede agregar un asunto al correo electrónico y redactarlo en un editor de texto enriquecido. Si elige no agregar un asunto, el correo electrónico se enviará con un asunto en blanco.

<figure><img src="https://files.helpdocs.io/9e3syfbzn8/articles/11sxvn419x/1690786944539/screenshot-2023-06-19-at-12-49-04.png" alt=""><figcaption><p>Redactor de mensaje de correo electrónico</p></figcaption></figure>

### Ajustes avanzados

Active la opción _Agregar rama de error de mensaje_ para manejar los mensajes fallidos. Cuando un mensaje no se envía en este paso, se dirigirá a la rama de falla.

<figure><img src="https://files.helpdocs.io/9e3syfbzn8/articles/11sxvn419x/1690786980446/workflow-steps-toggle-add-message-failure.gif" alt=""><figcaption><p>Ajustes avanzados</p></figcaption></figure>

### ¿Cómo funciona?

Se enviará un mensaje a través del canal elegido. Si se ha especificado un canal de respuesta, se utilizará. De lo contrario, se enviará el mensaje por defecto.&#x20;

Si se selecciona el último canal interactuado, el mensaje enviado dependerá de la existencia de una respuesta de canal. Si existe una respuesta de canal para ese canal, se enviará la respuesta específica del canal. Si no existe una Respuesta del Canal para ese canal, se enviará el mensaje por defecto.

### Posibles fracasos

Hay dos posibles fallos al enviar un mensaje:

* Si el contacto no tiene un canal asociado.
* Fallos generales, como caducidad de claves API, ventanas de mensajería cerradas o problemas de red.

Si ocurren las fallas anteriores, puede crear un flujo alternativo con la rama de fallas de mensajes para sus contactos.

### Mejores prácticas

A continuación se presentan algunas prácticas recomendadas para este paso que puede seguir para optimizar su flujo de trabajo:

* Envía mensajes automáticos con el emoji del bot 🤖 para que tus clientes sepan que se trata de una respuesta automática.
* Haga que los mensajes sean legibles utilizando el formato que mejor se adapte a su canal de elección. Por ejemplo, si está utilizando un canal de correo electrónico, formatear los correos electrónicos con párrafos facilitará la lectura para sus clientes.

***

## Paso: Hacer una pregunta

Este paso envía una pregunta al contacto en el _Último Canal Interactuado_ si se cumplen todas las condiciones.

### Configuration

![Paso: Hacer una pregunta](https://1483174595-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lkf9GnQKi9ZHOOeQZec%2Fuploads%2FkezrkOQvvlk3GJKBwPvC%2Fimage.png?alt=media\&token=7ef41504-81b7-4114-ba48-b2073d4b5c8f)

Hay dos configuraciones clave en _Hacer una pregunta_:

* **Texto de la pregunta:** Ingrese la pregunta que desea hacerle al contacto.
* **Tipo de pregunta:** Seleccione entre varias opciones de respuesta disponibles para el contacto. Los tipos de preguntas se muestran a continuación:

<table data-header-hidden><thead><tr><th width="207.33333333333331"></th><th width="440.89359829620577"></th></tr></thead><tbody><tr><td>Tipo de pregunta</td><td>Descripción</td></tr><tr><td>Texto</td><td>Este campo aceptará cualquier respuesta de texto del Contacto</td></tr><tr><td>Multiple opciones</td><td>Este campo compartirá hasta 10 posibles respuestas para que el Contacto elija. Cada respuesta está limitada a 20 caracteres.</td></tr><tr><td>Número</td><td>Este campo sólo acepta un valor numérico como respuesta. Es posible establecer valores mínimos y máximos para la respuesta esperada.</td></tr><tr><td>Fecha</td><td>Este campo sólo aceptará como respuesta una fecha concreta. Formato: mm/dd/aaaa (ejemplo: 18/09/2021)</td></tr><tr><td>Teléfono</td><td>Este campo sólo aceptará un valor de número de teléfono como respuesta. Formato: código de país con número (por ejemplo, 60135566778)</td></tr><tr><td>Email</td><td>Este campo sólo acepta una dirección de correo electrónico.</td></tr><tr><td>Website/URL</td><td>Este campo sólo aceptará URLs válidas.</td></tr><tr><td>Rating</td><td>El Contacto puede elegir una calificación entre 1 y 5 estrellas.</td></tr></tbody></table>

Una vez que haya elegido el tipo de pregunta, se abrirá el campo **Guardar respuesta como**. Hay tres opciones sobre cómo se pueden guardar las respuestas:

* Campos de contacto
* Variable
* Etiqueta (solo para respuestas de opción múltiple)

#### Campos de contacto

Para guardar la respuesta del contacto como un campo de contacto, simplemente active la opción _Campo de contacto_ y luego elija el campo de contacto apropiado en el menú desplegable.

![Guardar como campo de contacto](https://1483174595-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lkf9GnQKi9ZHOOeQZec%2Fuploads%2F2eo1f5JVOrl6WTX9dYrU%2FSave%20as%20variable.gif?alt=media\&token=b34a8922-67e0-4fe4-b741-241d5bde2648)

#### Variables

Para guardar la respuesta que el contacto proporciona como una variable, active la opción _Variable_ y asigne un nombre a la variable en el campo de la derecha.

![Guardar como variable](https://1483174595-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lkf9GnQKi9ZHOOeQZec%2Fuploads%2Fwa2CI2BAGIBpQaThB1iJ%2Fsave%20as%20variabel.gif?alt=media\&token=f4a77a58-93a1-4413-84e9-8142d7f2d6f9)

{% hint style="info" %}
¡Conozca más sobre las variables [aquí](../../contactos-y-mensajes/variables-dinamicas)!
{% endhint %}

#### Etiquetas

Para guardar las respuestas que proporciona el contacto como etiquetas, active la opción _Etiqueta_. Tenga en cuenta que esto sólo se aplica a preguntas de opción múltiple.

![Guardar como etiqueta](https://1483174595-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lkf9GnQKi9ZHOOeQZec%2Fuploads%2FGiFnrAouVgMMofQ4p44X%2Fsave%20as%20tag.gif?alt=media\&token=aa18520f-d985-4fe4-b45a-a66791d78924)

### Ajustes avanzados

Hay dos configuraciones avanzadas que puedes usar:

* Agregar rama de tiempo de espera
* Error al agregar mensaje

#### Agregar rama de tiempo de espera

Para establecer cuánto tiempo tiene el contacto para responder la pregunta, active la opción _Agregar rama de tiempo de espera_. El período de tiempo de espera puede ser de hasta 7 días, o se establecerá automáticamente el período predeterminado de 7 días.

Puede agregar pasos para determinar qué sucede con los contactos que no responden a tiempo o el flujo de trabajo finalizará cuando se agote el tiempo de espera.

<figure><img src="https://files.helpdocs.io/9e3syfbzn8/articles/faup9oubaj/1690788336752/image.gif" alt="" width="375"><figcaption><p>Rama de tiempo de espera</p></figcaption></figure>

#### Error al agregar mensaje

Para manejar mensajes fallidos, active la opción _Agregar rama de error de mensaje_. Los mensajes con respuestas no válidas o que no coincidan se dirigirán a la Rama de Fallos.

Si no hay pasos definidos en la rama de fallas para guiar los próximos pasos del contacto, el flujo de trabajo finalizará.

### ¿Cómo funciona?

El contacto recibirá una pregunta en su último canal interactuado. El contacto debe responder a la pregunta en el formato especificado dentro del tiempo asignado. Si se da una respuesta que se ajuste al formato de respuesta a tiempo, el viaje del contacto continúa. En el caso de las preguntas de opción múltiple por correo electrónico, las opciones de respuesta se numerarán automáticamente (1, 2, 3...). El contacto puede responder con el valor del número o en su totalidad.

### Rama de fracaso

Las respuestas no válidas o que no se ajustan al formato de respuesta se incluirán en la rama de fracaso. Si no hay pasos configurados bajo la rama de fracaso para definir el viaje posterior del Contacto, el Flujo de Trabajo terminará.

### Posibles fracasos

Hay tres posibles causas de falla aquí:

* Si el contacto no tiene un canal asociado y no puede recibir la pregunta.
* Cuando un contacto no responde la pregunta dentro del período de tiempo de espera.
* Fallos generales, como claves API caducadas, ventanas de mensajería cerradas o problemas de red.

El contacto saldrá del flujo de trabajo si se produce alguna de estas fallas.

{% hint style="info" %}
Si se cierra una conversación con un contacto mientras el paso del flujo de trabajo _Hacer una pregunta_ aún está en curso, cualquier mensaje enviado por el contacto no reabrirá la conversación. Puede encontrar más información en las preguntas frecuentes [aquí]().
{% endhint %}

{% hint style="info" %}
Cuando utilice el paso _Hacer una pregunta_ con el canal de correo electrónico, tome nota de las [posibles limitaciones](../../canales-de-mensajeria/email).
{% endhint %}

### Mejores prácticas

A continuación se presentan algunas prácticas recomendadas para este paso que puede seguir para optimizar su flujo de trabajo:

* Utilice variables para guardar respuestas de contactos para una experiencia de cliente personalizada. Asegúrese de que sus respuestas estén en el formato correcto para utilizarlas de manera efectiva.
* Para preguntas de opción múltiple, cree una rama. Si recibe una respuesta no válida, informe al contacto con un paso de _Enviar un mensaje_. También puede permitir que el contacto regrese al paso _Hacer una pregunta_ usando un paso de _Salto_. Si no hay respuesta dentro de un período de tiempo determinado, utilice el paso _Enviar un mensaje_ para ofrecer más ayuda de su equipo si es necesario.
* Utilice preguntas de opción múltiple para ayudar a su contacto a encontrar lo que está buscando. Si se produce la _Rama de tiempo de espera_, utilice el paso de _Salto_ para redirigirlos y permitirles elegir una opción nuevamente.

***

## Paso: Asignar a

Este paso permite asignar el Contacto a un usuario específico, a un usuario de un equipo específico, a un usuario del espacio, o desasignar el Contacto.

![Paso: Asignar a](https://1483174595-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lkf9GnQKi9ZHOOeQZec%2Fuploads%2FbVZQB4ytdx9JsONcGCfI%2Fassign.gif?alt=media\&token=fbd4f3d0-ae0a-408e-8367-86120f1fa3a1)

### Configuración

Hay dos configuraciones clave en el paso Asignar a: **Acción** y **Lógica de Asignación**.

En **Acción**, los contactos pueden dirigirse a una de las cuatro acciones de asignación:

* Un usuario específico Asignar el Contacto a un usuario específico elegido.
* Un usuario de un equipo específico: Asigna el Contacto a cualquier persona de un equipo específico elegido.
* Un usuario del espacio: Asigna el Contacto a cualquier usuario del espacio.
* Desasignar: Desasignar el Contacto de su usuario o equipo asignado.

En **Lógica de asignación**, elija una de las dos opciones (sólo disponible para un usuario en un equipo específico y un usuario en las opciones de asignación de espacios):

* Asignar a los usuarios por turnos: Este método asigna los nuevos contactos de forma equitativa a cada usuario por turnos.
* Asignar al usuario con menos contactos abiertos: Este método asigna los contactos al usuario con menos contactos abiertos.

El paso Asignar a permite la **Configuración Avanzada**. Ambas configuraciones son independientes entre sí y sólo están disponibles para Un usuario en un equipo específico y \*\*\*\*Un usuario en las opciones de asignación de espacio. Los ajustes avanzados incluyen Sólo asignar a usuarios en línea, en el que los contactos sólo se asignarán a usuarios con estados establecidos en línea para una respuesta más rápida, y Sólo asignar a usuarios con menos de XX contactos abiertos asignados, en el que los contactos sólo se asignarán a usuarios con menos contactos asignados que el umbral definido por el usuario.

En la configuración avanzada, también se puede añadir una rama de tiempo de espera. Esto define el periodo asignado para que el Contacto sea asignado a un usuario. El periodo de tiempo de espera se puede personalizar con un periodo máximo de 7 días, o se implementará el periodo por defecto de 7 días. Una rama de tiempo de espera permite a los usuarios definir el recorrido de los Contactos que no son asignados a ningún usuario dentro del periodo de tiempo de espera. Si no se añaden pasos, el flujo de trabajo terminará cuando se alcance el tiempo de espera.

### ¿Cómo funciona?

Los contactos se asignarán a los usuarios según la acción y las condiciones de asignación especificadas. Si la configuración avanzada está activada y no hay usuarios que cumplan las condiciones en ese momento, los contactos se pondrán en cola hasta que se asignen o se alcance el periodo de tiempo de espera.

### Posibles fracasos

Hay tres posibles causas de fallo en el paso Asignar a. La primera ocurre si el Contacto no se asigna a nadie dentro del período de tiempo de espera por defecto de 7 días y no hay una Rama de Tiempo de Espera para continuar el viaje. La segunda ocurre si el usuario específico elegido ha sido eliminado de los flujos de trabajo. El tercero ocurre si el equipo elegido al que se asigna un Contacto no tiene usuarios o está vacío.

El contacto saldrá del flujo de trabajo al encontrarse con los fallos mencionados.

***

## Paso: Rama

El paso crea recorridos de contacto apropiados según las condiciones de la sucursal.

<figure><img src="https://files.helpdocs.io/9e3syfbzn8/articles/3eafdlamge/1694657899953/step-branch.gif" alt=""><figcaption><p>Paso: Rama</p></figcaption></figure>

### Configuración&#x20;

Al crear una rama, puede incluir entre 1 y 9 ramas más junto con una rama _Otro_.

Las condiciones de la rama pueden definirse utilizando campos de contacto, etiquetas, variables o interacciones previas. Se permite un máximo de 10 condiciones con operadores lógicos _Y_ u _O_ por rama. Cada condición debe tener una categoría, un operador y un valor definido.&#x20;

Las categorías disponibles dentro de una condición incluyen:

* Campo de contacto (incluidos todos los campos personalizados)
* Etiqueta de contacto
* Variables (incluidas las [variables de activación](../../contactos-y-mensajes/variables-dinamicas) y las [variables de salida](../../contactos-y-mensajes/variables-dinamicas) del formulario de Acceso directo)
* Último canal interactuado
* Último mensaje entrante
* Último mensaje saliente
* Hora desde el último mensaje entrante
* Hora desde el último mensaje saliente
* Estado del asignado.

Una vez configurada la rama, si es necesario, puede clonarla seleccionando el ícono _Clonar_. La rama clonada es una rama hermana que incluye las categorías y condiciones seleccionadas en la rama original. Sin embargo, puede editar más la rama si es necesario. La función de clonación ahorra el tiempo y el esfuerzo necesarios para recrear ramas desde cero.

### Seleccionar un operador de rama

En un paso de rama, el operador de la rama se utiliza para evaluar las condiciones y decidir qué rama seguir. Al configurar el paso de bifurcación, selecciona el operador de bifurcación, que se utiliza para comparar una variable o valor con una condición específica. La elección del operador de sucursal depende de la condición que desee evaluar en el paso de _Rama_.

A continuación se incluye una tabla que le guiará en la elección del operador adecuado para evaluar las condiciones.

| Operador            | Descripción                                                                        | Ejemplo                                                        |
| ------------------- | ---------------------------------------------------------------------------------- | -------------------------------------------------------------- |
| Es igual a          | Comprueba si dos valores o expresiones son iguales entre sí.                       | 3 es igual a 3 (devuelve verdadero)                            |
| No es igual a       | Comprueba si dos valores o expresiones no son iguales entre sí.                    | 3 no es igual a 4 (devuelve verdadero)                         |
| Es mayor que        | Comprueba si un valor o expresión es mayor que otro valor o expresión.             | 5 es mayor que 3 (devuelve verdadero)                          |
| Es menor que        | Comprueba si un valor o expresión es menor que otro valor o expresión.             | 3 es menor que 5 (devuelve verdadero)                          |
| Está entre          | Comprueba si un valor o expresión está dentro de un cierto rango de valores.       | 5 está entre 1 y 10 (devuelve verdadero)                       |
| Existe              | Comprueba si existe un valor o expresión.                                          | La variable x existe (devuelve verdadero)                      |
| No existe           | Comprueba si un valor o expresión no existe.                                       | La variable y no existe (devuelve verdadero)                   |
| Contiene            | Comprueba si una cadena o colección de elementos contiene un valor determinado.    | "Hola mundo" contiene "mundo" (devuelve verdadero)             |
| No contiene         | Comprueba si una cadena o colección de elementos no contiene un valor determinado. | "Hola mundo" no contiene "universo" (devuelve verdadero)       |
| No tiene ninguno de | Checks if a collection of items has none of the specified values.                  | \[1, 2, 3] no tiene nada de \[4, 5, 6] (devuelve verdadero)    |
| Tiene todo          | Comprueba si una colección de elementos tiene todos los valores especificados.     | \[1, 2, 3] tiene todo \[2, 3] (devuelve verdadero)             |
| Tiene alguno de     | Comprueba si una colección de elementos tiene alguno de los valores especificados. | \[1, 2, 3] tiene cualquiera de \[2, 4, 6] (devuelve verdadero) |

### ¿Cómo funciona?

Los viajes de contacto se determinan según las condiciones especificadas en una _Rama_. Serán dirigidos por diferentes caminos dentro del flujo de trabajo, lo que permitirá interacciones personalizadas en función de sus respuestas u otros criterios.

Las condiciones de la sucursal actúan como puntos de decisión y garantizan que los contactos reciban la comunicación más relevante y adecuada a lo largo de su viaje.

Si no se cumplen todas las condiciones, los contactos serán redirigidos a la sucursal _Otro_ para iniciar un viaje separado.

### Mejores prácticas

A continuación se presenta una práctica recomendada para este paso que puede seguir para optimizar su flujo de trabajo:

Dale un nombre a tu _Rama_ para ayudarte a visualizar mejor el _Paso_ sin tener que abrir la configuración del _Paso_.

***

## Paso: Actualizar etiqueta de contacto

El paso añade o elimina las etiquetas de un contacto según las condiciones especificadas.

![Paso: Actualizar etiqueta de contacto](https://1483174595-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lkf9GnQKi9ZHOOeQZec%2Fuploads%2FG8ahRbbZ7RLonioDhU7G%2Fupdate%20contact%20tag%20.gif?alt=media\&token=1ff690a7-df30-42d9-9282-60e033c6e8cf)

### Configuración

Hay dos configuraciones clave dentro de este paso: _Acción_ y _Etiqueta_**.**

En Acción, elija entre añadir y eliminar la etiqueta como condición. A continuación, seleccione la etiqueta deseada en el menú desplegable o escriba el nombre de la etiqueta para especificarla.

***

## Paso: Actualizar campo de contacto

Este paso actualiza un campo de contacto con un valor definido si se cumplen las condiciones.

<figure><img src="https://files.helpdocs.io/9e3syfbzn8/articles/kftpgi65ey/1690831914253/image.png" alt="" width="375"><figcaption><p>Paso: Actualizar campo de contacto</p></figcaption></figure>

### Configuración

Hay dos configuraciones clave dentro de este paso: **Campo de Contacto** y **Campo de Contacto Seleccionado.**

En Campo de contacto, seleccione el campo de contacto que desea actualizar. En Campo de contacto seleccionado, especifique el valor a actualizar. Es posible escribir $ y seleccionar la variable adecuada para actualizar el campo de contacto con una variable.

### **¿Cómo funciona?**

Cuando el flujo de trabajo se active, el campo del contacto en este paso se actualizará con el valor definido.

***

## Paso: Abrir conversación

Este paso abre una conversación con el contacto.

### ¿Cómo funciona?

Cuando se cumplan todas las condiciones anteriores y se active el paso, se abrirá una conversación con el contacto. El módulo de mensajes mostrará "Conversación abierta por {nombre del flujo de trabajo}". Si la conversación está abierta cuando se ejecuta este paso, el contacto pasará al siguiente paso.

### Mejores prácticas

Supongamos que la conversación del contacto está cerrada y desea abrir la conversación enviando un mensaje. Utilice el paso abrir conversación para abrir una conversación antes de enviar un mensaje al contacto en el flujo de trabajo.

{% hint style="warning" %}
Enviar un mensaje desde el flujo de trabajo no abrirá automáticamente la conversación. Mientras que enviar un mensaje desde el módulo de mensajes abrirá automáticamente la conversación.
{% endhint %}

***

## Paso: Cerrar conversación

Este paso cierra una conversación con el contacto.

![Paso: Cerrar conversación](https://1483174595-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lkf9GnQKi9ZHOOeQZec%2Fuploads%2FtZYJLJmU7D76TdLk8VXz%2FClose%20Conversation%20\(1\).gif?alt=media\&token=45a848d9-57ec-4ecc-b13d-3599fae3571d)

### Configuración

Ambas configuraciones en el paso Cerrar conversación son opcionales, pero pueden resultar útiles para la documentación o el análisis. Las dos configuraciones son **Categoría de la conversación**, en la que los usuarios pueden seleccionar la categoría adecuada según lo especificado en Notas de cierre de la plataforma, y **Resumen,** que proporciona un resumen de la conversación.

### ¿Cómo funciona?

Cuando se cumplan todas las condiciones anteriores y se active el paso, se cerrará la conversación con el contacto. Si la categoría de la conversación y el resumen están configurados, la conversación se cerrará con las _Notas de Cierre_ adjuntas.

***

## Paso: Agregar comentario

Este paso añade una nota al Contacto para referencia o acción interna.

![Paso: Agregar comentario](https://1483174595-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lkf9GnQKi9ZHOOeQZec%2Fuploads%2FnDVF2KsXBNQZAWNtLZ0m%2Fadd%20comment.gif?alt=media\&token=c0b9ca64-3df9-4973-a071-9508775698b2)

### Configuración

La única configuración en este paso es el propio comentario. Escriba el comentario deseado en el campo de texto. Utilice $ para añadir una variable si es necesario y @ para etiquetar a otro usuario.

### ¿Cómo funciona?

Una vez confirmado, el comentario se añadirá al Contacto. Si un usuario está etiquetado en el comentario, será notificado y podrá tomar las medidas necesarias.

* Por ejemplo, el flujo de trabajo {Nombre del flujo de trabajo} le ha mencionado en un comentario.

***

## Paso: Saltar a

Este paso permite al contacto saltar a otro paso especificado en el flujo de trabajo.

![Paso: Salto](https://1483174595-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lkf9GnQKi9ZHOOeQZec%2Fuploads%2FfOY22wRNkY69sx0TTeeo%2Fjump.gif?alt=media\&token=9751a820-9540-4b88-8000-1415ec7f7f6e)

### Configuración

Hay dos configuraciones dentro de este paso: **Paso** y **Permitir un máximo de \_\_ saltos.**&#x20;

En Paso, seleccione el paso desde el que continuará el viaje del Contacto. El salto puede producirse en cualquier dirección hacia cualquier paso del flujo de trabajo.&#x20;

En **Permitir un máximo de \_\_ saltos**, defina el número de veces que puede producirse el salto. La entrada máxima es 10.

### ¿Cómo funciona?

El Contacto saltará al paso especificado y continuará el viaje por su camino. El contacto puede repetir el paso de salto hasta alcanzar el número máximo de saltos permitido. Cuando se alcance el máximo, el contacto se saltará el salto en el siguiente intento y procederá al siguiente paso especificado después del paso de salto. Si no existe ningún paso siguiente, el contacto saldrá del flujo de trabajo.&#x20;

El contador de saltos se reinicia cuando el contacto sale del flujo de trabajo.

***

## Paso: Esperar a

Este paso establece un periodo de espera antes de que comience el siguiente paso

![Paso: Esperar](https://1483174595-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lkf9GnQKi9ZHOOeQZec%2Fuploads%2FUHlm9T7cleNMifRejvbU%2Fwait.png?alt=media\&token=79912907-c551-47ad-a31a-8a4435d27889)

### Configuración

La configuración de este paso implica un solo campo: Esperar. Determina el tiempo que el Contacto esperará antes de que se inicie el siguiente paso. El periodo máximo de espera es de 7 días o su equivalente.

### ¿Cómo funciona?

El Contacto permanece en este paso durante el tiempo de espera configurado y luego pasa al paso siguiente.

***

## Paso: Activar otro flujo de trabajo

Este paso permite que un contacto continúe en otro flujo de trabajo, ya sea comenzando desde un paso de flujo de trabajo particular o desde el comienzo de un flujo de trabajo elegido. Esto se hace conectando diferentes flujos de trabajo entre sí.

<figure><img src="https://files.helpdocs.io/9e3syfbzn8/articles/029rpu2xdq/1698138716602/taw-1.gif" alt="" width="375"><figcaption><p>Paso: Activar otro flujo de trabajo</p></figcaption></figure>

### Configuración

Hay dos configuraciones clave en el _Disparador otro flujo de trabajo_:

* **Flujo de trabajo:** Elija el siguiente flujo de trabajo para que el contacto continúe.
* **Paso del flujo de trabajo:** A continuación, elija el paso del flujo de trabajo específico del flujo de trabajo elegido para que el contacto continúe. Puede seleccionar un paso específico o dejar que el contacto inicie el flujo de trabajo desde el principio.

{% hint style="info" %}
Para que funcione _Activar otro paso del flujo de trabajo_, se deben seleccionar un flujo de trabajo y un paso del flujo de trabajo.
{% endhint %}

Puede ver la lista completa de flujos de trabajo conectados con _Activar otro paso del flujo de trabajo_ para realizar un seguimiento de los viajes de sus contactos.

<figure><img src="https://files.helpdocs.io/9e3syfbzn8/articles/029rpu2xdq/1698138750738/taw-2.gif" alt=""><figcaption><p>Flujos de trabajo conectados</p></figcaption></figure>

El número total de flujos de trabajo conectados se mostrará junto al icono de información.

También puede hacer clic en **Mostrar más** para ver la lista de flujos de trabajo que están conectados. Se mostrarán dos categorías:

* **Estás activando:** Muestra todos los flujos de trabajo conectados al flujo de trabajo actual mediante _Activar otro paso del flujo de trabajo_. Al hacer clic en el nombre del flujo de trabajo, se irá al paso específico del flujo de trabajo actual.
* **Activado por:** Muestra todos los flujos de trabajo que activarán el flujo de trabajo actual. Al hacer clic en el nombre de cada flujo de trabajo, se abrirá el flujo de trabajo en una nueva pestaña.

### ¿Cómo funciona?

Con _Activar otro paso de flujo de trabajo_, puede conectar diferentes flujos de trabajo juntos. Esto dirige los contactos de un flujo de trabajo a otro y hace que sus flujos de trabajo sean más flexibles para brindar una experiencia más personalizada y optimizada para sus contactos.

Puede dirigir los contactos a un paso específico en el otro flujo de trabajo o permitirles continuar su viaje al inicio del otro flujo de trabajo.

### Mejores prácticas

Estas son algunas de las mejores prácticas para este paso que puede seguir para optimizar su flujo de trabajo:

* Nombra y etiqueta claramente tus flujos de trabajo y pasos del flujo de trabajo. Esto hace que sea más fácil seleccionar el flujo de trabajo o el paso del flujo de trabajo específico para conectarse.
* Recuerde publicar flujos de trabajo que estén conectados al flujo de trabajo original.
* Antes de detener un flujo de trabajo, verifique si está conectado a otro. Detener un flujo de trabajo conectado hará que los contactos continúen con el flujo de trabajo original donde está activado _Activar otro paso_. Esto puede provocar errores o un recorrido de contacto incompleto.&#x20;
* Abstenerse de enumerar consecutivamente varios pasos para "Activar otro flujo de trabajo" en sucesión inmediata. Cuando se colocan uno tras otro, se ejecutan simultáneamente, lo que puede no ser siempre el comportamiento deseado. Un enfoque más eficaz es integrarlos en ramas separadas o flujos de trabajo distintos. Por ejemplo, en el contexto de los flujos de trabajo, considere hacer que el flujo de trabajo A inicie el flujo de trabajo B y luego que el flujo de trabajo B inicie el flujo de trabajo C. Esta disposición secuencial garantiza que el flujo de trabajo B se completará antes de activar el flujo de trabajo C.

### Casos de uso sugeridos

A continuación se muestran algunas formas en las que puede utilizar _Activar otro paso del flujo de trabajo_:

* **Separar clientes potenciales y clientes existentes:** Fusionar varios menús de chat para gestionar tanto clientes potenciales como clientes puede resultar complicado. Optimice sus interacciones con contactos utilizando _Activar otro paso del flujo de trabajo_ para abrir menús de chat y redirigir tareas.
* **Flujos de trabajo de servicios multilingües:** Reduzca posibles problemas de comunicación redirigiendo los contactos según el idioma mediante _Activar otro paso del flujo de trabajo_. Conecte varios flujos de trabajo para enrutar contactos automáticamente según el idioma utilizado.
* **Volver al menú principal:** Permita que los contactos regresen al menú principal para ver y elegir diferentes opciones, incluso si han ingresado a un flujo de trabajo completamente diferente.

***

## Paso: Fecha y hora

Este paso comprueba la fecha y la hora actuales con las condiciones definidas y dirige los contactos a lo largo del flujo de trabajo en consecuencia.

![Paso: Fecha y hora](https://1483174595-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lkf9GnQKi9ZHOOeQZec%2Fuploads%2FAnh6UYHPSsRQlrM8xjEP%2Fdatetime.gif?alt=media\&token=8a9e76d0-6e3f-4022-b844-556d954ba075)

### Configuración

Hay tres configuraciones posibles dentro de este paso.

* **Zona horaria:** Seleccione una zona horaria en la que opera su empresa.
* **Horario comercial:** Establezca el horario laboral para cada día en una zona horaria específica.
* **Rango de fechas:** Establezca una fecha de inicio y finalización en una zona horaria específica.

### ¿Cómo funciona?

La fecha y la hora actuales se comprueban con las condiciones configuradas. Si el paso se produce dentro de la fecha y hora permitidas, el Contacto pasará al siguiente paso.

### Rama de Fracaso

Si no se cumplen las condiciones de fecha y hora, el contacto será redirigido a la rama de fallos. Si no hay pasos configurados en la Rama de Fallos, el Flujo de Trabajo terminará.

***

## Paso: Solicitud HTTP

Este paso permite enviar solicitudes HTTP y guardar sus respuestas como variables.

<figure><img src="https://files.helpdocs.io/9e3syfbzn8/articles/as5ileq377/1690862325948/image.png" alt="" width="375"><figcaption><p>Paso: Solicitud HTTP</p></figcaption></figure>

#### Configuración

Hay dos configuraciones clave en el paso de solicitud HTTP: método de solicitud HTTP y URL.&#x20;

El método de solicitud HTTP se refiere al método específico necesario para que se ejecute la solicitud. Seleccione el método de solicitud aplicable en la lista desplegable.&#x20;

En el campo URL, ingrese el extremo URL de la API externa de la que desea recuperar datos. Para incluir variables, agregue el prefijo " $ " para admitir la interpolación de texto estático y variables.&#x20;

Expanda la sección Body para incluir un cuerpo y el encabezado Content-Type para que el destinatario de la solicitud decodifique correctamente. Para incluir variables, agregue el prefijo " $ " para admitir la interpolación de texto estático y variables.&#x20;

Expanda la sección Encabezado para incluir encabezados en la solicitud HTTP. La configuración funciona en pares, con la clave que representa el nombre del encabezado y el valor que representa el valor del encabezado utilizado para enviar la solicitud HTTP. Puede seleccionar variables como encabezados con el prefijo"$". Se permite un máximo de 10 encabezados.&#x20;

Para las respuestas de API JSON con pares clave-valor, puede guardar elementos de respuesta como variables. En la sección Asignación de respuestas, introduzca la clave del objeto JSON en el campo de la izquierda y nombre la variable en el campo de la derecha. Se permite un máximo de 10 configuraciones de asignación de respuestas.

#### Ejemplo

Cómo rellenar la clave JSON para guardar una respuesta para diferentes formatos de respuesta:

```jsx
{ 
    "name": "Jason", 
    "zip_codes": "12345", 
    "phone": "123123" 
}
```

Para guardar el número de teléfono en la respuesta anterior, utilice $.phone como llave JSON:

```jsx
{ 
    "custom_fields": { 
        "firstName": "John", 
        "lastName": "Doe", 
        "locale": "en_GB", 
        "timezone": "5", 
        "gender": "male", 
        "phone": "123123", 
        "email": "zy@rokeybot", 
        "customerid": "1"
    }, 
    "created_at": 1575618542
}
```

Para guardar el número de teléfono en la respuesta anterior, utilice $.custom\_fields.phone:

```jsx
    {
        "data": {
            "id":"1776025372480910",
            "contacts" : [
                {
                    "firstName":"John",
                    "lastName":"Doe",
		    "locale": "en_GB"
                },
                {
                    "firstName":"Jane",
                    "lastName":"Doe",
		    "locale": "en_GB"
                }  
	    ]
        }
    }
```

Para guardar el nombre 'Jane' en la respuesta anterior, utilice $.data.contacts\[1].firstName

&#x20;Active la opción Guardar estado de respuesta como variable para guardar el estado de respuesta de la solicitud HTTP como variable. Nombre la variable en el campo de abajo.

<figure><img src="https://files.helpdocs.io/9e3syfbzn8/articles/as5ileq377/1690862405346/screenshot-2023-07-28-at-2-00-31-pm.png" alt="" width="375"><figcaption><p>Seleccionar método</p></figcaption></figure>

#### ¿Cómo funciona?

Cuando se activa, este paso realizará una solicitud HTTP a la URL con el cuerpo y el encabezado definidos.&#x20;

Puede dirigir un recorrido de flujo de trabajo de acuerdo con el estado de la respuesta. Por ejemplo, puede crear una rama para "el código de estado es igual a 200". Si se recibe cualquier otro código de estado de respuesta, un paso de salto podría devolver los contactos al paso de solicitud HTTP. Alternativamente, el contacto podría ser redirigido a la Rama de error si no se cumplen las condiciones de la rama. Si no hay pasos configurados en la rama de error, el flujo de trabajo finalizará.

#### Posibles fracasos

Hay muchos errores potenciales en la ejecución de solicitudes HTTP. Asegúrese de que se utilizan el método HTTP y el encabezado de Tipo de contenido correctos, de que el Tipo de contenido es válido y de que tiene la autorización para realizar la solicitud HTTP.&#x20;

El contacto saltará este paso y procederá al viaje restante al encontrar los fallos anteriores.

***

## Paso: Agregar filas de hojas de cálculo de Google Sheets

Este paso añade nuevas filas a una hoja de cálculo de Google Sheets con los valores de asignación de columnas definidos.

<figure><img src="https://files.helpdocs.io/9e3syfbzn8/articles/y0qgencu8j/1690870106718/image.png" alt="" width="375"><figcaption><p>Paso: agregar hoja de cálculo de Google Sheets</p></figcaption></figure>

#### Configuración

Hay tres configuraciones clave para agregar una nueva fila a las hojas de cálculo de Google: **Hojas de cálculo de Google**, **Hoja de cálculo (Pestaña)** y **Asignación de columnas**.

Seleccione el archivo de hojas de cálculo de Google que desea rellenar desde el Selector de Google.

{% hint style="info" %}
Asegúrese de tener acceso de edición a la hoja de trabajo a la que está intentando conectarse.
{% endhint %}

Cuando se elija el archivo de hojas de cálculo de Google deseado, seleccione la hoja de cálculo o Pestaña que desea rellenar.&#x20;

{% hint style="info" %}
Asegúrese de que el nombre de la hoja no incluya signos de puntuación y que la primera fila de la hoja de trabajo sea una fila de encabezado con nombres de columna rellenados. Si falta un valor en la primera fila de la columna A, los datos se insertarán en la parte superior de la hoja en lugar de en la parte inferior.
{% endhint %}

Una vez que se haya determinado la Hoja de trabajo (Pestaña), se abrirá el cajón de configuración de asignación de columnas. Se mostrará un máximo de 26 columnas (de la Columna A a la Columna Z) para la configuración.&#x20;

Rellene los campos de columna en el cajón de configuración con los datos deseados. Para incluir variables, agregue el prefijo " $ " para admitir la interpolación de texto estático y variables. Para incluir un cálculo de hojas de cálculo de Google, agregue la fórmula en el campo correspondiente para que su valor se calcule automáticamente y se muestre cuando se agregue una nueva fila a la hoja de cálculo.

&#x20;Si desea dejar una columna en la hoja en blanco, deje su campo vacío en el cajón de configuración. .

{% hint style="info" %}
Consejos: Haga clic en el botón actualizar en el cajón de configuración para actualizar los campos hoja de trabajo y asignación de columnas.
{% endhint %}

#### ¿Cómo funciona?

Cuando se activa el flujo de trabajo, los valores definidos en el campo asignación de columnas se insertarán en la hoja de cálculo de Google Sheets y se mostrarán en una nueva fila en la parte inferior de la tabla.

<figure><img src="https://files.helpdocs.io/9e3syfbzn8/articles/y0qgencu8j/1690870218496/image.png" alt=""><figcaption><p>Hoja de cálculo de Google Sheets</p></figcaption></figure>

#### Editar una hoja de trabajo

Editar una hoja de trabajo incluye las siguientes acciones posibles:

* Eliminar filas o columnas existentes.
* Agregar filas en cualquier lugar que no sea la parte inferior de la hoja de trabajo.
* Cambiar la clasificación de columnas de la hoja.
* Renombrar, agregar o reorganizar columnas.
* Cambiar el nombre del libro de trabajo o de la hoja de trabajo.

Si se realiza cualquiera de las acciones anteriores, debe detener el flujo de trabajo, actualizar los campos de columna en el cajón de configuración de pasos y volver a publicar el flujo de trabajo para reflejar los valores actualizados. Si no lo hace, se producirá un desajuste de datos entre la entrada en el flujo de trabajo y las nuevas filas en la hoja de trabajo.

#### Posibles fracasos

Hay dos posibles errores en el paso Agregar fila de hojas de cálculo de Google. La primera se produce si no tiene permiso de edición para el archivo de hojas de cálculo de Google seleccionado. La segunda ocurre cuando la hoja de cálculo de Google Sheets seleccionada ha alcanzado su límite de celdas o está llena.

El contacto omitirá este paso y continuará con el viaje de flujos de trabajo restantes al encontrar los errores anteriores.
