niedziela , 8 września 2024

Uruchomienie własnego bota Discord na Ubuntu

Zanim będziemy hostować bota na serwer Discord w systemie Linux, to objaśnię Wam co to jest bot na Discordzie.

Co to jest bot na Discordzie?

Bot swoją nazwę wziął od słowa robot, ponieważ ma wiele z nim wspólnego. Bot to program komputerowy, którego celem jest zastępowanie niektórych funkcji, jakie pełni człowiek. Boty na serwerach Discord mogą być niezwykle przydatne ponieważ mogą wykonać za niego naprawdę sporo pracy administracyjnej.

Między innymi mogą witać nowych użytkowników, kontrolować dyskusję, a także w razie potrzeby zablokować kogoś, kto nie przestrzega zasad obowiązujących na grupie. Bot może posiadać również rozrywkowe możliwość tj. odtwarzanie muzyki, dodawanie ankiet bądź też memów.

Podzielę ten artykuł na wersję bota Discord zarówno jako w języku Python jak i JavaScript, gdyż w tych językach możemy pisać takowe boty.

Python

  1. Instalacja menadżera pakietów Python pip.
    > sudo apt install python3-pip -y

2. Instalacja wrappera Discord API dla Pythona.
> pip install discord.py

Tworzenie bota Discord w Python.
a) przełącz się na swój domowy katalog – cd ~
b) utwórz folder projektu – mkdir discord-bot-python
c) przechodzimy do folderu discord-bot-python – cd discord-bot-python
d) utwórz plik python o nazwie discord_bot_python.py – nano discord_bot_python.py
e) wklej ten przykładowy kod do swojego discord_bot_python.py- , – Na tym plik. Zastąp <YOUR BOT TOKEN> Z tokenem, który zostanie utworzony podczas tego jak stworzymy nową aplikację „bota” w Discord Developer Portal:

 import discord

 TOKEN = '<YOUR BOT TOKEN>'

 client = discord.Client()

 @client.event
 async def on_ready():
     print('We have successfully loggged in as {0.user}'.format(client))


 @client.event
 async def on_message(message):
     if message.author == client.user:
         return

     if message.content.lower() == 'hello':
         await message.channel.send(f'Hello, {message.author.display_name}!')
         return

     if message.content.lower() == 'bye':
         await message.channel.send(f'See you later, {message.author.display_name}!')
         return

 client.run(TOKEN)

f) zapisz i wyjdź z pliku.

  1. Uruchomienie bota Discord w oparciu o Pythona.
    Twój bot Discord przestaje działać po wyjściu z sesji SSH. Aby utrzymać bota w pełnym wymiarze godzin (czyli po prostu cały czas), użyj Tmux lub PM2.

Tmux:

a) instalacja Tmux’a – sudo apt-get update && sudo apt-get -y install tmux
b) utwórz sesję tmux:

  • tmux new -s DiscordBotPython

c) zmiana w katalogu projektu Discord Bot Python – cd ~/discord-bot-python
d) uruchom bota – python3 discord_bot_python.py

Aby zatrzymać bota Discord, naciśnij Ctrl + C

PM2:

a) zainstaluj npm – apt install npm -y
b) instalacja pm2 – npm install -g pm2
c) zmiana katalogu projektu – discord-bot-python – cd ~/discord-bot-python
d) uruchom bota – pm2 start discord_bot_python.py –interpreter=/usr/bin/python3

Lub po prostu wrzucasz pliki bota na serwer FTP, jeżeli go tworzysz za pośrednictwem programu, np. Visual Studio Code i tylko używasz jednego z dwóch do uruchomienia bota, pm2 lub tmux’a.

JavaScript

Instalacja ważnych programów
> apt install -y ca-certificates curl gnupg

  1. Utwórz katalog keyrings, a następnie w nim rozszyfruj klucz nodesource

> mkdir /etc/apt/keyrings
> curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg

  1. Utwórz zmienną określającą wersję NodeJS (np. 20, 18), dopisz nodejs do listy aplikacji, oraz zainstaluj nodeJS

> NODE_MAJOR=20

> echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_MAJOR.x nodistro main" | tee /etc/apt/sources.list.d/nodesource.list

> apt update && apt install nodejs -y

  1. Sprawdź poprawność instalacji nodeJS oraz NPM

> nodejs -v

> npm -v

  1. Utwórz i przejdź do folderu w którym ma znajdować się bot. Do tego folderu wgrywamy pliki naszego bota.

> mkdir /home/discordbot

> cd /home/discordbot

  1. Zainstaluj wymagane moduły (w naszym wypadku tylko discord.js)

> npm install discord.js

  1. Sprawdźmy czy bot się uruchamia.

> node index.js (lub też src/index.js) w zależności od tego jak masz to zrobione. Ten src to folder.

About Klovy

Założyciel serwisu klovy.pl. Moje zainteresowania to: informatyka, słuchanie muzyki (najbardziej typu: Disco Polo, Dance, Pop itp.), czy również sporty (zarówno letnie jak i zimowe). Lubię także pomagać wielu osobom, szczególnie w branży IT, stąd zamysł o platformie Klovy.

Check Also

Jak Cloudflare wpływa na transfer danych na serwerze?

Cloudflare to popularna usługa CDN (Content Delivery Network) i zabezpieczeń internetowych, która wpływa na wiele …

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *