# Event Scheduling

Are you confused about scheduling events or encountering dates that don't work? This comprehensive guide will walk you through the event scheduling process, explain the underlying logic, and help you interact seamlessly with the bot. Let's dive in!

***

## Event Scheduling Overview

The bot relies on four key dates to schedule events in a specific sequence:

1. [**Slot Opening Date**](#id-1.-slot-opening-date)
2. [**Slot Closure Date**](#id-2.-slot-closure-date)
3. [**Event Announcement Date**](#id-3.-event-announcement-date)
4. [**Event Date**](#id-4.-event-date)

These dates must be configured in the exact order shown above to align with the bot's workflow:

**Slot Opening Date → Slot Closure Date → Event Announcement Date → Event Date**

{% hint style="info" %}

#### **If the**[ **post-event**](/functionalities/commands/server-commands/create-event.md#post-event) **option is disabled, the bot skips the Event Announcement Date.**

The flow becomes: **Slot Opening Date → Slot Closure Date → Event Date**
{% endhint %}

***

## Detailed Explanation of Each Date

### 1. Slot Opening Date

* **Purpose:** Marks the date when slots open. The bot posts this in the selected RSVP channel.
* **Suggestion:** Set this date approximately **10 days before the Event Date**.

### 2. Slot Closure Date

* **Purpose:** Represents the deadline for participants to confirm attendance. No further registrations will be accepted after this date.
* **Suggestion:** Schedule this date about **5 days after the Slot Opening Date** to allow adequate response time.

### 3. Event Announcement Date

* **Purpose:** This is when the event announcement is posted in the appropriate channel.
* **Suggestion:** Set this **2 days after the Slot Closure Date** to provide ample time for event review and poster preparation.

{% hint style="info" %}

## This date is skipped if the [**post-event**](/functionalities/commands/server-commands/create-event.md#post-event) option is disabled.

{% endhint %}

### 4. Event Date

* **Purpose:** The actual day and time the event begins.
* **Requirement:** Ensure all preceding dates align properly to avoid scheduling conflicts.

***

## Debugging Scheduling Errors

### Common Issues and Fixes

Have trouble scheduling an event? The bot keeps throwing errors for no apparent reason?\
Here's a quick list of what to look for:

#### 1. If using custom timestamps

If you receive errors about conflicting dates:

* Ensure all dates follow the correct order:\
  **Slot Opening Date → Slot Closure Date → Event Announcement Date → Event Date**.
* Include **timestamps for all dates** when using custom timestamps. If not provided, default intervals from the `/setup` command will be applied, which might cause conflicts.

#### 2. Not Using Custom Timestamps

If only the Event Date is provided and the bot throws errors (e.g., "dates cannot be scheduled in the past"):

* Verify that the Event Date aligns with the intervals set in the `/setup` command.\
  For example, if the **Slot Opening Date** is configured to be **10 days before the Event Date**, scheduling an Event Date closer than 10 days may result in errors.
* Solution:
  * Use custom timestamps for all required dates.
  * Adjust the intervals in the `/setup` command to fit your scheduling needs.

***

## Need More Help?

If you're still unsure or unable to resolve scheduling issues:

* **Review this guide thoroughly.**
* Visit the [**troubleshooting**](/help/troubleshooting.md) page for further assistance.
* [**Reach out**](/help/support-and-feedback.md) to the support team with detailed information about the issue.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.vrave.app/functionalities/event-scheduling.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
