# Cómo programar un mensaje

Pushwoosh simplifica la programación de mensajes en múltiples canales, incluyendo [notificaciones push](/es/product/messaging-channels/push-notifications), [correos electrónicos](/es/product/messaging-channels/emails), [mensajes in-app](/es/product/messaging-channels/in-apps), [WhatsApp](/es/product/messaging-channels/whatsapp-messages) y [SMS](/es/product/messaging-channels/sms).

Ya sea que esté enviando un mensaje único, programando mensajes para fechas específicas o configurando campañas recurrentes, el Customer Journey Builder ofrece opciones flexibles para gestionar el tiempo de su campaña de manera efectiva. Para las notificaciones push, también puede utilizar el [formulario de mensaje push único](/es/product/messaging-channels/push-notifications/scheduled-push). Para correos electrónicos únicos, puede utilizar el [formulario de correo electrónico único](/es/product/messaging-channels/emails/sending-emails/send-one-time-emails).

Esta guía proporciona instrucciones paso a paso para programar mensajes a través del Customer Journey Builder, aplicables a todos los canales de mensajería compatibles.

## Cómo programar mensajes que inician un flujo de comunicación

La programación se configura en el elemento [**Audience-based entry**](/es/product/customer-journey/journey-elements/entry-elements/audience-based-entry/#entry-schedule) a través de **Entry schedule**:

*   **One-time entry:** los usuarios entran en el journey una vez. Elija **Immediately** (tan pronto como se active el journey) o **Schedule for a specific day** (fecha y hora).
*   **Recurring entry:** los usuarios entran repetidamente. Elija **On specific dates** (múltiples fechas que usted elija) o **Periodically** (por ejemplo, cada 1 día, cada 1 semana).

### Configurar la programación de entrada

1.  Añada el elemento **Audience-based entry** y defina los usuarios que entrarán en el journey. Seleccione la **Audience source** para determinar quién recibirá el mensaje o [cree un segmento](/es/product/audience-data-and-segmentation/segmentation/). Una vez que la audiencia esté configurada, puede proceder a programar el mensaje.
2.  En el elemento **Audience-based entry**, configure **Entry schedule** y elija **One-time entry** o **Recurring entry**, luego seleccione la opción que coincida con cuándo se debe enviar el mensaje.
3.  Configure la hora y la zona horaria como se describe en las secciones siguientes. Para más detalles, consulte [Audience-based entry](/es/product/customer-journey/journey-elements/entry-elements/audience-based-entry/).

<Aside type="tip">
Opcionalmente, habilite **Allow users who match the segment later to enter the journey** para que los usuarios que califiquen después del lanzamiento entren automáticamente. [Aprenda más](/es/product/customer-journey/journey-elements/entry-elements/audience-based-entry/#add-users-when-they-start-matching-the-segment-later).
</Aside>

### Programar un mensaje para una fecha y hora específicas

Para enviar un mensaje en una fecha y hora específicas:

1.  Configure **Entry schedule** en **One-time entry**, luego elija **Schedule for a specific day**. Establezca la fecha y la hora.
2.  Seleccione la zona horaria:
    *   **Subscriber's device timezone (default):** la entrada utiliza la zona horaria del dispositivo de cada suscriptor. Si falta la zona horaria, se utiliza una de respaldo. Haga clic en **Change fallback** para cambiarla.
    *   **Specific timezone:** elija una zona horaria del menú desplegable para una hora de entrada fija.

<Aside type="note">
Si la hora de entrada programada de un suscriptor (en su zona horaria local) ya ha pasado, no se incluirá en la campaña a menos que elija permitirle entrar inmediatamente. [Aprenda más](/es/product/customer-journey/journey-elements/entry-elements/audience-based-entry/#schedule-for-a-specific-day).
</Aside>

Una vez que la programación esté configurada, haga clic en **Apply** para confirmar.

<img src="/journey-elements-audience-based-entry-2.webp" alt="Entrada basada en audiencia: Programar para un día específico con fecha, hora y zona horaria"/>

### Programar un mensaje para múltiples fechas específicas

Para enviar mensajes en múltiples fechas específicas:

1.  Configure **Entry schedule** en **Recurring entry**, luego elija **On specific dates**.
2.  Elija las fechas en el calendario. Haga clic en **+ Add Date** para añadir más fechas.
3.  Configure la hora y la zona horaria de la misma manera que para [Programar para un día específico](#schedule-a-message-for-a-specific-date-and-time) (Subscriber's device timezone o Specific timezone).

<img src="/journey-elements-audience-based-entry-5.webp" alt="Entrada basada en audiencia: Entrada recurrente en fechas específicas"/>

<Aside type="note">
Los suscriptores cuya hora programada ya haya pasado para una fecha específica serán incluidos en la siguiente fecha programada disponible.
</Aside>

Una vez que la programación esté configurada, haga clic en **Apply** para confirmar.

### Configurar un mensaje recurrente para ser enviado a intervalos regulares

Para enviar mensajes a intervalos regulares (por ejemplo, diariamente, semanalmente):

1.  Configure **Entry schedule** en **Recurring entry**, luego elija **Periodically**.
2.  En **ENTRY EVERY**, establezca el intervalo (por ejemplo, cada 1 día, cada 1 semana) y elija los días (de la semana o del mes, dependiendo del intervalo).
3.  Configure la hora y la zona horaria de la misma manera que para [Programar un mensaje para una fecha y hora específicas](#schedule-a-message-for-a-specific-date-and-time).

<img src="/journey-elements-audience-based-entry-6.webp" alt="Entrada basada en audiencia: Entrada recurrente periódicamente con intervalo, días seleccionados, hora y zona horaria"/>

<Aside type="note">
Los suscriptores cuya hora programada ya haya pasado serán incluidos en el siguiente día programado.
</Aside>

Una vez que la programación esté configurada, haga clic en **Apply** para confirmar.

Después de haber configurado las opciones de programación, añada el elemento de mensaje y configure el resto de su journey. Una vez que haya revisado todas las configuraciones, haga clic en **Launch campaign**.

## Cómo programar mensajes que continúan un flujo de comunicación

Si su mensaje programado es parte de un journey en curso, puede insertar un elemento Time Delay para controlar cuándo se envía el mensaje dentro del flujo. Para esto:

1.  Inserte el elemento **Time Delay** entre los elementos de comunicación precedentes y el mensaje que desea programar:

<video src="/shared-7.webm" title="Customer Journey Builder mostrando el elemento Time Delay insertado entre el punto de entrada y el mensaje" autoplay loop muted playsinline />

2.  Haga doble clic en el elemento **Time Delay**. En el campo **Time Delay Option**, seleccione ya sea **Specific time**:

<img src="/shared-9.webp" alt="Diálogo de configuración del elemento Time Delay con la opción Specific time"/>

o **Date**:

<img src="/shared-4.webp" alt="Diálogo de configuración del elemento Time Delay con la opción Date"/>

<Aside type="tip">
Dentro del elemento **Time Delay**, puede establecer otras condiciones de entrega: esperar duraciones fijas, días específicos de la semana o hasta que el usuario active un evento especificado. [Aprenda más sobre cómo usar el elemento Time Delay](/es/product/customer-journey/journey-elements/flow-controls/time-delay/).
</Aside>

## Escenario de ejemplo: Configurar una notificación push recurrente para una aplicación de fitness

Supongamos que está gestionando una aplicación de fitness y quiere enviar notificaciones push motivacionales a los usuarios para mantenerlos comprometidos. Decide enviar la misma notificación todos los lunes a las 9:00 AM, recordando a los usuarios que registren su progreso de entrenamiento.

1.  **Crear un flujo de push básico.** Añada el **Audience-based entry** al lienzo del journey y seleccione una **Audience source**.

2.  **Establecer entrada recurrente.** En el elemento **Audience-based entry**, configure **Entry schedule** en **Recurring entry**, luego elija **Periodically**. En **ENTRY EVERY**, establezca **every 1 week** y seleccione **Monday**.

3.  **Establecer hora y zona horaria.** Configure la hora en **9:00 AM** y seleccione **Subscriber's device timezone** para que las notificaciones se envíen según la hora local de cada usuario.

4.  **Revisar y finalizar el journey.** Proceda a configurar el resto de su journey y cree el contenido de la notificación push.

<Aside type="tip" title="Mensaje de ejemplo">
*   **Título:** ¡Sigue moviéndote! 💪

*   **Mensaje:** Hola [First Name], registra tu entrenamiento y mantente al día con tus objetivos de fitness. ¡Hagamos que esta semana cuente! 🏋️‍♂️

<img src="/shared-32.webp" alt="Vista previa de la notificación push de la aplicación de fitness con el título y el contenido del mensaje"/>
</Aside>

Para terminar el journey aquí, añada el elemento [**Exit**](/es/product/customer-journey/journey-elements/flow-controls/exit/) o simplemente deje la rama sin una conexión de salida. Antes de lanzar el journey, revise toda la configuración para asegurarse de que todo esté configurado correctamente.

La notificación recurrente ya está lista para recordar a los usuarios que registren sus entrenamientos todos los lunes a las 9:00 AM en sus zonas horarias locales.