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
*.json
*.pyc
/.run/

View File

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

14
main.py
View File

@@ -2,19 +2,19 @@ import random
import sys
import threading
import logging
import discord
import disnake
from asyncio import sleep
from os import walk
from discord import FFmpegPCMAudio
from discord.ext import commands
from disnake import FFmpegPCMAudio
from disnake.ext import commands
threading.current_thread().name = "main"
logging.basicConfig(stream=sys.stdout, filemode='w', level='INFO',
format='%(asctime)s - %(levelname)s - %(threadName)s - %(message)s')
intents = discord.Intents.default()
intents = disnake.Intents.default()
intents.members = True
bot = commands.Bot(command_prefix='$', guild_subscriptions=True, intents=intents)
f = []
@@ -30,7 +30,7 @@ async def on_voice_state_update(member, before, after):
_role = 929729495370461205
_memb = 375664768087752714
_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:
track = random.randint(0, len(f) - 1)
audio_source = FFmpegPCMAudio(f'audio/{f[track]}')
@@ -64,9 +64,9 @@ async def on_voice_state_update(member, before, after):
@bot.event
async def on_member_join(member):
if member.bot == 0:
role = discord.utils.get(member.guild.roles, id=734358428939452486)
role = disnake.utils.get(member.guild.roles, id=734358428939452486)
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}")
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)
bot = commands.Bot(command_prefix=determine_prefix,
intents=intents,
reload=True,
test_guilds=[929446191270330410, 987120286933602354])
intents=intents
)
logging.basicConfig(stream=sys.stdout, filemode='w', level='INFO',
format='%(asctime)s - %(levelname)s - %(module)s - %(message)s')