#javascript-typescript
1 messages · Page 99 of 1
tu as quoi à la ligne 4 ?
c'est a dire? Debugger attached
Non à la ligne 4 de ton code
a la ligne 4 du fichier index.js
const {Client, Intents} = require("discord.js")
const client = new Client({ intents: Intents.FLAGS.GUILDS})
Comme ça
C'est au choix en passant
Oui mais il l'a déjà set sa const config
client*
Mais la ligne 2 alors 🤔
Il appelle juste un fichier .json qui contien son token
il peut déclarer plusieurs fois une const ?
non mais la c'est des const différentes
Oui bah explique
si je fais
const test = ...
const test = ,,,
ça va pas marcher nan ?
vu que c'est une const
Je comprend pas
puis après?
quand tu crée une const elle est inchangeable
Le deuxième intents c'est un I majuscule
Je sais
ok
T'utilise un let si tu veux modifier
un let? c quoi?
Faudrait vraiment que tu apprennes le JS avant de te mettre au dév de bot, au moins un peu plus ^^
Nah, faut le dire, ça s'appliques pour tout les secteurs du dév
ok, mais après je crois que c'est payant les cours, non?
Du tout
Demande aux dévs JS ici pour des ressources ^^
ok, bah je vais voir
MDN qui aide bien
bon je vous laisse a+
👍
Re, lorsque mon bot crée un salon (système de ticket) j'aimerais bien qu'il mentionne le salon dans un message de réponse, du genre : J'appuie sur un bouton pour crée un ticket et le bot me renvoie `Le salon <#${idDuSalon}> a bien été crée`
Alors j'ai fais ça
Mais ça me renvoie ça
Si quelqu'un saurait m'aider
T'as essayer newChannel.id ?
J'ai pas trop travailler avec les interaction pour le moment
Ce n'est pas le problème
créer un channel renvoie une promesse, tu dois donc attendre qu'elle soit résolu, avec await ou then
Hello, étant hors de la limite de 25 des options d'un MessageSelectMenu j'aimerais savoir si il est possible d'outre-passer cette limite en faisant par exemple une boucle for ? (ayant essayé, je pense que c'est la solution mais je n'arrive pas à bien formuler mes lignes de code)
C'est-à-dire ?
La limite de 25 options dans un select menu est une limite de discord, tu ne peux pas l'outre-passer
Yes faut éviter de s’en servir pour lister des membres car tu vas vite te faire brider
Ou alors tu fais plusieurs sélect mais bon
Sauf que t'es limité à 5 row par message 
vraiment pas la bonne soluce d'utiliser ça pour lister des membres
Salut est ce que c'est possible pour un bot de modifier un bouton ? Cet a dire de faire un bouton disabled: false pour ensuite le rendre disabled: true
Bien sur
J'ai bidouiller plusieurs trucs mais je n'arrive pas à le faire
Il te suffit d'editer le message en modifiant uniquement les components par exemple
.edit({components: [tonrow]})
<Message>.edit généralement sinon pour les interaction tu as d'autres méthodes associées
.update() pour les interaction
En gros je m'en sers pour lister les membres qui ont un rôle afin de pouvoir sélectionner des membres qui ont un certain status par rapport à un fichier json
ça reste le même procédé
ça va te poser problème à une certain échelle
T'es limité à 125 membres avec cette méthode donc :/
C'est amplement suffisant je pense
125 membres répartis sur 5 selectMenu*
En plus x)
qu'on se le dise
Yep
c'est pas la bonne soluce
autant trouver une soluce alternative pour pointer un user en particulier
surement mais je vais pas te le cacher que niveau efficacité sur le résultat que je veux, c'est le meilleur rendu
malheureusement le rendu avec ça c'est bien mais tu seras emmerdé niveau efficacité
je vais voir déjà ce que ça rend
mais sinon, une boucle for est bien le moyen d'attacher les rows au message ?
oui tu boucles sur ta liste
et tu crées un select tous les 25 membres
et tu bloques a 5 max
à la place de tonrow je mets un row qui contient disabled: true ?
Ah bah non attends
je peux pas faire une boucle sur mon menu.options ?
Donc car c'est 25 max
ah oui
dcp ça ferait un truc du style:
for(let i = 0; i < members; i += 5) {
const menu = new MessageActionRow()
.addComponents(options)
message.reply({ content: '`Affichage du menu de sélection !`', components: [menu], ephemeral: false})
}```
euh ?
tu reply combien de fois à ton message mdr
et tes options elles viennent d'où ? x)
t'as pleins possibilités
si tes membres c'est un array par exemple, tu peux le diviser en 5, et ensuite tu peux faire simplement un .map ou tu boucles dessus
et à la fin tu return ta list d'actionrow
Je n’arrive toujours pas avec mon histoire de cors
voila mon sever.js soit l'équivalent du index.js```js
const express = require('express');
const bodyParser = require('body-parser');
const cookieParser = require('cookie-parser');
const userRoutes = require('./routes/user.routes');
const postRoutes = require('./routes/post.routes');
require('dotenv').config({path: './config/.env'});
require('./config/db');
const {checkUser, requireAuth} = require('./middleware/auth.middleware');
const cors = require('cors');
const app = express();
const corsOptions = {
origin: process.env.CLIENT_URL,
credentials: true,
'allowedHeaders': ['sessionId', 'Content-Type'],
'exposedHeaders': ['sessionId'],
'methods': 'GET,HEAD,PUT,PATCH,POST,DELETE',
'preflightContinue': false
}
app.use(cors(corsOptions));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended: true}));
app.use(cookieParser());
// jwt
app.get('*', checkUser);
app.get('/jwtid', requireAuth, (req, res) => {
res.status(200).send(res.locals.user._id)
});
// routes
app.use('/api/user', userRoutes);
app.use('/api/post', postRoutes);
// server
app.listen(process.env.PORT, () => {
console.log(Listening on port ${process.env.PORT});
})
et mon .env
PORT=5000
CLIENT_URL=http://localhost:3000/
DB_USER_PASS=*********************************************************************
TOKEN_SECRET=******************************************************************************************************************************************```
voila mon projet github
voila une nouvelle page erreur sur mon ordi principal
Enfaite pour régler ton probleme tu dois sois etre sur la meme baseUrl pour ton front et ton API et donc tu auras pas de soucis de CORS, sois tu dois configurer ce truc avec les origin, etc pour que ça fonctionne
CLIENT_URL=http://localhost:3000
je dois remplacer localhost par le nom de domaine de mon site ?
ou ca REACT_APP_API_URL=http://localhost:5000/ ?
Bienvenue au club !
Une galère
J'ai pas encore tenté de fix mais hier j'ai pas mal bataillé pour comprendre comment ça marchait un peu
fais voir ton erreur on sait jamais
Je viens d'expliquer
Sois tu as la meme origin pour ton front et ton back, donc ton front sera par exemple toto.fr et ton api api.toto.fr et donc tu auras pas de soucis là dessus
ok
Sois tu dois configurer sur ton back-end les CORS pour sois faire un origin: "*" ou préciser et toutes les autres options
Cross-Origin Resource Sharing (CORS) is an HTTP-header based mechanism that allows a server to indicate any origins (domain, scheme, or port) other than its own from which a browser should permit loading resources. CORS also relies on a mechanism by which browsers make a "preflight" request to the server hosting the cross-origin resource, in ord...
merci beaucoup te ton aide je te souhaite une bonne soirée
Hey petite question, les bots qui n'utiliseront pas les / commands n'auront plus le badge vérifier bot ?
Et on pourras pas les vérifié non plus ?
bonjour, vous saviez pk sa ne fonctionne pas?
a
message n'existe pas dans l'event guildMemberAdd surtout 🙂
T'as dit "il me semble" pour ça
Gnegne
Heu ok
ah, vous saviez ou je pourrait trouver des code qui fonctionne(je suis nul, faut que j'apprenne javascript😅 )
Ba faut activé les intents déjà sur le panel @fresh wolf
le panel du bot ou du serv?
Ok et tu as essayés de rejoindre le discord avec un DC ?
c'est a dire?
Tu fais un guildMemberAdd, faut le testé après
Normal que sa fonctionne pas si tu le test pas 😅
j'ecrit sa dans le terminal?
je l'ai dit je suis nul, c'est mon tout premier bot
Regarde des tutos sur YouTube ou autres dans ce cas
ok
Si des personnes à des infos 👍
alors perso c'est mon cas mais les deux sont séparés, mais du coup je ne pense pas avoir de problème. Mais pour les tests je ne peux pas finalement. Mais je vais me renseigner et tenter des trucs avec cors. Mais étant donné que mon API sera publique c'est assez problématique tu vois
Jsp si ils perdront le badge mais en tout cas les nouveaux eux devront respecter cela pour être vérifié
Pour le coup si tu parle du badge développeur certifié on ne peut pas le perdre
Même si ton bot est down tu le perds pas
Il parle du badge pour les bots il me semble
Je crois 
Je pense aussi mais au cas où je préfère le dire
Il faudra les intents pour voir le contenus des messages donc si tu les as pas tu pourras faire aucune commande
Ok merci @queen ocean @cyan iron
Techniquement je crois que le bot a accès aux messages où tu le mentionnes donc en vrai ça passe
Oui x)
Les slashs c'est super pratique en plus
plus besoin de vérifier si l'argument est bien un channel, un membre ect...
Sah quel plaisir
plus besoin de vérifier si il donne un nombre ou un string
Oui de ce côté c'est bien pratique
plus besoin de vérifier si l'utilisateur ce trouve vraiment sur le serveur
c'est ÉNORMÉMENT de requête API en moins
Yes
Mais, ça sera parfait seulement quand y en aura le text Input
sah, je l'attend ce composant
La ça sera parfait 👌🏻
(Y aura aussi la modale apparemment)
Y a pas de type member comme option pour les slash (enfin en tout cas au niveau l'api) 🤔
c'est USER, mais fin, c'est forcément un membre du serveur
Je suis pas sur
le user ce comporte comme si tu voulais @ un membre sur le serveur
un id ?
Yep
en mp je capte pas trop le fonctionnement encore

Salut, j'ai un problème, j'aimerai récupérer le code unix de la journée actuelle mais d'une heure spécial en js genre je veux le code unix d'aujourd'hui mais à 8h am
Hello j'ai un soucis
Je log ça, ça me return ça
Mais quand je fais testElements[0] ça return undefined
passe par un .querySelectorAll
sinon tu dois faire un Array.from(testElements)
ou sinon tu peux juste faire
[...document.getElementsByClassName("s")]
je crois que ça passera
J'en ai un au dessus mais c'est une div que je cherche
J'ai essayé plein de trucs comme ça
oui ça change rien
pour chercher les class tu peux faire querySelectorAll('.studentName')
avec le . devant, sinon tu gardes ton code actuel et tu fais juste ce que je t'ai envoyé, ca devrait etre oki
Okok je check ça merci
le array.from est pas compatible non plus avec tous les navigateurs
mais tu peux pas faire ce que tu veux car byClassName renvoie une HTMLCollection alors que querySelector une nodeList
🤔
ton élément existe bien dans le DOM?
HTMLCollection il mettais lenght 1 mais y avait rien
au moment ou il recherche, donc au chargement
ton script est appelé a quel moment en gros
dans le <head> ou a la fin du <body>
C'est une ext chrome donc je sais pas trop j'en ai jamais fait
Ah t'es dans une extension
ouais document_end
bizarre !
après il te suffit juste de faire le Array.from
En fait je comprend pas trop parce que
Ca remplace bien le bleu mais pas le rouge
Parce que ça, ça marche
Mais l'autre ça print rien
il y a bien class="studentName" au moment du chargement de la page ?
il faut pas cliquer sur X ou Y action pour afficher la div avec studentName ?
donc il est dans le DOM de base ?
le DOM c'est ton document, donc ta page HTML
donc est-ce que tu as tout tes éléments de présent avant que ton script se lance ? 🤔
Mais logiquement oui car tu le fais avec ton className et ca fonctionne
Non justement className ça marche pas
si faut juste que tu changes ta façon de boucler dessus
Comme ça?
Regarde plus haut ce que je t'ai mis
Array.from?
Yes par ex
Je reviens par rapport à mon problème avec CORS, commet je sais si le backend est bien déployer ?
J’ai réussi à déployer le front end, mai je sais pas comment déployer le backend
Quelqu’un sait comment faire ?
Tu as quoi comme back-end ?
Tu essaies d'y accéder depuis ton navigateur
Sur une route
Oui
J’utilise express et axios
Tu lances ton application sur ton domaine et voilà
J'ai check et il a pas l'air d'être dedans de base
Du coup ca peut etre ça le problème
Je pense mais y a pas moyen de le remettre dedans?
envoie moi ton truc a la limite que je test
car la je fais qu'énumérer des possibilités mais sans exemple compliqué
quelqu'un sait quelle est le probleme?
pas bon
tes commandes doivent être dans l’event messageCreate
message n’existe pas là et c’est bien normal
Bonsoir les meks est-ce que quelqu'un est bon ici en bidouillage
je vous explique
ici j'ai un url que mon navigateur recois
enfin normalement
sauf que je souhaite le récupérer avant qu'il passe par la méthode encodeURI() vous savez comment je peux faire ?
ducoup je dois mettre quel commande? @oak turret
t’as clairement pas mis l’event
OK je vais corriger mon erreur
Juste comme ça, avant de se lancer direct dans un bot discord, ça serait mieux d'apprendre les bases du js
Après, c'est en forgeant qu'on devient forgeron
Oui, je sais chui dsl, mais faut que je fasse un bot à un pote car il me fait que de me le demander, mais j'apprends de mes erreurs
Oui évidemment, mais les bases restent essentielles 👀
Et faut que je cherche des cours sur internet
Oui
Mais vraiment les bases des bases, déclarer une variable exécuter une fonction etc
Après c'est comme ça que j'ai appris personnellement
Sur openclassroom apparement c'est pas mal
Jdis pas de connaitre les classes etc. mais au moins boucles variables functions conditions opérateurs + éventuellement mais pas obligatoire array et object
ouais voilà, les bases
quel type de bot tu dois faire?
Discord
?
Ce qu'il veut savoir c'est quel type de bot c'est ? Modération, levels, rpg, etc... ?
les fonctionnalités
A peu près tout lol, modération, level, music, etc... (ben v'est ce que veut mon pote)
oof
t’as aucune bases en js ?
commence par de petites fonctionnalités simple
J'espère que t'as du temps devant toi aussi 
Nan faut que j'apprenne (je vais lui dire que je vais arrêter avec les bots, pour apprendre)
tu t’y retrouveras pas sinon
Voilà, il vaut mieux
c’est pas une bonne idée de se lancer dedans
bonne idée
apprend le js, familiarise toi bien avec
Oui j'ai un peu de t3lol
Lol
apprendre la logique de ce langage, comment il marche etc
Oui
le développement ça s’apprend pas en 2 semaines c’est un apprentissage de tous les jours
Exact
en attendant il a qu’à faire une demande sur le site pour ton bot
T'en apprend tous les jours, même les meilleurs
D'ailleurs, tu connaissais les ... en js ?
toi
C’est pratique ça 
J'ai vu ça tout à l'heure j'ai fait wtf 
Et bah c'est pratique bordel
Bah ouais
Sert à quoi ?
Je connaissais pas leur existence
C'est un peu compliqué
Au moins j'apprends un peu😅
Commence par les bases plutôt ! Là c'est vraiment des détails
OK
tu vas l’embrouiller direct, quel sadique Wailrone 
m’enfin je confirme très utile les three dots
Pas fait exprès 
ducoup j'ai trouver des cours en ligne, je vais attendre que mon pere me repare mon pc portable et je les ferait
good luck
Salut j'ai un problème avec mon bot discord. En effet, j'essaye de faire des slash commands mais quand je lance mon bot voici l'erreur que sa m'affiche : Uncaught DiscordAPIError: Missing Access mon bot a toute les perms
c’est pas ça
quand t’invites il faut un scope précis
bot,application.commands
pour plus de précisions
Integrate your service with Discord — whether it's a bot or a game or whatever your wildest imagination can come up with.
Merci c'est bon ça marche !
avec plaisir 👌
qlqun sait comment creer des commandes qui marchent avec discord.js V13
Meme en suivant des tuto et le guide rien ne marche (le bot se lance quand meme) quand je tape une commande bah c le néant rien meme en dans la console de VSC. pouvez vous m'aidez ?
voici mon index.js
const fs = require('fs');
const { Client, Collection, Intents } = require('discord.js');
const { token } = require('./config.json');
// Create a new client instance
const client = new Client({ intents: [
Intents.FLAGS.GUILDS,
Intents.FLAGS.GUILD_MESSAGES
] });
const eventFiles = fs.readdirSync('./events').filter(file => file.endsWith('.js'));
for (const file of eventFiles) {
const event = require(`./events/${file}`);
if (event.once) {
client.once(event.name, (...args) => event.execute(...args));
} else {
client.on(event.name, (...args) => event.execute(...args));
}
}
client.commands = new Collection();
const commandFiles = fs.readdirSync('./commands').filter(file => file.endsWith('.js'));
for (const file of commandFiles) {
const command = require(`./commands/${file}`);
client.commands.set(command.data.name, command);
}
client.login(token);```
voici un fichier des commande du guide
const { SlashCommandBuilder } = require('@discordjs/builders');
module.exports = {
data: new SlashCommandBuilder()
.setName('ping')
.setDescription('Renvoie le nombre de ping'),
async execute(interaction) {
await interaction.reply(`Ton ping est de ${interaction.client.ws.ping} ms.`);
}
}```
et le deploy-commands.js
const fs = require('fs');
const { REST } = require('@discordjs/rest');
const { Routes } = require('discord-api-types/v9');
const { clientId, token } = require('./config.json');
const commands = [];
const commandFiles = fs.readdirSync('./commands').filter(file => file.endsWith('.js'));
for (const file of commandFiles) {
const command = require(`./commands/${file}`);
commands.push(command.data.toJSON());
}
const rest = new REST({ version: '9' }).setToken(token);
(async () => {
try {
await rest.put(Routes.applicationCommands(clientId), { body: commands });
console.log('Les commandes ont étés enregistrées !')
} catch (error) {
console.error(error);
}
})();
Merci de votre future aide
Pour les commandes globales, ça peut prendre jusqu'à une heure pour apparaître
Saluut
const Discord = require("discord.js");
const { SlashCommandBuilder } = require("@discordjs/builders");
const Client = new Discord.Client({
intents: [
Discord.Intents.FLAGS.GUILDS,
Discord.Intents.FLAGS.GUILDS_MESSAGE,
]
});
const data = new SlashCommandBuilder()
.setName("ping")
.setDescription("renvoie pong");
Client.on("ready", () => {
Client.guilds.cache.get("937822328065245224").commands.create(data);
console.log("Le bot est prêt")
});
Client.login("");``` je regarde une ptite vidéo pour apprendre la v13
mais ça ne fonctionne pas
Uncaught RangeError [BITFIELD_INVALID]: Invalid bitfield flag or number: undefined.
No debugger available, can not send 'variables'
j'ai cette erreur..
Hello, ça vient de tes "intents"
Comme tu vois dans l'erreur il est marqué "undefined", soit qu'ils sont indéfinis (ou qu'ils n'existent pas dans ton cas)
Tu ne dois pas mettre Discord. devant et retirer le point après le FLAG
Mets juste Intents.FLAG_GUILDS
Je te laisse aller voir ça sur la documentation directement : https://discordjs.guide/additional-info/changes-in-v13.html#strings
dacc merci
mais j'ai juste regardé une vidéo pour apprendre
et ça marché au début
et plus après
La vidéo que tu as regardé est peut-être trop ancienne
Ahh possible
La v13 officielle de Discord est sortie récemment
Ah
j'suis perdu mtn 😭
@dire latch j'dois faire quoi du coup
Est-ce que tu es bien en v13 ? 
Juste mettre:
const { Client, Intents } = require("discord.js");
const { SlashCommandBuilder } = require("@discordjs/builders");
const client = new Client({
intents: [
Intents.FLAGS.GUILDS,
Intents.FLAGS_GUILD_MESSAGES,
]
});
const data = new SlashCommandBuilder()
.setName("ping")
.setDescription("renvoie pong");
client.on("ready", () => {
client.guilds.cache.get("937822328065245224").commands.create(data);
console.log("Le bot est prêt")
});
client.login("TOKEN BOT");
Et normalement, c'est good
oui oui
Et faut que tu as discord.jsv13
check version npm list discord.js # uninstall and re-install npm uninstall discord.js npm install discord.js
j'ai la même erreur @dire latch
Sur tel pas facile à maître en forme 😅
mais je suis en v13
Tu as mis les intents sur la page du bot ? Tu as invités ton bot avec cet fonctionnalité ?
jpeux juste aller dans le package
ouaip
enfin j'crois
Faut être sûr pour le coups 😂
j'essaye
Et tu descents pour avoir l'URL
déjà*
Refais au cas ou
Ok ok
Ba que les intents oui
Ce que ta besoin 
Il y en as 3
Fait un node -v
ça fonctionne
j'avais juste mal écris message aussi
sauf que quand j'essaye la commande
il me met
L’application ne répond plus
sur le discord
Normal ta commande et pas complet
Ta juste créé une commande vide
c'est dur la v13 😭
En fait, ton Intents.FLAGS.GUILDS_MESSAGE existe pas en fait
L'astuce c'est que il faut juste pas copier coller il faut comprendre ça fait quoi si non tes vite perdu 
oui c'est ce que j'fais
mais j'ai pas vu le truc
Ouii y'a pas de s à guild mais un s a message
Yes
@dire latch
est-ce que c'est dur de migrer de v12 à v13 ?
ou y'a besoin de recommencer un bot entier ?
Jsp
après tu peux passer sur une lib du genre Sheweny qui est très cool et intuitive, c'est mon avis après !
C'est possible de changer la taille de la police automatiquement si ça rentre pas dans le div ?
Ton code ?
les gars
j'aimerai que après qu'il m'ait demandé le pseudo que je veuxet que j'ai répondu, il me demande
le mots de passe que je veux mettre
je viens de creer mon index.js pour mon bot en suivant une vidéo
et quand je le lance il me met
alors qu'il y a deux heures tout marchait tres bien. voici mon code:
require('dotenv').config();
//-------------------------------------
const fs = require('fs');
const { REST } = require('@discordjs/rest');
const { Routes } = require('discord-api-types/v9'); //importaion des diff modules utilisés
const { Client, Collection, Intents } = require('discord.js');
//-------------------------------------
const client = new Client({ intents: [
Intents.FLAGS.GUILDS, //création du client
Intents.FLAGS.GUILD_MESSAGES
] });
//-------------------------------------//
const commandFiles = fs.readFileSync("./commands").filter(file => file.endsWith(".js"));
const commands = [];
client.commands = new Collection(); //sys de commandes
for (const file of commandFiles) {
const command = require(`./commands/${file}`);
command.push(command.data.toJSON());
client.commands.set(command.data.name, command);
}
//-------------------------------------//
client.once("ready", () => {
console.log("Le bot est connecté");
const CLIENT_ID = client.user.id;
const rest = new REST({
version:"9"
}).setTokent(token);
(async () => {
try {
if (process.env.ENV === "production") {
await rest.put(Routes.applicationCommand(CLIENT_ID), {
body: commands
});
console.log("Les commandes sont enregistrées globalement");
} else {
await rest.put(Routes.applicationCommand(CLIENT_ID, process.env.GUILD_ID), {
body: commands
});
console.log("commandes sont enregistrées localement ");
}
} catch (err) {
if (err) console.log(err);
}
})
});
//-------------------------------------
client.login(process.env.TOKEN);
Bonsoir, quelqu'un peut m'aider ?
bot.user.setPresence({ activity: { name: `${bot.users.cache.size} members` , type: 'WATCHING'}, status: 'online' })
J'ai ça de base, et après une minute je veux que le status change pour, exemple : "Bonsoir". L'autre minute d'après je veux que le nombre de membres soit à nouveau affiché sur le status, comment je peux faire ?
Y'a des dev qu'ont déjà utilisé socket.io ici ? Je pette mon crâne sur un rien c'est chaud.
J'ai une entière classe qui créer un serveur WebSocket avec socket.io, elle y attends un message envoyé depuis mon front (client) : client ---> serveur
dès qu'elle le reçois elle re emmet un message à l'utilisateur et à un autre utilisateur spécifié : serveur ---> client
Sauf que ce connard de receiverSocket il veux pas recevoir, en revanche socket (l'utilisateur ayant emit "message") lui reçoit..
Le fucking to() est broken
Hey, il faut que tu fasses un setInterval
Qlq peut m’aider ?
J'ai regarde sur internet y'a sa qui tombe H24
est ça m'avais aider
si
sa ne regle pas
Ping moi ^^
ça marche 🙂
Hey, il y a une différence d'utilisé bot.on et bot.once ? 🤔
On -> trigger à chaque fois
Once -> une seule fois
Ok
Montre le haut de ton code stp🤔
Non c'est réglé, discord bloque le temps de reply à 3 secondes donc faire faire un defer avant attendre et envoyer le reply
Ok, je voulais check si tu avais pas fait ton module en once qui fait le même Bug bon a savoir le délais
Yop, j'ai un petit soucis en react, j'ai un élément qui doit être chargé une fois que la page a chargé, car cet élément a besoin de récupérer des informations autrement il affiche la mauvaise chose.
J'ai mes classes pour vérifier quand le composant est généré, et quand il est détruit, ils ont tout deux un listener pour écouter quand la page est chargée et l'autre pour détruire l'event.
Ces events font qu'une fonction sera appelée, je l'appelle et pourtant j'ai plus rien
Montre ton code

Bonjour est ce que quelqu'un sait comment faire en sorte que son bot puisse changer les permissions d'un salon s'il vous plaut
La doc de 
➜ management.getPermissionWarningsByManifest()
Example:
var gettingWarnings = browser.management.getPermissionWarningsByManifest(
manifestString // string
)
➜ permissions
Consulte la page pour voir + de détails :ok_hand:
➜ management.getPermissionWarningsById()
Example:
var gettingWarnings = browser.management.getPermissionWarningsById(
id // string
)
Let’s go
C’est pas du tout ça mdrrr
Cherche permissionOverwrites sur la doc de nodejs
ok
Nodejs ? 
:_: GuildChannel#permissionOverwrites
A manager of permission overwrites that belong to this channel
merci ca marche
carré
Bonsoir, je me remet doucement au bot discord et j'aimerais savoir si c'est possible d'empecher les joueurs d'inviter mon bot sur leur serveur ?
Sur le panel de gestion de ton bot directement
Sur l’API de discord
Tu peux choisir si ton bot est public ou private
je peut pas desactiver sa me dit qu'il ne peut pas y'avoir de champ d'installation ^^
🤔
je suis desoler, je decouvre ^^
oui oui ^^
Ba c'est good alors
non justement c la que sa m'ecrit qu'il ne peut pas y'avoir de champ d'installation ^^
oui mais sa recoche le public bot tout seul xd
en bas de ma page ?
Oui
juste ca
oui et quand je clique sur save change j'ai le msg rouge qui apparait
Il faut que tu désactives le bouton "Ajouter le bot"
sinon ça ne marchera pas
il est où ce bouton ? ^^
Integrate your service with Discord — whether it's a bot or a game or whatever your wildest imagination can come up with.
Ou sinon ici
je viens de reinstaller node.js pour le mettre a jour mais vsc ne detecte plus node.js "aucun debogueur dispo"
Essaye de redémarrer ton pc @white sedge
je viens de le redemarer
eeet
ca ne marche pas
Ah
Et sans le debug, sa fonctionne ?
nan
node -v ?
derniere version
Mais sa fonctionne quand tu le fais ?
Utilise le terminal de Windows au pire
Bonjour est ce que quelqu'un sait si la propriété startsWith marche toujours ?
Oui
Ah bon ? J'ai essayer ça
const pseudo = "test"
client.on('messageCreate', (message) => {
if(message.author.bot) return;
if(message.conent.startsWith(pseudo)){
message.channel.send("ok")
}
})
conTent
oh
ça marche houra
Pour une lettre
Alors juste le bot me renvoie 3 fois "ok"
Alors que j'ai mis if(message.author.bot) return;
Oui
Oui oui je sais maintenant
Est-ce qu’il n’a pas été démarré sur plusieurs terminaux ?
non non
Essaie de remplacer le
message.channel.send("ok") par message.reply("ok")
Comme ça, on va pouvoir voir si c’est lui qui déclenche l’évènement ou si c’est toi qui le déclenche 3 fois
ça répond 3 fois UwU
Au même message ?
oui
Ok
C'est le cas de le dire
Je peux avoir l’entièreté du fichier ?
Met le sur pastebin
x)
Je vais t'envoyer le dossier au pire
Oui xD
Fin donnes-moi sans les modules
Ça sent juste le triple process
Ah merde
À plein nez
euh attends cliques pas
Je l’ai testé sur un autre pc et j’ai eu le mm résultat, je pense que c’est le script qui fait ça
process avec le token ?
Bizarre
Oui
Encore plus bizarre quand je lançais le prog et qu’il marchait il y avait une autre err « discord /rest n’est pas installé » alors que je l’avais installé et quand je regarde dans les modules de node bah discord/rest a été supprimé
Ah
Je pense que je vais revenir à discordjs v12
Je te conseille pas
Parce que bientôt, elle risque de ne plus pouvoir être utilisée :/
j'ai des gros gros gros problème avec mon code, pour save une image d'un post.
Contexte :
je code en javascript, dans le but de faire un réseau social.
j'utilise mongo db, mais pas en local, je me connecte directement au serveur de mongodb
j'utilise aussi express, axios, multer.
J'ai démarrer le projet il y a 4 mois et je n'arrive pas à régler ce problème, le problème a l'aire d'être simple c'est une histoire d'enregistrement du nom du fichier. je pense que les fichiers ou je me suis trompé son les routes ou post.controller.js
Tout mon code est disponible sur mon github, et mon réseau social est actuellement déployé https://f1network.social
Web site created using create-react-app
Contribute to Melvil-Ferreira/f1-twitter development by creating an account on GitHub.
SVP c'est vraiment urgent
Faut expliquer ton problème
en gros j'ai remarqué quele nom de mon image qui est dans ma base de donnés n'est pas le bon nom qu'elle devrait avoir
et voila dans mongo db
Dans ta base de données, tu rajoutes Date.now()
Mais du coup, c'est quoi qui n'est pas bon ?
Parce que le code fait exactement ce que tu veux x)
le nom de l'image qui est enregistrer ne correspond pas au nom dans la base de données du post
Modifie le ?
je sais plus comment faire, je me suis perdu avec tout les tests que j'ai fais 😭
voila mon post.routes.js
const router = require("express").Router();
const {
readPost,
createPost,
updatePost,
deletePost,
likePost,
unlikePost,
commentPost,
editCommentPost,
deleteCommentPost,
} = require("../controllers/post.controller");
const multer = require("multer");
const path = require("path");
//upload
const storage = multer.diskStorage({
destination: function (req, file, cb) {
cb(null, `${__dirname}/../client/public/uploads/posts/`);
},
filename: function (req, file, cb) {
cb(null, Date.now() + path.extname(file.originalname));
},
});
var upload = multer({ storage: storage });
router.get("/", readPost);
router.post("/", upload.single("file"), createPost);
router.put("/:id", updatePost);
router.delete("/:id", deletePost);
router.patch("/like-post/:id", likePost);
router.patch("/unlike-post/:id", unlikePost);
router.patch("/comment-post/:id", commentPost);
router.patch("/edit-comment-post/:id", editCommentPost);
router.patch("/delete-comment-post/:id", deleteCommentPost);
module.exports = router;
Non mais explique ton problème, j'ai ton code sous les yeux
C'est le fichier hard le soucis ?
Fichier "hard" = le fichier sur ton disque
Le fichier "soft" = ton objet équivalent en db (ta table user_files par exemple ou bien un objet js)
C'est pour différencier sinon on se comprend jamais quand on dev un cloud etc
d'accord est bah écoute je ne sais pas
c'je me mélange tout le temps
Bah si tu me dis que le nom est pas bon, c'est le fichier hard ou bien l'entré en db ?
C'est ton code quand même...
?
c'est le fichier soft
Donc ta base de données
Quelle est le champ qui est pas bon ? Quelle est sa valeur et quelle devrait être sa valeur ?
Quelle devrait être la valeur ?
Regarde ton code, tu fais n'importe quoi dans ton post
la valeur qui est pas bonne
Tu saves ton fichier directement dans ton rep de stockage, du coup multer lui génère un UID
Ensuite toi tu vas faire
"./uploads/posts/" + Date.now() + req.body.posterId + ".jpg"
Donc tu vas faire un autre ID
Déjà pour commencer tu n'utilises jamais les data envoyer par le client pour stocker un fichier
Tu prend le fichier tu le stockes sous un UID sans extension dans un rep temporaire, tu fais une entrée dans ta db avec le nom et l'extension
Ensuite tu le move/rename là où tu veux
ok mais ça je sais pas comment faire
Commence par comprendre le processus, ensuite tu décomposes et tu peux pas te rater c'est que des actions basiques
Le plus "dur" c'est le multer et il est déjà fait
tu aurais un site/vidéo ?
Pour quelle partie
tout ça
Là
Maintenant suffit d'une demi reflexion
Et honnêtement je te conseille de restructurer ton code
Ok
Ok merci
Tu as compris ce qui allait pas ?
Me dit pas oui juste pour me faire plaisir
En gros de ce que j’ai compris, il faut que je fasse un dossier « temporaire » pour que je Check les infos du fichier et puis là je le renomme est le mets dans le bon dossier
Dans le processus optimal oui
Mais dans ton code actuel
Là je sais pas
Ligne 39
Je réfléchis
Essaie de comprendre ce que ton code fait, plus précisément Multer
bah la ligne 39 elle me permet 'enregistrer l'image dans le dossier uploads/posts/, puis je la renomme avec la date et le nom du poster id et au forma jpg
Non la ligne 39 tu formates juste une chaine de caractères
ah
`./uploads/posts/${req.file.filename}.jpg`
Quelque chose dans le genre plutôt non ?
Bon on devrait pas stocker un path mais bon vu que tu le fais comme ça, why not
Ok
Avec cette ligne tu aura la bonne valeur en db, tu comprends pourquoi ?
Si oui, je te laisse faire le reste
je comprends un peut mieux, mais j'ai plus la date maintenant
Pourquoi tu as besoin de la date ?
Bah tu l'as dans la raw de la db
Et puis faire du mongodb c'est de la merde ici btw
Mais bon
tu serais pas intéressé pour recodé de façon plus sécurisée cette partie là en échange d'une rémunération ?
Honnêtement il y a 3 lignes à écrire, c'est un peu du vol de faire payer pour ça
Je préfère te guider, sa sert à rien que je te fasse toute une infra que tu ne pourras pas manage
Si tu as du temps (et l'envie de faire bien les choses) on peut le faire mais je te guidera uniquement (quelques lignes pour dépanner de temps en temps)
Mais il y a beaucoup à faire donc c'est ton choix
Si jamais
Pour générer un UID (nom du fichier sur le disque) : https://www.npmjs.com/package/uuid
Pour déplacer/rename des fichiers : https://www.npmjs.com/package/fs-extra
je pense qu'il faudrait recode les controller post et user, les routes aussi
A refaire, il faudra restructurer le code
Séparer les utils
Séparer la logique métier
Gérer tes erreurs proprement
Typer avec typescript se serait ++
Formater et forcer ton code à être plus linéaire (respecter toujours les mêmes règles) avec eslint et prettier pour la forme
Utilise une db adaptée à ton besoin
Tirer l'avantage d'un fichier de config (et setup un env de dev ça peut être cool)
mise en place d'un core
Perso je préfère séparer mon front et mon back dans deux répo et les mettre dans un git group, je trouve plus propre mais c'est pas non plus la mort
(j'ai pas regarder le code de ton front)
Non moi je t'aide gratuitement
Honnêtement je viens pas chercher du boulot, et même si c'était le cas, je te rassure je gagne très bien ma vie, je le ferais bénévolement ou à l'euro symbolique
Non mais comme dit, je cherche pas de boulot, j'ai déjà bien à faire, je profite juste de mes pauses pour aider
tu connaitrais pas quelqu'un pour le faire ?
Bah après on est sur GCA, tu postes une offre t'aura bien un dev pour te le faire, mais c'est dommage je trouve
Rien te garantis que le dev va pas faire de la merde d'ailleurs ^^
je sais mais j'en peux plus de se projet je pete un calbe
Pourquoi ? Trop long ?
Il est a destination de quoi ? Ton CV ou c'est pour lancer un projet "réel" ?
Tu es dessus depuis cb de temps ?
4 mois
depuis debut novembre
Bon si tu as besoin d'aide tu me dis
ca signifie quoi ça Séparer la logique métier ?
Tu sais c'est quoi la technique et la logique métier ?
non
La logique métier c'est ce qui est lier à ton app, toi tu fais un réseau social avec des postes, des images des commentaires
La technique c'est comment tu vas l'atteindre en gros
ah ok
bon j'ai réfléchi est j'ai décidé de le faire moi même, même si j'ai fais une demande de dev
qu'est ce que je dois faire pour que les images fonctionnes
C'est une des solutions parmi d'autres
Oui
Je te conseille d'utiliser un IDE plus adapté d'ailleurs (VSC est gratuit par exemple)
Tu dev sur un rPi ?
non sur mon pc principale avec Vscode
mais la je fais le changement directement sur le raspberry
okok
Ah oui retire juste le .jpg dans la concatenation
bonjour excuser moi de déranger un dimanche, j'ai quelque question au sujet des bots discord, quelqu'un pourrait-il y répondre ? ^^
hello le mieux c'est de poser directement ta question
j'en ait plusieur en réalité^^
je voudrait savoir:
-comment faire pour que le message sois envoyé dans un certaint channel
- qu'elle est l'intent pour la creation de channel ainsi que la ligne pour la creation de channel
let channelName = args.slice(0).join(' '); //Arguments to set the channel name
message.guild.channels.create(channelName, {
type: "text", //This create a text channel, you can make a voice one too, by changing "text" to "voice"
permissionOverwrites: [
{
id: message.guild.roles.everyone, //To make it be see...
avec ca tu devrais comprendre comment ca marche
il ne nécessite pas un intent supplémentaire pour la creation de channel ?
me semble pas
d'accord merci beaucoup !^^
tu le verra vite si ca marche pas
Salut j'ai besoin d'aide : voici mon erreur : Uncaught TypeError: Cannot read properties of undefined (reading 'content') et voici mon code : client.on("message", (member, message) => { if (message.content.startsWith("setprefix")) { if (message.member.hasPermission("ADMINISTRATOR")) { if (message.content.length > 11) { configprefix = message.content.slice(9); console.log(configprefix) } } } })
l'event message ne prend qu'un paramètre il me semble
du coup message que tu déclares en 2ème est undefined
donc tu peux juste virer le member et laisse uniquement message ce sera bon @wild bramble
Ouaip c'est bon est le hasPermission n'existe plus en discord v13 ? car il me met une erreur
J'aurais une autre question comment je fais pour récupérer l'id d'un serveur dans un guildCreate ?
maintenant que mon bot marche mes slash commandes n'apparaissent pas
je n'ai plus d'idee
voici mon code
Documentation suggestion for @wild bramble:
:_: GuildMember#permissions
The overall set of permissions for this member, taking only roles and owner status into account
Y a jusqu'à 1h de cache
ca fais 3 h
Montre ton clde
il ne s'envoi pas
Documentation suggestion for @wild bramble:
:_: (event) Client#guildCreate
Emitted whenever the client joins a guild.
Mm
//-------------------------------------
const fs = require('fs');
require('dotenv').config();
//const dotenv = require('dotenv');
const { REST } = require('@discordjs/rest');
const { Routes } = require('discord-api-types/v9'); //importaion des diff modules utilisés
const { Client, Collection, Intents } = require('discord.js');
//-------------------------------------
const client = new Client({ intents: [
Intents.FLAGS.GUILDS, //création du client
Intents.FLAGS.GUILD_MESSAGES
] });
//-------------------------------------//
const commandFiles = fs.readdirSync("./commands").filter(file => file.endsWith('.js'));
const commands = [];
client.commands = new Collection();
for (const file of commands) {
const command = require(./commands/${file});
commands.push(command.data.toJSON());
client.commands.set(command.data.name, command);
}
//const envConfig = dotenv.parse(fs.readFileSync('.env'))
//for (const k in envConfig) {
// process.env[k] = envConfig[k]
//}
//-------------------------------------//
client.once("ready", () => {
console.log("Le bot est connecté");
const CLIENT_ID = client.user.id;
const rest = new REST({
version:"9"
}).setToken(process.env.TOKEN);
(async () => {
try {
if (process.env.ENV === "production") {
await rest.put(Routes.applicationCommands(CLIENT_ID), {
body: commands
});
console.log("Les commandes sont enregistrées globalement");
} else {
await rest.put(Routes.applicationGuildCommands(CLIENT_ID, process.env.GUILD_ID), {
body: commands
});
console.log("les commandes sont enregistrées localement ");
}
} catch (err) {
if (err) console.log(err);
}
})();
});
//-------------------------------------
client.login(process.env.TOKEN)
Envoi le fichier directement
client.once("ready", async(bot) => {
try {
await rest.put(Routes.applicationGuildCommands(IDBOT, IDDISCORD), {body: Array.from(bot.interactions.values())});
} catch (err) {
console.error(err);
}
});
Ceci je pense
merci je vais tester
ca marche pas ca me rajoute des err
Ah 🤔
je devais bien le mettre comme ca ?
console.log("Le bot est connecté");
const CLIENT_ID = client.user.id;
const rest = new REST({
version:"9"
}).setToken(process.env.TOKEN);
(async(bot) => {
try {
await rest.put(Routes.applicationGuildCommands(IDBOT, IDDISCORD), {body: Array.from(bot.interactions.values())});
} catch (err) {
console.error(err);
}
})();
});```
Pk tu met async bot ?
Tu met le bot dans ton client.once
Même pas besoin même
client.once("ready", () => {
console.log("Le bot est connecté");
const CLIENT_ID = client.user.id;
const rest = new REST({
version:"9"
}).setToken(process.env.TOKEN);
try {
await rest.put(Routes.applicationGuildCommands(IDBOT, IDDISCORD), {body: Array.from(client.interactions.values())});
} catch (err) {
console.error(err);
}
});```
quelqu'un peu m'aider avec mon code s'il vous plait ..
Code + erreurs
okay je dois ecrire quoi pour avoir la forme code discord stp
comme ci dessus
merci
Error: Cannot find module 'C:\Users\alexb\Desktop\v2 cookie bot\Events\bot\index.js'
at Function.Module._resolveFilename (node:internal/modules/cjs/loader:933:15)
at Function.Module._load (node:internal/modules/cjs/loader:778:27)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)
at node:internal/main/run_main_module:17:47 {
code: 'MODULE_NOT_FOUND',
requireStack: []
}
erreur
et
/**@format */
const Discord = require("discord.js")
const Client = require("./Client")
/**
* @template {keyof Discord.ClientEvents} K
* @param {Client} client
* @param {Discord.ClientEvents[K]} eventsArgs
*/
function RunFuction(client, ...eventsArgs)
/**
* @template {keyof Discord.ClientEvents} K
*/
class Event {
/**
* @param {K} event
* @param {RunFuction<K>} runFunction
*/
constructor(event, runFunction) {
this.event = event;
this.run = runFunction
}
}
module.exports = Event;
@dire latch j'ai trouve mon err
for (const file of commandFiles)
au lieu de commandFiles j'avais mis commands
maintenant j'ai les slash commands
Salut, j'ai un petit problème j'ai rajouter une commande et maintenant sa m'affiche sa dans le terminal quand je veux lancer le bot C:\Users\gabri\Documents\BambouBot\index.js:16 bot.commands.set(props.config.name, props)
C’est mieux avec le code pour que quelqu’un puisse t’aider
Salut, j'ai un problème : Uncaught TypeError: Cannot read properties of undefined (reading 'send') et voici mon code : client.on("guildMemberAdd", message => { let welcomechannel = client.channels.cache.get(config?.welcomechannel); welcomechannel.send(config?.welcomessage) })
Pourquoi config? @wild bramble
Car mon message est stocker dans un fichiers configs
🤔
Mais même si au lieu de mettre ça je met par exemple : bonjourj'ai toujours l'erreur
C'est pas mieux defaire client.channels.cache.get("id de ton salon").send("Message de bienvenue") ?
J'ai toujours une erreur
et c'est la même
Le channel n'est pas présent en cache
C'est à dire ? Car si il existe mon channel
Le channel n'est pas présent dans le cache, tu dois donc le fetch 🤔
T'es sure ?
Si le channel existe, oui
néanmoins
le problème peut aussi venir de config?.welcomechannel
Car dans le fichier json j'ai bien mon welcome channel qui apparaît
c'est ce a quoi j'ai penser aussi
Ok
channels n'existe pas dans client surtout
Avant de récupérer un channel tu dois récupérer une guild
Hello, j'ai un soucis avec mon bot, j'ai voulu faire un role dont la couleur change toutes les 2 secondes, ça à marché hier puis plus d'un coup
Et pourtant j'ai pas été rate limit, je sais pas ou est le problème
(J'ai mis find et pas get parce que de base je cherchais le role par nom)
client.on("guldMemberAdd", member => {
let welcomechannel = client.guilds.cache.get("id de la guild").channels.cache.get(config?.welcomechannel):
welcomechannel.send(config?.welcomemessage);
})
Documentation suggestion for @red torrent:
:_: Client#channels
All of the [Channel](<https://discord.js.org/#/docs/discord.js/stable/class/Channel>)s that the client is currently handling, mapped by their ids - as long as sharding isn't being used, this will be every channel in every guild the bot is a member of. Note that DM channels will not be initially cached, and thus not be present in the Manager without their explicit fetching or use.
Si 
pourquoi t'as mis +1 ?
color : colors[Math.floor(Math.random() * colors.length)]
Math.floor(Math.random() * 10)
// output: Random entre 1 et 9
Math.floor(Math.random() * 11)
// output: Random entre 1 et 10
Mais du coup le problème viens pas du code, on dirait que mon bot est genre soft ban de cette fonctionnalité
Un genre de rate limit
C’est entre 0 et 9
Quand tu mets + 1 il cherche une valeur qui n’existe pas dans ton array
Et essaye de mettre une couleur undefined et fait crash ton bot
??
Sinon oui, changer la couleur d'un rôle toutes les deux secondes c'est la pire idée
Ensuite
Le .length renvoie déjà + 1 par rapport à l'index maximum, donc tu as une chance d'avoir une valeur qui est index out of range
Ah et sinon
Ton code n'est pas bon x)
C'est pas ce qu'a fait Sam
j'ai changé merci
mais voila tu tombes quand même sur un undefined
Mais l'erreur persiste oui, du au fonctionnement de la property .length d'un array
Slt les gens je fais un programme pr verifier si un triangle est rectangle sur ses trois cotés mais du coup j'ai un doute jsp si ca fonctionne ```js
var a, b,c, somme;
a = prompt("Donnez la valeur d'un des cotes");
b= prompt("Donnez la valeur d'un autre cote:");
c= prompt("Donnez la valeur de l'hypoténuse :");
a = parseFloat(a);
b = parseFloat(b);
c = parseFloat(c);
valeur1 = aa;
valeur2 = bb;
valeur3 = c*c;
somme = valeur1 + valeur2;
cote_rectangle_a = valeur3
if (Math.sqrt(somme)==Math.sqrt(cote_rectangle_a))
{ alert("Triangle est rectangle");
} else {
alert("Triangle non rectangle");
}
somme1 = valeur2 + valeur3;
cote_rectangle_b = valeur1
if (Math.sqrt(somme1)==Math.sqrt(cote_rectangle_b))
{ alert("Triangle est rectangle");
} else {
alert("Triangle non rectangle");
}
somme2 = valeur3 + valeur1;
cote_rectangle_c = valeur2
if (Math.sqrt(somme2)==Math.sqrt(cote_rectangle_c))
{ alert("Triangle est rectangle");
} else {
alert("Triangle non rectangle");
}
function checkTriangleRectangle(a, b, c)
{
if (a*a + b*b == c*c || a*a + c*c == b*b || c*c + b*b == a*a){
return true;
}
else{
return false;
}
}
if(checkTriangleRectangle(3, 4, 5)){
console.log("c'est un triangle rectangle");
}
else{
console.log("ce n'est pas un triangle rectangle");
}
voila l'ami comme ton but est de seulement voir si c'est un triangle rectangle pas besoin de refaire des racine carré après
bah par contre
si tu demandes déjà les côtés précis
pas d'intérêt de faire plusieurs conditions
si si il faut que je fasse pr les trois cotes
ah oui ok c vrm beaucoup plus réduit que le code du début
Mais si tu demandes
a = prompt("Donnez la valeur d'un des cotes");
b= prompt("Donnez la valeur d'un autre cote:");
c= prompt("Donnez la valeur de l'hypoténuse :");
ça a pas trop de sens

mais sinon oui x)
Je sais mais on m'a dit qu'il faut faire pr les trois cotés c'est peut-etre mon code qui est juste mal fait
ici ca fait pr les trois cotes c'est parfait merci beaucoup
pas de quoi
Bonsoir, je voulais savoir comment on fait comme avoir un site web connecté à son bot discord comme avec le bot discord de GCA
Oauth pour l'authentification discord
ok
Quelqu'un pourrais m'aider sur sa ?
Est-ce que tu peux screen le debut de cette erreur s'il te plaît ?
@hidden cypress
Salut, je doit passer ce code en v13, j'ai une erreur disant que user et pas défini
pouvez vous m'aider ? https://i.imgur.com/e1BpPvQ.png
je me mets sur mon pc et je check ça
owner.user ça n'existe pas
.owner te retourne déjà l'user
J'ai du mal lire la doc
Yep, ça ne retourne pas un member
Donc j'enleve les .user
Oui
Nope
Ca n'existe pas
Ha !
Faut utiliser /docs
L'erreur et que username n'est pas défini*
Il n'est pas défini parce que owner n'existe pas
Donc tu ne peux pas récupérer l'username de quelque chose qui n'existe pas
:_: UserManager (extends CachedManager)
Manages API methods for users and stores their cache.
C'est pas sa je crois x)
Je t'ai send la solution ici
Tu as aussi une méthode guild.fetchOwner() si tu veux aller plus vite
Merci
const guildOwner = await message.guild.fetchOwner();
console.log(guildOwner.user.tag);
// output : Lartaxx#8301
guildOwner est un GuildMember donc la ici il manquerait la propriété user avant tag
c'était pour voir si tu suivais 👀
Mensonge, jreconnais
return;
return console.log('Error 404 not found');
:_: Guild#ownerId
The user id of this guild's owner
Hello
Je suis entrain de faire un systeme de register avec sequelize et je voudrais savoir comment je peux faire pour executer la creation de l'utilisateur
router.post("/api/users/create", (req, res) => {
console.log(req.body)
User.findOne({ where: {
name: req.body.name,
password: req.body.password
}}, async (err, doc) => {
console.log(doc)
if (doc) res.send("User Already Exists");
if (err) throw err;
if (!doc) {
const hashedPassword = await bcrypt.hash(req.body.password, 10);
const newUser = await User.create({
name: req.body.name,
password: hashedPassword,
});
await newUser.save();
res.send("User Created");
}
});
});
Ca ressemble a mongodb ton truc non ?
après d'après ton code ca devrais marcher
C est Sequelize pr mysql2
Merci, mais je ne peux pas le mettre sur mon code, enfin si surement, mais je ne sais pas ou...
je vois pas ou je peux le mettre avec mon embed
Possibilité de m'aider ?
tu remplace ca
Je débute, et je te promet que je comprend pas x)
on peut pas mettre un consol log dans un embed, enfin je crois pas..
Tu connais les bases du js ?
Oui
Vu la question que tu viens de poser je ne pense pas, je te conseille d'apprendre avant 😉
A l origine c est mongodb mais je voudrais la passer sous mysql
+1
pour passer au mysql tu peux utiliser le module mysql qui est ressemblant au PHP mais c'est du js.
Tu peux utiliser un ORM pour garder cette logique d'objet (sequelize par exemple)
Euh

Bien vu j'avais pas lu :p
Pas de callback avec sequelize
Inutil de .save si tu .create. Le .save c'est uniquement si tu build une instance à la main ou bien que tu en modifies une
Valide les données utilisateurs avant de les utiliser
Wesh il y a des gens qui font du extends script, c'est un langage type javascript qui permet d'automatiser les logiciel adobe
alors voila la j'essaye d'ajouter un effet a un clip mais ca ne marche pas mais pour autant je n'ai pas d'erreur voila mon code, merci de votre aide
app.enableQE();
var qeTrack = qe.project.getActiveSequence().getVideoTrackAt(0);
if (qeTrack){
var qeClip = qeTrack.getItemAt(0);
if (qeClip){
var effectToAdd = qe.project.getVideoEffectByName("Crop");
if (effectToAdd){
qeClip.addVideoEffect(effectToAdd);
}
}
}
mentionnez moi svp
Une de tes trois conditions n’est pas remplie, essaye de debug ton code tu trouveras sûrement l’erreur
Re



