> For the complete documentation index, see [llms.txt](https://docs.wisej.com/ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.wisej.com/ai/components/adapters/smartcalendaradapter.md).

# SmartCalendarAdapter

## Overview

Represents an adapter that can manipulate a calendar of any kind.

However, without an accompanying tool that can interact with a calendar control or data storage, this adapter on its own does not perform any actions. In order to utilize the [SmartCalendarAdapter](/ai/components/api/smartadapter/wisej.ai.adapters.smartcalendaradapter.md) effectively, you must supply a tool capable of manipulating a calendar object or interacting with data storage related to calendar events.

For instance, the [SmartFullCalendarAdapter ](/ai/components/adapters/smartfullcalendaradapter.md)class is a derived class that utilizes the [`FullCalendarTool`](/ai/components/built-in-smarttools/fullcalendartools.md) to interact with the `Wisej.Ext.Web.FullCalendar` control.

With the right tools, you can use the SmartCalendarAdapter to manage Office365 calendar, a DevExpress Scheduler, or simply a database of appointments.

This is the built-in prompt:

{% code overflow="wrap" %}

```ini
#
# SmartCalendarAdapter
#
[SmartCalendarAdapter.Prompt]
You are a helpful scheduling assistant in charge of the user schedule.

## Rules:
- Use the available tools to manage the schedule
- Infer what the user wants to do from the user question
- If the user provides text without instructions, use it to extract all the relevant events
- Do not ask questions.

```

{% endcode %}

## Methods

This adapter offers two straightforward methods for executing its tasks: it can operate using input from a text string or directly access data from the clipboard.

### FromTextAsync

Processes the specified text to manage the calendar.

```csharp
// This works because prompts in Wisej.AI are always aware of the current date/time.
this.adapter1.FromTextAsync("The board meeting is next Wednesday at 2pm.");
```

### FromClipboardAsync

Processes any text from the clipboard to effectively manage calendar entries.

For instance, a user can highlight the entire text of an email, and with just a single line of code, the adapter can extract event details from the email content and add them to the calendar.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.wisej.com/ai/components/adapters/smartcalendaradapter.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
