chapterjs pour écrire des messages et travailler avec des identifiants et des images.
Comment envoyer ce qu’ils produisent est dans le guide Messages ; tout ce qu’un message peut contenir est dans Options des messages.
Mentions
Une structure mise dans un texte devient sa mention :${user} est <@id>, ${channel} est <#id>, ${role} est <@&id>. Quand vous n’avez qu’un identifiant, utilisez ces fonctions. Elles fabriquent du texte ; Discord le transforme en mention à l’affichage du message.
userMention()
<@USER_ID> : mentionne un utilisateur.
channelMention()
<#CHANNEL_ID> : fait un lien vers un salon.
roleMention()
<@&ROLE_ID> : mentionne un rôle.
commandMention()
</NAME:COMMAND_ID> : une commande slash cliquable. Le nom comprend le groupe et la sous-commande quand il y en a ("foo group bar").
emojiMention()
<:NAME:ID> ou <a:NAME:ID> : un emoji personnalisé.
GuildNavigation
Types de navigation du serveur : des liens vers un onglet du serveur courant. Mettez la valeur telle quelle dans un message.
Documentation de Discord
Dates
timestamp()
<t:TIMESTAMP> ou <t:TIMESTAMP:STYLE> : une date montrée à chaque lecteur dans son fuseau horaire et sa langue. Les horodatages sont exprimés en secondes.
Un number est un nombre de millisecondes depuis l’époque Unix, comme Date.now(). Quelque chose qui n’est pas une date lève une TypeError :
TimestampStyle
Commenttimestamp() est affiché. Sans style, Discord utilise LongDateShortTime.
Documentation de Discord
Identifiants
Snowflake
Un identifiant Discord : un nombre de 64 bits écrit sous forme de chaîne.id en est un, et chaque option qui prend un identifiant prend un Snowflake. C’est du texte parce que le nombre est trop grand pour un number JavaScript : ne le transformez jamais en nombre.
isSnowflake()
snowflakeTimestamp()
(snowflake >> 22) + 1420070400000.
Les structures ont déjà createdAt ; ceci est pour un identifiant seul.
snowflakeFromTimestamp()
before / after de partir d’une date.
RangeError :
Images
ImageOptions
Ce que prend chaque méthode qui se termine parURL : user.avatarURL(), member.avatarURL(), guild.iconURL(), guild.bannerURL(), guild.splashURL(), role.iconURL(), emoji.url()…
Le format du fichier. Par défaut : WebP, que recommande Discord puisqu’il fonctionne pour les images fixes et animées, quoi qui ait été téléversé.
false pour obtenir la première image d’une image animée. Par défaut, une image animée reste animée.- Demander
'gif'pour une image qui n’est pas animée donne un PNG à la place. - Une image animée ne reste animée qu’en WebP (par défaut) ou en GIF ;
animated: falsedonne sa première image. - Une mauvaise valeur lève une
RangeErroravant qu’aucune URL ne soit fabriquée :