ΠΊΠΎΠ΄ Π΄Π»Ρ Π±ΠΎΡΠ° Π² Π΄ΠΈΡΠΊΠΎΡΠ΄ Π½Π° js
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π±ΠΎΡΠ° ΠΠΈΡΠΊΠΎΡΠ΄ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ discord.js
ΠΡΠ΅Π΄ΡΡΡΠΎΡΠΈΡ
Π― Π·Π°ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ²Π°Π»ΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ΠΌ Π±ΠΎΡΠ° Π΄Π»Ρ Discord, Π½ΠΎ Π²ΡΡ ΡΡΠΎ Ρ Π½Π°ΡΡΠ», Π±ΡΠ»ΠΎ ΠΏΠ°ΡΡ Π²ΠΈΠ΄Π΅ΠΎ Π½Π° YouTube, Π΄Π° ΠΈ ΡΠΎ ΡΠ°ΠΌ ΠΏΡΠΎΡΡΠΎ ΠΏΠΈΡΠ°Π»ΠΈ ΠΊΠΎΠ΄, Π±Π΅Π· Π²ΡΡΠΊΠΈΡ ΠΏΠΎΡΡΠ½Π΅Π½ΠΈΠΉ. ΠΠΎΡΡΠΎΠΌΡ Ρ Ρ ΠΎΡΡ Π½Π°ΡΠ°ΡΡ ΡΠ΅ΡΠΈΡ ΡΡΠ°ΡΠ΅ΠΉ ΠΏΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π±ΠΎΡΠΎΠ² Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ discord.js.
ΠΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠΎΠΊΠ΅Π½Π° Π±ΠΎΡΠ°
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π·Π°ΠΉΡΠΈ Π½Π° ΡΡΡΠ°Π½ΠΈΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ Π½Π°ΠΆΠ°ΡΡ New Application.
ΠΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ, Π½Π°ΠΌ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ°Ρ Π½Π°Π·Π²Π°ΡΡ Π½Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΠ²ΠΎΠ΄ΠΈΠΌ ΠΆΠ΅Π»Π°Π΅ΠΌΠΎΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Create. ΠΡ ΠΏΠΎΠΏΠ°Π΄Π°Π΅ΠΌ Π½Π° ΡΡΡΠ°Π½ΠΈΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π³Π΄Π΅ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠΌΠ΅Π½ΡΡΡ Π½Π°Π·Π²Π°Π½ΠΈΠ΅, Π°Π²Π°ΡΠ°Ρ, ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΈ ΡΠ΄. ΠΠΎ Π½Π°ΠΌ ΡΡΠΎ ΠΏΠΎΠΊΠ° Π½Π΅ Π½ΡΠΆΠ½ΠΎ, ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ Π²ΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΡ Bot. Π ΡΠΎΠ·Π΄Π°ΡΠΌ Π±ΠΎΡΠ°.
ΠΡΡΠ°Π»ΠΎΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ ΡΠΎΠΊΠ΅Π½.
ΠΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ° ΡΡΠ΅Π΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° Π½ΡΠΆΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Node.js ΠΈ Visual Studio Code (VS code), Π² ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΌ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ ΠΈ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡΡ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π±ΠΎΡΠ°. ΠΠ°ΠΏΡΡΠΊΠ°Π΅ΠΌ VS code. ΠΡΠΊΡΡΠ²Π°Π΅ΠΌ ΠΏΠ°ΠΏΠΊΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π±ΡΠ΄Π΅Ρ Ρ ΡΠ°Π½ΠΈΡΡΡ Π½Π°Ρ Π±ΠΎΡ. ΠΠ°ΠΆΠΈΠΌΠ°Π΅ΠΌ ΠΠΈΠ΄->Π’Π΅ΡΠΌΠΈΠ½Π°Π», ΠΏΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π² Π½ΠΈΠΆΠ½Π΅ΠΉ ΡΠ°ΡΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΡΠ²ΠΈΡΡΡ ΡΠ΅ΡΠΌΠΈΠ½Π°Π».
ΠΠ°ΠΏΠΈΡΠ°Π½ΠΈΡ «ΡΠ΅Π»Π°» Π±ΠΎΡΠ°
ΠΠ»Ρ Π½Π°ΡΠ°Π»ΠΎ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π±ΠΎΡΠ°.
ΠΠΎΡΠ»Π΅ Π²Π²ΠΎΠ΄Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΠΎΠ½Π° Π±ΡΠ΄Π΅Ρ ΡΠΏΡΠ°ΡΠΈΠ²Π°ΡΡ Π²Π°Ρ Π΄Π°Π½Π½ΡΠ΅ ΠΎ Π±ΠΎΡΠ΅ (ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΡΠ°Π²ΠΈΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, ΠΏΡΠΎΡΡΠΎ Π½Π°ΠΆΠ°Π² Enter). Π ΠΊΠΎΠ½ΡΠ΅ ΠΎΠ½Π° ΡΠΏΡΠΎΡΠΈΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ Π»ΠΈ Π²ΡΡ ΡΠΊΠ°Π·Π°Π½ΠΎ ΠΈ Π²ΡΠ²Π΅Π΄Π΅Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠ΅ ΠΎΡΠ²Π΅ΡΡ.
ΠΠΎΡΠ»Π΅ Π²Π²ΠΎΠ΄Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΠΎΠΆΠ΄Π°ΡΡ.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅! ΠΠΎΡΠ»Π΅ Π²Π²ΠΎΠ΄Π° ΠΊΠΎΠΌΠ°Π½Π΄, ΠΌΠΎΠ³ΡΡ ΠΏΠΎΡΠ²ΠΈΡΡΡ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ, Π½Π΅ Π±ΠΎΠΉΡΠ΅ΡΡ, Π½ΠΈΡΠ΅Π³ΠΎ ΡΡΡΠ°ΡΠ½ΠΎΠ³ΠΎ.
ΠΡΠ»ΠΈ Π²Ρ Π²ΡΡ ΡΠ΄Π΅Π»Π°Π»ΠΈ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ, ΡΠΎ Π² ΠΏΠ°ΠΏΠΊΠ΅ Π±ΠΎΡΠ° Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅.
ΠΠ°Π»Π΅Π΅ ΡΠΎΠ·Π΄Π°ΡΠΌ ΡΠ°ΠΉΠ» botconfig.json, Π·Π΄Π΅ΡΡ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ Ρ ΡΠ°Π½ΠΈΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π±ΠΎΡΠ°.
Π’Π΅ΠΏΠ΅ΡΡ ΡΠΎΠ·Π΄Π°ΡΠΌ ΡΠ°ΠΉΠ» index.js, Π² Π½Π΅Π³ΠΎ ΠΊΠΎΠΏΠΈΡΡΠ΅ΠΌ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄.
Π ΠΌΡ Π½Π° ΡΠΈΠ½ΠΈΡΠ½ΠΎΠΉ ΠΏΡΡΠΌΠΎΠΉ! ΠΠΈΡΠ΅ΠΌ Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° Π±ΠΎΡΠ°.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅! ΠΡΠ»ΠΈ Π²Ρ ΠΏΠΎΠΌΠ΅Π½ΡΠ»ΠΈ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°, Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ Π΅Π³ΠΎ.
ΠΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΠΎΡΡΠ°ΡΡΡΡ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π±ΠΎΡΠ° Π½Π° ΡΠ΅ΡΠ²Π΅Ρ ΠΏΠΎ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΠΎΠΉ ΡΡΡΠ»ΠΊΠ΅.
Discord bot Π½Π° Js | ΡΠ°ΠΌΡΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ²Π½ΡΠΉ Π³Π°ΠΉΠ΄ | Discord Js 12
Π‘Π΅Π³ΠΎΠ΄Π½Ρ Π±ΡΠ΄Π΅Ρ Π΄Π΅Π»Π°ΡΡ ΠΠΈΡΠΊΠΎΡΠ΄ Π±ΠΎΡΠ° Π½Π° ΠΠΆΡΡΡ!
Π§ΡΠΎ-ΠΆΠ΅ Π½Π°ΠΌ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ?
Π’Π°ΠΊ-ΠΆΠ΅ ΡΠ²Ρ, Π½ΠΎ Ρ Π½Π΅ Π±ΡΠ΄Ρ ΠΎΠ±ΡΡΡΠ½ΡΡΡ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ Π±ΠΎΡΠ° ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ node.js, ΠΌΠΎΡ ΡΠ΅Π»Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ Π²Π°ΠΌ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» discord.js, Π° Π½Π΅ ΡΠΎ, ΠΊΠ°ΠΊ Π΄Π΅Π»Π°ΡΡΡΡ Π±Π°Π·ΠΎΠ²ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Π±ΠΎΡΠ°.
Π‘ΠΎΠ·Π΄Π°ΡΠΌ ΠΏΠ°ΠΏΠΊΡ ΡΠΊΠ°ΠΆΠ΅ΠΌ. Π½Π° ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΡΡΠΎΠ»Π΅, ΠΈ Π½Π°Π·ΡΠ²Π°Π΅ΠΌ Π΅Ρ Π»ΡΠ±ΡΠΌ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΠΈΠΌΡ Π½Π°ΡΠ΅Π³ΠΎ Π±ΠΎΡΠ°! Ρ ΠΌΠ΅Π½Ρ ΡΡΠΎ Π±ΠΎΡ Pixi (ΠΡΠ΅ ΠΏΡΠ°Π²Π° Π·Π°ΡΠΈΡΠ΅Π½Ρ, Π·Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΡ Π²Π°Ρ ΠΏΡΠΈΠ²Π΅Π΄ΡΡ ΠΊ ΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎΡΡΠΈ!)
Π ΡΠ°ΠΊ, Π΄Π»Ρ Π½Π°ΡΠ°Π»Π° ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ!
ΠΠ°Π»Π΅Π΅ ΠΏΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π΄Π°Π½Π½ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡΠΈΡΡΡΠΏΠΈΡΡ ΠΊ ΡΠΎΡΠΌΡΠ»ΠΈΡΠΎΠ²ΠΊΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ°!
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π² ΠΊΠΎΠ½ΡΠΎΠ»Ρ ΠΏΠΈΡΠ΅ΠΌ:
ΠΠ°Π»Π΅Π΅ ΠΌΡ ΠΏΡΠΎΡΡΠΎ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ enter, Ρ ΠΎΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π΅ΡΡ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ ΠΏΠΎΠ»Π΅.. ΠΡΠΎ Π°Π²ΡΠΎΡ! Π£ΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌ Π²Π°ΡΠ΅ ΠΈΠΌΡ Π½Π° ΠΠ½Π³Π»ΠΈΠΉΡΠΊΠΎΠΌ.
ΠΠ°Π»Π΅Π΅ ΡΠΎΠ·Π΄Π°ΡΠΌ ΡΠ°ΠΉΠ» config.json, index.js, ΠΈ Π² ΡΠ°ΠΉΠ» config.json ΠΏΠΈΡΠ΅ΠΌ:
ΠΠ°Π»Π΅Π΅ Π² ΡΠ°ΠΉΠ»Π΅ index.js ΠΏΠΈΡΠ΅ΠΌ:
Π§ΡΠΎ ΠΌΡ ΡΠ΄Π΅Π»Π°Π»ΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π² ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠ°Ρ , Π° ΡΠ΅ΠΏΠ΅ΡΡ ΡΠ°ΡΡΠΊΠ°ΠΆΡ Π·Π°ΡΠ΅ΠΌ Π½ΡΠΆΠ½Π° ΡΡΠ° ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄!
ΠΠ΅Π»ΠΎ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΏΠΎ ΡΠ°ΠΊΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΈΡΠ°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π² client.on(‘message’, message => <>, Π½ΠΎ ΡΡΠΎ Π½Π΅ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΠΈ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎ ΡΡΠΎΠΌΡ ΠΌΡ ΡΠΎΠ·Π΄Π°ΡΠΌ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈ Π΄Π΅Π»Π°Π΅ΠΌ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ.
Π ΡΠ°ΠΊ, Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΠΏΠ΅ΡΠ²ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ!
ΠΡΡΠΊΠ°ΠΉ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ.. ΠΊΠΎΠΌΠ°Π½Π΄Π° hi, Π±ΠΎΡ Π±ΡΠ΄Π΅Ρ ΠΎΡΠ²Π΅ΡΠ°ΡΡ Π½Π°ΠΌ ΠΏΡΠΈΠ²Π΅Ρ!
Π ΡΠ°ΠΊ. Π‘ΠΎΠ·Π΄Π°ΡΠΌ ΡΠ°ΠΉΠ» hi.js ΠΈ ΠΏΠΈΡΠ΅ΠΌ Π² Π½Π΅Π³ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
ΠΠ°Π»ΡΡΠ΅ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΠΌ Π±ΠΎΡΠ° (ΠΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ Π² ΠΊΠΎΠ½ΡΠΎΠ»Ρ ΠΈ ΠΈΠ΄ΡΠΌ ΡΠ΅ΡΠ΅Π· Π½Π΅Ρ Π² ΠΏΠ°ΠΏΠΊΡ Ρ Π±ΠΎΡΠΎΠΌ ΠΈ ΠΏΠΈΡΠ΅ΠΌ node index.js) ΠΈ Π²ΠΈΠ΄ΠΈΠΌ.
Π₯ΠΎΡΠΎΡΠΎ, Ρ Π½Π°Ρ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΎΡΡ!
ΠΠ°Π²Π°ΠΉΡΠ΅.. Π‘Π΄Π΅Π»Π°Π΅ΠΌ ΠΏΠΈΠ½Π³! (ΠΠΎΡ Π±ΡΠ΄Π΅Ρ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ Π½Π°ΠΌ Π·Π°Π΄Π΅ΡΠΆΠΊΡ ΠΊ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π² ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄Π°Ρ )
Π ΠΏΠ°ΠΏΠΊΠ΅ commands ΡΠΎΠ·Π΄Π°ΡΠΌ Π΅ΡΡ ΠΎΠ΄ΠΈΠ½ ΡΠ°ΠΉΠ» (ping.js) ΠΈ ΡΠ°ΠΌ ΠΏΠΈΡΠ΅ΠΌ:
ΠΠ°Π»Π΅Π΅ Ρ Ρ ΠΎΡΡ Π½Π°ΡΡΠΈΡΡ Π²Π°Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΠ°Π½Π΄ΠΎΠΌΠ½ΡΠΌΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΠΌΠΈ ΠΈ Π³ΠΈΡΠΊΠ°ΠΌΠΈ, Π½Ρ ΠΈ ΡΡΡΠ΅ΠΊΡΠ°ΠΌΠΈ :3
Π‘ΠΎΠ·Π΄Π°ΡΠΌ ΡΠ°ΠΉΠ» fox.js ΠΈ ΠΏΠΈΡΠ΅ΠΌ Π² Π½Π΅Π³ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
ΠΡ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΡΠ°Π½Π΄ΠΎΠΌΠ½ΡΡ ΠΊΠ°ΡΡΠΈΠ½ΠΎΠΊ Π·Π½Π°Ρ ΡΠ°ΠΉΡ. Π’Π°ΠΊ Π²ΠΎΡ!
ΠΠ°Π»Π΅Π΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΏΡΠΎ ΡΡΡΠ΅ΠΊΡΡ, ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΡΠΊΡΠ°Π½ wasted Π½Π° Π°Π²Π°ΡΠ°ΡΠΊΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΄ΠΈΡΠΊΠΎΡΠ΄!
Π‘ΠΎΠ·Π΄Π°ΡΠΌ ΡΠ°ΠΉΠ» wasted.js ( ΠΡ ΡΠΆΠ΅ Π·Π½Π°Π΅ΡΠ΅ Π³Π΄Π΅) )
Π ΡΠ°ΠΉΠ» say.js ΠΏΠΈΡΠ΅ΠΌ:
Π. ΠΠ° ΡΡΠΎΠΌ Π²ΡΡ! Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° ΡΡΠ΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΠΎΠΉ ΡΡΠ°ΡΡΠΈ ΠΈ ΠΏΠΎΠΊΠ°!
Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π±ΠΎΡΠ° Π΄Π»Ρ Discord (NodeJS + Docker)
Π ΡΡΠΎΠΌ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΠ΅Π»ΡΠ½ΠΎΠΌ HOWTO Ρ ΡΠ°ΡΡΠΊΠ°ΠΆΡ, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π·Π°Π½ΡΡΡ ΡΠ΅Π±Ρ Π½Π° Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΡΠ°Π½ΡΠΈΠ½Π° ΠΈ ΡΠ΄Π΅Π»Π°ΡΡ Π±ΠΎΡΠ° Π΄Π»Ρ ΡΠ²ΠΎΠ΅Π³ΠΎ Discord-ΡΠ΅ΡΠ²Π΅ΡΠ°. ΠΡ ΡΠ°Π·Π²Π΅ΡΠ½Π΅ΠΌ NodeJS Π² Docker ΠΏΠΎΠ΄ Ubuntu 18.04 ΠΈ Π·Π°ΠΏΡΡΡΠΈΠΌ Π² Π½Π΅ΠΌ Π±ΠΎΡΠ° Ρ ΠΏΠ°ΡΠΎΡΠΊΠΎΠΉ ΠΏΡΠΎΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄. Π ΠΊΠΎΠ½ΡΠ΅ Ρ ΠΎΡΡΠ°Π²Π»Ρ ΡΡΡΠ»ΠΊΠΈ Π½Π° ΠΏΠΎΠ»Π΅Π·Π½ΡΠ΅ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, ΡΡΠΎΠ±Ρ Π²Ρ ΠΌΠΎΠ³Π»ΠΈ Π΄Π°Π»ΡΡΠ΅ ΡΠ°Π·Π²ΠΈΠ²Π°ΡΡ Π±ΠΎΡΠ°, Π½Π°Π΄Π΅Π»ΡΡ Π΅Π³ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΌΠΈ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ.
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠ΅ΡΠ²Π΅ΡΠ°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠ΅ Π² ΡΡΠΎΠΌ ΡΡΠΎΠΊΠ΅:
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Π΅ΡΡΡ, ΡΡΠΎ Π²Ρ ΠΎΠ±Π»Π°Π΄Π°Π΅ΡΠ΅ Π½Π°Π²ΡΠΊΠ°ΠΌΠΈ ΡΠ°Π±ΠΎΡΡ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ Linux.
ΠΠ΅ΡΠ²ΡΠ΅ ΡΠ°Π³ΠΈ
ΠΠ΅ΡΠ²ΡΠΌ ΡΠ°Π³ΠΎΠΌ ΡΡΠ°Π½Π΅Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ°ΠΉΡΠ΅ Discord (ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ Π²Ρ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½Ρ). ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΏΡΠΎΠΉΡΠΈ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅ ΠΈ Π½Π°ΠΆΠ°ΡΡ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ βNew applicationβ.

ΠΠΎΡΠ»Π΅ ΡΠΊΠ°Π·Π°Π½ΠΈΡ ΠΈΠΌΠ΅Π½ΠΈ ΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π±ΠΎΡΠ°. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π² Π»Π΅Π²ΠΎΠΌ ΠΌΠ΅Π½Ρ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ ΠΏΡΠ½ΠΊΡ βBotβ ΠΈ Π½Π°ΠΆΠΌΠΈΡΠ΅ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ βAdd Botβ.

ΠΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ° ΡΠ΅ΡΠ²Π΅ΡΠ°
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ»ΠΎΡΠ°Π΄ΠΊΠΈ Π΄Π»Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ Π±ΠΎΡΠ° Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ VDS ΠΏΠΎΠ΄ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Ubuntu 18.04. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΡΠΈΡΡ Π±ΠΎΡΠ° ΠΈ Π½Π° Π΄ΡΡΠ³ΠΈΡ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π°Ρ , ΡΠ±Π΅Π΄ΠΈΠ²ΡΠΈΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ Π² Π½ΠΈΡ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Ρ Π½ΡΠΆΠ½ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ.
ΠΠΎΠΌΠ°Π½Π΄Ρ Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π² Ubuntu 18.04:
ΠΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Π΄ΡΡΠ³ΠΎΠΉ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ², ΡΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΉΡΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ Π΄Π»Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π° Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈΠ»ΠΈ Π² ΠΏΠΎΠΈΡΠΊΠΎΠ²ΠΈΠΊΠ΅.
Π§ΠΈΡΠ°ΠΉΡΠ΅ ΡΠ°ΠΊΠΆΠ΅
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ²
ΠΠ°ΠΊ Ρ ΡΠΊΠ°Π·Π°Π» Π² Π½Π°ΡΠ°Π»Π΅ ΡΡΠ°ΡΡΠΈ, ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ NodeJS Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° Π±ΠΎΡΠ°. ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½Π°ΠΌ ΠΏΠΎΡΡΠ΅Π±ΡΡΡΡΡ Π΄Π²Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ:
Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΡΠ°Π±ΠΎΡΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈ ΡΠ°ΠΉΠ» package.json. Π ΠΌΠΎΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠ°Π±ΠΎΡΠ°Ρ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ /home, Π½ΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠ±ΡΠ°ΡΡ Π»ΡΠ±ΡΡ Π΄ΡΡΠ³ΡΡ Π½Π° ΡΠ²ΠΎΠ΅ ΡΡΠΌΠΎΡΡΠ΅Π½ΠΈΠ΅.
ΠΡΠΈΠΌΠ΅ΡΠ½ΡΠΉ Π²ΠΈΠ΄ ΡΠ°ΠΉΠ»Π°:
Π Π½Π΅ΠΌ ΠΌΡ ΡΠΊΠ°Π·Π°Π»ΠΈ ΠΈΠΌΡ Π±ΡΠ΄ΡΡΠ΅Π³ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠ° (name), Π²Π΅ΡΡΠΈΡ (version), ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ (description), Π°Π²ΡΠΎΡΠ° (author), ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΠ°ΠΉΠ» (app.js) ΠΈ ΡΠΏΠΈΡΠΎΠΊ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ (dependencies).
ΠΠ°ΠΏΡΡΡΠΈΠΌ npm install ΠΈ ΡΠ±Π΅Π΄ΠΈΠΌΡΡ, ΡΡΠΎ ΡΠΎΠ·Π΄Π°Π»ΡΡ ΡΠ°ΠΉΠ» package-lock.json, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΡΠΎΠΌ ΡΠ°ΠΊΠΆΠ΅ Π±ΡΠ΄Π΅Ρ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ Π² ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ.
Π’Π΅ΠΏΠ΅ΡΡ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΡΠ°ΠΉΠ» ΡΠ°ΠΌΠΎΠ³ΠΎ Π±ΠΎΡΠ° app.js ΠΈ Π·Π°ΠΏΠΈΡΠ΅ΠΌ Π² Π½Π΅Π³ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄:
ΠΠΌΠ΅ΡΡΠΎ βtokenbotβ ΠΏΠΎΠ΄ΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ token Π±ΠΎΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ» ΡΠΎΡ ΡΠ°Π½Π΅Π½ Π² Π½Π°ΡΠ°Π»Π΅ ΡΡΠ°ΡΡΠΈ, Π° Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ prefix ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΠΈΠΌΠ²ΠΎΠ», ΠΏΠΎΡΠ»Π΅ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π±ΡΠ΄ΡΡ Π²Π²ΠΎΠ΄ΠΈΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ. Π― Π²ΡΠ±ΡΠ°Π» Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠ΅ΡΠΈΠΊΡΠ° β!β, Π½ΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠ±ΡΠ°ΡΡ Π΄ΡΡΠ³ΠΎΠΉ ΡΠ΄ΠΎΠ±Π½ΡΠΉ ΡΠΈΠΌΠ²ΠΎΠ», Π΅ΡΠ»ΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ½ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ°ΠΌΠΈΠΌ Discord, ΠΊΠ°ΠΊ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ β@β ΠΈΠ»ΠΈ β/β.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Docker-ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°
Π’Π΅ΠΏΠ΅ΡΡ Π² ΡΠ°Π±ΠΎΡΠ΅ΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Dockerfile, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ ΠΎΠ±ΡΠ°Π·Π°, Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π±ΡΠ΄Π΅Ρ Π·Π°ΠΏΡΡΠ΅Π½ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ. Π Π½Π΅Π³ΠΎ ΠΌΡ Π·Π°ΠΏΠΈΡΠ΅ΠΌ:
Π‘ΠΎΠ±Π΅ΡΠ΅ΠΌ ΠΎΠ±ΡΠ°Π· ΠΈ Π·Π°ΠΏΡΡΡΠΈΠΌ Π½Π° Π΅Π³ΠΎ ΠΎΡΠ½ΠΎΠ²Π΅ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ:
ΠΠΌΠ΅ΡΡΠΎ βauthornameβ ΠΌΠΎΠΆΠ½ΠΎ Π²Π²Π΅ΡΡΠΈ ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΎΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π±ΠΎΡ, ΠΈ ΡΠ΅ΡΠ΅Π· β/β ΡΠΊΠ°Π·Π°ΡΡ ΠΈΠΌΡ Π±ΠΎΡΠ°.
ΠΡΠΎΠ²Π΅ΡΠΈΠΌ, ΡΡΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ Π·Π°ΠΏΡΡΡΠΈΠ»ΡΡ, ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π±ΠΎΡΠ° Π½Π° ΡΠ΅ΡΠ²Π΅Ρ
ΠΠΎΡ Π·Π°ΠΏΡΡΠ΅Π½ ΠΈ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ΅. ΠΡΡΠ°Π»ΠΎΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈΠ³Π»Π°ΡΠΈΡΡ Π΅Π³ΠΎ Π½Π° ΡΠ΅ΡΠ²Π΅Ρ ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ Π΅Π³ΠΎ ΡΠ°Π±ΠΎΡΡ.
ΠΠ»Ρ ΠΏΡΠΈΠ³Π»Π°ΡΠ΅Π½ΠΈΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ:

ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π ΡΡΠΎΠΉ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π»ΠΈ Π½ΠΎΠ²ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΠΎΠ·Π΄Π°Π»ΠΈ Π±ΠΎΡΠ°, Π½Π°ΠΏΠΈΡΠ°Π»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄, Π·Π°ΠΏΡΡΡΠΈΠ»ΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ ΠΈ ΠΏΡΠΈΠ³Π»Π°ΡΠΈΠ»ΠΈ Π±ΠΎΡΠ° Π½Π° ΡΠ΅ΡΠ²Π΅Ρ.
ΠΠ°Π»Π΅Π΅ Π±ΠΎΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π·Π²ΠΈΠ²Π°ΡΡ, Π½Π°ΠΏΠΎΠ»Π½ΡΡ Π΅Π³ΠΎ Π΄ΡΡΠ³ΠΈΠΌΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡΠΌΠΈ ΠΈ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΌΠΈ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π²Π°ΠΌ ΠΏΡΠΈΠ³ΠΎΠ΄ΡΡΡΡ Π·Π½Π°Π½ΠΈΡ JavaScript ΠΈ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΡΡΠ»ΠΊΠΈ:
ΠΠ°Π΄Π΅ΡΡΡ, ΡΡΠΎΡ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π» Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ»Π΅Π·Π΅Π½ Π΄Π»Ρ Π²ΡΠ΅Ρ , ΠΊΡΠΎ Π΄Π°Π²Π½ΠΎ Ρ ΠΎΡΠ΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ Π±ΠΎΡΠ° Π² Discord, Π½ΠΎ Π½Π΅ Π·Π½Π°Π΅Ρ, Ρ ΡΠ΅Π³ΠΎ Π½Π°ΡΠ°ΡΡ.
ΠΠΎΠΏΡΠΎΡΡ ΠΈ ΠΏΠΎΠΆΠ΅Π»Π°Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΡΠ°Π²Π»ΡΡΡ Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ . Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅!
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΌΡΠ·ΡΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π±ΠΎΡΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΡ Discord.js
Jul 21, 2019 Β· 8 min read
API discord ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π±ΠΎΡΠΎΠ². Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ ΠΌΡΠ·ΡΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π±ΠΎΡΠ° ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Π΅Π³ΠΎ Π½Π° ΡΠ΅ΡΠ²Π΅Ρ. ΠΠΎΡ ΡΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΠΈΠ³ΡΡΠ²Π°ΡΡ, ΠΏΡΠΎΠΏΡΡΠΊΠ°ΡΡ ΠΈ ΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ ΠΌΡΠ·ΡΠΊΡ, Π° ΡΠ°ΠΊΠΆΠ΅ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ ΠΎΡΠ΅ΡΠ΅Π΄ΠΈ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° discord-Π±ΠΎΡΠ°
Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π½ΠΎΠ²ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΡΡΠ°Π»Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ discord.
ΠΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ Π½Π° ΠΏΠΎΡΡΠ°Π» ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Π½Π° βnew applicationβ.
ΠΠ°ΡΠ΅ΠΌ Π²Π²ΠΎΠ΄ΠΈΠΌ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ βcreateβ.
ΠΠ°ΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΡ Π±ΠΎΡ ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Π½Π° βadd botβ.
ΠΠΎΡ ΡΠΎΠ·Π΄Π°Π½! Π’Π΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Π΅Π³ΠΎ Π½Π° ΡΠ΅ΡΠ²Π΅Ρ.
ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π±ΠΎΡΠ° Π½Π° ΡΠ΅ΡΠ²Π΅Ρ
ΠΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΉ Π±ΠΎΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠ° OAuth2 URL.
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ Π½Π° ΡΡΡΠ°Π½ΠΈΡΡ OAuth2 ΠΈ Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ Π±ΠΎΡΠ° Π² ΠΏΠ°Π½Π΅Π»ΠΈ scope.
ΠΠ° Ρ Π΅ΠΌ Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ Π΄Π»Ρ ΠΏΡΠΎΠΈΠ³ΡΡΠ²Π°Π½ΠΈΡ ΠΌΡΠ·ΡΠΊΠΈ ΠΈ ΡΡΠ΅Π½ΠΈΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ.
Π’Π΅ΠΏΠ΅ΡΡ ΠΊΠΎΠΏΠΈΡΡΠ΅ΠΌ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ URL ΠΈ Π²ΡΡΠ°Π²Π»ΡΠ΅ΠΌ Π΅Π³ΠΎ Π² Π±ΡΠ°ΡΠ·Π΅Ρ.
ΠΠ°ΡΠ΅ΠΌ Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ ΡΠ΅ΡΠ²Π΅Ρ, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ Ρ ΠΎΡΠΈΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ URL ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ βauthorizeβ.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ°
ΠΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ ΠΊ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π°.
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° ΡΠΎΠ·Π΄Π°Π΅ΠΌ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ ΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ Π² Π½Π΅Π΅, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π΄Π²Π΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
ΠΠ°ΡΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΠΌΠΎΠ΄ΡΠ»ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ npm init. ΠΠΎΡΠ»Π΅ Π²Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π±ΡΠ΄ΡΡ Π·Π°Π΄Π°Π½Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²ΠΎΠΏΡΠΎΡΠΎΠ². ΠΡΠ²Π΅ΡΡΡΠ΅ Π½Π° Π½ΠΈΡ ΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°ΠΉΡΠ΅.
Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π΄Π²Π° ΡΠ°ΠΉΠ»Π°, Π² ΠΊΠΎΡΠΎΡΡΡ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΡΠ°Π±ΠΎΡΠ°ΡΡ.
Π’Π΅ΠΏΠ΅ΡΡ ΠΎΡΠΊΡΠΎΠΉΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡ Π² ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΌ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅. Π― ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ VS Code ΠΈ ΠΎΡΠΊΡΡΠ²Π°Ρ Π΅Π³ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
ΠΡΠ½ΠΎΠ²Ρ Discord js
ΠΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ Π½Π°ΡΠ°ΡΡ, Π½ΡΠΆΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ.
ΠΠΎΡΠ»Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΠΌ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»Π° config.json. Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΠ΅ Π΄Π»Ρ Π±ΠΎΡΠ° ΡΠΎΠΊΠ΅Π½ ΠΈ ΠΏΡΠ΅ΡΠΈΠΊΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠ»ΡΡΠ°ΡΡ.
ΠΠ»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠΎΠΊΠ΅Π½Π° ΡΠ½ΠΎΠ²Π° Π·Π°ΠΉΠ΄ΠΈΡΠ΅ Π½Π° ΠΏΠΎΡΡΠ°Π» ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ discord ΠΈ ΡΠΊΠΎΠΏΠΈΡΡΠΉΡΠ΅ Π΅Π³ΠΎ ΠΈΠ· ΡΠ°Π·Π΄Π΅Π»Π° bot.
ΠΡΠΎ Π²ΡΠ΅, ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π² ΡΠ°ΠΉΠ»Π΅ config.json. ΠΡΠΈΡΡΡΠΏΠΈΠΌ ΠΊ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΊΠΎΠ΄Π° javascript.
Π‘Π½Π°ΡΠ°Π»Π° ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌ Π²ΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ.
ΠΠ°ΡΠ΅ΠΌ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΎΠΊΠ΅Π½Π° ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΈ Π»ΠΎΠ³ΠΈΠ½.
ΠΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π±Π°Π·ΠΎΠ²ΡΡ listeners, Π²ΡΠΏΠΎΠ»Π½ΡΡΡΠΈΡ ΠΌΠ΅ΡΠΎΠ΄ console.log ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅.
Π’Π΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΠ°ΡΡ ΡΠ°Π±ΠΎΡΡ Ρ Π±ΠΎΡΠΎΠΌ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ node. ΠΠΎΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ online Π² discord ΠΈ Π² ΠΊΠΎΠ½ΡΠΎΠ»Ρ Π²ΡΠ²Π΅Π΄Π΅ΡΡΡβReady!β
Π§ΡΠ΅Π½ΠΈΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ
ΠΠΎΡ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅ ΠΈ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΡ ΠΎΠ΄ΠΈΡΡ online. Π’Π΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΠ°ΡΡ ΡΠΈΡΠ°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π² ΡΠ°ΡΠ΅ ΠΈ ΠΎΡΠ²Π΅ΡΠ°ΡΡ Π½Π° Π½ΠΈΡ .
ΠΠ»Ρ ΡΡΠ΅Π½ΠΈΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ Π½ΡΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ Π»ΠΈΡΡ ΠΎΠ΄Π½Ρ ΠΏΡΠΎΡΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ.
Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ listener Π΄Π»Ρ ΡΠΎΠ±ΡΡΠΈΡ message, ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΈ ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΠΌ Π΅Π³ΠΎ Π² ΠΎΠ±ΡΠ΅ΠΊΡ message.
ΠΡΠΎΠ²Π΅ΡΡΠ΅ΠΌ: Π΅ΡΠ»ΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΈΡΠ»ΠΎ ΠΎΡ Π±ΠΎΡΠ°, ΡΠΎ ΠΈΠ³Π½ΠΎΡΠΈΡΡΠ΅ΠΌ Π΅Π³ΠΎ.
Π ΡΡΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΡΡΡ, ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΈ Π°Π²ΡΠΎΡΠΎΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π±ΠΎΡ. Π‘ΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΡΡ, Π΅ΡΠ»ΠΈ ΡΡΠΎ ΡΠ°ΠΊ.
ΠΠ°ΡΠ΅ΠΌ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΠΌ, Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ Π»ΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Ρ ΡΠ°Π½Π΅Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡΠ΅ΡΠΈΠΊΡΠ°. Π‘ΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΡΡ, Π΅ΡΠ»ΠΈ Π½Π΅Ρ.
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΠΌ, ΠΊΠ°ΠΊΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π½ΡΠΆΠ½ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ. ΠΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΡΠΎΡΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² if.
Π ΡΡΠΎΠΌ Π±Π»ΠΎΠΊΠ΅ ΠΊΠΎΠ΄Π° ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΡΡΡ, ΠΊΠ°ΠΊΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π½ΡΠΆΠ½ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ Π²ΡΠ·ΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄Ρ. ΠΡΠ»ΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π½Π΅Π΄ΠΎΠΏΡΡΡΠΈΠΌΠ°, ΡΠΎ Π²Π²ΠΎΠ΄ΠΈΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅ Π² ΡΠ°Ρ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΠΈ send().
Π£Π·Π½Π°Π², ΠΊΠ°ΠΊΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π½ΡΠΆΠ½ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ ΠΈΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ.
ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅Π½
ΠΠ°ΡΠ½Π΅ΠΌ Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ play. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ ΠΏΠ΅ΡΠ½Ρ ΠΈ Π³ΠΈΠ»ΡΠ΄ΠΈΡ (Π³ΠΈΠ»ΡΠ΄ΠΈΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΈ ΠΊΠ°Π½Π°Π»ΠΎΠ² ΠΈ ΡΠ°ΡΡΠΎ ΡΠΏΠΎΠΌΠΈΠ½Π°Π΅ΡΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ΅ΡΠ²Π΅ΡΠ°). Π’Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ ΡΠ°Π½Π΅Π΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ytdl.
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° ΡΠΎΠ·Π΄Π°Π΅ΠΌ map Ρ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ ΠΎΡΠ΅ΡΠ΅Π΄ΠΈ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π±ΡΠ΄ΡΡ ΡΠΎΡ ΡΠ°Π½Π΅Π½Ρ Π²ΡΠ΅ ΠΏΠ΅ΡΠ½ΠΈ, Π²Π²Π΅Π΄Π΅Π½Π½ΡΠ΅ Π² ΡΠ°Ρ.
ΠΠ°ΡΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡ async ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ execute ΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΠΌ, Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π² Π³ΠΎΠ»ΠΎΡΠΎΠ²ΠΎΠΌ ΡΠ°ΡΠ΅, ΠΈ Π΅ΡΡΡ Π»ΠΈ Ρ Π±ΠΎΡΠ° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅. ΠΡΠ»ΠΈ Π½Π΅Ρ, ΡΠΎ ΠΏΠΈΡΠ΅ΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌ.
ΠΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ ΠΊ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΠΏΠ΅ΡΠ½Π΅ ΠΈ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠΈ Π΅Π΅ Π² ΠΎΠ±ΡΠ΅ΠΊΡ song. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ ytdl, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΏΠ΅ΡΠ½Π΅ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅ Π½Π° youtube.
ΠΠ΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠ°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΡΡΡ Π² ΠΎΠ±ΡΠ΅ΠΊΡ song.
ΠΠΎΡΠ»Π΅ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΠΊΠΎΠ½ΡΡΠ°ΠΊΡ Π΄Π»Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Π² ΠΎΡΠ΅ΡΠ΅Π΄Ρ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΠΌ, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ Π»ΠΈ serverQueue, ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΌΡΠ·ΡΠΊΠ° ΡΠΆΠ΅ ΠΈΠ³ΡΠ°Π΅Ρ. ΠΡΠ»ΠΈ Π΄Π°, ΡΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ ΠΏΠ΅ΡΠ½Ρ Π² ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΉ serverQueue ΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΡΡΠΏΠ΅ΡΠ½ΠΎΠΌ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ. ΠΡΠ»ΠΈ Π½Π΅Ρ, ΡΠΎ ΡΠΎΠ·Π΄Π°Π΅ΠΌ Π΅Π³ΠΎ, ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΠΌΡΡ ΠΊ Π³ΠΎΠ»ΠΎΡΠΎΠ²ΠΎΠΌΡ ΠΊΠ°Π½Π°Π»Ρ ΠΈ Π½Π°ΡΠΈΠ½Π°Π΅ΠΌ ΠΏΡΠΎΠΈΠ³ΡΡΠ²Π°ΡΡ ΠΌΡΠ·ΡΠΊΡ.
Π ΡΡΠΎΠΌ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ΅ ΠΌΡ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΠΌ, ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΈ serverQueue ΠΏΡΡΡΡΠΌ. ΠΡΠ»ΠΈ Π½Π΅Ρ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ ΡΡΠ΄Π° ΠΏΠ΅ΡΠ½Ρ.
ΠΡΠ»ΠΈ serverQueue ΠΈΠΌΠ΅Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ null, ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΠΊΠΎΠ½ΡΡΠ°ΠΊΡ.
Π ΡΡΠΎΠΌ Π±Π»ΠΎΠΊΠ΅ ΠΊΠΎΠ΄Π° ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΠΊΠΎΠ½ΡΡΠ°ΠΊΡ, Π° ΠΏΠ΅ΡΠ½Ρ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΡΡ Π² ΠΌΠ°ΡΡΠΈΠ² songs.
ΠΠ°ΡΠ΅ΠΌ ΠΏΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΡΠ΅ΠΌΡΡ ΠΊ Π³ΠΎΠ»ΠΎΡΠΎΠ²ΠΎΠΌΡ ΡΠ°ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ Π²ΡΠ·ΡΠ²Π°Π΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡ play(), ΠΊΠΎΡΠΎΡΡΡ Π·Π°ΡΠ΅ΠΌ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅ΠΌ.
ΠΡΠΎΠΈΠ³ΡΡΠ²Π°Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅Π½
ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΠ΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΠΏΠ΅ΡΠ½ΠΈ Π² ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΊΠΎΠ½ΡΡΠ°ΠΊΡ ΠΏΡΠΈ Π΅Π³ΠΎ ΠΎΡΡΡΡΡΡΠ²ΠΈΠΈ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΡΡΡΠΏΠΈΡΡ ΠΊ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΡΠ½ΠΊΡΠΈΡ ΠΏΡΠΎΠΈΠ³ΡΡΠ²Π°Π½ΠΈΡ.
Π‘Π½Π°ΡΠ°Π»Π° ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡ play, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ Π΄Π²ΡΠΌΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ (Π³ΠΈΠ»ΡΠ΄ΠΈΡ ΠΈ ΠΏΠ΅ΡΠ½Ρ, ΠΊΠΎΡΠΎΡΡΡ Π½ΡΠΆΠ½ΠΎ ΠΏΡΠΎΠΈΠ³ΡΠ°ΡΡ) ΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ, ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡ song ΠΏΡΡΡΡΠΌ. ΠΡΠ»ΠΈ Π΄Π°, ΡΠΎ ΠΏΠΎΠΊΠΈΠ΄Π°Π΅ΠΌ Π³ΠΎΠ»ΠΎΡΠΎΠ²ΠΎΠΉ ΠΊΠ°Π½Π°Π» ΠΈ ΡΠ΄Π°Π»ΡΠ΅ΠΌ ΠΎΡΠ΅ΡΠ΅Π΄Ρ.
ΠΠ°ΡΠ΅ΠΌ Π½Π°ΡΠΈΠ½Π°Π΅ΠΌ ΠΏΡΠΎΠΈΠ³ΡΡΠ²Π°ΡΡ ΠΏΠ΅ΡΠ½Ρ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ playStream() ΠΈ URL-Π°Π΄ΡΠ΅ΡΠ° ΠΏΠ΅ΡΠ½ΠΈ.
Π ΡΡΠΎΠΌ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ΅ ΠΌΡ ΡΠΎΠ·Π΄Π°Π΅ΠΌ stream ΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΠΌ Π΅Π³ΠΎ URL-Π°Π΄ΡΠ΅ΡΡ ΠΏΠ΅ΡΠ½ΠΈ. Π’Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ Π΄Π²Π° listeners, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΡΠΎΠ±ΡΡΠΈΡ end ΠΈ error.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΡΡΠΎ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ²ΡΠΎΡΡΠ΅Ρ Π²ΡΠ·ΠΎΠ² ΡΠ°ΠΌΠΎΠΉ ΡΠ΅Π±Ρ. Π Π΅ΠΊΡΡΡΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΡΠΎΠΈΠ³ΡΡΠ²Π°Π½ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΏΠ΅ΡΠ½ΠΈ, ΠΊΠΎΠ³Π΄Π° Π΄ΡΡΠ³Π°Ρ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Π΅ΡΡΡ.
ΠΡΠΎΠΏΡΡΠΊ ΠΏΠ΅ΡΠ΅Π½
ΠΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ ΠΊ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΏΡΠΎΠΏΡΡΠΊΠ°. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π½ΡΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ Π΄ΠΈΡΠΏΠ΅ΡΡΠ΅ΡΠ°, ΡΠΎΠ·Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π² ΡΡΠ½ΠΊΡΠΈΠΈ play() Π΄Π»Ρ Π½Π°ΡΠ°Π»Π° ΠΏΡΠΎΠΈΠ³ΡΡΠ²Π°Π½ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΏΠ΅ΡΠ½ΠΈ.
Π ΡΡΠΎΠΌ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ΅ ΠΌΡ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΠΌ, Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π²Π²Π΅Π» ΠΊΠΎΠΌΠ°Π½Π΄Ρ, Π² Π³ΠΎΠ»ΠΎΡΠΎΠ²ΠΎΠΌ ΠΊΠ°Π½Π°Π»Π΅, Π° ΡΠ°ΠΊΠΆΠ΅ Π΅ΡΡΡ Π»ΠΈ ΠΏΠ΅ΡΠ½ΠΈ Π΄Π»Ρ ΠΏΡΠΎΠΏΡΡΠΊΠ°.
ΠΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΏΠ΅ΡΠ΅Π½
Π€ΡΠ½ΠΊΡΠΈΡ stop() ΠΏΠΎΡ ΠΎΠΆΠ° Π½Π° skip(), Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΌΠ°ΡΡΠΈΠ² songs ΠΎΡΠΈΡΠ°Π΅ΡΡΡ, ΠΈΠ·-Π·Π° ΡΠ΅Π³ΠΎ Π±ΠΎΡ ΡΠ΄Π°Π»ΡΠ΅Ρ ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΠΈ ΠΏΠΎΠΊΠΈΠ΄Π°Π΅Ρ Π³ΠΎΠ»ΠΎΡΠΎΠ²ΠΎΠΉ ΡΠ°Ρ.
ΠΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ Π΄Π»Ρ index.js:
ΠΠΎΠ»Π½ΡΠΉ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ Π΄Π»Ρ ΠΌΡΠ·ΡΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π±ΠΎΡΠ°:
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π£ Π²Π°Ρ Π²ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΎΡΡ! ΠΠ°Π΄Π΅ΡΡΡ, ΡΡΠ° ΡΡΠ°ΡΡΡ ΠΏΠΎΠΌΠΎΠ³Π»Π° Π²Π°ΠΌ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Π² API Discord ΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ Ρ Π΅Π³ΠΎ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ Π±ΠΎΡΠ°.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Discord-Π±ΠΎΡΠ°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ discord.js | Π§Π°ΡΡΡ β1
ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Ρ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΡΠ°ΡΡΠΊΠ°ΠΆΡ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΎΠΉ discord.js, ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ²ΠΎΠ΅Π³ΠΎ Discord-Π±ΠΎΡΠ°, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠΊΠ°ΠΆΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΡ ΠΈ ΠΏΠΎΠ»Π΅Π·Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄.
Π‘ΡΠ°Π·Ρ Ρ ΠΎΡΡ ΠΎΡΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ Ρ ΠΏΠ»Π°Π½ΠΈΡΡΡ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠ΄ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΡ ΡΡΠ°ΡΠ΅ΠΉ, Π½Π°ΡΠΈΠ½Π°Ρ Ρ ΠΏΡΠΎΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄, Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Ρ ΠΌΡΠ·ΡΠΊΠΎΠΉ, ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΠΊΠΈ ΠΈ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°Π½ΠΈΠ΅ΠΌ Π³ΠΎΠ»ΠΎΡΠ° Π±ΠΎΡΠΎΠΌ.
ΠΠ°ΡΠ°Π»ΠΎ ΡΠ°Π±ΠΎΡΡ
ΠΡΠ»ΠΈ Π²Ρ ΡΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΡ Ρ ΠΏΡΠΈΠ²Π΅Π΄ΡΠ½Π½ΡΠΌΠΈ Π½ΠΈΠΆΠ΅ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Π°ΠΌΠΈ, β ΡΠΌΠ΅Π»ΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠ»ΠΈΡΡΠ°ΡΡ ΡΡΠΎΡ ΡΠ°Π·Π΄Π΅Π».
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° ΡΠ°Π±ΠΎΡΡ Ρ ΠΊΠΎΠ΄ΠΎΠΌ Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΡΠ΅Π΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ:
Π‘ΡΠ΅Π΄Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π²ΡΠ±ΠΈΡΠ°Π΅ΡΡΡ ΠΏΠΎ ΡΠ΄ΠΎΠ±ΡΡΠ²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΏΡΠ°ΠΊΡΠΈΡΠ½ΠΎΡΡΠΈ, ΠΎΠ½Π° Ρ Π²Π°Ρ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π»ΡΠ±Π°Ρ, Π½ΠΎ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π΅Ρ Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Visual Studio Code, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½Π° ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΡΠ°ΠΌΡΡ ΠΏΡΠΈΠ΅ΠΌΠ»Π΅ΠΌΡΡ Π΄Π»Ρ Π½ΠΎΠ²ΠΈΡΠΊΠΎΠ², Π° ΡΠ°ΠΊΠΆΠ΅ Π΄Π»Ρ ΠΎΠΏΡΡΠ½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠ².
ΠΠ»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ ΠΏΠΎ ΡΡΠΎΠΉ ΡΡΡΠ»ΠΊΠ΅.
ΠΡΠ±ΠΈΡΠ°Π΅ΠΌ ΡΠ²ΠΎΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΈ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΠΌ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΠ΅.
ΠΠ»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π±ΠΎΡΠ° ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ node.js. ΠΠ»Ρ Π΅Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ Π½Π° ΡΡΠΎΡ ΡΠ°ΠΉΡ.
ΠΠ° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π½Π°Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΠ΅Ρ Π²Π΅ΡΡΠΈΡ Π΄ΠΎΠ»Π³ΠΎΡΡΠΎΡΠ½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ (LTS), ΡΠΊΠ°ΡΠΈΠ²Π°Π΅ΠΌ Π΅Ρ.
Π Visual Studio Code ΠΏΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ.
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ, ΠΊΠ»ΠΈΠΊΠ½ΠΈΡΠ΅ ΠΏΠΎ ΠΎΡΠΌΠ΅ΡΠ΅Π½Π½ΠΎΠΉ Π½ΠΈΠΆΠ΅ ΠΈΠΊΠΎΠ½ΠΊΠ΅.
Π ΠΎΡΠΊΡΡΠ²ΡΠ΅ΠΌΡΡ ΠΎΠΊΠ½Π΅ Π²ΠΏΠΈΡΡΠ²Π°Π΅ΠΌ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅/ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π½ΡΠΆΠ½ΠΎΠ³ΠΎ Π½Π°ΠΌ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ, ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ Π΅Π³ΠΎ.
ΠΠ· ΠΏΠΎΠ»Π΅Π·Π½ΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠΉ ΠΌΠΎΠ³Ρ ΠΎΡΠΌΠ΅ΡΠΈΡΡ:
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π±ΠΎΡΠ°
Π’Π΅ΠΏΠ΅ΡΡ, ΠΊΠΎΠ³Π΄Π° Π²Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ»ΠΈ Π²ΡΠ΅ Π½ΡΠΆΠ½ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡΠΈΡΡΡΠΏΠΈΡΡ ΠΊ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ°ΠΌΠΎΠ³ΠΎ Π±ΠΎΡΠ°.
ΠΠ΄Π΅ΡΡ Π²ΡΡ ΠΏΡΠΎΡΡΠΎ. ΠΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ Π½Π° ΠΏΠΎΡΡΠ°Π» ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ Ρ Π½Π°Π΄ΠΏΠΈΡΡΡ Β«New ApplicationΒ» β ΠΎΠ½Π° Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΠΏΡΠ°Π²ΠΎΠΌ Π²Π΅ΡΡ Π½Π΅ΠΌ ΡΠ³Π»Ρ.
Π ΠΎΡΠΊΡΡΠ²ΡΠ΅ΠΌΡΡ ΠΎΠΊΠ½Π΅ Π²ΠΏΠΈΡΡΠ²Π°Π΅ΠΌ ΠΈΠΌΡ Π±ΠΎΡΠ°, ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ, Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ Ρ Π½Π°Π΄ΠΏΠΈΡΡΡ Β«CreateΒ».
ΠΠ° ΡΡΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΈΠΌΡ Π±ΠΎΡΠ°, Π·Π°Π³ΡΡΠ·ΠΈΡΡ Π΄Π»Ρ Π½Π΅Π³ΠΎ ΠΈΠΊΠΎΠ½ΠΊΡ, Π·Π°ΠΏΠΎΠ»Π½ΠΈΡΡ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅.
Π’Π΅ΠΏΠ΅ΡΡ Π½Π°ΡΠ° Π·Π°Π΄Π°ΡΠ° β Π²ΠΎΠΏΠ»ΠΎΡΠΈΡΡ Π±ΠΎΡΠ° Π² ΠΆΠΈΠ·Π½Ρ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ Π²ΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΡ Β«BotΒ».
ΠΠ°ΠΆΠΈΠΌΠ°Π΅ΠΌ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ Ρ Π½Π°Π΄ΠΏΠΈΡΡΡ Β«Add BotΒ» ΠΈ Π²ΠΎΠΏΠ»ΠΎΡΠ°Π΅ΠΌ Π±ΠΎΡΠ° Π² ΠΆΠΈΠ·Π½Ρ.
ΠΠΎΠ·Π΄ΡΠ°Π²Π»ΡΡ! ΠΡ ΡΠΎΠ·Π΄Π°Π»ΠΈ Π°ΠΊΠΊΠ°ΡΠ½Ρ Π΄Π»Ρ Π²Π°ΡΠ΅Π³ΠΎ Π±ΠΎΡΠ°. Π’Π΅ΠΏΠ΅ΡΡ Ρ Π½Π΅Π³ΠΎ Π΅ΡΡΡ ΡΠ΅Π³, ΡΠΎΠΊΠ΅Π½, Π½ΠΈΠΊ ΠΈ ΠΈΠΊΠΎΠ½ΠΊΠ°.
ΠΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ° ΠΊ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΊΠΎΠ΄Π°
ΠΠΎΡΠ»Π΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π°ΠΊΠΊΠ°ΡΠ½ΡΠ° Π΄Π»Ρ Π±ΠΎΡΠ°, ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π½ΡΠΆΠ½ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ ΠΈ ΠΌΠΎΠ΄ΡΠ»ΠΈ, ΡΡΠΎΠ±Ρ Π² Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ ΠΎΠ½ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°Π».
ΠΠ΅ΡΠ²ΡΠΌ Π΄Π΅Π»ΠΎΠΌ ΡΠΎΠ·Π΄Π°ΡΠΌ ΠΏΠ°ΠΏΠΊΡ, ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΠΎΡΠΊΡΡΠ²Π°Π΅ΠΌ Π΅Ρ Π² VS Code (Π€Π°ΠΉΠ» > ΠΡΠΊΡΡΡΡ ΠΏΠ°ΠΏΠΊΡ) / (Ctrl + K Ctrl + O)
ΠΠ°Π»Π΅Π΅ Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΎΡΠΊΡΡΡΡ ΡΠ΅ΡΠΌΠΈΠ½Π°Π» (Π’Π΅ΡΠΌΠΈΠ½Π°Π» > Π‘ΠΎΠ·Π΄Π°ΡΡ ΡΠ΅ΡΠΌΠΈΠ½Π°Π») / (Ctrl + Shift + `)
Π’Π΅ΠΏΠ΅ΡΡ ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°ΠΉΠ» Ρ Π½Π΅ΠΊΠΈΠΌ Β«ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠΌΒ» Π½Π°ΡΠ΅Π³ΠΎ Π±ΠΎΡΠ°, ΡΠ΄Π΅Π»Π°Π΅ΠΌ ΡΡΠΎ ΡΠ΅ΡΠ΅Π· ΡΠ΅ΡΠΌΠΈΠ½Π°Π».
ΠΠΏΠΈΡΡΠ²Π°Π΅ΠΌ Π΄Π°Π½Π½ΡΡ ΡΡΡΠΎΠΊΡ Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Π» ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Enter:
ΠΠΎΡΠ»Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠΎΡΠ²ΠΈΠ²ΡΠ΅ΠΉΡΡ ΡΡΡΠΎΠΊΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Enter ΠΈΠ»ΠΈ Π²ΠΏΠΈΡΡΠ²Π°Π΅ΠΌ ΡΠ²ΠΎΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ.
ΠΠ½Π°ΡΠ΅Π½ΠΈΡ Π² ΡΡΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π² Π»ΡΠ±ΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ.
ΠΠ°Π»Π΅Π΅, ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΠΎΡΠ΅ΡΡΠ΄Π½ΠΎ Π²Π²ΠΎΠ΄ΠΈΡΡ Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Π» ΡΡΠΈ ΡΡΡΠΎΠΊΠΈ:
Β«InstallΒ» ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠΊΡΠ°ΡΠ°ΡΡ Π² Β«IΒ», Π½ΠΎ Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ.
ΠΡΠΎΠ³ΠΎ, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠ»Π΅Π΄ΠΎΠ²Π°Π»ΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡΠΌ ΠΈ Π²ΡΡ ΡΠ΄Π΅Π»Π°Π»ΠΈ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ, Π² Π²Π°ΡΠ΅ΠΉ ΠΏΠ°ΠΏΠΊΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΠ»ΠΈ ΠΏΠΎΡΠ²ΠΈΡΡΡΡ 3 ΠΎΠ±ΡΠ΅ΠΊΡΠ°:
ΠΠ°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°
ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π½Π°Ρ Π±ΠΎΡ ΠΏΠΎΡΠ²ΠΈΠ»ΡΡ Π² ΡΠ΅ΡΠΈ ΠΈ ΠΌΠΎΠ³ ΡΠ΅Π°Π³ΠΈΡΠΎΠ²Π°ΡΡ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ, Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ Π΄Π»Ρ Π½Π΅Π³ΠΎ ΠΊΠΎΠ΄.
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ² Π΄Π»Ρ Π΅Π³ΠΎ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ: ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΎΠ΄ΠΈΠ½ ΡΠ°ΠΉΠ», Π΄Π²Π°, Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ, ΠΈ Ρ.Π΄
ΠΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π²Π°ΡΠΈΠ°Π½Ρ Ρ Π΄Π²ΡΠΌΡ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΡΠ΅Π½Ρ Π»Π΅Π³ΠΊΠΎ ΠΈ ΡΠ΄ΠΎΠ±Π½ΠΎ, Π½ΠΎ Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π²Π°ΡΠΈΠ°Π½ΡΠ° Π΅ΡΡΡ ΡΠ²ΠΎΠΈ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ β Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Ρ ΡΡΠΎΠ³ΠΎ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°.
ΠΠΎ Π½Π΅ Π²ΠΎΠ»Π½ΡΠΉΡΠ΅ΡΡ, Π²Π΅ΡΡ ΠΊΠΎΠ΄ Π²Π°ΠΌ ΠΏΠΈΡΠ°ΡΡ Π½Π΅ ΠΏΡΠΈΠ΄ΡΡΡΡ.
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π°, Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π³Π΄Π΅-ΡΠΎ Ρ ΡΠ°Π½ΠΈΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π±ΠΎΡΠ΅.
ΠΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ Π΄Π²ΡΠΌΡ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ:
Π Π°Π·Π±Π΅ΡΡΠΌ Ρ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅.
ΠΡΠ°ΠΊ, ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΡΠ°ΠΉΠ» config.json
ΠΡΡΠ°Π²Π»ΡΠ΅ΠΌ Π² Π½Π΅Π³ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄:
* ΠΠ»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠΎΠΊΠ΅Π½Π° Π·Π°ΠΉΠ΄ΠΈΡΠ΅ Π½Π° ΠΏΠΎΡΡΠ°Π» ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π²ΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΡ Β«BotΒ» ΠΈ ΡΠΊΠΎΠΏΠΈΡΡΠΉΡΠ΅ Π΅Π³ΠΎ.
* Π‘Π°ΠΌΡΠΌ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ½Π½ΡΠΌ ΡΡΠ΅Π΄ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΏΡΠ΅ΡΠΈΠΊΡΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ !
ΠΠ°Π»Π΅Π΅ Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°ΠΉΠ» bot.js ΠΈ Π²ΡΡΠ°Π²ΠΈΡΡ Π² Π½Π΅Π³ΠΎ Π΄Π°Π½Π½ΡΠΉ ΠΊΠΎΠ΄:
Π’Π΅ΠΏΠ΅ΡΡ ΡΠΎΠ·Π΄Π°ΡΠΌ ΡΠ°ΠΉΠ» comms.js, Π² Π½ΡΠΌ Π±ΡΠ΄ΡΡ ΡΠ°ΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
Π Π½ΡΠΌ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄:
Π§ΡΠΎΠ±Ρ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ β ΠΏΡΠΎΡΡΠΎ ΠΎΠ±ΡΡΠ²Π»ΡΠΉΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΠΉΡΠ΅ ΠΈΡ Π² ΡΠΏΠΈΡΠΎΠΊ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
Π Π²ΠΎΡ, ΠΌΡ Π²ΡΡΠ»ΠΈ Π½Π° ΡΠΈΠ½ΠΈΡΠ½ΡΡ ΠΏΡΡΠΌΡΡ!
ΠΡΡΠ°Π»ΠΎΡΡ Π²ΡΠ΅Π³ΠΎ Π½ΠΈΡΠ΅Π³ΠΎ β Π·Π°ΠΏΡΡΡΠΈΡΡ Π±ΠΎΡΠ°.
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΎΡΠΊΡΡΠ²Π°Π΅ΠΌ ΡΠ΅ΡΠΌΠΈΠ½Π°Π» ΠΈ Π²ΡΡΠ°Π²Π»ΡΠ΅ΠΌ Π² Π½Π΅Π³ΠΎ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΡΡΡΠΎΠΊΡ:
ΠΠΎΡΠΎΠ²ΠΎ! ΠΠΎΡ Π·Π°ΠΏΡΡΠ΅Π½ ΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ, ΡΡΠ°!
Π§ΡΠΎΠ±Ρ ΠΏΡΠΈΠ³Π»Π°ΡΠΈΡΡ Π±ΠΎΡΠ° Π½Π° ΡΠ²ΠΎΠΉ ΡΠ΅ΡΠ²Π΅Ρ, Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Π½Π°ΠΌ ΡΠΆΠ΅ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠΌ ΠΏΠΎΡΡΠ°Π»ΠΎΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ².
ΠΠ΅ΡΠ΅ΠΉΠ΄ΡΠΌ Π²ΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΡ OAuth2, ΠΏΡΠΎΠ»ΠΈΡΡΠ°Π΅ΠΌ ΡΡΡΡ Π½ΠΈΠΆΠ΅, Π²ΡΠ±Π΅ΡΠ΅ΠΌ Β«BotΒ» ΠΈ ΠΎΡΠΌΠ΅ΡΠΈΠΌ Π½ΡΠΆΠ½ΡΠ΅ Π±ΠΎΡΡ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ.
Π’Π΅ΠΏΠ΅ΡΡ ΠΎΡΡΠ°Π»ΠΎΡΡ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ ΡΡΡΠ»ΠΊΡ-ΠΏΡΠΈΠ³Π»Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π±ΠΎΡΠ° Π½Π° ΡΠ²ΠΎΠΉ ΡΠ΅ΡΠ²Π΅Ρ.
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π΄Π²Π° ΡΠΏΠΎΡΠΎΠ±Π°:
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ, ΡΠ½Π°ΡΠ°Π»Π° ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ ΡΡΡΠ»ΠΊΡ-ΠΏΡΠΈΠ³Π»Π°ΡΠ΅Π½ΠΈΠ΅.
ΠΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ Π² ΡΠ°ΠΉΠ» bot.js ΠΈ Π²ΡΡΠ°Π²ΠΈΡΡ Π΄Π°Π½Π½ΡΡ ΡΡΡΠΎΡΠΊΡ ΠΊΠΎΠ΄Π° ΡΡΠ΄Π°:
ΠΡΠΎΠ³ΠΎΠ²ΡΠΉ ΠΊΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΡΠ°ΠΊΠΈΠΌ:
Π§ΡΠΎΠ±Ρ ΡΠΊΠ°Π·Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΉ, ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΡΡ ΠΈΡ Π² ΠΊΠ²Π°Π΄ΡΠ°ΡΠ½ΡΡ ΡΠΊΠΎΠ±ΠΊΠ°Ρ , ΡΠ΅ΡΠ΅Π· Π·Π°ΠΏΡΡΡΡ:
* ΠΡΠ΅ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ Π·Π°Π³Π»Π°Π²Π½ΡΠΌΠΈ Π±ΡΠΊΠ²Π°ΠΌΠΈ
Π‘ΠΏΠΈΡΠΎΠΊ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΉ:
ADMINISTRATOR
CREATE_INSTANT_INVITE
KICK_MEMBERS
BAN_MEMBERS
MANAGE_CHANNELS
MANAGE_GUILD
ADD_REACTIONS
VIEW_AUDIT_LOG
PRIORITY_SPEAKER
STREAM
VIEW_CHANNEL
SEND_MESSAGES
SEND_TTS_MESSAGES
MANAGE_MESSAGES
EMBED_LINKS
ATTACH_FILES
READ_MESSAGE_HISTORY
MENTION_EVERYONE
USE_EXTERNAL_EMOJIS
VIEW_GUILD_INSIGHTS
CONNECT
SPEAK
MUTE_MEMBERS
DEAFEN_MEMBERS
MOVE_MEMBERS
USE_VAD
CHANGE_NICKNAME
MANAGE_NICKNAMES
MANAGE_ROLES
MANAGE_WEBHOOKS
MANAGE_EMOJIS
Π― Π½Π΅ ΡΠΎΠ²Π΅ΡΡΡ Π²Π°ΠΌ ΠΈΠ· ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΉ Π²ΡΠ±ΠΈΡΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ADMINISTRATOR, ΠΏΠΎΡΡΠΎΠΌΡ Π»ΡΡΡΠ΅ ΡΠΊΠ°Π·Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΠΎΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π΄Π»Ρ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ
ΠΠΎΠ»Π΅Π·Π½ΡΠ΅ ΠΈ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
Π ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ Ρ ΠΏΠΎΠΊΠ°Π·Π°Π» Π²Π°ΠΌ, ΠΊΠ°ΠΊ Π·Π°ΠΏΡΡΡΠΈΡΡ Π±ΠΎΡΠ° ΠΈ ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°ΡΡ Π΄Π»Ρ Π½Π΅Π³ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
Π’Π΅ΠΏΠ΅ΡΡ Ρ Ρ
ΠΎΡΡ ΠΏΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ Ρ Π²Π°ΠΌΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΡΠ²ΠΎΠΈΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ.
ΠΠ΅ ΡΡΠΎΠΈΡ ΠΏΡΠ³Π°ΡΡΡΡ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, Π·Π΄Π΅ΡΡ Π²ΡΡ ΠΏΡΠ΅Π΄Π΅Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΠΎΡ ΠΈ ΠΏΠΎΠ΄ΠΎΡΠ»Π° ΠΊ ΠΊΠΎΠ½ΡΡ ΠΏΠ΅ΡΠ²Π°Ρ ΡΠ°ΡΡΡ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ, ΠΊΠ°ΠΊ Π²Ρ ΠΌΠΎΠ³Π»ΠΈ Π·Π°ΠΌΠ΅ΡΠΈΡΡ, ΡΠΎΠ·Π΄Π°ΡΡ Π±ΠΎΡΠ°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ discord.js ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎ.
ΠΡΠΎΠ³ΠΎ, ΠΈΠ· ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠΈ ΠΌΡ Π²ΡΡΡΠ½ΠΈΠ»ΠΈ:
ΠΠ°Π΄Π΅ΡΡΡ, ΡΡΠΎ Π²Π°ΠΌ ΠΏΠΎΠ½ΡΠ°Π²ΠΈΠ»Π°ΡΡ ΠΌΠΎΡ ΡΡΠ°ΡΡΡ ΠΈ Π²Ρ ΡΠ·Π½Π°Π»ΠΈ ΠΈΠ· Π½Π΅Ρ ΡΡΠΎ-ΡΠΎ Π½ΠΎΠ²ΠΎΠ΅.













