> For the complete documentation index, see [llms.txt](https://watora.gitbook.io/watora/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://watora.gitbook.io/watora/features/rich-commands.md).

# Rich Commands

## Rich Commands Attributes

Rich commands are a useful part of Watora's commands which create unlimited possibilities.

### Image URLs are automatically hidden

![](/files/-LRXUJNEf62nOVDnydD_)

{% hint style="info" %}
You can use this feature to create cool custom commands or welcome messages
{% endhint %}

### There are variables

By writing a variable between curly brackets, you can get a real value.

![Here, I get my username and my avatar url](/files/-LRXVF6LHQnHRToCO2Qc)

{% hint style="info" %}
`author.avatar_url`gives a link, and because`choice`is a Rich Command, the link is hidden.
{% endhint %}

#### Available variables and their attributes

{% hint style="info" %}
in `author.name`**author** is a **variable**, and **name** an **attribute**
{% endhint %}

| Variable                                                                                                                                                                           | Attributes                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **`message`**                                                                                                                                                                      | <p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Message.attachments">attachments</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Message.author">author</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Message.content">content</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Message.created_at">created\_at</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Message.edited_at">edited\_at</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Message.guild">guild</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Message.embeds">embeds</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Message.id">id</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Message.jump_url">jump\_url</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Message.tts">tts</a></p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| <p><strong><code>author</code></strong></p><p><strong><code>user</code></strong></p><p><strong><code>member</code></strong></p><p><strong><code>random\_member</code></strong></p> | <p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Member.voice">voice</a><br><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Member.color">color</a><br><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Member.bot">bot</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Member.avatar_url">avatar\_url</a><br><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Member.top_role">top\_role</a><br><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Member.display_name">display\_name</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Member.roles">roles</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Member.joined_at">joined\_at</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Member.default_avatar_url">default\_avatar\_url</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Member.id">id</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Member.mention">mention</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Member.discriminator">discriminator</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Member.name">name</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Member.nick">nick</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Member.guild">guild</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Member.is_avatar_animated">is\_avatar\_animated</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Member.status">status</a></p> |
| **`channel`**                                                                                                                                                                      | <p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.TextChannel.is_nsfw">nsfw</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.TextChannel.members">members</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.TextChannel.slowmode_delay">slowmode\_delay</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.TextChannel.guild">guild</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.TextChannel.name">name</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.TextChannel.id">id</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.TextChannel.category">category</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.TextChannel.created_at">created\_at</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.TextChannel.position">position</a></p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| <p><strong><code>guild</code></strong></p><p><strong><code>server</code></strong></p>                                                                                              | <p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Guild.name">name</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Guild.afk_timeout">afk\_timeout</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Guild.afk_channel">afk\_channel</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Guild.id">id</a><br><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Guild.region">region</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Guild.owner_id">owner\_id</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Guild.unavailable">unavailable</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Guild.mfa_level">mfa\_level</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Guild.features">features</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Guild.splash_url">splash\_url</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Guild.channels">channels</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Guild.me">me</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Guild.icon_url">icon\_url</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Guild.shard_id">shard\_id</a></p><p><a href="https://discordpy.readthedocs.io/en/rewrite/api.html#discord.Guild.created_at">created\_at</a></p>                                                                                                                                                                                                                               |
| **`current`**                                                                                                                                                                      | <p><a href="https://github.com/Devoxin/Lavalink.py/blob/master/lavalink/AudioTrack.py">artwork</a></p><p><a href="https://github.com/Devoxin/Lavalink.py/blob/master/lavalink/AudioTrack.py">author</a></p><p><a href="https://github.com/Devoxin/Lavalink.py/blob/master/lavalink/AudioTrack.py">can\_seek</a></p><p><a href="https://github.com/Devoxin/Lavalink.py/blob/master/lavalink/AudioTrack.py">duration</a></p><p><a href="https://github.com/Devoxin/Lavalink.py/blob/master/lavalink/AudioTrack.py">identifier</a></p><p><a href="https://github.com/Devoxin/Lavalink.py/blob/master/lavalink/AudioTrack.py">requester</a></p><p><a href="https://github.com/Devoxin/Lavalink.py/blob/master/lavalink/AudioTrack.py">stream</a></p><p><a href="https://github.com/Devoxin/Lavalink.py/blob/master/lavalink/AudioTrack.py">thumbnail</a></p><p><a href="https://github.com/Devoxin/Lavalink.py/blob/master/lavalink/AudioTrack.py">track</a></p><p><a href="https://github.com/Devoxin/Lavalink.py/blob/master/lavalink/AudioTrack.py">uri</a></p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |

{% hint style="warning" %}
`current`only works if there's a current song.
{% endhint %}

{% hint style="info" %}
`random_member`is a random member taken from the current guild.
{% endhint %}

#### Variables without attributes

| Variable             | Documentation                                       |
| -------------------- | --------------------------------------------------- |
| **`day`**            | Returns the current day's number.                   |
| **`month`**          | Returns the current month's number.                 |
| **`year`**           | Returns the current year's number.                  |
| **`server_members`** | Returns the number of members in the current guild. |

**Example :**

![](/files/-LRXn_-2H2m7-LOMXW36)

#### Specials

| Number            | Documentation                                                                                                    |
| ----------------- | ---------------------------------------------------------------------------------------------------------------- |
| **`(nb1)~(nb2)`** | <p>Generates a random number between nb1 and nb2.</p><p><em>If not specified, nb1 is 0, and nb2 is 100.</em></p> |

{% hint style="info" %}
Using `{~}` does the same thing as using`{0~100}`
{% endhint %}

**Example :**

![](/files/-LRXnGoZuOdbm29b-CUL)

### You can call a command

By using `>>>`you can specify that the following word is a command.

**Example :**

![The choice command chosen to start the flip command](/files/-LRXpzzkH6pHmedloSD_)

### &#x20;**You can even call several commands**

By adding `&&`between your commands, you can start several commands at the same time.

{% hint style="info" %}
Well they’re not exactly simultaneous. The commands are called in order, starting from the first one.
{% endhint %}

**Example :**

![Doing both commands](/files/-LRXrdOoXBjbhrnn6s8O)

## What's the point of Rich Commands ?

* Custom Commands are [Rich Commands](/watora/features/rich-commands.md).
* Welcome and Goodbye messages are [Rich Commands](/watora/features/rich-commands.md).
* You can call a command in a Custom Command. See [Custom Commands page](/watora/features/custom-commands.md) to get started.
* You can even mix several commands into one [Custom Command.](/watora/features/custom-commands.md)
