> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vetox.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Riferimento variabili

> Ogni variabile segnaposto in Vetox, raggruppata per funzionalità — e perché alcune usano parentesi quadre e altre graffe.

Le variabili sono segnaposti sostituiti con valori reali quando un messaggio viene inviato.

## Due sintassi diverse

<Warning>
  **Vetox usa due sintassi, e non sono intercambiabili.**

  | Sintassi   | Usata da                              |
  | ---------- | ------------------------------------- |
  | `[Square]` | Messaggi di Welcomer, goodbye e greet |
  | `{curly}`  | Tutto il resto                        |

  Un `{User}` in un messaggio di benvenuto viene stampato letteralmente. Un `[user]` in un messaggio ticket viene stampato letteralmente.
</Warning>

## La regola universale

<Warning>
  **Una variabile sconosciuta diventa testo vuoto, non un errore** — e negli embed, **un campo il cui titolo o valore risulta vuoto viene scartato completamente dal messaggio.**

  Questa è la causa singolarmente più comune di "il mio campo embed continua a sparire". È quasi sempre una variabile scritta male o inesistente per quella funzionalità.
</Warning>

## Welcomer, goodbye e greet

| Variabile      | Valore                                                |
| -------------- | ----------------------------------------------------- |
| `[User]`       | Il membro                                             |
| `[ServerName]` | Il nome del tuo server                                |
| `[UsersCount]` | Il nuovo conteggio membri                             |
| `[Inviter]`    | Chi lo ha invitato — solo benvenuto                   |
| `[Code]`       | Il codice invito usato — solo benvenuto               |
| `[CountUrl]`   | Un URL immagine del conteggio membri — solo benvenuto |

<Warning>
  **`[Server]` non è una variabile.** Appare nel messaggio di benvenuto predefinito e stampa letteralmente. Sostituiscilo con `[ServerName]`.
</Warning>

<Note>
  `[Inviter]` e `[Code]` necessitano di **Manage Server** in modo che Vetox possa leggere gli inviti.
</Note>

## Ticket

Il set più ricco in Vetox. Utilizzabile in embed ticket, formati dei nomi dei canali e messaggi di orari di supporto.

<AccordionGroup>
  <Accordion title="Il membro" icon="user">
    `{user}` `{mention}` `{username}` `{userid}` `{user.mention}` `{user.name}` `{user.username}` `{user.tag}` `{user.id}`
  </Accordion>

  <Accordion title="Il ticket" icon="ticket">
    `{ticket}` `{number}` `{num}` `{ticket.number}` `{ticket-number}` `{#number}` `{ticket.channel}` `{ticket.channelName}` `{ticket.priority}` `{ticket.closeReason}` `{ticket.openedAt}` `{ticket.createdAt}` `{ticket.closedAt}` `{ticket.users}`
  </Accordion>

  <Accordion title="Canale, pannello e opzione" icon="hashtag">
    `{channel}` `{channel.mention}` `{channel.name}` `{channel.id}` `{panel}` `{panel.name}` `{panel-name}` `{option}` `{option.label}`
  </Accordion>

  <Accordion title="Il server" icon="server">
    `{server}` `{server.name}` `{server.id}` `{server.members}` `{server.icon}` `{server.banner}` `{guild}` `{members}`
  </Accordion>

  <Accordion title="Staff e azioni" icon="user-shield">
    `{staff}` `{staff.mention}` `{staff.name}` `{claim.user}` `{claim.name}` `{close.user}` `{close.name}` `{close.reason}` `{escalate.reason}` `{escalate.panel}` `{reason}`
  </Accordion>

  <Accordion title="Risposte del form" icon="clipboard-list">
    `{form.1}`, `{form.2}` … — **1-indexed**, nell'ordine in cui appaiono le domande.

    Funziona anche `{form.Label}`, usando l'etichetta della domanda.
  </Accordion>

  <Accordion title="Tempo e statistiche" icon="clock">
    `{date}` `{time}` `{timestamp}` `{time.created}` `{time.opened}` `{time.claimed}` `{time.closed}` — ognuno accetta anche `.age`.

    `{statistics.tickets.open}` `{statistics.tickets.created}` `{statistics.tickets.closed}` `{statistics.tickets.claimed}` `{statistics.tickets.averageRating}`
  </Accordion>

  <Accordion title="Orari di supporto" icon="business-time">
    `{supportHours.status}` `{supportHours.nextOpen}` `{supportHours.nextOpenTime}` `{supportHours.nextOpenRelative}` `{supportHours.closesAt}` `{supportHours.closesAtTime}`
  </Accordion>
</AccordionGroup>

### Modificatori

Le variabili ticket accettano modificatori con `{variable?modifier=value}`: `upper`, `lower`, `capitalize`, `truncate`, `slice`, `padleft`, `padright`, `replace`, `fallback`, `date`, `timestamp`, `math`, `ordinal`, `join`, `if`.

<Tip>
  `{user.name?upper}` grida il nome. `{ticket.closeReason?fallback=No reason given}` evita che un campo vuoto venga scartato — che è la soluzione più pulita per i campi embed che svaniscono.
</Tip>

## Counting

`{count}` `{user}` `{record}` — più `{start}` e `{savesLeft}` nei messaggi di reset e save.

<Warning>
  `{server}` è offerto ma **si risolve sempre vuoto**. Digita il nome del tuo server direttamente.
</Warning>

## Starboard

`{author}` `{stars}` `{channel}` `{link}` `{content}` `{emoji}`

## Self-Roles

`[Role]` — il nome del ruolo, nelle notifiche DM.

## Template giveaway

`{prize}` `{winners}` `{host}` `{endsAt}` `{id}` `{description}` `{requiredRole}` `{minAccountAge}` `{entryCount}`

## Notifiche

Ogni piattaforma ha il proprio set. Usare la variabile di una piattaforma su un'altra si risolve in vuoto.

<AccordionGroup>
  <Accordion title="Twitch" icon="twitch">
    `{streamer.name}` `{streamer.url}` `{streamer.avatar}`

    Solo live: `{stream.title}` `{stream.game}` `{stream.viewers}` `{stream.thumbnail}`
  </Accordion>

  <Accordion title="Kick" icon="tower-broadcast">
    `{streamer.name}` `{streamer.url}` `{streamer.avatar}`

    Solo live: `{stream.title}` `{stream.category}` `{stream.viewers}` `{stream.thumbnail}`

    Nota `{stream.category}`, non `{stream.game}` di Twitch.
  </Accordion>

  <Accordion title="YouTube" icon="youtube">
    `{channel.name}` `{channel.avatar}` `{video.title}` `{video.url}` `{video.thumbnail}` `{video.type}`
  </Accordion>

  <Accordion title="Reddit" icon="reddit">
    `{post.title}` `{post.url}` `{post.author}` `{post.content}` `{post.flair}` `{post.thumbnail}` `{subreddit.name}` `{subreddit.url}` `{subreddit.icon}`
  </Accordion>

  <Accordion title="Bluesky" icon="cloud">
    `{post.text}` `{post.url}` `{post.image}` `{post.likes}` `{author.name}` `{author.handle}` `{author.avatar}`
  </Accordion>

  <Accordion title="Steam" icon="steam">
    `{news.title}` `{news.url}` `{news.content}` `{news.category}` `{news.author}` `{game.name}` `{game.image}`
  </Accordion>

  <Accordion title="RSS" icon="rss">
    `{item.title}` `{item.url}` `{item.description}` `{item.author}` `{feed.name}` `{feed.url}`
  </Accordion>

  <Accordion title="Podcast" icon="podcast">
    Funzionanti: `{episode.title}` `{episode.url}` `{episode.description}` `{podcast.name}`

    <Warning>
      `{episode.duration}`, `{podcast.author}` e `{podcast.artwork}` sono offerti ma **non producono mai un valore**. Qualsiasi campo costruito solo da essi viene scartato.
    </Warning>
  </Accordion>
</AccordionGroup>

## Variabili che non funzionano

<Warning>
  Confermate non funzionanti. Evita queste:

  | Variabile                                   | Dove                            | Comportamento                                                              |
  | ------------------------------------------- | ------------------------------- | -------------------------------------------------------------------------- |
  | `[Server]`                                  | Welcomer                        | Non è una variabile — stampa letteralmente                                 |
  | `{server}`                                  | Traguardi Counting              | Sempre vuoto                                                               |
  | `{episode.duration}`                        | Podcast                         | Sempre vuoto                                                               |
  | `{podcast.author}`                          | Podcast                         | Sempre vuoto                                                               |
  | `{podcast.artwork}`                         | Podcast                         | Solitamente vuoto                                                          |
  | `{username}`, `{server.name}`, `{nickname}` | **Azioni workflow application** | Sempre vuoto — funzionano nei messaggi DM ma non nei template delle azioni |
  | `{stream.*}`                                | Annunci Twitch/Kick **offline** | Vuoto; solo live                                                           |
</Warning>

<Card title="Risoluzione dei problemi" icon="wrench" horizontal href="/it/help/troubleshooting">
  Quando un messaggio non arriva affatto.
</Card>
