#javascript-typescript

1 messages · Page 64 of 1

keen narwhal
#

j'aime la v12 đŸ„Č

timid loom
#

c'est pas la v12 lĂ  c'est un tout autre truc

keen narwhal
#

Yo, si j'étais toi je pense que j'aurais fait quelque chose à peu prÚs comme ça,

tu fetch le message, ensuite tu prends la réaction qui t'intéresses genre
<message>.reactions.cache.get("🎉")

aprÚs tu prends les users de la réaction avec .users.cache
et tu rajoutes un petit .random() Ă  la fin

#

oui mais avant l'arrivĂ©e de la v12 j'avais beaucoup moins de problĂšmes đŸ„Č

keen narwhal
#

AH

#

et y'a pas eu d'erreur ?

timid loom
#

si
la reaction est undefined

keen narwhal
#

đŸ€”

timid loom
#

d'oĂč le fait que je lui demande de vĂ©rifier que tout est effectivement en cache

#

aprĂšs @dark folio je t'avoue que normalement si ce que tu log c'est toujours pareil normalement c'est bon quoi

dark folio
#

Je vais essayer mais je crois que quand je fais ça, les accolades sont vide :/

timid loom
#

donc c'est effectivement un problĂšme de cache

keen narwhal
#

whaaat trop chelou

timid loom
#

je t'avoue que tout ce qui est cache depuis la v12 c'est devenu obscur mais essaie de voir du cÎté des partials etc

keen narwhal
#

t'as vérifié que t'avais bien les intents activés ? (j'ai pas lu tous les mess plus haut)

#

oe mais nan

timid loom
#

c'est quoi ton code lĂ  maintenant tout de suite @dark folio ?

dark folio
#

Je viens de tester de le mettre direct dans le ready pour pas m'embĂȘter Ă  noter la cmd mtn j'ai un long truc :

0|index  |   '👍' => MessageReaction {
0|index  |     message:
0|index  |      Message {
0|index  |        channel: [TextChannel],
0|index  |        deleted: false,
0|index  |        id: '786209258013327410',
0|index  |        type: 'DEFAULT',
0|index  |        system: false,
0|index  |        content: 'Coucouuuuuu',
0|index  |        author: [User],
0|index  |        pinned: false,
0|index  |        tts: false,
0|index  |        nonce: null,
0|index  |        embeds: [],
0|index  |        attachments: Collection [Map] {},
0|index  |        createdTimestamp: 1607517294172,
0|index  |        editedTimestamp: 0,
0|index  |        reactions: [ReactionManager],
0|index  |        mentions: [MessageMentions],
0|index  |        webhookID: null,
0|index  |        application: null,
0|index  |        activity: null,
0|index  |        _edits: [],
0|index  |        flags: [MessageFlags],
0|index  |        reference: null },
0|index  |     me: true,
0|index  |     users:
0|index  |      ReactionUserManager {
0|index  |        cacheType: [Function: Collection],
0|index  |        cache: Collection [Map] {},
0|index  |        reaction: [Circular] },
0|index  |     _emoji:
0|index  |      ReactionEmoji {
0|index  |        animated: undefined,
0|index  |        name: '👍',
0|index  |        id: null,
0|index  |        deleted: false,
0|index  |        reaction: [Circular] },
0|index  |     count: 2 } }

Le code :

client.channels.cache.get("776414285088686090").messages.fetch("786209258013327410").then(message => { 
     let reaction = message.reactions.cache;
     console.log(reaction);
});
#

Je sais pas si c'est de ça que tu parlais ? 😬

timid loom
#

ouais ok

#

donc lĂ  t'as rĂ©agi deux fois avec 👍

dark folio
#

Y'a le bot et moi

timid loom
#

en relançant le bot ça reste, on est d'accord?

dark folio
#

Ouep

timid loom
#

ok

#

du coup essaie de faire reactions.users.fetch().random()

#

hésite pas à jouer avec les options pour voir

dark folio
#
0|index  | TypeError: Cannot read property 'fetch' of undefined
0|index  |     at client.channels.cache.get.messages.fetch.then.message (/home/bot/moonlight/index.js:22:48)
0|index  |     at process._tickCallback (internal/process/next_tick.js:68:7)
#

Je vais essayer de voir, avec mon niveau cdrole

keen narwhal
#

nah tu peux pas fetch des users

timid loom
#

cache.get.messages ça existe pas

keen narwhal
#

effectivement

#

ah si c'était un channel

timid loom
boreal edge
#

client.channels.cache.get("<channelid>").messages.fetch()

keen narwhal
#

nan fin, tu peux get des users depuis le cache mais pas en fetch
j'ai pas ultra bien compris pourquoi y'avait que les messages qu'on pouvait fetch et cache.get

timid loom
peak cedar
#

slt

#

j'ai une erreur d que qq'un join

#

bot.on("guildMemberAdd", member => {

if (bdd["message-bienvenue"]) {

// member.send(`Bienvenue sur le serveur ${member.user.username}!`)
// bot.channels.cache.get('772177055123111967').send(`Bienvenue sur le serveur ${member.user.username}!`);
guild.channels.get('772177055123111967').send(bdd["message-bienvenue"]);

}
else {
guild.channels.get('772177055123111967').send("Bienvenue sur le serveur !");

}
member.roles.add('772432382711431199');

})

cyan iron
#

Met en forme ton code s'il te plaĂźt

peak cedar
ancient sonnetBOT
#

Pour envoyer un message avec un code il vous suffit d'entourer votre message de ceci : ```. Ainsi, pour poster votre code dans un message, vous devez faire comme ceci :

```langage
Votre code
```
Et par exemple pour un code en lua :
```lua
print("hello")
```

Le résultat sera le suivant :
Votre code
Et par exemple pour un code en lua :

print("hello")```
peak cedar
#

j'ai oublie 😱

#
bot.on("guildMemberAdd", member => {

  if (bdd["message-bienvenue"]) {

    // member.send(Bienvenue sur le serveur ${member.user.username}!)
    // bot.channels.cache.get('772177055123111967').send(Bienvenue sur le serveur ${member.user.username}!);
    guild.channels.get('772177055123111967').send(bdd["message-bienvenue"]);
  }
  else {
    guild.channels.get('772177055123111967').send("Bienvenue sur le serveur !");

  }
  member.roles.add('772432382711431199');

})
cyan iron
#

Qui est le héros qui a fait la commande

peak cedar
cyan iron
#

C'est quoi l'erreur ?

peak cedar
cyan iron
#

T'es pas obligé

#

Tu peux faire un client.emit

#

client.emit("guildMemberAdd", member)

#

Je vois ton erreur déjà pas besoin de me montrer

peak cedar
#

ah

cyan iron
#

Cannot read proprety message-bienvenue of undefined

#

Normalement

keen narwhal
#

et non

#

c'est le cache.get

cyan iron
#

Non

#

Avant y'a le bdd

peak cedar
#

WOW STOP je VAIS PLUS COMPREND RIEN 😂

keen narwhal
#

lmao

cyan iron
#

😂

peak cedar
#

enfaite je serais pas l'erreur ?

#

😂

slim anvil
#

Je suis le héros en question

keen narwhal
cyan iron
#

Exécute le programme qu'on soit fixé

cyan iron
peak cedar
#

ah le fd* il me met pas d'erreur

keen narwhal
#

ptdr

peak cedar
#

mais en revanche il ME FAIT PAS LE MSG 😂

keen narwhal
#

pas normal

cyan iron
#

Bah alors pourquoi tu viens 😂

cyan iron
#

Ah !

peak cedar
#

😂

cyan iron
#

T'as défini bdd ?

#

Parce que je le vois pas

peak cedar
cyan iron
#

Oui et ?

peak cedar
#

bas c tout

cyan iron
#

Mais lĂ  si tu met rien dedans c'est inutile

peak cedar
#

si il ecrit la

#

🙂

cyan iron
#

Si tu cache je vais rien voir mdrtkon

peak cedar
#

c mon id

keen narwhal
peak cedar
#

juste 🙂

keen narwhal
#

mais lmao

cyan iron
#

Mais t'es bĂȘte

peak cedar
#

OUI

cyan iron
#

Mais

keen narwhal
#

476340979209863178

#

ptdr

peak cedar
#

268105720497569802

cyan iron
#

Bon je vais me suicider je reviens

peak cedar
#

🙂

keen narwhal
#

a toute

peak cedar
#

😂

cyan iron
#

476340979209863178

peak cedar
#

mais engros sa logs dans un JSON c tout

cyan iron
#

Par contre tu sais pas copier un identifiant

peak cedar
#

et apres les : c le nombre de warn

keen narwhal
#

il a copité le mien kapp

peak cedar
#

ON PEUX maider SVPPPPPP 😱

#

😂

cyan iron
#

Oui je viens de vérifier mdr

cyan iron
cyan iron
#

Non je plaisante

keen narwhal
#

essaie de catch l'erreur

cyan iron
#

Met des console log

peak cedar
#

ou ,

cyan iron
#

Faudrait que je me fasse certifier par GCA en tant que dev bot

cyan iron
peak cedar
#

bON JE PEUX TAVOUER UN TRUC ?

keen narwhal
#

ui

cyan iron
#

Pour voir si il rentre dans la boucle

peak cedar
#

😭

cyan iron
#

Attends non

cyan iron
#

Je pense que ça va ĂȘtre passible de meurtre

peak cedar
#

qWOW

keen narwhal
#

t'as soit

try {
//ton code genre console.log()
} catch(error) {
//ton code genre console.log(error)
}

soit

<ton code>.catch(err => {})
cyan iron
#

console.log("ton message")

cyan iron
#

C'est pas si simple que ça

keen narwhal
#

ui

#

tu peux pas mettre de catch partout

cyan iron
#

'c'est pas soit l'un soit l'autre il faut l'utiliser dans des cas précis

#

Oui

#

Par exemple par sécurité tu peux déjà entourer ton fichier commande par un try catch

#

Mais passons

#

Fait juste des console log

peak cedar
#

MDRRR

keen narwhal
#

i:l est fou

peak cedar
keen narwhal
cyan iron
#

Je vais pas te contredire désolé

keen narwhal
#

xD

cyan iron
#

Mais réfléchis juste

#

Je vais pas non plus te pondre un bot

peak cedar
#

OK BON JAI UNE IDEE

#

CTRL A PLUS SUPPRRR

#

et hop un prob de regler 😂

cyan iron
#

Ne pas parler en majuscules

#

Ah ok

#

Je croyais

peak cedar
#

@cyan iron je refait un code

#

j'ai une ERRREUR BRUUHHHH

#

bot.on("guildMemberAdd", async member => {
let bienvenue = bot.guilds.cache.get("743145379721248799").channels.cache.get("743148918384230450")
bienvenue.send(Bienvenue a toi ! ${member})

let embed = new Discord.MessageEmbed()
.setTitle("Salut a toi " +member)
bienvenue.send(embed)
})

#

c quoi l'err ?

ancient sonnetBOT
#

Pour envoyer un message avec un code il vous suffit d'entourer votre message de ceci : ```. Ainsi, pour poster votre code dans un message, vous devez faire comme ceci :

```langage
Votre code
```
Et par exemple pour un code en lua :
```lua
print("hello")
```

Le résultat sera le suivant :
Votre code
Et par exemple pour un code en lua :

print("hello")```
cyan iron
peak cedar
#

bot.on("guildMemberAdd", async member => {
  let bienvenue = bot.guilds.cache.get("743145379721248799").channels.cache.get("743148918384230450")
  bienvenue.send(`Bienvenue a toi ! ${member}`)

  let embed = new Discord.MessageEmbed()
  .setTitle("Salut a toi " +member)
  bienvenue.send(embed)
})

#

voila

cyan iron
#

Quelle est l'erreur ?

peak cedar
#

(node:8616) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'get' of undefined
at Client.<anonymous> (c:\Users\Hugo\Desktop\discordbothugo\index.js:111:36)
at Client.emit (events.js:315:20)
at Guild._addMember (c:\Users\Hugo\Desktop\discordbothugo\node_modules\discord.js\src\structures\Guild.js:1542:19)
at GuildMemberAddHandler.handle (c:\Users\Hugo\Desktop\discordbothugo\node_modules\discord.js\src\client\websocket\packets\handlers\GuildMemberAdd.js:12:13)
at WebSocketPacketManager.handle (c:\Users\Hugo\Desktop\discordbothugo\node_modules\discord.js\src\client\websocket\packets\WebSocketPacketManager.js:108:65)
at WebSocketConnection.onPacket (c:\Users\Hugo\Desktop\discordbothugo\node_modules\discord.js\src\client\websocket\WebSocketConnection.js:336:35)
at WebSocketConnection.onMessage (c:\Users\Hugo\Desktop\discordbothugo\node_modules\discord.js\src\client\websocket\WebSocketConnection.js:299:17)
at WebSocket.onMessage (c:\Users\Hugo\Desktop\discordbothugo\node_modules\ws\lib\event-target.js:120:16)
at WebSocket.emit (events.js:315:20)
at Receiver.receiverOnMessage (c:\Users\Hugo\Desktop\discordbothugo\node_modules\ws\lib\websocket.js:789:20)
<node_internals>/internal/process/warning.js:32

cyan iron
#

Tu n'as pas donné le bon ID

#

De serveur

peak cedar
#

a ouais

#

jeviens de comprendre

#

😂

#

chui con aussi ptn srx quoi

cyan iron
slim anvil
#

Non il aurait mĂȘme pas l’évent de trigger je crois

cyan iron
#

C'est Ă  dire Enzo ?

keen narwhal
#

l'event s'activerait pas

#

ne serait pas reconnu plutĂŽt*

slim anvil
peak cedar
#

ahahahha

#

😂

#

mdrrrr

#

ok et j'ai une question les ami

#

surtout au HERO DU MONDE

#

@slim anvil

#

Ont peux faire quoi avec un local host comme sa

keen narwhal
#

c'est Ă  dire

cyan iron
#

Roh ça va hein 😂

keen narwhal
#

aaah

peak cedar
#

sa peux servire a quoi ?

timid loom
#

bah héberger localement un serveur

#

donc sur ta machine

#

voilĂ 

peak cedar
timid loom
#

pas besoin de se connecter Ă  internet

keen narwhal
#

aprĂšs ca a pas l'air super fifou

timid loom
#

oui oui

peak cedar
#

j'ai mon hebergement donc ......

timid loom
#

bah globalement héberger en local c'est utile pour le développement

#

aprĂšs tu peux te faire des applications web mais soyons honnĂȘtes autant faire une "vraie" application

bright pecan
#

Hello, vous savez pourquoi mon message ne veux pas s'envoyer, aucune erreur n'est dĂ©tectĂ© mĂȘme quand la personne join le discord

slim anvil
#

tes intents sont bien activés ?

bright pecan
#

Ouep

keen narwhal
#

client.channel

#

emplace par channels

slim anvil
#

Ouep en faite par exemple pour résoudre ce genre de bug typiquement juste mettre des logs 1.2,3 un peu partout, tu dois ttpiquement pas avoir de channel donc il return

bright pecan
#

Une personne précise, mais intégré au message

keen narwhal
#

pas compris

bright pecan
#

Je voudrait mentionner une personne via un ID sauf que je trouve pas la solution

#

Un peu comme sa @bright pecan

#

Ou du coup <@!id>

keen narwhal
bright pecan
#

Ouais mais l'id du mec je le met oĂč ? x)

keen narwhal
#

dans ton code

mets

<embed>.addField(`<@!${message.author.id}> `)
#

et tu remplaces message.author par la personne que tu vises

genre si tu veux le membre
tu mets message.member

bright pecan
#

Ouep sauf que la mention ne doit mention l'auteur mais une personne en particulier

keen narwhal
#

faut que tu définisses la personne au départ

keen narwhal
#

Ok yo, y'a moyen de faire apparaitre des caractÚres spéciaux avec canvas ?

#

j'ai fais une rank card, qui est magnifique lol, et genre
j'aimerai pouvoir afficher ce pseudo: "đ“Źđ“»đ“Čđ“Œđ“œđ“șđ“”đ“Čđ“·đ“ź"!

timid loom
#

bah teste? đŸ€”

#

normalement oui cela dit

keen narwhal
#

oe j'ai testé mais ca renvoit des points d'interrogation entourés d'un carré

timid loom
keen narwhal
#

oh

timid loom
#
ctx.font = "48px serif";
ctx.textBaseline = "hanging";
ctx.strokeText("đ“Źđ“»đ“Čđ“Œđ“œđ“șđ“”đ“Čđ“·đ“ź", 0, 100);
#

ça ça fonctionne

keen narwhal
#

K je test thx

timid loom
#

tu peux filltext Ă  la place mais le principe est le mĂȘme

indigo remnant
#

Salut, comment je pourrais afficher un resultat d'une fonction JS vers un élément HTML svp ? merci

slim anvil
#

tu récupÚres ton élément et tu innerHTML par exemple

#

Je te laisse regarder mais c’est document.getElementById ou querySelector, tu en as plusieurs

indigo remnant
#

ok merci

keen narwhal
slim anvil
#

Tu peux juste ping le serveur de chaque site et voir le retour que tu as pour savoir si c’est on ou off

keen narwhal
#

ça va ĂȘtre un code erreur je suppose , pour le website un 404 ou un 502 example

#

(je connais pas vraiment les erreurs ^^)

#

Et pour faire une auto actualisation ?

#

Ptetre des intervalles

slim anvil
#

Tu peux faire des intervalles oui sauf si tu veux faire juste à heure fixe ce sera différemment

#

Et oui en gros Keysex tu peux juste faire un .catch pour savoir si c’est une erreur par exemple

indigo remnant
#

qu'est ce que catch ?

slim anvil
#
indigo remnant
#

thx

night crane
slim anvil
#

Ce que tu as envie du coup @night crane

keen narwhal
night crane
indigo remnant
#

Discord.RichEmbed();

#

je crois

slim anvil
#

car tu as fais client.&!

#

.on

keen narwhal
#

MessageEmbed*

slim anvil
#

Alors que c’est bot.on

#

dans ton deuxiÚme évent

night crane
#

Je me disais merci

indigo remnant
#

ah bah t'as déjà defini embed

slim anvil
#

si tu as pas d’embed à envoyer tu peux supprimer ta constante

night crane
#

ça fonctionne

night crane
#

Ah bah j'ai un soucis lol

#

quand je fait ma commande, mon embed apparaĂźt en deux fois

keen narwhal
#

Montre ton code et assure toi de fermer tous les terminales

plain crystal
night crane
#

Excusée moi j'ai complétement oublie de re venir ici, @keen narwhal @plain crystal
Aucun soucis juste un bug

keen narwhal
#

t'as peut ĂȘtre double cliquĂ© sur "run"

night crane
#

Pas impossible

floral bolt
#

salut, je cherche a savoir si un joueur a déjà invité quelqu'un sur mon serveur

keen narwhal
#

fetch les invites ou alors utilise une db

plain crystal
#

Salut des gens s'y connaissent en ejs ?
Car j'aimerai récupérer une variable envoyé depuis mon code serveur :

res.render('pages/index', {names: body.values});

et dans mon code client :

<%
    const names = <%=names%>;
    for (let i = 0; i < names.length; i++) {
%>
<tr>
    <th scope="row"><%=i+1%></th>
    <td><%=names[i]%></td>
</tr>
<%
    }
%>

sauf que ça ne fonctionne pas :c

#
Error: Could not find matching close tag for "<%".
peak cedar
#

J'ai un provb

#

c quoi l'erreur ,

#

??????

#

OSSSSMIUMMM

#

😂

#

ah bas c bon 😂

slim anvil
#

Tu veux pas te débrouiller un peu tout seul ?

#

Pour ce genre d’erreur ??

#

Suffit de lire ton erreur, de regarder la ligne et tu trouveras tout seul tu verras

keen narwhal
slim anvil
#

@plain crystal jamais fais de templating en EJS sorry, mais essaye juste de t’installer un Plugin il pourra, je pense, t’aider à t’indiquer une mauvaise fermeture ou autre

keen narwhal
#
let object = ["⛰" , "✂", "đŸ§»"]
let calcul = Math.floor((Math.random() * object.length))

Une idée pourquoi les calcules ne marche pas ?

oak turret
#

tu log rien

#

là ça va juste te return 0 1 ou 2

boreal edge
#

Math.random(0, object.length - 1)

#

Je penses

oak turret
#

non mais tu veux faire quoi avec ton code ? @keen narwhal

#

ah mais

#

Math.floor(Math.random() * object.length);

#

j’vois pas pourquoi tu l’as foutu entre ()

spring dock
#

ça change rien les parenthÚses en plus

oak turret
#

on sait jamais, je vois pas Ă  quoi elles servent non plus

spring dock
#

oui elles servent à rien clairement mais c'est pas ça qui va changer le fait que son truc fonctionne ou pas

#

mais keysex ton truc fonctionne la normalement hein

slim anvil
#

Pour de la priorité de calcul mais là pas utile

oak turret
#

j’imagine, et ouais

timid loom
#

aprĂšs si tu veux avoir un truc qui peut ĂȘtre calculĂ© plusieurs fois il faut que tu fasse une fonction

#

mais bon bah ton code il fonctionne quoi

slim anvil
#

Trop fort @timid loom đŸ„°đŸ„°

keen narwhal
#

Je vais voir pour faire une fonction

stone ruin
#

Bonjour tout le monde ,
je crée mon bot discord et je voudrais que une fois ma commande executé il upload lui meme le fichier requis sur ce site , est-ce faisable d'aprÚs vous ?

#

Je sait que je peux le faire cliquer sur le boutton submit , mais je ne sait pas si je peux le faire upload a ma place

keen narwhal
#

c'est une image ? @RĂŻma#1921

keen narwhal
#

Yo les gars, j'ai une erreur de voice je vous mets le code ci dessous :

#
const { channel } = message.member.voice; ```
#

sur ça

#

Cannot read property 'voice' of undefined

slim anvil
#

le member existe pas console.log pour voir ce que tu reçois

cyan iron
#

C'est bizarre ça 02think

#

Il n'a pas défini correctement message, y'a que ça

keen narwhal
#

Bah y'a que voice qui pose problĂšme

#

Mais faut que je définisse ce que c'est comme channel fin dans message.js

#

Parce que mĂȘme en dĂ©clarant member ça marche pas tjr la mĂȘme chose

cyan iron
#

Non il ne faut pas déclarer member

#

Console log message

#

C'est tout

keen narwhal
#

Cannot read property 'voice' of undefined

#

Toujours la mĂȘme erreur

cyan iron
#

Console log message

keen narwhal
#

Bah je l'ai mis

cyan iron
#

Bah ça donne quoi ?

slim anvil
#

Aprùs faut qu’il soit en voice, car sinon ton channel ne passera pas non plus
Ce code la c’est suite Ă  une commande ? Ou dans l’évent voiceStateUpdate ?

keen narwhal
cyan iron
#

...

slim anvil
#

Oui mais console log avant

#

sinon oui tu as l’erreur

keen narwhal
cyan iron
#

Il faut que tu le mette avant

keen narwhal
#

genre

#

console.log(message etcc )

cyan iron
#

Mais non

#

Tu met d'abord le console log

#

Avant de définir channel

keen narwhal
#

Ah

#

Bah la j'ai un message de 3 km

#

xD

cyan iron
#

Qui est ?

keen narwhal
#

celui ci @cyan iron

cyan iron
#

Client

#

Oh mon Dieu supprime

keen narwhal
#

VoilĂ 

#

Je sais pas ce qu'il se passe

cyan iron
#

C'est client que tu utilises

#

Tu as exporté client au lieu de message

keen narwhal
#

Yep

#

Wait je reviens dans 1/2h

oak turret
#

t’as le badge dev bot sĂ©rieux ?

cyan iron
#

Oui lmao

keen narwhal
#

peut ĂȘtre qu'il a participĂ© Ă  un projet đŸ€·â€â™‚ïž

dire latch
#

@keen narwhal Tu as trouver ?

keen narwhal
dire latch
#

Qui a le badge dev bot ? đŸ€”

keen narwhal
#

Ils ont retirĂ© le fait de pouvoir l'attribuer avant mĂȘme que je me mette Ă  coder ;-;

#

@dire latch Yep j'ai trouvé

dire latch
#

Ok @keen narwhal

keen narwhal
#

Juste que j'ai eu ma vérification en python

#

Et que je me suis mis au js

#

@cyan iron je l'ai eu sur python

cyan iron
#

Ok

robust minnow
#

quelqu'un pourrait m'aider en vocal ou écrit sur mon script de bot svp, merci d'avance ;
pour cette erreur:

at Function.Module._resolveFilename (internal/modules/cjs/loader.js:880:15)
at Function.Module._load (internal/modules/cjs/loader.js:725:27)
at Module.require (internal/modules/cjs/loader.js:952:19)
at require (internal/modules/cjs/helpers.js:88:18)
at C:\Users\kakarotto\Desktop\Seleria BOT\index.js:15:25
at Array.forEach (<anonymous>)
at C:\Users\kakarotto\Desktop\Seleria BOT\index.js:13:11
at FSReqCallback.oncomplete (fs.js:171:23) {

code: 'MODULE_NOT_FOUND',
requireStack: [ 'C:\Users\kakarotto\Desktop\Seleria BOT\index.js' ]
}

boreal edge
#

Tu exécutes un fichier qui n'existes pas

#

Ou tu fais un require sur quelque chose qui n'existe pas

robust minnow
#

nn regarde att

#

mon fichier commande et le package avec le config.js

keen narwhal
#

@robust minnow Ton problÚme a été réglé ?

robust minnow
#

non, j'y arrive pas

keen narwhal
#

Envoie toute l'erreur

robust minnow
#

internal/modules/cjs/loader.js:883
throw err;
^

Error: Cannot find module './commands/${file}'
Require stack:

  • C:\Users\kakarotto\Desktop\Seleria BOT\index.js
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:880:15)
    at Function.Module._load (internal/modules/cjs/loader.js:725:27)
    at Module.require (internal/modules/cjs/loader.js:952:19)
    at require (internal/modules/cjs/helpers.js:88:18)
    at C:\Users\kakarotto\Desktop\Seleria BOT\index.js:15:25
    at Array.forEach (<anonymous>)
    at C:\Users\kakarotto\Desktop\Seleria BOT\index.js:13:11
    at FSReqCallback.oncomplete (fs.js:171:23) {
    code: 'MODULE_NOT_FOUND',
    requireStack: [ 'C:\Users\kakarotto\Desktop\Seleria BOT\index.js' ]
    }
keen narwhal
#

Envoie le code de l'index @robust minnow

robust minnow
#
    client = new Discord.Client({
        fetchAllMembers : true
    }),
    config = require('./config.json')
    fs = require('fs')

client.login(config.token)
client.commands = new Discord.Collection()

fs.readdir('./commands', (err, files) => {
    if (err) throw err
    files.forEach(file => {
        if (!file.endsWith('.js')) return
        const command = require('./commands/${file}')
        client.comamnds.set (commands.name, commands)
    })
})

client.on('message', message => {
    if (message.type !== 'DEFAULT' || message.author.bot) return

    const args = message.content.trim().split(/ +/g)
    const commandName = args.shift().toLowerCase()
    if (!commandName.startsWith(config.prefix)) return
    const command = client.commands.get(commandName.silice(config.prefix.length))
    if (!command) return
    command.run(message, args, client
        )
})```
ancient sonnetBOT
#

Pour envoyer un message avec un code il vous suffit d'entourer votre message de ceci : ```. Ainsi, pour poster votre code dans un message, vous devez faire comme ceci :

```langage
Votre code
```
Et par exemple pour un code en lua :
```lua
print("hello")
```

Le résultat sera le suivant :
Votre code
Et par exemple pour un code en lua :

print("hello")```
robust minnow
#

bv

keen narwhal
#
const Discord = require('discord.js'),
    client = new Discord.Client({
        fetchAllMembers : true
    }),
    config = require('./config.json')
    fs = require('fs')

client.login(config.token)
client.commands = new Discord.Collection()

fs.readdir('./commands', (err, files) => {
    if (err) throw err
    files.forEach(file => {
        if (!file.endsWith('.js')) return
        const command = require(`./commands/${file}`)
        client.comamnds.set (commands.name, commands)
    })
})

client.on('message', message => {
    if (message.type !== 'DEFAULT' || message.author.bot) return

    const args = message.content.trim().split(/ +/g)
    const commandName = args.shift().toLowerCase()
    if (!commandName.startsWith(config.prefix)) return
    const command = client.commands.get(commandName.silice(config.prefix.length))
    if (!command) return
    command.run(message, args, client)
}) ```
robust minnow
#

tu as réussi ?

keen narwhal
#

yep

#

test ça

robust minnow
#

j'ai encore cette erreur

timid loom
#

client.*comamnds doit pas exister Ă  mon avis
c'est client.commands que tu veux

cyan iron
#

Mdrrr

keen narwhal
#

Ca fait quoi .silice() ?

cyan iron
#

Non il n'a pas osé

#

Ah bah si 😂

slim anvil
#

Ça va @cyan iron j’ai l’impression quand tu parles que tu fais 0 erreur et que quand tu as dĂ©butĂ©s tu faisais tout parfaitement

#

Y a 0 objectivité à avoir ce genre de réponse

keen narwhal
#

Javais pas compris son message :kappo: :kappo:

Sur le coup jcroyais vraiment que cetait une fonction en javascript que je ne connaissais pas bruh :sue:

#

Eh les emojis lĂ 

cyan iron
#

Non mais Enzo moi quand je faisait des erreurs j'essayer de chercher...

#

Je veux bien mais la..

bright pecan
#

C'est .slice normalement @keen narwhal mdr

keen narwhal
#

Et askip ya aussi un .splice

bright pecan
#

Mdr

slim anvil
#

Oui y a aussi

#

oui peut ĂȘtre wailrone mais c’est pas parce que aujourd’hui tu sais faire un bot qu’il faut prendre les autres de haut en se moquant des diffĂ©rentes erreurs

#

Pour rappel y a rien de compliqué à faire un bot, donc pas besoin de se prendre pour un autre je te rassure

cyan iron
#

J'ai pas dit que c'etait compliqué

#

Justement

#

J'ai envie de dire Ă  partir du moment oĂč tu fait une faute de frappe, ok pourquoi pas, mais quand tu vois l'erreur il faut la lire un minimum quoi..

#

Surtout que c'est écrit en gros on voit que ça la faute de frappe tu lis la premiÚre ligne c'est fini

boreal edge
#

Peut ĂȘtre, mais au dĂ©but, on ne sait pas forcĂ©ment lire et comprendre une erreur

cyan iron
#

-_-

boreal edge
#

Et dit pas qu'il y a un minimum car au début, tu n'as rien, aucune connaisance

#

Et tu apprends sur le tas pour la plupart

slim anvil
#

Exactement, les erreurs te paraissent logique aujourd’hui mais pas forcĂ©ment dĂšs le dĂ©but, chacun avance Ă  sa maniĂšre
Si ça t’agace il y a 0 soucis, ne rĂ©pond juste pas Ă  ce genre d’aide laisse faire ceux qui ont plus de patiences

cyan iron
#

Ok

oak turret
#

On a tous dĂ©buter, oublie pas, j’ai vu un truc assez marrant la derniĂšre fois, deux screens de google oĂč y avait Ă©cris « how to get date in javascript » et les deux intitulĂ©s Ă©taient « Junior developer » « Senior developer », comme quoi mĂȘme les trucs les plus cons, qu’importe son niveau on fait les mĂȘme erreurs et recherches

keen narwhal
#

j'av

#

perso ça fait 2 ans que je m'intéresse de prÚs à la création de bot et j'oublie encore souvent des parenthÚses ou autres futilités

keen narwhal
#

Hey, quelqu'un sait comment je peux faire un bouton ou quand on clic sa télécharge un .txt avec le contenu qui a été mis précedemment ?

oak turret
#

précédemment ?

keen narwhal
#

en gros dans une zone de texte j'écris coucou

#

quand je vais cliquer sur le bouton

#

sa va me download un .txt avec écris coucou dedans

oak turret
#

aaah

keen narwhal
#

tu sais ?

oak turret
#

j'vais look ça et je reviens vers toi

boreal edge
#

Peut ĂȘtre ?

keen narwhal
#

je regarde

#

yep c sa merci

oak turret
sand shore
#

Salut vous savez si ça marche en js svp ? ```javascript
let himsg = ['Salut', 'Slt', 'Hi', 'Hey'];

starling.on('ready', () => {
console.log('${client.user.tag} est en ligne !');
})

starling.on('message', msg => {
if (msg.content === himsg) {
print('cc');
}
});```

#

je pense pas mais je sais pas comment faire :/

slim anvil
#

Ton msg.content === himmsg sera pas bon

#

Tu dois regarder sur himsg.includes(msg.content)

#

et c’est console.log() pas print

sand shore
#

ah ué j'avais zappé mdrr, mercii

sand shore
#

quelqu'un sais comment je peux définir member svp ?

starling.on('message', msg => {
    if (himsg.includes(msg.content)) {
        msg.react('👋')
    }

    if (!msg.content.startsWith(prefix) || msg.author.bot) return;

    const args = msg.content.slice(prefix.length).trim().split(' ');
    const command = args.shift().toLowerCase()


    if (command === 'say') {
        if (!member.roles.cache.some(role => permissions_say.includes(roleid))) {
        return msg.channel.send("Vous n'avez pas les permissions pour faire cela !");
         }
         msg.channel.send(args);
    }

});```j'ai regarder la doc pour get le role d'une personne, mais on me dit que member est pas défini (https://discordjs.guide/popular-topics/permissions.html)
queen ocean
#

Pour dĂ©clarer une variable member tu vas devoir partir de ton msg, avec msg.author.id tu peux avoir l'id de celui qui a envoyĂ© le msg pour ensuite venir fetch les membres de ta guild et trouver parmi eux celui qui a le mĂȘme ID

sand shore
#

Ahhhhhh okkkk merci !

#

je croyais fallais définir une variable spécifique pour member, genre un truc de base qui get le membre xD

floral bolt
#

salut, je cherche a recup la couleur du role du joueur

oak turret
#

essaye de get un user

#

regarde je crois que y a un truc « roles » et dedans l’id, le name etc

#

look ça

cyan iron
#

C'est dans members

#

Tu prend le message.member.roles

zealous needle
#

j'ai crée un projet avec npm, ajouté en dépendance https://github.com/leops/fgdparser , mais ensuite faut faire quoi pour exécuter test.js dans la dépendance ?

#

j'ai essayé de l'ajouter dans une page html, comme un script normal, mais bon une erreur apparait donc je suppose c'est pas la bonne technique

peak cedar
#

slt sa existe un bot question reponse genre il demande:

Bot:"Comment vous allez"
Moi:"Oui"
Bot:"Nikel alors "

#

juste un system comme sa ?

#

sa existe ?

slim anvil
peak cedar
#

oula

oak turret
#

c’est ce que j’utilise

#

moi j’use discord js prompter

peak cedar
#

je peux faire quoi pour ping le gars avec sa

#

?

crystal briar
#

tu mets message.reply

oak turret
#

non

#

ça va mentionner celui a fait le message

#

en l’occurence c’est pas une commande user si ?

#

c’est un admin qui doit la faire?

peak cedar
#

@oak turret

oak turret
#

bah tout simple

#

le mec que tu mentionnes pour la commande

#

bah tu le rajoutes dans ton message

#

pour mentionner quelqu'un, tu fais fais bien message.mentions.first() un truc comme ça je sais plus exactement

keen narwhal
#

Bonjour on ma dit d'utiliser le collector pour faire marcher mes émojis et faire changer les embeds bah je galÚre un peu et j'aimerai savoir ce qu'il y a changer dedans svp

#

ca dépend de ce que tu mentionnes

si cest un membre => message.mentions.members.first()

si cest un channel
message.mentions.channels.first()
etc

dapper coral
#

Bonjour savez vous comment je peut faire en sorte de n'envoyée qu'une seule fois un message dans une boucle ?

#

faudrais genre faire une boucle dans une boucle ?

keen narwhal
#

Avec une val et une condition ?

dapper coral
#

Non c'est bon j'ai reussi merci 😉

keen narwhal
#

Okk, je dĂ©bute dans html/css/php/js donc je ne sais pas si il y a des fonctions spĂ©cifiques, si tu rĂ©ussis les trucs que tu arrives pas, hĂ©site pas Ă  me les partager ici si t'en as envie 😉

bright pecan
#

Hello, vous savez comment je pourrait faire un embed Ă  chaque boost d'un joueur ? car j'ai trouver un code qui utilise le fait chercher le rĂŽle nitro booster, mais ce n'est pas se que je cherche

glossy coral
#

@bright pecan il existe un module j'essaye de le retrouver

spring dock
#

Au guildMemberUpdate, tu regarde si il a un nouveau role booster

#

en comparant l’argument old et le new

glossy coral
#

Ça s'appelle discord-logs

keen narwhal
#

ptdr

glossy coral
#

La doc est dispo sur le site npm

#

@keen narwhal oh coucou toi

slim anvil
#

Autant le faire avec l’évent comme le dit bob

#

Pas grand intĂ©rĂȘt de prendre un module pour si peu

keen narwhal
#

il sert à rien discord-logs ;-; c'est juste les events en plus simplifiés, alors que les events sont déjà trÚs simples

bright pecan
slim anvil
#

Tu dĂ©clares 2 fois la mĂȘme constante pour commencer donc ce sera pas bon

spring dock
#

c’est pas la meme

#

c’est boostUsrr et boostedUsrr

#

enfin un truc comme ça

glossy coral
#

Deux lettres prĂšs ptdr

spring dock
#

j’ai ratĂ© 2 fois le e la quand mĂȘme

bright pecan
#

Ouep, la premiÚre get si il a déjà le rÎle avant le boost et le deuxiÚme regarde si il a actuellement le rÎle

slim anvil
#

Ah oui c’est has et had autant pour moi

#

Du coup ça me parait bon, maintenant pour tester fait le avec un autre rÎle et met le toi et enlÚve le toi pour voir tout simplement

bright pecan
#

Ouep pas bĂȘte

spring dock
#

ah oui y avait elle aussi

#

et go faire avec l’id et pas le nom du role comme ça si un jour le nom du role change bah y a pas besoin de repasser dans le code

#

no?

slim anvil
#

Yess

bright pecan
#

Ouep justement c'est se que je fait mais pour l'instant sa marche po kappa

glossy coral
#

@bright pecan erreur ?

bright pecan
#

Aucune justement

slim anvil
#

Tes console.log passent ?

bright pecan
#

Nop

slim anvil
#

Le guildMemberUpdate est concerné par les intents ou pas ? Si oui, tu les as activés ?

night crane
#

Hello les bg, j'aimerais bien me lancer dans un bot Musique mais je vois aucun vrai tuto un qui date récament mes bon le lien pour le ffmpeg est invalide ....

keen narwhal
#

Bonsoir, j'ai un petit soucis que j'ai aucun idée de régler

Erreur:
(node:3851) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'members' of undefined

Ligne ou il y Ă  l'erreur:

let target = message.mention.members.first() || message.guild.members.get(args[0])
glossy coral
#

@keen narwhal mentions avec un s

keen narwhal
#

Ok je vais try

#

Thx dude ça à marcher

keen narwhal
#

Bonsoir, j'ai encore un petit soucis ^^

    if(!message.member.hasPermissions('ADMINISTRATOR')) return message.channel.send("Erreur: **Vous n'avez pas la permission requise pour faire cette commande !**") 

Erreur:
TypeError: Cannot read property 'hasPermissions' of null

Qu'elle qu'un aurai une idée ?

#

et j'ai aussi test les permissions mais aucun succĂšs

glossy coral
#

@keen narwhal permission sans s

peak cedar
#

slt

#

j'ai encire une erreur

#

Debugger attached.
Waiting for the debugger to disconnect...
c:\Users\Hugo\Desktop\discordbothugo\index.js:21
if(message.content.startsWith("!info")) {
^

ReferenceError: message is not defined
at Object.<anonymous> (c:\Users\Hugo\Desktop\discordbothugo\index.js:21:1)
at Module._compile (internal/modules/cjs/loader.js:1138:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1158:10)
at Module.load (internal/modules/cjs/loader.js:986:32)
at Function.Module._load (internal/modules/cjs/loader.js:879:14)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12)
at internal/main/run_main_module.js:17:47

#

le code

#
if(message.content.startsWith("!info")) {
    if(message.mentions.users.first()) {
        user = message.mentions.users.first();
    } else{
        user = message.author;
    }
    
    const member = message.guild.member(user);
    const embed = new Discord.MessageEmbed()
    .setColor('#ff5555')
    .setThumbnail(user.avatarURL)
    .setTitle(`Information sur : ${user.username}#${user.discriminator}:`)
    .addField('ID du compte ', `${user.id}`, true)
    .addField('Pseudo sur le serveur:', `${member.nickname} : 'Aucune'}`, true)
    .addField('A crée sont compte le :', `${moment.utc(member.created.At).format('dddd, MMMM Do YYYY, HH:mm:ss')}`, true)
    .addField('A rejoint Cpu-CLOUD le :',`${moment.utc(member.joinedAt).format('dddd, MMMM Do YYYY, HH:mm:ss')}`, true)
    .addField('Status:', `${user.presence.statuts}`, true)
    .addField('Joue a :', `${user.presence.game ? user.presence.game.name : 'Rien'}`, true)
    .addField('Grade sur le discord :', member.roles.cache.map(roles => `${roles.name}`).join(', '), true)
    .addField(`En réponse a :`,`${message.author.username}#${message.author.discriminator}`)
    message.channel.send(embed).then(message => message.delete({ timeout: 15000 }));
  }
#

@slim anvil Grand dieux du JS pouvez vous m'accordez cette faveur de m'aider ?

#

😂

#

ouais mais je le fait comme ?

#

?

#

j'ai pas sa

#

moi

#

c direct la cmd

#

att je test de mettre sa

#

bot.on("message", message => {

#

dcp je met quoi ?

#

jsp quoi mettre

#

vsy check mp

#

je te le drop

slim anvil
peak cedar
#

oe

#

mais je sais pas comment le mettre sur le !info

slim anvil
#

Est ce que tu comprends ce que tu écris Hugo ?

#

ou tu copies un peu de partout des bouts de code ? C’est important de comprendre ce que tu fais

peak cedar
peak cedar
#

comme juste l'event me bloque

#

;-

boreal edge
#
client.on("message", (message) => {
     if (message.author.bot) return;
     // Fait déjà tout tes checks ici

     if (message.content.startsWith("!clear") {

            console.log("clear");
     
     else if (message.content.startsWith("!info") {
      
            console.log("infos");
     }

})
slim anvil
#

avant de vouloir faire des bots, peut ĂȘtre essayer de comprendre ce que tu Ă©cris alors, car lĂ  on est plus sĂ»r de l’erreur de comprĂ©hension que technique

boreal edge
#

( Fait pas gaffe à l'indentation ,j'étais sur Discord )

peak cedar
#

mais je fait comment pour close l'event

#

?

boreal edge
#

C'est justement le but des } ou des )

peak cedar
#

oe mais quand e metait pas la ) sa me metait 15erreur 😂

#

je test 🙂

#

ReferenceError: client is not defined

#

yes bas mtn 😂

#

a mais dcp c pas un client.on mais un bot.on ?

boreal edge
#

👍

peak cedar
#

i go try

#

oooooooooffffffffffffffffffffffffffffffffff

#

sa marche ^pas 😩

#

Starting Bot
C:\Users\Hugo\Desktop\discordbothugo\node_modules\discord.js\src\structures\MessageEmbed.js:13
Object.defineProperty(this, 'client', { value: message.client });
^

TypeError: Cannot read property 'client' of undefined

#

ooooooffffffffffffffffffffffffffffffffffffffffff

#

😂

boreal edge
#

Quand tu fais du dĂ©veloppement, peut importe le langage Ă  partir du moment oĂč tu ouvres une parenthĂšses ou un crochet ou je en sais quoi, il faut les fermer.
Et l'indentation, te permet justement, de mieux comprendre ton code et de savoir oĂč tu dois fermer quoi, par exemple si tu fais plein de conditions sans indentĂ© :

if (condition1) {
// Code
if (condition2) {
// Code
if (condition3) {
// Code
if (condition4) {
// Code
if (condition5) {
// Code
if (condition6) {
// Code
}
}
}
}
}
}

Le mĂȘme exemple avec un code indentĂ© :

if (condition1) {
        // Code
    if (condition2) {
            // Code
        if (condition3) {
                // Code
            if (condition4) {
                // Code
                if (condition5) {
                    // Code
                    if (condition6) {
                        // Code
                    }
                }
            }
        }
    }
}

La diffĂ©rence est dĂ©jĂ  visible, alors imagine avec un code oĂč tu as des actions aprĂšs tes conditions...
Et du coup, ça te permet de savoir quoi ferme quoi en regardant les alignements :

boreal edge
# peak cedar oui et non 😂

Quand tu comprends pas ce que tu fais, comme le dit Enzo, faut que tu ailles rechercher par toi mĂȘme, sur Google ou autre, Ă  quoi sert quoi.
Par exemple pour le require, tu marques require js sur Google, et tu vas voir Ă  quoi ça sert, ça peut ĂȘtre pĂ©nible mais au moins sa te permet de comprendre ce que tu fais, et de pouvoir t'en reservir pour la suite !

peak cedar
#

mais hein c quoi le raport avec l'erreur ?

boreal edge
peak cedar
#

mais jcomprend PLUS LA

#

😂

#

vous mavez perdu

#

j'ai une erreur de undefinned

#

je vous met la nvl erreur

#

TypeError: Cannot read property 'client' of undefined
at new MessageEmbed (C:\Users\Hugo\Desktop\discordbothugo\node_modules\discord.js\src\structures\MessageEmbed.js:13:60)
at Client.<anonymous> (C:\Users\Hugo\Desktop\discordbothugo\index.js:34:19)
 at Client.emit (events.js:327:22)
at MessageCreateHandler.handle (C:\Users\Hugo\Desktop\discordbothugo\node_modules\discord.js\src\client\websocket\packets\handlers\MessageCreate.js:9:34)
at WebSocketPacketManager.handle (C:\Users\Hugo\Desktop\discordbothugo\node_modules\discord.js\src\client\websocket\packets\WebSocketPacketManager.js:108:65)
at WebSocketConnection.onPacket (C:\Users\Hugo\Desktop\discordbothugo\node_modules\discord.js\src\client\websocket\WebSocketConnection.js:336:35)
at WebSocketConnection.onMessage (C:\Users\Hugo\Desktop\discordbothugo\node_modules\discord.js\src\client\websocket\WebSocketConnection.js:299:17)
at WebSocket.onMessage (C:\Users\Hugo\Desktop\discordbothugo\node_modules\ws\lib\event-target.js:120:16)
 at WebSocket.emit (events.js:315:20)
at Receiver.receiverOnMessage (C:\Users\Hugo\Desktop\discordbothugo\node_modules\ws\lib\websocket.js:789:20)

#

c sa

boreal edge
#

Tu as ta réponse ici directement

#

Penses Ă  utiliser tout les outils que tu as

#

MĂȘme si je suis d'accord, au dĂ©but, c'est une galĂšre, mais aprĂšs, tu vas avoir l'habitude et tu vas avoir un gain de temps Ă©norme

#

( et des connaissances en + )

peak cedar
#

oki jvais check

#

!mais j'en ai marre

#

jcomprend pas

boreal edge
#

Toujours au début, mais tu vas finir par avoir le déclique et ça va aller super vite

peak cedar
#

chui deesus

#

😩

boreal edge
#

Et tu peux voir la réponse validée

#

Et tu suis, tu fais ce qu'il te dit

#

C'est quoi la version de ton discord.js

#

?

#

( visible dans le package.json )

peak cedar
#

un node -v

#

ne suffit pas ?

#

v12.18.1

#

🙂

boreal edge
#

node -v c'est la version de ton node

slim anvil
peak cedar
#

shuuuuuutt 😭

boreal edge
#

Faut comprendre

boreal edge
#

Tout ce que tu fais, à quoi ça sert

#

Sinon tu vas jamais y arriver et faire n'importe quoi

peak cedar
#

et comment la regfler

boreal edge
peak cedar
#

node

#

"version": "11.6.4",

#

sa c js

#

MAIS JE SUIS PERDU

#

@boreal edge

peak cedar
boreal edge
#

npm install discord.js@latest

#

Essaye ? đŸ€”

peak cedar
#

ok

slim anvil
#

Faut Ă©viter d’upgrade une version majeure, y a bcp de truc qui change entre v11 et v12

peak cedar
#

ok

#

et dcp je suis coincer a vie 😩

boreal edge
slim anvil
boreal edge
#

TypeError: Cannot read property 'client' of undefined
at new MessageEmbed (C:\Users\Hugo\Desktop\discordbothugo\node_modulesdiscord.js\src\structures\MessageEmbed.js:13:60)

#

Envoie le code que tu as fait pour envoyer l'embed stp

oak turret
#

faut arrĂȘter de dire ça marche pas sans code les gars, faites les choses bien une fois, et on vous rĂ©ponds ça Ă©vite de perdre du temps Ă  vous le demander..

peak cedar
boreal edge
#

Essaye new Discord.RichEmbed() plutĂŽt alors

peak cedar
#

ou sa

#

a ok je vois

#

arting Bot
C:\Users\Hugo\Desktop\discordbothugo\index.js:34
const embed = new Discord.RichEmbed()
^

TypeError: Discord.RichEmbed is not a constructor

#

non

#

@boreal edge

keen narwhal
oak turret
#

new Discord.MessageEmbed()

boreal edge
#

C'est ce qu'il a fait

oak turret
#

apparemment pas

#

sinon il aurait pas une erreur RichEmbed()

#

il a pas du save

peak cedar
#

ReferenceError: moment is not defined

#

@oak turret

#

aie

#

ReferenceError: moment is not defined

oak turret
#

t’as npm i moment ?

#

et const moment = require("moment");

peak cedar
#

ahhhhhhhh je sais pk

#

j'ai pas marquer require avant moment 😂

keen narwhal
#

Est-ce qu'on peut rajouter et retirer des éléments d'un cache manuellement ? si oui comment ?

peak cedar
#

r: Cannot read property 'At' of undefined

#

@oak turret

oak turret
#

ouais bah maintenant tu look ton code ça doit pas ĂȘtre good

peak cedar
#

c un npm aussi ?

keen narwhal
#

At ?

peak cedar
#

oe

keen narwhal
#

t'as voulu mettre quoi?
un .createdAt ?

peak cedar
#

tien look mon code

#

bot.on("message", message => {


if(message.content.startsWith("!info")) {
    if(message.mentions.users.first()) {
        user = message.mentions.users.first();
    } else{
        user = message.author;
    }
    
    const member = message.guild.member(user);

    const embed = new Discord.MessageEmbed()

    .setColor('#ff5555')
    .setThumbnail(user.avatarURL)
    .setTitle(`Information sur : ${user.username}#${user.discriminator}:`)
    .addField('ID du compte ', `${user.id}`, true)
    .addField('Pseudo sur le serveur:', `${member.nickname} : 'Aucune'}`, true)
    .addField('A crée sont compte le :', `${moment.utc(member.created.At).format('dddd, MMMM Do YYYY, HH:mm:ss')}`, true)
    .addField('A rejoint Cpu-CLOUD le :',`${moment.utc(member.joinedAt).format('dddd, MMMM Do YYYY, HH:mm:ss')}`, true)
    .addField('Status:', `${user.presence.statuts}`, true)
    .addField('Joue a :', `${user.presence.game ? user.presence.game.name : 'Rien'}`, true)
    .addField('Grade sur le discord :', member.roles.cache.map(roles => `${roles.name}`).join(', '), true)
    .addField(`En réponse a :`,`${message.author.username}#${message.author.discriminator}`)
    message.channel.send(embed).then(message => message.delete({ timeout: 15000 }));
  }

})


keen narwhal
#

T'es en DJS v12 ?

peak cedar
#

nop

#

11

keen narwhal
#

Oula c'est vieux ça je codais mĂȘme pas encore sue

peak cedar
#

ta pas d'idée dcp ?

keen narwhal
#

nn sry

slim anvil
#

Ça t’arrive de lire ou pas

keen narwhal
#

Ah mais si oe

#

bruh

#

Tas mis joinedAt

#

pas cohérent

peak cedar
#

jfait quoi ?

keen narwhal
#

T'enlĂšves le Point et tu mets une majuscule kappo

slim anvil
#

tu relis ton code et tu regardes pourquoi

keen narwhal
oak turret
#

...

#

createdAt pas .At

slim anvil
#

Franchement lĂ  ça va quoi c’est que de la comprĂ©hension faut pas abuser

oak turret
#

ou au pire

#

tu console log

#

et tu verras bien ton erreur

peak cedar
#

c bon sa marche !

#

MERCIIIIIIII

night crane
#

Une personne qui aurait une bonne vidéo instructive ||ou les codes ahah|| d'un bot musique svp ;)

oak turret
#

Hello dites moi, on peut éditer un field d'un embed ?

keen narwhal
oak turret
cyan iron
#

Ou alors tu rewrite tout

oak turret
#

oauip faut que je get le message et je change le contenu, avec un message edit genre ?

cyan iron
#

Oui

#

Bah si je dit pas de connerie tu peux faire un message.embeds

#

Ça te donne un array je crois

#

Attends je vais check ça

#

Yep

#

Donc si tu sais que ton message ne contient qu'un seul embed, tu tapes un embeds[0]

oak turret
#

je vais look tout ça, ty !

cyan iron
#

Donc tu fais :

message.edit({
	title: message.embeds[0].title,
	description: 'Nouvelle description si c'est ça que tu veux modif',
	thumbnail: {
		url: message.embeds[0].thumbnail.url
}) 
#

VoilĂ  mdr

oak turret
#

yep mais c'est plus compliqué ahah, mais merci :), c'est des commandes qui sont liées bref merci !

slim anvil
#

tu peux faire bcp plus simple en soit

#

Tu n’as pas d’ordre à respecter dans un objet, donc tu peux faire:
message.edit({ ...message.embeds[0], fields: ...})

#

Comme ça tu rĂ©cupĂšres l’ancien complĂštement et tu changes juste les champs que tu veux, ça Ă©vite de faire comme plus haut Ă  remettre champs par champs

keen narwhal
#
const Discord = require("discord.js")
const superagent = require("superagent")
 
 
module.exports.run = async (bot, message, args) => {

    if(!message.member.hasPermission('ADMINISTRATOR')) return message.channel.send("Erreur: **Vous n'avez pas la permission requise pour faire cette commande !**") 
    let member = message.mentions.members.first()
    if(!member) return message.channel.send("Erreur: **Veuillez mentionner un membre**")

    let msgToDm = args.slice(2).join(' ')
    if(!msgToDm) return message.channel.send("Erreur: **Veuillez indiquer un message**")

        let MSG = new Discord.RichEmbed()
        .setColor(0x1770c9)
        .setDescription("Le membre du staff " + `${message.author}` + " sur le serveur: " + ` ${message.guild.name} ` + " vous envoie le message: " + `${msgToDm}`)

        member.send(MSG)
        message.author.send(`Envoie du message ${msgToDm} Ă  l'utilisateur: ${member}`)
}

module.exports.help = {
    name: "dm"
}

Bonjour, qu'elle qu'un aurai une idée de pourquoi mon hasPermission ne marche pas et pourquoi quand je fait la commande !dm <utilisateur> <args> il m'arréte pas de dire Veuillez mentionner un membre à chaque fois ?

cyan iron
#

Quelle est l'erreur exactement ?

#

Et concernant le Veuillez mentionner je regarde ça

keen narwhal
#

Cannot read property 'hasPermission' of null

#

C'est la seul erreur que j'ai ^^

cyan iron
#

Alors je pense savoir, t'as bien return les messages privés dans ton message.js ?

keen narwhal
#

Je n'est pas fait de message.js

#

Il en faut un ?! (ça fait longtemp que j'ai plus dév des bot ^^)

#

😼

#

Il te faut bien un handler pour les commandes

cyan iron
#

Non mais on ne sait pas comment son handler fonctionne

keen narwhal
#

Tu parle de ça ?

fs.readdir("./commands/", (err, files) => {
    if(err) console.log(err);
 
    let jsfile = files.filter(f => f.split(".").pop() === "js")
    
    if(jsfile.length <= 0){
        console.log("Aucune commande trouver.")
        return;
    }
 
    jsfile.forEach((f, i) => {
        let props = require(`./commands/${f}`);
        console.log(`${f} Ok !`);
        bot.commands.set(props.help.name, props)
    })
})
cyan iron
#

Si ça se trouve c'est un handler commandes mais pas event

keen narwhal
#

c'est se qui me permet de get mes commande

cyan iron
#

Non

#

Tu es oĂč lĂ  ?

#

Dans quel fichier

keen narwhal
#

Le fs.readdir est dans mon index.js

et la commande ou il y Ă  l'erreur et dans mon sdm.js qui et dans mon dossier commands

cyan iron
#

Donc ton event message est dans le index, Ok

#

Est-ce que tu as mis un petit if(!message.guild) return ?

#

Car si tu fais message.member en MP c'est normal que ça soit null

keen narwhal
#

Je les pas mit dans ma commande

sand shore
#

Hello j'aimerais faire une blacklist de mot sur discord via une commande cela marche mais le problÚme est lorsque j'ajoute un mot à mon fichier txt ça ré écrit par dessus l'ancien mot, au lieu de l'ajouter javascript if (command === 'blacklistword') { if (!msg.member.permissions.has('MANAGE_MESSAGES')) return msg.channel.send("Vous n'avez pas les permissions pour faire cela !"); fs.writeFileSync('blacklist_words.txt', args[0], (err) => { if (err) throw err; }); }

slim anvil
#

car il faut que tu ajoutes ta nouvelle valeur à l’ancienne

#

Donc si c’est un tableau tu push dans ton tableau

sand shore
#

et comment je peux faire pls ? (déso je suis nouveau en js), et pour le coup nan c'est pas un tableau je récupÚre juste le msg de la personne qui fais la commande et qui s'ajoutera dans le fichier txt

slim anvil
#

Sois tu fais un tableau sois une string ou tu ajoutes Ă  chaque fois ton nouveau mot, ce serait plus propre en tableau
Donc ton fichier texte peut devenir un json ou tu auras un tableau vide que tu rĂ©cupĂšres quand la commande est faite et tu viens regarder que le mot ne soit aps dĂ©jĂ  dedans car ça sert Ă  rien, et si c’est ok tu viens faire un .push(args[0]) et tu rewrites ton fichier avec fs

sand shore
#

Ahh, bah au final je viens de trouver, suffit juste de faire un fs.appendFile

#

Merci quand mĂȘme ❀

#

et pour le coup je l'ai fais en .txt histoire de pas me prendre la tĂȘte

keen narwhal
cyan iron
#

Pas obligatoire, mais mieux 🙂

keen narwhal
#

Yep mieux

keen narwhal
#

pas forcément

#

y'a des gens qui font des dingueries en unfile

plain crystal
keen narwhal
#

m'ouais

#

perso je trouve le unfile plus pratique

plain crystal
#

bof

#

aprĂšs chacun son avis lĂ  dessus

keen narwhal
#

au moins si je veux exporter mon bot j'ai un seul fichier Ă  exporter pour les commandes

#

Des commandes qui ont un code de 500 lignes chacune dans un seul fichier je le vois mal

#

bah franchement ça me dérange pas perso

#

500 lignes c'est pas tant que ça

#

Un bot a pas qu'une seule commande kappo

#

je sais

#

mais mĂȘme si c'est 5000 lignes ça passe

#

j'aime bien lire perso

plain crystal
#

đŸ˜©

keen narwhal
#

Pas moi
Jprefere etre efficace et retrouver mon code en 10 secondes plutĂŽt que de perdre 3 minutes Ă  chercher dans un seul fichier sur plusieurs milliers de lignes

#

tu peux ĂȘtre efficace en unfile

plain crystal
#

aprÚs pour ça: CTRL+F

#

mouais comme tu veux raveblob

keen narwhal
#

aprĂšs perso j'ai pas fait de bot depuis quelques temps

#

la plupart de ceux que je fais c'est pour un seul serv et en général c'est un bot = une utilisation particuliÚre

#

Ah ui oe genre un bot que pour la modération 1 seul fichier ça paaaasse

full scaffold
keen narwhal
#

ca fait longtemps

#

(genre 7 heures)

#

c'est ultra nice

timid loom
night crane
keen narwhal
#

ah je sais

keen narwhal
#

Je te conseille de faire un dossier avec les différents évÚnements et un handler des events pour éviter ce problÚme

timid loom
keen narwhal
#

ah l'erreur npm ok ptdr

timid loom
#

je te laisse faire des recherches sur ton erreur

#

@keen narwhal c'est un warning ça

#

aprÚs c'est + une conséquence qu'une vraie erreur en général

sand shore
#

Hello j'ai fais un systĂšme de blacklist de mots, cependant j'ai un petit problĂšme quand j'upload une image il me la considĂšre comme si je l'avais blacklist pourtant c'est pas le cas :/, j'ai essayer de mettre l'image sur un autre discord copier le lien de l'image via discord et la mettre sur le discord avec mon bot et il ne considĂšre pas le lien comme blacklist :/ ```javascript
fs.readFile('blacklist_words.txt', 'utf-8', (err, data) => { // ce code est dans l'event message
if (err) {
console.error(err);
return
}

   if (data.includes(msg.content)) {
       msg.reply("Merci de ne pas écrire d'insulte dans le chat ! :warning:");
       msg.delete();
    }
});   

// la commande
if (command === 'blacklistword') {
msg.delete();
if (!msg.member.permissions.has('MANAGE_MESSAGES')) return msg.channel.send("Vous n'avez pas les permissions pour faire cela !");
fs.readFile('blacklist_words.txt', 'utf-8', (err, data) => {
if (err) {
console.error(err);
return
}

       if (!data.includes(args[0])) { // Permet de check si l'insulte est déjà dans le fichier .txt
        fs.appendFile('blacklist_words.txt', args[0] + '\n', (err) => {
            if (err) throw err;
        });
        msg.reply(`Vous venez de blacklist le mot ** ${args[0]} **`);
       } else {
           msg.reply("Cette insulte est déjà blacklist ;)");
           msg.delete();
        }
    });
}    ```
toxic cypress
#

salut ! vous aurriez une idée de comment je peux proposer une liste de réponse pour chaque question et ou
la question suivante dépend de la réponse à la question précédente puis on identifie le profil du candidat en fonction de ses réponses ?

cyan iron
#

Une IA quoi harold

#

Tu stockes tu stockes tu analyse

slim anvil
#

une IA elle apprend, elle évolue, si c'est juste de l'analyse en fonction de x ou y paramÚtre c'est pas de l'IA
@toxic cypress essaye d'expliquer un peu mieux

cyan iron
#

Si elle analyse le profil du candidat ça devient une IA quand mĂȘme SureBruh

slim anvil
#

Non une analyse d'un profil en fonction de tel ou tel paramĂštre c'est pas de l'IA

#

Sauf si tu fais du machine learning ou en fonction ensuite de plusieurs type de résultat, etc etc ca évolue

#

si ca reste fixe c'en est pas

toxic cypress
#

En gros je voudrais faire en sorte qu'avec <option> je crĂ©e diffĂ©rentes possibiltĂ© de rĂ©ponse Ă  une question et que en fonction de la rĂ©ponse Ă  cette question il y'ai une autre question qui ai le mĂȘme systeme et que en fonction des 2 rĂ©ponse un texte soit affichĂ©s genre "tu devrais ĂȘtre professeur"

slim anvil
#

Il faut déjà au préalable que tu prépares chaque option, que chaque option correspondent a un nombre de point, et qu'a la fin en fonction de ton score tu es un certains nombres de points

toxic cypress
#

dans ce style ?

slim anvil
#

Ce serait quoi ta prochaine question ?

toxic cypress
#

ce serait id=étude
<option value="info">Informatique</option>
<option value="inge">Ingénieur</option>
<option value="info">Mathématique</option>

slim anvil
#

oui mais donc chaque question ne dĂ©pend pas d’une autre ?

#

Je veux dire par la, que si il choisit Informatique ou MathĂ©matique la prochaine question serait la mĂȘme ?

toxic cypress
#

Ingénieur Français = Cette formation
Igénieur Choinois = Une autre formation
etc...

#

Yes je me suis mal exprimé ça ne dépend pas vraiment

#

C'est à dire que dans l'ordre des choses imaginons ça donnerait Français = Mathématique = Une Formation

#

ou encore Français = Ingénieur = Une autre Formation

slim anvil
#

Donc tu aurais que la langue et le métier ?

toxic cypress
#

Yes c'est ça ^^

slim anvil
#

ca peut etre assez rapide alors, tu peux avoir une data comme celle-ci par ex:

const data = {
  "fr": {
    "Mathématique": "Formation math",
    "Ingénieur": "Formation ingénieur",
  },
  "en": {
    "Mathématique": "Training math",
    "Ingénieur": "Training engineering",
  }
}

vulgairement je te l'écris mais que tu saisisses le truc, et du coup tu pourras juste faire par ex

const result = data[language][study] // si français + math => return Formation math
toxic cypress
#

Ahhh ok donc en gros c'est comme si je faisais une table ou je stocke les possibilités ?

slim anvil
#

En gros yes

#

vu que ca reste fixe, ou trÚs peu évolutif

toxic cypress
#

Je voiss ! okk bon je vais essayé de faire tte ça et je posterais tte à l'h merci beaucoup !! tu gÚres

slim anvil
#

good luck

toxic cypress
#

merci ! 😉

fathom jay
#

Hello, avec le module MySQL en nodejs, c'est quoi la différence entre createPool et createConnection ? Merci

toxic cypress
#

Yooo

#

est-ce que ce code est bon j'arrive pas a savoir si oui ?

#

ReadBook c'est mon instance

slim anvil
#

déjà fais gaffe au nom

#

Tu as currentpage et currentPage

toxic cypress
#

ah yess mince

slim anvil
#

du coup pourquoi tu mets 0 partout au lieu de 1

#

Faut que ce soit >= 1

#

Et pas => d’ailleurs

toxic cypress
#

<= .

#

?

slim anvil
#

supérieur ou égale donc >=

toxic cypress
#

Jsp pour le 0 je pensais que 0 est égale à la premiÚre page ':)

slim anvil
#

Suis bien tes consignes ça devrait ĂȘtre good

toxic cypress
#

Heureusment que t'es la @slim anvil Mercii 🙂 !!

slim anvil
#

Tout est good ? Nickel bon courage pour la suite

toxic cypress
#

Je crois bien yes ! il me reste encore qlq condition mais ça devrait ĂȘtre bon ^^

toxic cypress
#

😭

peak cedar
#

Hey slt

#

j'ai une question

#

bot.on ("message", async message => {

  if(message.channel.type === "dm"){
      channel = bot.channels.cache.get('772177064865562665')
      
      channel.send(message.content)
      

  }
});


#

sa ce mon code

#

le prob et que quand je met sa

message.react('✅')

Sa react au msg en mp et non pas dans le channel je peux faire quoi ?

slim anvil
#

Bah forcément tu message.react

#

Message = le message sur lequel tu as fais ta commande ou autre

#

Donc tu peux faire un
const newMessage = await channel.send(message.content)
newMessage.react(‘✅®)

#

En mettant ta fonction en asynchrone

timid loom
#

ou alors

channel.send(message.content).then(msg => msg.react('✅'))
fathom jay
#

Hello, avec le module MySQL en nodejs, c'est quoi la différence entre createPool et createConnection ? Merci

boreal edge
toxic cypress
#

Salut Ă  vous ^^ j’ai encore une question en JavaScript je me demandais si il Ă©tait possible de faire un prompt qui apparaĂźt en fonction d’un autre prompt ex : prompt ( «  Quel sont t’es Ă©tudes  L , ES, S ?») if ( prompt == L ) prompt ( « tu prĂ©fĂšres ĂȘtre avocat ou journaliste ? ») if ( prompt == avocat )
Alert ( « tu peux faire cette Formation ») ?

hazy jetty
peak cedar
#

@hazy jetty fait voir ton permission manager

#

step

boreal edge
#

@hazy jetty Dans ton developer portal, il faut que tu changes l'URL de redirection

#

Elle n'est pas valide

#

Ou alors, si elle est encadrée en vert, c'est du cÎté js que tu n'as pas mis la bonne

peak cedar
hazy jetty
#

Il en faut obligatoirement une? Je n'ai aucune permission de coché

boreal edge
#

Oui

#

L'URL de redirection aprĂšs t'ĂȘtre connectĂ©

hazy jetty
#

Et elle est oĂč l'URL?

boreal edge
#

Bah c'est Ă  toi de la mettre

hazy jetty
#

Je sais

#

Mais je comprend pas, c'est l'URL de la page discord ou je suis avec le bot?

boreal edge
#

L'URL que tu dois configurer, c'est l'URL de redirection aprĂšs la connexion

hazy jetty
boreal edge
#

Yes 😉

spring dock
#

pense Ă  cliquer sur save en bas

#

quand tu l'ajoute

hazy jetty
#

Oui

#

Enfaite je comprend pas ce que je doit mettre

slim anvil
#

t!search Application

cedar oreBOT
slim anvil
#

tu as tout ici je crois sur comment inviter ton bot etc

keen narwhal
#

il est magnifique le site

slim anvil
#

Et oui

cyan iron
#

t!search SQL

cedar oreBOT
cyan iron
burnt perch
#

t!search requĂȘte

cedar oreBOT
#

@burnt perch, nous avons rencontré une erreur...

burnt perch
#

Ah ok Nice

spring dock
#

bah yes

#

100%c'est Ă  cause de l'accent

burnt perch
#

t!search requete securise

cedar oreBOT
#

@burnt perch, nous avons rencontré une erreur...

burnt perch
#

t!search req

cedar oreBOT
spring dock
#

mh

dire latch
#
module.exports.run = async (client, msg, args) => {
    if(!msg.guild.me.hasPermission("MANAGE_CHANNELS")) return msg.channel.send("⚠ Je n'ai pas la permission de gĂ©rer les salons ⚠ (`MANAGE_CHANNELS`)").then(msg => {msg.delete({ timeout: 10000 })});
    const ticket = msg.guild.channels.cache.find(ch => ch.name === `ticket-${msg.author.id}`);
    if (ticket) return msg.channel.send("⚠ Vous avez dĂ©jĂ  un ticket d'ouvert ⚠").then(m => m.delete(10000));
#

C'est bien comme ça pour savoir si le salon existe ou non, non ?

#

đŸ€”

keen narwhal
#

c'est "dangereux" disons

si un mec renomme un salon comme ça genre dans un salon vocal privé bah l'autre personne peut plus ouvrir de ticket '-'

dire latch
#

C'est pas ma question mais merci quand mĂȘme mdrr

keen narwhal
#

mais ui ca marche

dire latch
#

Et ba pas pour moi 😂

keen narwhal
#

y'a une erreur ?

dire latch
#

Je peux créer un ticket à l'infini

#

Aucune erreur

keen narwhal
#

const ticket =

ptetre rajouter un await aprĂšs

#

const ticket = await msg.guild....

dire latch
#

MĂȘme avec l'await

#

😩

keen narwhal
#

chelou

dire latch
#

Bon ba j'ai rien dis, sa a rĂ©gler le soucis solo 😩

night crane
dire latch
#

Du python 😩

night crane
#

Non java..

dire latch
#

Ah

night crane
#

@dire latch Tu vois, mes je vois pas pourquoi sur la video ça marche mais pas ici ..

dire latch
#

C'est du javascript

#

Pas java mdrr

night crane
#

OUI fin

dire latch
#

Hmm ducoups jsp

#

Tu as installer discord.js ?

night crane
#

oui

dire latch
#

Car moi ça fonctionne 😩

night crane
#

oh !

#

Bah oui fous moi le seum mdr

dire latch
#

Mdrrr

#

Oupsi

#

Tu as quoi sur ton index.js ?

night crane
#

j'ai tout recommencer, car avant de commencer j'ai fait le npm i --s discord.js mes des que j'ai ouvert visual studio code, j'ai oublier de faire le npm i

dire latch
#

Ok

night crane
#

😡

#

toujours pas mdrr

dire latch
#

Pourquoi tu veux l'installer ?

#

Tu as quoi dans ton index.js ? @night crane

night crane
#

ah c'est peut etre pour ça ...

#

nan ?

dire latch
#

Ba nan mais pk tu veux installer un truc qui te serviras pas ? Mdrrr

night crane
dire latch
#

Oh ok

#

Bizarre ducoups

hazy jetty
#

Je l'ai dĂ©cochĂ© c'est bon merci 😅

toxic cypress
#

Bon bah dcp ça marche ^^

#

Est-ce que j'ai moyen de l'opti ?

slim anvil
#

oui déjà synthaxe en syntaxe kapp

night crane
toxic cypress
#

moi et l'orthographe

night crane
#

i need help.

toxic cypress
#

je pense je suis pas sur

#

fait var list = [];

#

@night crane

night crane
#

Ah mais il la mit, hum jvois rien oof

slim anvil
#

oui open ur eyes bro

night crane
toxic cypress
#

est-il possible de mettre un href dans un promt thinkingplayer

slim anvil
#

dans le prompt je crois pas, mais a la suite du prompt tu peux faire une redirection

toxic cypress
#

Je vais voir ça thx bgg

peak cedar
#

COmment mettre double react sous un msg ?

keen narwhal
#

?

peak cedar
#

genre je mp le bot qui réecrit sa c ok

Mais je peux mettre que une react auto avec le bot comment je peux faire pour double react sous un msg en auto

spring dock
#

msg.react('❌')
msg.react('✅')
?

#

et si tu veux que ça garde l'ordre

#

tu fait une fonction asyncrone et tu ajoute await devant tes msg.react

oak turret
#

Hello, dans mon log j'ai des entrées qui sont égale à {}, donc vide, je voudrais donc les tester et voir si elles sont vides, si elles le sont je remplace sa valeur par "" pour qu'elle ne soit pas visible, seulement ça ne fais rien, des idées ?

peak cedar
keen narwhal
#

on est d'accord que t'as mis un async ?

peak cedar
#

look le code

#

    if (message.channel.type === "dm") {
        if (message.author.bot) return
        if (message.content.startsWith("!")) return
        channel = bot.channels.cache.get('789808876122800129')
        channel.send(message.content).then(msg => msg.react('✅'))




    }

#

oui plus haut y'a le async

#

je le met comment ton await avec la react ?

keen narwhal
#

oui mais nan

dans ton .then ca change tout

remplace par

.then(async(msg) => {
await msg.react("\✅")
await msg.react(etccccccccc
})
#

impossible d'écrire sur tel

peak cedar
#

😂 oe

keen narwhal
#

eeeh ooo

#

t'as trouvé ? (personne qui vient de delete)

#

sinon tiens la réponse ```js
<message>.embeds[0].fields[0].value.length

oak turret
#

ya mon vscode ne me retournais rien mais sayez il c'est réveillé lol

#

ty

#

Sinon, quelqu'un a déjà un systÚme de page ? Car les fields ne peuvent afficher que 300 caractÚres me semble t-il, et je vois pas comment faire un systÚme de page, vous auriez une idée ?

spring dock
dapper coral
#

Bonjour savez vous comment je peut récupérer display_name s'il vous plait ?

{
  _total: 1,
  users: [
    {
      display_name: 'sharkidev',
      _id: '203434260',
      name: 'sharkidev',
      type: 'user',
      bio: 'Je suis un jeune streameur qui Ă  pour ambition de devenir dĂ©veloppeur dans le jeux-vidĂ©o, je propose des live plus ou moins souvent en rapport avec mes passions Ă  savoir la programmation et le jeux-vidĂ©o 👀',
      created_at: '2018-03-07T13:49:29.105519Z',
      updated_at: '2020-12-15T15:19:14.665795Z',
      logo: 'https://static-cdn.jtvnw.net/jtv_user_pictures/5a473b82-308c-40b1-a703-ba36016d8f9f-profile_image-300x300.png'
    }
  ]
}

Le truc qui me bloque c'est le _total je ne voit pas comment passer outre

spring dock
#

obj.users[0].display_name

cyan iron
#

Roh trop rapide

dapper coral
#

Merci beaucoup je vais tester ça

#

ça marche niquel merci salutation

oak turret
#

ty bob je vais look ça !

#

Okay j'ai vu tout ça ! Alors seulement je vois pas trop comment faire là, j'ai donc un nombre de joueurs x, limité à 1024 caractÚres par fields, comment je fais pour afficher les autres ? sachant que je peux pas savoir combien de joueurs seront afficher dans 1 seul field ?

#

car là j'ai pris un truc que tu m'as envoyé, et il fait un array d'embed, je suis ok mais faut que je boucle sur le nombre de joueurs pour généré x embed pour afficher tous les joueurs non ?

spring dock
#

Tu fait une boucle qui parcours tout les joueurs, tu prends la taille du nom de chacun, t’ajoute a une variable le nombre, une fois que ça arrive a 1024 avec la taille du nom que t’es en train ajouter tu reset a 0 et tu met pas le dernier nom (pour Ă©viter d’avoir un nom coupĂ© en deux) et ensuite, tu ajoute une page du coup avec ces noms la dans un tableau de pages

#

que tu définis au dessus de ta boucle

#

jsais pas si c’est clair