reactionAdd tournent. Ici, une réaction donne un rôle :
src/lib/reaction-roles.ts
src/events/roles.ts
guild, et le channel et le member de la réaction, sont toujours là.
Votre fonction reçoit la reaction et le serveur, guild. reaction.emoji est un ReactionEmoji : name est le caractère d’un emoji standard ('👍') ou le nom d’un emoji personnalisé, qui a aussi un id.
Les événements de cette page, avec tout ce qu’ils donnent, sont dans la référence.
Le message lui-même
Une réaction arrive avec l’identifiant de son message, pas avec le message : votre bot ne se souvient d’aucun message, doncmessage est null. Pour lire ou modifier le message, demandez-le avec fetchMessage() :
src/events/star.ts
Réactions retirées
reactionRemove tourne quand quelqu’un retire sa réaction. Discord n’envoie pas le membre avec, donc reaction.member n’est là que quand le bot se souvient de cette personne : demandez-le avec fetchMember().
src/events/roles.ts
reaction.user est toujours là : quand Discord ne donne que l’identifiant de quelqu’un que le bot ne connaît pas, il le demande une fois avant que votre fichier tourne.
reactionClear tourne quand toutes les réactions d’un message sont retirées d’un coup, ou toutes celles d’un emoji : il donne reactions, dont l’emoji vaut null dans le premier cas et cet emoji dans le second.
Options
Les deux options des événements sur les messages fonctionnent de la même façon ici :where: 'dm'ou'both'pour écouter aussi en messages privés. Avec'both',guildvautnullpour une réaction en privé, et un seulif (guild)restreint tout.bots: true(pourreactionAddetreactionRemove) pour recevoir aussi les réactions des bots, le vôtre compris : un fichier qui réagit aux réactions pourrait sinon répondre aux siennes indéfiniment.
src/events/anywhere.ts
Sondages
pollVoteAdd et pollVoteRemove tournent quand quelqu’un vote dans un sondage, ou retire son vote. Ils donnent le vote et le serveur ; vote.answerId dit pour quelle réponse : Discord les numérote dans l’ordre du sondage, 1 pour la première.
src/events/log.ts
where aussi. Un sondage s’envoie avec un message : voir Envoyer des messages.
Saisie
typingStart tourne quand quelqu’un commence à écrire dans un salon. Il donne typing et le serveur ; typing.startedAt dit quand.
src/events/log.ts
where. Discord l’envoie souvent : gardez court ce que fait le fichier.
Intents
Chacun de ces événements a son propre intent, pour les serveurs et pour les messages privés, et ChapterJS ne demande que ceux dont vos fichiers ont besoin : un fichier de réactions sanswhere demande les réactions des serveurs, rien d’autre. Aucun n’est privilégié.
Vocal
Qui rejoint, quitte ou change de salon vocal.
Référence des événements
Chaque champ de chaque événement.