/start update!

- Fixed grammar errors
- Added to menu information about current version
This commit is contained in:
kittyneverdies 2024-01-27 18:39:34 +03:00
parent fa33e7dde7
commit f36a111fc7
7 changed files with 69 additions and 17 deletions

View File

@ -1,6 +1,8 @@
import asyncio
import logging
import os
import git
import g4f
from bozenka.instances.telegram import launch_telegram_instance
@ -12,6 +14,7 @@ def launch_instances() -> None:
Launches bozenka instances, working async
:return:
"""
logging.log(msg="Setting up g4f logging!", level=logging.INFO)
logging.basicConfig(level=logging.INFO)
logging.log(msg="Setting up logging!", level=logging.INFO)

View File

@ -5,15 +5,32 @@ from aiogram.utils.keyboard import InlineKeyboardBuilder
from bozenka.instances.telegram.utils.keyboards import help_keyboard, start_keyboard
async def start_cmd(msg: Message):
async def start_cmd(msg: Message) -> None:
"""
/start command function
:param msg:
:return:
/start command function handler
Shows menu and basic information about bozenka
:param msg: Message telegram object
:return: Nothing
"""
await msg.answer(
'Привет, пользователь, я - Бозенька 👋\n'
'Я мультизадачный телеграм (в будущем кросс-платформенный) бот с открытым исходным кодом, разрабатываемый <b>Bozo Developement</b>\n'
f'Выберите, что будете делать, {msg.from_user.mention_html(name="пользователь")}.',
reply_markup=start_keyboard()
)
"""
Привет 👋
Я - бозенька, бот с открытым исходным кодом, который поможет тебе в различных задачах.
Вот что ты можешь сделать с помощью меню:
Добавить в чат: добавляет меня в групповой чат, чтобы я мог выполнять свои функции внутри него.
Функционал: показывает список доступных функций и команд, которые я могу выполнить.
О разработчиках: предоставляет информацию о команде разработчиков, которые создали и поддерживают этого бота.
О запущенном экземпляре: выводит информацию о текущей версии и состоянии запущенного экземпляра бота.
Начать диалог с ИИ: позволяет начать диалог с искусственным интеллектом, который может отвечать на вопросы и предоставлять информацию.
Генерация изображений: позволяет сгенерировать изображения на основе заданных параметров и промта
Вот нужные ссылки обо мне:
<a href='https://t.me/bozodevelopment'>Канал с новостями об разработке</a>
<a href='https://github.com/kittyneverdies/bozenka/'>Исходный код на Github</a>
Чтобы воспользоваться какой-либо функцией, просто нажми на соответствующую кнопку ниже.
Если у тебя возникнут вопросы или проблемы, не стесняйся обратиться к команде разработчиков или написать в обсуждении телеграм канала.
Удачного использования!
""",
reply_markup=start_keyboard(), disable_web_page_preview=True)

View File

@ -122,7 +122,7 @@ def register_queries(router: Router) -> None:
router.callback_query.register(inline_add_to_chat, F.data == "addtochat")
router.callback_query.register(inline_start_chatbot, F.data == "dialogai")
router.callback_query.register(inline_help, F.data == "functional")
router.callback_query.register(inline_about_instance, F.data == "aboutbot")

View File

@ -1,8 +1,11 @@
import git
from aiogram.types import *
from bozenka.instances.telegram.utils.callbacks_factory import *
from bozenka.instances.telegram.utils.keyboards import *
from bozenka.instances.telegram.utils.simpler import list_of_features
from bozenka.instances.version import is_updated, build
async def inline_start(call: CallbackQuery):
@ -36,9 +39,6 @@ async def inline_help(call: CallbackQuery):
:param call:
:return:
"""
kb = InlineKeyboardMarkup(inline_keyboard=[[
]])
await call.message.edit_text("Выберите категорию, по которой нужна помощь:",
reply_markup=help_keyboard())
@ -52,7 +52,12 @@ async def inline_about_developers(call: CallbackQuery):
kb = InlineKeyboardMarkup(inline_keyboard=[[
InlineKeyboardButton(text="Вернуться 🔙", callback_data="back")
]])
await call.message.edit_text("Бозенька - это мультифункциональный (в будущем кроссплатформенный бот)."
await call.message.edit_text("""
Бозенька - это мультифункциональный (в будущем кроссплатформенный) бот.\n
Он умеет работать с групповыми чатами и готовыми нейронными сетями для генерации текста и изображений.
Бозенька разрабатывается коммандой, которая состоит из одного
""")
await call.message.edit_text("Бозенька - это мультифункциональный (в будущем кроссплатформенный бот).\n"
"Он умеет работать с группами и готовыми нейронными сетями\n"
"Бозеьнка разработавается коммандой, состаящей из одного человека, сам проект был изначально для развития моих навыков в Python\n"
"Исходный код находится под лицензией <b>GPL-3.0</b>. Исходный код проекта всегда будет открыт и доступен.\n"
@ -61,6 +66,24 @@ async def inline_about_developers(call: CallbackQuery):
reply_markup=kb)
async def inline_about_instance(call: CallbackQuery):
"""
Query, what shows information about runned instance
:param call:
:return:
"""
kb = InlineKeyboardMarkup(inline_keyboard=[[
InlineKeyboardButton(text="Вернуться 🔙", callback_data="back")
]])
me = await call.message.bot.get_me()
update_status = {False: "требуется обновление",
True: "последняя доступная версия"}
await call.message.edit_text(
f"Информация об данном запущенном экземпляре, {me.mention_html()}\n"
f"Запущенная версия бота <code>{build}</code>, {update_status[is_updated]}\n",
reply_markup=kb)
async def inline_add_to_chat(call: CallbackQuery):
"""
Query, what shows a link to add bozenka into user chat

View File

@ -29,6 +29,7 @@ def start_keyboard() -> InlineKeyboardMarkup:
[InlineKeyboardButton(text="Добавить в чат 🔌", callback_data="addtochat")],
[InlineKeyboardButton(text="Функционал 🔨", callback_data="functional")],
[InlineKeyboardButton(text="О разработчиках ", callback_data="aboutdevs")],
[InlineKeyboardButton(text="О запущенном экзепляре ", callback_data="aboutbot")],
[InlineKeyboardButton(text="Начать диалог с ИИ 🤖", callback_data="dialogai")],
[InlineKeyboardButton(text="Генерация Изображений 🖼", callback_data="dialogimage")],
]
@ -80,8 +81,6 @@ def help_feature_keyboard(category: str) -> InlineKeyboardMarkup:
:return:
"""
kb = InlineKeyboardMarkup(inline_keyboard=[
[InlineKeyboardButton(text="🔙 Назад к функциям",
callback_data=HelpBackCategory(back_to_category=category).pack())],
[InlineKeyboardButton(text="🔙 Назад к функциям",
callback_data=HelpBackCategory(back_to_category=category).pack())]
])

View File

@ -0,0 +1,9 @@
import os
import git
repo = git.Repo(path="D:\\Files\\Documents\\GitHub\\Bozenka")
build = repo.heads[0].commit.hexsha
diff = repo.git.log([f"HEAD..origin/{repo.active_branch}", "--oneline"])
is_updated = True if not diff else False

View File

@ -10,4 +10,5 @@ diffusers~=0.25.0
torch~=2.1.2
transformers~=4.36.2
accelerate
omegaconf
omegaconf
gitpython