Utwórz serwer Discord
Aby utworzyć bota dla niezgody, będziesz potrzebować serwera niezgody, w którym jesteś administratorem. Możesz zrobić, otwierając przeglądarkę i nawigując na stronę Discord:
http: // niezgoda.com
Zaloguj się na swoje konto Discord i utwórz serwer do testowania. W naszym przykładzie tworzymy samouczek o nazwie „Linuxhint_Tuts Server”
Po uzyskaniu serwera testowego możesz przystąpić do utworzenia aplikacji dla swojego bota Discord. Otwórz portal programisty Discord:
https: // niezgoda.com/programistów/aplikacji
Kliknij przycisk nowego aplikacji, aby dodać nową aplikację Discord. Ustaw nazwę swojej aplikacji i kliknij Utwórz.
Po utworzeniu aplikacji kliknij, aby otworzyć ją z listy dostępnych aplikacji. Następnie wybierz opcję BOT w lewym menu.
Kliknij Dodaj bot, aby utworzyć nowy bot do swojej aplikacji. To stworzy nowy bot z nowym tokenem bota. Skopiuj i zapisz token bota.
Następnie przejdź do dołu strony i wybierz pozwolenie na bot.
Po uzyskaniu uprawnień zestawu bota otwórz przeglądarkę i przejdź do następującego zasobu:
https: // niezgoda.com/oAuth2/autoryzuj?client_id = [client_ide] & scope = bot, w którym identyfikator klienta jest identyfikatorem klienta dla Twojej aplikacji. Ten identyfikator można znaleźć w sekcji OAuth z aplikacji:
Powyższy zasób umożliwia dodanie bota do serwera.
Wybierz swój serwer i kliknij autoryzuj.
Budowanie bota niezgody
Po skonfigurowaniu aplikacji Discord i bota możemy kontynuować, aby utworzyć bot niezniszczany. W tym przewodniku użyjemy pakietu DiscordGO, który zapewnia funkcjonalność niskiego poziomu do pracy z API Discord.
Zacznij od utworzenia działającego katalogu do przechowywania kodu dla twojego bota niezgody.
Mkdir Discord-BotPrzejdź do katalogu i zainicjuj menedżera modów dla swojego projektu:
CD Discord-BotNastępnym krokiem jest utworzenie struktury projektu. Zacznij od utworzenia katalogów konfiguracji i botów:
Mkdir Config BotKatalog konfiguracyjny będzie działał jak pakiet, który odczytuje konfigurację dla serwera Discord. Folder botowy przechowuje kod dla bota niezgody.
Następnie utwórz plik główny, którego użyjemy, aby uruchomić bot. Głównie.Go Plik, dodaj następujący kod:
Pakiet MainW powyższym przykładzie zaczynamy od zaimportowania kodu wyeksportowanego przez pakiety konfiguracji i botów. Dodamy kod tych pakietów w nadchodzących sekcjach.
Następnie wywołujemy metodę ReadConfig () z pakietu konfiguracyjnego. Na koniec uruchamiamy bot za pomocą metody run () z pakietu bota.
Następnym krokiem jest ustawienie konfiguracji dla twojego bota. W katalogu głównym utwórz konfigurację.plik JSON i dodaj następujące wpisy:
Plik JSON zawiera token dla twojego bota, jak skopiowano w poprzednich krokach. Następny jest prefiks, który określa prefiks, który należy śledzić, aby wywołać polecenie BOT. Dowiedz się więcej o prefiksie BOT w poniższym zasobie:
https: // discordpy.ReadThedocs.io/en/stabil/ext/Commands/API.html#niezgoda.ext.polecenia.Nerw.Command_Prefix
Następnie przejdź do katalogu konfiguracji i utwórz konfigurację.Plik Go. W konfiguracji.Go Plik, dodaj kod, jak pokazano poniżej:
Konfiguracja pakietuW powyższym kodzie zaczynamy od zaimportowania naszych wymaganych pakietów. Obejmuje to kodowanie/JSON do marszu.
Następnie definiujemy strukturę do przechowywania wartości odczytanych z pliku JSON. Następnie kontynuujemy tworzenie funkcji ReadConfig. Ta funkcja wykorzystuje metodę IOUTIL do odczytania konfiguracji.plik JSON. Następnie korzystamy z danych JSON i Unmarshal za pomocą JSON.Metoda Unmarsal ().
Następnie przejdź do katalogu botów i stwórz bot.Plik Go. To pomieści kod źródłowy dla bota.
Dodaj kod źródłowy jako:
Bot pakietuKod powyżej używa pakietu DiscordGO do zdefiniowania funkcjonalności bota. Możesz dowiedzieć się więcej w poniższym zasobie:
https: // github.com/bwmarrin/discordgo
Po zakończeniu uruchom plik jako:
Uruchom główny.IśćTo powinno rozpocząć bot niezgody. Przejdź do swojego serwera Discord i wpisz HI. Jeśli bot działa poprawnie, powinien cofnąć się.
Wniosek
Ten przewodnik obejmuje sposób utworzenia bota niezgody za pomocą pakietu Go i DiscordGo. Ten projekt jest inspirowany przykładem Ping Pong w pakiecie Discordgo:
https: // github.com/bwmarrin/discordgo/drzewa/master/przykłady/pingpong