# Scheduled Messages

### Scheduled messages allow you to schedule a message for delivery to any number of conversations.

{% hint style="info" %}
**Conversations** include:

* Direct messages with other users
* Multi-person direct messages (group messages)
* Private channels
* Public channels
  {% endhint %}

### Nightowl offers optional timezone settings that do the math behind the scenes to help teams with a global footprint.   <a href="#timezone-settings" id="timezone-settings"></a>

* **Convert**
  * Convert delivery time to local timezones for channels and users.

    > Local time for channels is the top timezone among channel members.
* **Postpone**
  * Postpone your message until 9am local time for a recipient if the selected time is in the past for that recipient.

{% hint style="info" %}

#### Using these options can vary the time of delivery for each recipient.

{% endhint %}

### To send a scheduled message:

* Head to the **Nightowl** app home – make sure you are on the `Home` tab.
* Navigate to the `Scheduled Messages` section and click :stopwatch:`New` button.

  > You can also start a scheduled message from the [**global shortcuts**](https://api.slack.com/interactivity/shortcuts#global) menu or by running the command `/nightowl` from any conversation.

#### Configuration

* Choose either or both of the timezone settings.

  > These settings are optional.
* Set the delivery date and time.
* Select a [**delivery window**](#delivery-window).

  > This setting is optional.
* Choose the timezone on which this message should be based.

  > This field will auto-populate with your current timezone.

{% hint style="warning" %}
Messages cannot be scheduled for delivery more than **360 days** in the future.
{% endhint %}

After configuring your settings, click `Next` to compose your message.

#### Message

{% hint style="info" %}
Use the :gear:`Edit configuration` button to return to the previous modal.
{% endhint %}

* Enter one or more conversations to BCC.

  > When more than one conversation is selected, **semicolons** will be used as delimiters to display the recipients after the message is created.
  >
  > E.g. a message to **separately selected** DM recipients @Jack, @Jill, and @Jen will show as`BCC: @Jack; @Jill; @Jen` whereas selecting a **group** DM between you, @Jack, and @Jill in addition to a separately selected DM with @Jen will appear as `BCC: @Jack, @Jill; @Jen`.
* Compose your message.
* Optionally enable the insertion of recipient mentions.

  > The variable `{@}` will be replaced with a user tag in DMs and `@here` in other conversations.
* Select whether or not to show the recipient(s) that this message is from **Nightowl**.

  > Default selection can be modified in [**App Settings**](https://happybara.gitbook.io/nightowl/getting-started/app-settings)
* Select whether or not to show previews of linked content in messages containing URLs.

  > Default selection can be modified in [**App Settings**](https://happybara.gitbook.io/nightowl/getting-started/app-settings)

Click `Schedule` to schedule your message for delivery.

{% hint style="info" %}
All Nightowl messages are sent from your user.&#x20;

Recipients will **not** be able to tell that you did not send the message.
{% endhint %}

### After creating a scheduled message, it can be deleted, modified, or converted to another item type.

* Click :bomb:`Delete` to cancel delivery of your scheduled message to all conversations.

{% hint style="warning" %}
Messages may still be delivered if deleted within \~60 seconds of the scheduled delivery time.
{% endhint %}

* The following actions are available in the overflow (`...`) menu:
  * :pen\_fountain:`Edit`

    * Edit the [**configuration**](#configuration) and/or the [**message**](#message)

  * :mailbox\_with\_mail:`Send now`
    * &#x20;Send the message [**now**](https://happybara.gitbook.io/nightowl/reference/bcc-messages) and optionally delete the original scheduled message

      > The recipient(s) and message body can be edited

  * :gear:`Make recurring`
    * &#x20;Set a [**recurring schedule**](https://happybara.gitbook.io/nightowl/reference/recurring-messages) for the message

      > The recipient(s), delivery date/time, and message body can be edited

  * &#x20;:page\_with\_curl:`Save draft`
    * &#x20;Save the message as a [**draft**](https://happybara.gitbook.io/nightowl/reference/draft-messages) and optionally delete the original scheduled message

      > The recipient(s) and message body can be edited

  * :busts\_in\_silhouette:`Create group`
    * Create a [**recipient group**](https://happybara.gitbook.io/nightowl/reference/recipient-groups) and optionally delete the original scheduled message

      > The recipient(s) can be edited

{% hint style="info" %}
Even if the selected time has passed, any messages remaining to be delivered can still be canceled by clicking :bomb:`Delete`.
{% endhint %}

### Delivery window

The optional delivery window can be used to stagger message delivery so that recipients do not all receive your message simultaneously.  The window begins at the scheduled delivery time. Messages will be spread evenly throughout the window prior to any timezone adjustments.

### Message details

Scheduled messages to recipients in different timezones often hide a great deal of information. By opening the  :mag: `Details` modal for a scheduled message, you can view the time your message will send for each of your recipients and, if needed, remove them. You can also see general information about your schedule for the message including the [**original**](#original-timezone) and [**final**](#final-message) message timestamps.

{% hint style="warning" %}
Messages may still be delivered if deleted within \~60 seconds of the scheduled delivery time.
{% endhint %}

### Original timezone <a href="#original-timezone" id="original-timezone"></a>

When your timezone changes due to travel, scheduled messages respect the timezone used when the message was created.  If there is a difference between your current timezone and the timezone used when the message was created, a field titled `Original timezone` will be shown in `Message details` modal.  The `Scheduled for` field is always shown in your current timezone.

### Final message

When a message is scheduled for delivery to conversations with different timezones, using either of the [**timezone settings**](#timezone-settings) can cause messages to be delivered later than the selected time, which is shown in your local timezone. This ensures your message arrives at the correct local time for each recipient.&#x20;

In this scenario, when a message to any recipient is set for delivery after the selected time, a second time, labeled `Final message` will be shown in the [**message details**](#message-details) for the scheduled message.  This time is for the last message that will be delivered and is also shown in your local timezone.  The row for any such message will not be removed until the **final** message is sent.

### Generated scheduled messages

Recurring messages generate scheduled messages at each recurring interval.  These scheduled messages have some important differences to consider relative to scheduled messages created manually.

* Scheduled messages generated by recurring messages will be tagged as :link:`Generated by a Recurring Message`.
* Deleting or editing a scheduled message that was generated by a recurring message will not edit or delete the recurring message.
  * Instead, this will cause the recurring message to proceed to the next interval.
  * I.e. if a recurring message is set to deliver every Friday, editing or deleting **this** Friday's scheduled message will cause the recurring message to create a new scheduled message for **next** Friday.
