This commit is contained in:
2022-08-23 21:57:12 +03:00
parent 15af292375
commit ca9787fcf2
6 changed files with 31 additions and 14 deletions

1
.gitignore vendored
View File

@@ -4,3 +4,4 @@
/user.db /user.db
*.json *.json
*.pyc *.pyc
/.run/

View File

@@ -11,8 +11,7 @@ from lib.DB import fill_bd, prepare_db
class Admin(commands.Cog, name='Admin'): class Admin(commands.Cog, name='Admin'):
def __init__(self, bot): def __init__(self, bot):
self.bot = bot # defining bot as global var in class self.bot = bot # a defining bot as global var in class
# self.activity.start()
@commands.Cog.listener() # this is a decorator for events/listeners @commands.Cog.listener() # this is a decorator for events/listeners
async def on_ready(self): async def on_ready(self):
@@ -21,20 +20,21 @@ class Admin(commands.Cog, name='Admin'):
for g in self.bot.get_all_members(): for g in self.bot.get_all_members():
await fill_bd(g.name, g.id, g.bot, g.nick, g.guild.id) await fill_bd(g.name, g.id, g.bot, g.nick, g.guild.id)
self.activity.start()
logging.info(f'Cog {__name__.split(".")[1]} is ready!.') logging.info(f'Cog {__name__.split(".")[1]} is ready!.')
@tasks.loop(seconds=20) @tasks.loop(seconds=20)
async def activity(self): async def activity(self):
await self.bot.change_presence( await self.bot.change_presence(
activity=disnake.Activity( activity=disnake.Activity(
name=f'Users: {str(len(self.bot.users))}', name=f'at users: {str(len(self.bot.users))}',
type=3 type=3
) )
) )
await sleep(10) await sleep(10)
await self.bot.change_presence( await self.bot.change_presence(
activity=disnake.Activity( activity=disnake.Activity(
name=f'Servers: {str(len(self.bot.guilds))}', name=f'at servers: {str(len(self.bot.guilds))}',
type=3 type=3
) )
) )

14
main.py
View File

@@ -2,19 +2,19 @@ import random
import sys import sys
import threading import threading
import logging import logging
import discord import disnake
from asyncio import sleep from asyncio import sleep
from os import walk from os import walk
from discord import FFmpegPCMAudio from disnake import FFmpegPCMAudio
from discord.ext import commands from disnake.ext import commands
threading.current_thread().name = "main" threading.current_thread().name = "main"
logging.basicConfig(stream=sys.stdout, filemode='w', level='INFO', logging.basicConfig(stream=sys.stdout, filemode='w', level='INFO',
format='%(asctime)s - %(levelname)s - %(threadName)s - %(message)s') format='%(asctime)s - %(levelname)s - %(threadName)s - %(message)s')
intents = discord.Intents.default() intents = disnake.Intents.default()
intents.members = True intents.members = True
bot = commands.Bot(command_prefix='$', guild_subscriptions=True, intents=intents) bot = commands.Bot(command_prefix='$', guild_subscriptions=True, intents=intents)
f = [] f = []
@@ -30,7 +30,7 @@ async def on_voice_state_update(member, before, after):
_role = 929729495370461205 _role = 929729495370461205
_memb = 375664768087752714 _memb = 375664768087752714
_bot_id = 946819004314570852 _bot_id = 946819004314570852
role = discord.utils.find(lambda r: r.name == 'тарковчане', member.roles) role = disnake.utils.find(lambda r: r.name == 'тарковчане', member.roles)
if before.channel is None and role in member.roles: if before.channel is None and role in member.roles:
track = random.randint(0, len(f) - 1) track = random.randint(0, len(f) - 1)
audio_source = FFmpegPCMAudio(f'audio/{f[track]}') audio_source = FFmpegPCMAudio(f'audio/{f[track]}')
@@ -64,9 +64,9 @@ async def on_voice_state_update(member, before, after):
@bot.event @bot.event
async def on_member_join(member): async def on_member_join(member):
if member.bot == 0: if member.bot == 0:
role = discord.utils.get(member.guild.roles, id=734358428939452486) role = disnake.utils.get(member.guild.roles, id=734358428939452486)
else: else:
role = discord.utils.get(member.guild.roles, id=734358434945826858) role = disnake.utils.get(member.guild.roles, id=734358434945826858)
logging.info(f"Adding to {member} role {role}") logging.info(f"Adding to {member} role {role}")
await member.add_roles(role) await member.add_roles(role)

5
requirements.txt Normal file
View File

@@ -0,0 +1,5 @@
disnake[audio]~=2.5.2
setuptools==65.2.0
psutil~=5.9.1
pymediainfo~=5.1.0
pyNaCl==1.5.0

12
setup.py Normal file
View File

@@ -0,0 +1,12 @@
from setuptools import setup
setup(
name='fun and admin bot',
version='1.0.0',
packages=['lib'],
url='',
license='',
author='riksl',
author_email='',
description=''
)

View File

@@ -20,9 +20,8 @@ intents = disnake.Intents(messages=True,
members=True) members=True)
bot = commands.Bot(command_prefix=determine_prefix, bot = commands.Bot(command_prefix=determine_prefix,
intents=intents, intents=intents
reload=True, )
test_guilds=[929446191270330410, 987120286933602354])
logging.basicConfig(stream=sys.stdout, filemode='w', level='INFO', logging.basicConfig(stream=sys.stdout, filemode='w', level='INFO',
format='%(asctime)s - %(levelname)s - %(module)s - %(message)s') format='%(asctime)s - %(levelname)s - %(module)s - %(message)s')