Создаю чат бот, ошибок по консоли не показывает но при запуске бота кнопка /start не отвечает?
Подскажите. Делаю бота, код роспределяю по папкам, основной файл (bot_telegram) второстепенные файлы (client, admin, other, init)
При запуске бота через консоль ошибок нет, но коменда "/start" не отвечает. В папке (other) записан код фольтр мата.
Пробую матерится бот работает корректно. Не могу понять почему не отвечет на старт, была такая же проблема, я её решил но не понял как.
Код в (bot_telegram)
from aiogram import executor
from create_bot import dp
if __name__ == "__main__":
executor.start_polling(dp, skip_updates=True)
файл (client)
from aiogram import types, Dispatcher
from create_bot import dp, bot
from keyboards.client_kb import kb_client
from aiogram.types import ReplyKeyboardRemove
from aiogram.dispatcher import FSMContext
from aiogram.dispatcher.filters.state import State, StatesGroup
from aiogram import types, Dispatcher
from create_bot import dp
class FSMAdmin(StatesGroup):
photo = State()
name = State()
size = State()
pricce = State()
#Ловим первый ответ и пишем словарь
#@dp.message_handler(content_types = ["photo"],state = FSMAdmin.photo)
async def load_photo(message: types.Message, state: FSMContext):
async with state.proxy() as date:
date ["photo"] = message.photo[0].file_id
await FSMAdmin.next()
await message.reply("Теперь введи название")
#ловим второй ответ
#@dp.message_handler(state = FSMAdmin.name)
async def load_name(message: types.Message, state: FSMContext):
async with state.proxe() as date:
date ["name"] = message.text
await FSMAdmin.next()
await message.reply("Введи тип шлема")
#Ловим третий ответ
#@dp.message_handler(state = FSMAdmin.size)
async def load_size(message: types.Message, state: FSMContext):
async with state.proxe() as date:
date ["size"] = message.text
await FSMAdmin.next()
return await message.reply("Введи размер шлема")
#Ловим четвертый ответ и используем полученые данны
#@dp.message_handler(state = FSMAdmin.price)
async def load_pricce(message: types.Message, state: FSMContext):
async with state.proxe() as date:
date ["pricce"] = message.text
async with state.proxe() as date:
await message.raply(str(date))
await state.finish()
#Регистрируем хендлеры
def register_handlers_admin(dp : Dispatcher):
dp.register_message_handler(cm_start, commands = ["download"], state=None)
dp.register_message_handler(load_photo, content_types = ["photo"], state = FSMAdmin.photo)
dp.register_message_handler(load_name, state = FSMAdmin.name)
dp.register_message_handler(load_size, state = FSMAdmin.size)
dp.register_message_handler(load_pricce, state = FSMAdmin.pricce)
Файл (other)
from aiogram import types, Dispatcher
from create_bot import dp
import json, string
@dp.message_handler()
async def delete_mat(message: types.message):
if {i.lower().translate(str.maketrans('','', string.punctuation)) for i in message.text.split(' ')}\
.intersection(set(json.load(open('cenz.json')))) != set():
await message.reply('Маты запрещены')
await message.delete()