В Discord хората си сътрудничат, за да споделят идеи, да обсъждат проекти и да чатят за живота и хобита като цяло. Но ботовете на Discord могат да направят вашите чат стаи по-забавни в допълнение към автоматизирането на задачите. Това може да бъде всичко - от разказване на произволни шеги до възпроизвеждане на конкретна музика и други.
Независимо от това, има някои основни стъпки, които трябва да следвате, докато се учите как да направите бот на Discord. Ще ги разгледаме в тази статия.
Да започваме.
1. Създайте своя Discord сървър
Преди да създадете Discord бот, трябва да започнете със създаване на сървър, тъй като това е мястото на назначение на бота.
Сървър или чат стая на Discord е пространство, където управлявате канали и комуникации в платформата.
За да създадете сървър на Discord, отидете на Уебсайт на Discord и влезте в таблото си за управление на Discord. Или създайте акаунт, ако все още нямате такъв.
Веднъж в таблото си за управление, следвайте тези стъпки, за да създадете Discord сървър:
- Щракнете върху добавянето (+) в лявата странична лента.
- Изберете Създайте моя собствена опция.
- Изберете цел за създаване на вашия сървър.
- Персонализирайте вашия сървър с профилна снимка и име. След това щракнете Създайте.
Вече създадохте Discord сървър и сте готови да направите бот за контролиране на определени дейности на него.
2. Настройте и създайте своя Discord бот
След това искате да създадете бот на Discord в приложение на Discord, като отидете на Портал за разработчици на Discord. Или вместо това можете да въведете следния URL адрес в адресното поле на браузъра си:
https://discord.com/developers/applications
Веднъж в конзолата за разработчици:
- Щракнете върху Ново приложение в горния ляв ъгъл.
- Въведете име за вашето приложение в даденото поле. След това щракнете Създайте.
- Погледнете в лявата странична лента и изберете бот.
- Щракнете върху Добавете бот най-вдясно.
- От следващата подкана изберете Да, направи го!
- Щракнете върху копие за да копирате своя бот маркер. Поставете това на безопасно място и не го разкривайте.
- Превъртете надолу и включете превключвателя под НАМЕРЕНИЕ НА ПРИСЪСТВИЕ. Също така включете превключвателя под НАМЕРЕНИЕ НА ЧЛЕНОВЕТЕ НА СЪРВЪРА.
- След това щракнете OAuth2 в лявата лента, за да добавите приоритети за удостоверяване към вашия Discord бот.
- Изберете Генератор на URL за да генерирате URL за покана за бот за сървъра, който сте създали по-рано.
- От опциите, под ПРИМЕРИ, изберете бот.
- Превъртете надолу до РАЗРЕШЕНИЕ НА БОТ раздел и изберете роли за вашия бот Discord. В този случай ние ще му дадем Администратор роля.
- Превъртете до дъното и щракнете КОПИЕ за да копирате генерирания URL в клипборда.
Сега да свържете вашия сървър с бота.
Както споменахме, ботът работи предимно вътре в сървъра. Следователно, след като създадете бот на Discord, както направихме ние, ще трябва да го присвоите към сървър, където искате да работи.
Така че след като копирате генерирания URL адрес, следвайте следните стъпки, за да свържете вашата стая за чат с бота Discord:
- Поставете копирания URL адрес в адресното поле на браузъра си и влезте в него.
- От подканата щракнете Изберете сървър и изберете този, който сте създали по-рано.
- Щракнете върху продължи за да продължите.
- Ще видите ново меню със списък с разрешения, които сте задали по-рано. Изберете Разрешете.
- Решете CAPTCHA, за да завършите упълномощаването на вашия Discord бот.
Вече създадохте бот Discord. Върнете се към таблото за управление на вашия сървър и ще видите робота в дясната странична лента. Но както виждате, в момента е офлайн. Така че все още не работи, докато не го програмирате да го прави.
За да накарате вашия бот да работи, трябва да напишете скрипт на всеки език за програмиране, който работи най-добре за вас.
3. Програмирайте своя Discord бот с помощта на Python
За този урок ще използваме Python и ще хостваме бота Discord на локалната машина. Можете да хоствате своите в облачни услуги като Heroku, ако искате, след като всичко е настроено. Да се гмурнем.
Настройте Python и библиотеки
За да програмирате своя Discord бот с Python, ще използвате discord.py модул, който работи само с Python 3.5.3 или по-нова версия.
Ако все още не сте го направили или имате по-ранна версия, отидете на python.org за да изтеглите най-новата версия на Python.
Можете да проверите версията на Python, инсталирана на вашия компютър, като въведете следната команда във вашия терминал:
python -- версия
Ако Python е актуален, отворете терминала в root на вашия проект. Тогава активирате виртуална среда на Python.
Освен това ще трябва да инсталирате discord.py и обаден пакет за гласова поддръжка discord.py [глас].
При активна виртуална среда изпълнете следната команда във вашия терминал, за да инсталирате тези пакети:
pip install -U discord.py discord.py [глас]
Изпратете съобщение с вашия Discord бот
Тук ще програмирате своя Discord бот да отговаря с персонализирано съобщение, когато изпращате текст в канал.
Но първо въведете следния код в горната част на вашия скрипт, за да инициализирате своя Discord бот:
импортирайте раздора
# Импортирайте модула за команди:
от команди за импортиране на discord.ext
# Инициализирайте екземпляра на бота и използвайте празен префикс:
бот = команди. бот (command_prefix="")
В бот променлива извиква персонализирани команди от команда клас. И на префикс_команда в скобите ви позволява да посочите символ, който го предхожда. Символи като знака за долар ($), удивление (!), амперсанд (&) и други са често срещани префикси, които предхождат командите на бот.
Но ние изтрихме префикса в нашия случай. Така че нямате нужда от такъв, докато инструктирате бота на Discord.
Използвайки @bot.command() декоратор, нека направим персонализирана команда, здравейи предоставете текст за отговор за бота Discord, когато го види.
Имайте предвид, че персонализираните команди са функции на Python:
импортирайте раздора
# Импортирайте модула за команди:
от команди за импортиране на discord.ext
# Инициализирайте екземпляра на бота:
бот = команди. бот (command_prefix="")
@bot.command()
async def Hi (ctx):
await ctx.send("Здравейте, добре дошли на нашия сървър")
Сега стартирайте скрипта на Python във вашия терминал. След това отидете на Discord и изпратете "Здравей", за да видите как магията се разгръща.
Като се вгледате внимателно, ще видите, че сме използвали асинхроненчакам метод за обслужване на функцията. Това е от съществено значение, тъй като това е единственият начин модулът да комуникира с Discord.
В ctx екземплярът е контекст и има много функции. Но в този случай той позволява на вашия Discord бот да изпрати съобщение.
Добре дошли на нови членове на канала с вашия бот
В този пример ще видите как да използвате събития, за да задействате поздрав, когато някой се присъедини към вашия сървър. Също така ще научите как да показвате потребителското име на нов член и сървъра, към който са се присъединили в поздравителното съобщение.
Ще използваме @bot.event тук вместо това. Ето как става това:
@bot.event
async def on_member_join (член):
гилдия = член.гилдия
ако guild.system_channel не е None:
detailMessage = 'Приветстваме {0.mention} във формат {1.name}!'. (член, гилдия)
чакам guild.system_channel.send (detailMessage)
В on_member_join функцията е вид събитие. Има много други обаче. В on_ready Методът, например, е широко използвано събитие за проверка дали ботът е готов или не.
Освен това условието, което следва ако изявлението проверява дали свързаният сървър (гилдия или чат стая) съществува или не. Ако го направи, то използва Формат на низове на Pythonметод за извеждане на потребителското име на новия член и сървъра, към който са се присъединили.
Сега помолете приятел да се присъедини към вашия сървър, за да видите какво ще се случи. Може да искате да опитате това първо с фиктивен акаунт в Discord, за да сте сигурни, че работи.
Помолете Discord Bot да се присъедини или да напусне аудио канал
Сега нека разширим кода. И този път ще кажете на бота си да се присъедини или да напусне аудио канал, когато получи конкретна команда.
В примерния код по-долу ботът Discord се присъединява към вас в аудио канал, когато въведете „enter“:
@bot.command()
async def enter (ctx):
ако ctx.author.voice:
чакам ctx.message.author.voice.channel.connect()
Състоянието в рамките на ако изявление проверява дали вече сте се присъединили към аудио канал. Ако е така, чакам ключова дума свързва вашия Discord бот с него.
Това означава, че трябва да сте се присъединили към аудио канал, преди командата да работи.
Забележка: Уверете се, че спирате и рестартирате своя Python скрипт след всяка актуализация. Позволява на Python да синхронизира вашите промени.
След като изпълните повторно своя скрипт на Python, отворете Discord и напишете въведете— сега ще видите, че вашият Discord бот се е присъединил към аудио канала.
Да поискате от вашия бот да напусне канала е толкова лесно, колкото и да го добавите.
Следният код му казва да напусне канала, когато въведете съответната команда. Ще използваме думата "напускане" в този случай:
@bot.command()
async def напуска (ctx):
ако ctx.voice_client:
чакам ctx.guild.voice_client.disconnect()
Спрете и изпълнете скрипта си отново. Сега ботът Discord трябва да напусне аудио канала, когато изпратите командата „напускане“.
Продължавайте да подобрявате своя Discord бот
Това е! Направихте себе си функционален бот на Discord. Съберете примерните блокове от код и продължете да добавяте функции към вашия бот Discord. Например, можете да му кажете да възпроизвежда музика от вашия компютър или платформа за стрийминг веднага щом се присъедини към аудио канал.
Discord ботовете са забавни за използване. Ако все още не автоматизирате задачите с тях в чат стаите си, пропускате сериозна ефективност.
Ботовете могат да бъдат полезен инструмент за управление на вашия Discord сървър. Ето всичко, което трябва да знаете за това как да ги добавите.
Прочетете Следващото
- Програмиране
- Python
- Дискорд
- Програмиране
Idowu е страстен за всичко, което е интелигентна технология и производителност. В свободното си време той си играе с кодирането и преминава към шахматната дъска, когато му е скучно, но също така обича да се откъсва от рутината от време на време. Страстта му да показва на хората пътя около съвременните технологии го мотивира да пише повече.
Абонирайте се за нашия бюлетин
Присъединете се към нашия бюлетин за технически съвети, ревюта, безплатни електронни книги и ексклузивни оферти!
Щракнете тук, за да се абонирате