#javascript-typescript
1 messages · Page 64 of 1
c'est pas la v12 lĂ c'est un tout autre truc
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 đ„Č
c'est ce qu'il a fait Ă la base
si
la reaction est undefined
đ€
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
Je vais essayer mais je crois que quand je fais ça, les accolades sont vide :/
donc c'est effectivement un problĂšme de cache
whaaat trop chelou
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
t'as vérifié que t'avais bien les intents activés ? (j'ai pas lu tous les mess plus haut)
oe mais nan
c'est quoi ton code lĂ maintenant tout de suite @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 ? đŹ
Y'a le bot et moi
en relançant le bot ça reste, on est d'accord?
Ouep
ok
du coup essaie de faire reactions.users.fetch().random()
hésite pas à jouer avec les options pour voir
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 
nah tu peux pas fetch des users
cache.get.messages ça existe pas
sisi sinon c'est pas dans le cache
client.channels.cache.get("<channelid>").messages.fetch()
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
y a pas que les messages mais c'est vrai que parfois les méthodes disparaissent sans raison particuliÚre
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');
})
Met en forme ton code s'il te plaĂźt
?
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")```
a oui c vrai
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');
})
Qui est le héros qui a fait la commande
En tout cas ce qui et sur c pas moi đ
C'est quoi l'erreur ?
je fait join un gars att đ
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
ah
WOW STOP je VAIS PLUS COMPREND RIEN đ
lmao
đ
Je suis le héros en question

Exécute le programme qu'on soit fixé

ah le fd* il me met pas d'erreur
ptdr
mais en revanche il ME FAIT PAS LE MSG đ
pas normal
Bah alors pourquoi tu viens đ
Ah !
đ
Oui et ?
bas c tout
Mais lĂ si tu met rien dedans c'est inutile
Si tu cache je vais rien voir 
c mon id

juste đ
mais lmao
Mais t'es bĂȘte
OUI
Mais
268105720497569802
Bon je vais me suicider je reviens
đ
a toute
476340979209863178
mais engros sa logs dans un JSON c tout
Par contre tu sais pas copier un identifiant
et apres les : c le nombre de warn
il a copité le mien 
Oui je viens de vérifier mdr
Non pas envie
Non je plaisante
essaie de catch l'erreur
Met des console log
ou ,
Faudrait que je me fasse certifier par GCA en tant que dev bot
Ă chaque if, else
bON JE PEUX TAVOUER UN TRUC ?
ui
Pour voir si il rentre dans la boucle
đ
Attends non
Je pense que ça va ĂȘtre passible de meurtre
qWOW
t'as soit
try {
//ton code genre console.log()
} catch(error) {
//ton code genre console.log(error)
}
soit
<ton code>.catch(err => {})
console.log("ton message")
Alors oui mais non
C'est pas si simple que ça
'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
i:l est fou
NON juste con đ

@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 ?
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")```

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
Quelle est l'erreur ?
(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
Ou alors tu n'as pas activé ceci dans ton développer Portal :
Non il aurait mĂȘme pas lâĂ©vent de trigger je crois
C'est Ă dire Enzo ?
Lâanglais les mecs 
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
c'est Ă dire
Roh ça va hein đ
aaah
sa peux servire a quoi ?
ouais mais web ?
pas besoin de se connecter Ă internet
aprĂšs ca a pas l'air super fifou
oui oui
nn c un pote qui demande perso
j'ai mon hebergement donc ......
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
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
tes intents sont bien activés ?
Ouep
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
Vous savez comment je peu mentionner quelqu'un du style comme sa ?
Une personne précise, mais intégré au message
pas compris
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>
Ouais mais l'id du mec je le met oĂč ? x)
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
Ouep sauf que la mention ne doit mention l'auteur mais une personne en particulier
faut que tu définisses la personne au départ
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: "đŹđ»đČđŒđœđșđ”đČđ·đź"!
oe j'ai testé mais ca renvoit des points d'interrogation entourés d'un carré
oh
ctx.font = "48px serif";
ctx.textBaseline = "hanging";
ctx.strokeText("đŹđ»đČđŒđœđșđ”đČđ·đź", 0, 100);
ça ça fonctionne
K je test thx
et affiche ça
tu peux filltext Ă la place mais le principe est le mĂȘme
et j'ai vu ça également https://stackoverflow.com/questions/29462958/unicode-characters-not-rendering-properly-in-html5-canvas
Salut, comment je pourrais afficher un resultat d'une fonction JS vers un élément HTML svp ? merci
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
ok merci
Bonsoir, j'aurai une petite question ^^
https://cdn.discordapp.com/attachments/740967596433866922/779805617422336030/unknown.png
Qu'elle qu'un aurai une idée de comment je pourrais faire ça ? car je voudrais get 2 serveur + un website avec un panel et je ne sais pas vraiment si il existe une api pour faire ça
Tu peux juste ping le serveur de chaque site et voir le retour que tu as pour savoir si câest on ou off
ç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
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
qu'est ce que catch ?
La mĂ©thode catch() renvoie un objet Promise et ne traite que des cas oĂč la promesse initiale est rejetĂ©e. Elle a le mĂȘme effet qu'un appel Ă Promise.prototype.then(undefined, siRejetĂ©e) (c'est en fait ce qui se passe dans le moteur, obj.catch(onRejected) est traduit en obj.then(undefined, onRejected)). Cela signifie qu'il est nĂ©cessaire de fourn...
thx
Qui c'est quoi mettre ici, s'il vous plait
Ce que tu as envie du coup @night crane

MessageEmbed*
Je me disais merci
ah bah t'as déjà defini embed
si tu as pas dâembed Ă envoyer tu peux supprimer ta constante
Ah bah j'ai un soucis lol
quand je fait ma commande, mon embed apparaĂźt en deux fois
Montre ton code et assure toi de fermer tous les terminales
Ton robot est surement lancé deux fois ^^
Excusée moi j'ai complétement oublie de re venir ici, @keen narwhal @plain crystal
Aucun soucis juste un bug
t'as peut ĂȘtre double cliquĂ© sur "run"
Pas impossible
salut, je cherche a savoir si un joueur a déjà invité quelqu'un sur mon serveur
fetch les invites ou alors utilise une db
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 "<%".
J'ai un provb
c quoi l'erreur ,
??????
OSSSSMIUMMM
đ
ah bas c bon đ
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

@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
let object = ["â°ïž" , "âïž", "đ§»"]
let calcul = Math.floor((Math.random() * object.length))
Une idée pourquoi les calcules ne marche pas ?
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 ()
ça change rien les parenthÚses en plus
on sait jamais, je vois pas Ă quoi elles servent non plus
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
Pour de la priorité de calcul mais là pas utile
jâimagine, et ouais
bah ça fonctionne trĂšs bien đ€
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
Trop fort @timid loom đ„°đ„°
Je vais voir pour faire une fonction
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
c'est une image ? @RĂŻma#1921
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
le member existe pas console.log pour voir ce que tu reçois
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
Console log message
Bah je l'ai mis
Bah ça donne quoi ?
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 ?
...
Il faut que tu le mette avant
Qui est ?
celui ci @cyan iron
tâas le badge dev bot sĂ©rieux ?
Oui lmao
peut ĂȘtre qu'il a participĂ© Ă un projet đ€·ââïž
@keen narwhal Tu as trouver ?
xD
Qui a le badge dev bot ? đ€
Ils ont retirĂ© le fait de pouvoir l'attribuer avant mĂȘme que je me mette Ă coder ;-;
@dire latch Yep j'ai trouvé
Ok @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
Ok
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' ]
}
Tu exécutes un fichier qui n'existes pas
Ou tu fais un require sur quelque chose qui n'existe pas
@robust minnow Ton problÚme a été réglé ?
non, j'y arrive pas
Envoie toute l'erreur
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' ]
}
Envoie le code de l'index @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 ) })```
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")```
bv
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)
}) ```
tu as réussi ?
client.*comamnds doit pas exister Ă mon avis
c'est client.commands que tu veux
Mdrrr
Ca fait quoi .silice() ?
Ă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

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Ă
Non mais Enzo moi quand je faisait des erreurs j'essayer de chercher...
Je veux bien mais la..
C'est .slice normalement @keen narwhal mdr
Et askip ya aussi un .splice
Mdr
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
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
Peut ĂȘtre, mais au dĂ©but, on ne sait pas forcĂ©ment lire et comprendre une erreur
-_-
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
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
Ok
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
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
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 ?
précédemment ?
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
aaah
tu sais ?
j'vais look ça et je reviens vers toi
Peut ĂȘtre ?
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 :/
Ton msg.content === himmsg sera pas bon
Tu dois regarder sur himsg.includes(msg.content)
et câest console.log() pas print
ah ué j'avais zappé mdrr, mercii
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)
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
Ahhhhhh okkkk merci !
je croyais fallais définir une variable spécifique pour member, genre un truc de base qui get le membre xD
salut, je cherche a recup la couleur du role du joueur
essaye de get un user
regarde je crois que y a un truc « roles » et dedans lâid, le name etc
look ça
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
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 ?
oula
tu mets message.reply
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?
Oui un modo qui a la perm ban member peux faire la cmd engros sa le warn et je veux juste @ le gars warner
@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
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
.
Jsuis sur tel sry
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 ?
Avec une val et une condition ?
Non c'est bon j'ai reussi merci đ
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 đ
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
@bright pecan il existe un module j'essaye de le retrouver
Au guildMemberUpdate, tu regarde si il a un nouveau role booster
en comparant lâargument old et le new
Ăa s'appelle discord-logs
ptdr
Autant le faire avec lâĂ©vent comme le dit bob
Pas grand intĂ©rĂȘt de prendre un module pour si peu
il sert à rien discord-logs ;-; c'est juste les events en plus simplifiés, alors que les events sont déjà trÚs simples
Donc du coup faire un truc dans ce style @slim anvil
Tu dĂ©clares 2 fois la mĂȘme constante pour commencer donc ce sera pas bon
Deux lettres prĂšs ptdr
jâai ratĂ© 2 fois le e la quand mĂȘme
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
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
Ouep pas bĂȘte
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?
Yess
Ouep justement c'est se que je fait mais pour l'instant sa marche po kappa
J'ai fait sa mais marche pos
@bright pecan erreur ?
Aucune justement
Tes console.log passent ?
Nop
Le guildMemberUpdate est concerné par les intents ou pas ? Si oui, tu les as activés ?
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 ....
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])
@keen narwhal mentions avec un s
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
@keen narwhal permission sans s
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
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
oui et non đ
alors sa non mais je comprend ce que j'ecrit mais je ne sais pas comment le faire fonctionner
comme juste l'event me bloque
;-
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");
}
})
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
( Fait pas gaffe à l'indentation ,j'étais sur Discord )
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 ?
đ
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
đ
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 :
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 !
mais hein c quoi le raport avec l'erreur ?
Je t'expliquais ça justement
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\[4mdiscord.js[24m\src\structures\MessageEmbed.js:13:60)
at Client.<anonymous> (C:\Users\Hugo\Desktop\discordbothugo\index.js:34:19)
[90m at Client.emit (events.js:327:22)[39m
at MessageCreateHandler.handle (C:\Users\Hugo\Desktop\discordbothugo\node_modules\[4mdiscord.js[24m\src\client\websocket\packets\handlers\MessageCreate.js:9:34)
at WebSocketPacketManager.handle (C:\Users\Hugo\Desktop\discordbothugo\node_modules\[4mdiscord.js[24m\src\client\websocket\packets\WebSocketPacketManager.js:108:65)
at WebSocketConnection.onPacket (C:\Users\Hugo\Desktop\discordbothugo\node_modules\[4mdiscord.js[24m\src\client\websocket\WebSocketConnection.js:336:35)
at WebSocketConnection.onMessage (C:\Users\Hugo\Desktop\discordbothugo\node_modules\[4mdiscord.js[24m\src\client\websocket\WebSocketConnection.js:299:17)
at WebSocket.onMessage (C:\Users\Hugo\Desktop\discordbothugo\node_modules\[4mws[24m\lib\event-target.js:120:16)
[90m at WebSocket.emit (events.js:315:20)[39m
at Receiver.receiverOnMessage (C:\Users\Hugo\Desktop\discordbothugo\node_modules\[4mws[24m\lib\websocket.js:789:20)
c sa
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 + )
Toujours au début, mais tu vas finir par avoir le déclique et ça va aller super vite
Regarde le premier lien : https://stackoverflow.com/questions/62173144/messageembed-cannot-read-property-client-of-undefined
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 )
node -v c'est la version de ton node
DĂ©jĂ ta rĂ©ponse elle me fait peur lĂ đ„Č
shuuuuuutt đ
Faut comprendre
Tout ce que tu fais, à quoi ça sert
Sinon tu vas jamais y arriver et faire n'importe quoi
je sais ce que je fait me je comprend pas la mon erreur
et comment la regfler
Donc c'est la version de ton node ou de ton discord.js ?
sa c le JS
ok
Faut Ă©viter dâupgrade une version majeure, y a bcp de truc qui change entre v11 et v12
?? Câest quoi ton soucis ? A part le fait que tu mettais pas ton code au bon endroit ?
TypeError: Cannot read property 'client' of undefined
at new MessageEmbed (C:\Users\Hugo\Desktop\discordbothugo\node_modules[4mdiscord.js[24m\src\structures\MessageEmbed.js:13:60)
Envoie le code que tu as fait pour envoyer l'embed stp
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..
remonte c le meme code
sa
Essaye new Discord.RichEmbed() plutĂŽt alors
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

new Discord.MessageEmbed()
je retry
ReferenceError: moment is not defined
@oak turret
aie
ReferenceError: moment is not defined

Est-ce qu'on peut rajouter et retirer des éléments d'un cache manuellement ? si oui comment ?
ouais bah maintenant tu look ton code ça doit pas ĂȘtre good
c un npm aussi ?
At ?
oe
t'as voulu mettre quoi?
un .createdAt ?
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 }));
}
})
T'es en DJS v12 ?
Oula c'est vieux ça je codais mĂȘme pas encore 
ta pas d'idée dcp ?
nn sry
@oak turret dcp ?
Ah mais si oe
bruh
Tas mis joinedAt
alors qu'avant tas mis created.at
pas cohérent
jfait quoi ?
T'enlĂšves le Point et tu mets une majuscule 
tu relis ton code et tu regardes pourquoi

Franchement là ça va quoi câest que de la comprĂ©hension faut pas abuser
Une personne qui aurait une bonne vidéo instructive ||ou les codes ahah|| d'un bot musique svp ;)
oui
viens Ăčmp
Hello dites moi, on peut éditer un field d'un embed ?
Avec ou sans c'est pareil
ou je rewrite un embed ?
Alors techniquement Oui, mais il faut récupérer le reste
Ou alors tu rewrite tout
oauip faut que je get le message et je change le contenu, avec un message edit genre ?
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]
je vais look tout ça, ty !
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
yep mais c'est plus compliqué ahah, mais merci :), c'est des commandes qui sont liées bref merci !
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
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 ?
Alors je pense savoir, t'as bien return les messages privés dans ton message.js ?
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
Non mais on ne sait pas comment son handler fonctionne
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)
})
})
Si ça se trouve c'est un handler commandes mais pas event
c'est se qui me permet de get mes commande
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
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
Je les pas mit dans ma commande
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; }); }
car il faut que tu ajoutes ta nouvelle valeur Ă lâancienne
Donc si câest un tableau tu push dans ton tableau
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
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
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
handler pas obligatoire
Pas obligatoire, mais mieux đ
Yep mieux
nan mais ils veulent dire que c'est plus rangé et propre ^^
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 
je sais
mais mĂȘme si c'est 5000 lignes ça passe
j'aime bien lire perso
đ©
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
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
Integrate your service with Discord â whether it's a bot or a game or whatever your wildest imagination can come up with.
ah j'avais pas vu, sympa
à voir comment ça gÚre les conflits sur les noms de commandes
Mentionner moi si vous trouvez pk sa me fait ça svp
ah je sais
t'as mis trop de
<client>.on('evenement', () => {
})
dans un seul fichier
Je te conseille de faire un dossier avec les différents évÚnements et un handler des events pour éviter ce problÚme
erreur de dns
ton erreur est lĂ
ah l'erreur npm ok ptdr
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
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();
}
});
} ```
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 ?
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
Si elle analyse le profil du candidat ça devient une IA quand mĂȘme 
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
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"
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
Ce serait quoi ta prochaine question ?
ce serait id=étude
<option value="info">Informatique</option>
<option value="inge">Ingénieur</option>
<option value="info">Mathématique</option>
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 ?
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
Donc tu aurais que la langue et le métier ?
Yes c'est ça ^^
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
Ahhh ok donc en gros c'est comme si je faisais une table ou je stocke les possibilités ?
Je voiss ! okk bon je vais essayé de faire tte ça et je posterais tte à l'h merci beaucoup !! tu gÚres
good luck
merci ! đ
Hello, avec le module MySQL en nodejs, c'est quoi la différence entre createPool et createConnection ? Merci
Yooo
est-ce que ce code est bon j'arrive pas a savoir si oui ?
ReadBook c'est mon instance
et ça c'est la consigne ?
ah yess mince
du coup pourquoi tu mets 0 partout au lieu de 1
Faut que ce soit >= 1
Et pas => dâailleurs
supérieur ou égale donc >=
Jsp pour le 0 je pensais que 0 est égale à la premiÚre page ':)
Suis bien tes consignes ça devrait ĂȘtre good
Heureusment que t'es la @slim anvil Mercii đ !!
Tout est good ? Nickel bon courage pour la suite
Je crois bien yes ! il me reste encore qlq condition mais ça devrait ĂȘtre bon ^^
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 ?
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
ou alors
channel.send(message.content).then(msg => msg.react('â
'))
Hello, avec le module MySQL en nodejs, c'est quoi la différence entre createPool et createConnection ? Merci
I am trying to understand the difference between
mysql.createConnection
var mysql = require('mysql');
var connection = mysql.createConnection({
host : 'example.org',
user : 'bob',
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 ») ?
Quelqu'un peut m'aider? J'ai un problĂšme a la creation de l'invitation de mon bot, ca m'affiche ca
@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
j'ai jamais mit de url redirection c pour quoi ?
Il en faut obligatoirement une? Je n'ai aucune permission de coché
Et elle est oĂč l'URL?
Bah c'est Ă toi de la mettre
L'URL que tu dois configurer, c'est l'URL de redirection aprĂšs la connexion
Yes đ
t!search Application
tu as tout ici je crois sur comment inviter ton bot etc
il est magnifique le site
Et oui
t!search SQL

t!search requĂȘte
@burnt perch, nous avons rencontré une erreur...
Ah ok Nice
t!search requete securise
@burnt perch, nous avons rencontré une erreur...
t!search req
mh
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 ?
đ€
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 '-'
C'est pas ma question mais merci quand mĂȘme mdrr
mais ui ca marche
Et ba pas pour moi đ
y'a une erreur ?
chelou
Bon ba j'ai rien dis, sa a rĂ©gler le soucis solo đŠ
Une personne c'est pourquoi sa me fait ça :/ Me mentionner merci d'avance
Du python đŠ
Non java..
Ah
@dire latch Tu vois, mes je vois pas pourquoi sur la video ça marche mais pas ici ..
OUI fin
oui
Car moi ça fonctionne đŠ
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
Ok
J'ai rien encors
ah c'est peut etre pour ça ...
nan ?
Ba nan mais pk tu veux installer un truc qui te serviras pas ? Mdrrr
Je fait un bot musique.
Merci, je vient de voir le lien que enzo a envoyé tout a l'heure, mais ya ca qui bloque alors que le truc est coché,
Je l'ai dĂ©cochĂ© c'est bon merci đ
oui déjà synthaxe en syntaxe 
Sur la vidéo du gars il a rien, et moi j'ai une erreur rho
i need help.
oui open ur eyes bro

est-il possible de mettre un href dans un promt 
dans le prompt je crois pas, mais a la suite du prompt tu peux faire une redirection
Je vais voir ça thx bgg
COmment mettre double react sous un msg ?
?
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
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
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 ?
Il m'affiche toujours les champs vides
oe mais await fait une erreur
on est d'accord que t'as mis un async ?
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 ?
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
đ oe
ok merci
je test
eeeh ooo
t'as trouvé ? (personne qui vient de delete)
sinon tiens la réponse ```js
<message>.embeds[0].fields[0].value.length
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 ?
https://www.npmjs.com/package/discord-paginationembed ou https://www.npmjs.com/package/discord.js-pagination ou https://www.npmjs.com/package/djs-pagination
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
obj.users[0].display_name
Roh trop rapide
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 ?
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





