Python Discord Botu Programlama #4 Moderasyon Komutları

pawelyn

Katılımcı Üye
23 Nis 2022
469
5
159
Tor V3
Evet tekrardan merhaba bu discord botu programlama serimin 4.konusu bu konuda birazcık moderasyonla ilgili komutlara değinmeyi düşünüyorum isterseniz neler yapacağımızdan birazcık bahsedelim açıkçası çok detaylı olmayacak ben size genel komutların temelini öğreteceğim devamını siz getirebilirsiniz ne nasıl yapılır o temelini oturtmanız bence yeterli daha sonrası beraberinde geliyor bu konumuzu içerikleri;
  • Kick komutu
  • Üyeye Rol Ekleme
  • Üyeden Rol silme
  • Kanal Oluşturma
Evet isterseniz Kick Komutu ile başlayalım kick komutunun temel mantığı adında belli olduğu gibi bir üyeyi sunucudan atmaktır ama ban komutunda farkı bir üye kicklendiği zaman geri gelebilir yani herhangi bir yasak kaldırmanız gerekmez ve yapması oldukça basittir hadi bakalım;

Python:
@Bot.command()
async def kick(ctx, member: discord.Member,reason=None):
    await member.kick()
    await ctx.send(f"{member.mention} isimli kullanıcı {ctx.author.mention} isimli kişi tarafından banlandır sebeb {reason}")

Bu Komut bitti aslında açıklmayacam zaten artık anlarsınız anlamayanlarda ilk konularıma bakabilir çünkü her konumda açıklarsam çok uzun sürüyor hadi diğer komuta geçelim üyeye rol ekleme member.add_roles() ve üyeden rolü geri alma member.remove_roles();

Python:
@Bot.command()
async def add_role(ctx,member : discord.Member,role : discord.Role):
    await member.add_roles(role)
    await ctx.send(f"{member.mention} adlı kullanıcıya {role.mention} rolü verildi")
  
@Bot.command()
async def remove_role(ctx,member : discord.Member,role : discord.Role):
    await member.remove_roles(role)
    await ctx.send(f"{member.mention} adlı Kullanıcıdan {role.mention} rolü alındı")

Evet Bu 2 komutda başarıyla yaptık gibi isterseniz diğer komutumuza geçelim aslında buda oldukça kolay bi komut hiçde zor değil hadi komutumuza geçelim;

Python:
#burda yapacağım açıklama guild ne demek hiç görmedik
#guild sunucu demek ve burda
#ctx.guild derken mesajımızın bulunduğu sunucuyu alıyoruz
#daha sonra bir kanal oluşturuyoruz ve kanalımızın adı name oluyor
#kategorisi ise cat oluyor yani
#komutu kullanırken .create_text_channel duyurular önemli-duyurular
#mesela yukarıdaki örnekte duyurular isimli kategoriye önemli-duyurular diye bir
#ses kanalı oluşturmuş olduk
@Bot.command()
async def create_text_channel(ctx,cat, *,name):
    await ctx.guild.create_text_channel(name=name,category=cat)
    await ctx.send("Yazı Kanalı Oluşturuldu")

@Bot.command()
async def create_voice_channel(ctx,cat, *,name):
     ctx.guild.create_voice_channel(name=name,category=cat)
    await ctx.send("Ses Kanalı Kanalı Oluşturuldu")

Evet bu konum diğerlerine göre birazcık daha kısa olmuş olabilir çünkü ilerdekikçe anlamış oluyorsunuz ve çoğu şeyi açıklamama gerek kalmıyor siz de anladıkça benim işim kolaylaşıyor serinin devamı gelebilir gelmese bile siz bu bilginizle ve araştırarak çoğu şeyi yapabileceksiniz
Serinin Öncesi;
 

Agent-47

Katılımcı Üye
23 Mar 2023
415
265
HACKERİSTAN
Evet tekrardan merhaba bu discord botu programlama serimin 4.konusu bu konuda birazcık moderasyonla ilgili komutlara değinmeyi düşünüyorum isterseniz neler yapacağımızdan birazcık bahsedelim açıkçası çok detaylı olmayacak ben size genel komutların temelini öğreteceğim devamını siz getirebilirsiniz ne nasıl yapılır o temelini oturtmanız bence yeterli daha sonrası beraberinde geliyor bu konumuzu içerikleri;
  • Kick komutu
  • Üyeye Rol Ekleme
  • Üyeden Rol silme
  • Kanal Oluşturma
Evet isterseniz Kick Komutu ile başlayalım kick komutunun temel mantığı adında belli olduğu gibi bir üyeyi sunucudan atmaktır ama ban komutunda farkı bir üye kicklendiği zaman geri gelebilir yani herhangi bir yasak kaldırmanız gerekmez ve yapması oldukça basittir hadi bakalım;

Python:
@Bot.command()
async def kick(ctx, member: discord.Member,reason=None):
    await member.kick()
    await ctx.send(f"{member.mention} isimli kullanıcı {ctx.author.mention} isimli kişi tarafından banlandır sebeb {reason}")

Bu Komut bitti aslında açıklmayacam zaten artık anlarsınız anlamayanlarda ilk konularıma bakabilir çünkü her konumda açıklarsam çok uzun sürüyor hadi diğer komuta geçelim üyeye rol ekleme member.add_roles() ve üyeden rolü geri alma member.remove_roles();

Python:
@Bot.command()
async def add_role(ctx,member : discord.Member,role : discord.Role):
    await member.add_roles(role)
    await ctx.send(f"{member.mention} adlı kullanıcıya {role.mention} rolü verildi")
 
@Bot.command()
async def remove_role(ctx,member : discord.Member,role : discord.Role):
    await member.remove_roles(role)
    await ctx.send(f"{member.mention} adlı Kullanıcıdan {role.mention} rolü alındı")

Evet Bu 2 komutda başarıyla yaptık gibi isterseniz diğer komutumuza geçelim aslında buda oldukça kolay bi komut hiçde zor değil hadi komutumuza geçelim;

Python:
#burda yapacağım açıklama guild ne demek hiç görmedik
#guild sunucu demek ve burda
#ctx.guild derken mesajımızın bulunduğu sunucuyu alıyoruz
#daha sonra bir kanal oluşturuyoruz ve kanalımızın adı name oluyor
#kategorisi ise cat oluyor yani
#komutu kullanırken .create_text_channel duyurular önemli-duyurular
#mesela yukarıdaki örnekte duyurular isimli kategoriye önemli-duyurular diye bir
#ses kanalı oluşturmuş olduk
@Bot.command()
async def create_text_channel(ctx,cat, *,name):
    await ctx.guild.create_text_channel(name=name,category=cat)
    await ctx.send("Yazı Kanalı Oluşturuldu")

@Bot.command()
async def create_voice_channel(ctx,cat, *,name):
     ctx.guild.create_voice_channel(name=name,category=cat)
    await ctx.send("Ses Kanalı Kanalı Oluşturuldu")

Evet bu konum diğerlerine göre birazcık daha kısa olmuş olabilir çünkü ilerdekikçe anlamış oluyorsunuz ve çoğu şeyi açıklamama gerek kalmıyor siz de anladıkça benim işim kolaylaşıyor serinin devamı gelebilir gelmese bile siz bu bilginizle ve araştırarak çoğu şeyi yapabileceksiniz
Serinin Öncesi;
eline sağlık.
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.