Expanding the work of hooks

This commit is contained in:
Capybara-z
2025-08-24 00:13:40 +03:00
parent 4795107178
commit 9b5ab83b1f
3 changed files with 25 additions and 0 deletions
@@ -40,6 +40,8 @@ from handlers.utils import (
get_least_loaded_cluster,
is_full_remnawave_cluster,
)
from hooks.hooks import run_hooks
from hooks.hook_buttons import insert_hook_buttons
from logger import logger
@@ -170,6 +172,13 @@ async def key_cluster_mode(
builder.row(InlineKeyboardButton(text=SUPPORT, url=SUPPORT_CHAT_URL))
builder.row(InlineKeyboardButton(text=MAIN_MENU, callback_data="profile"))
try:
hook_commands = await run_hooks("key_creation_complete", chat_id=tg_id, admin=False, session=session, email=email, key_name=key_name)
if hook_commands:
builder = insert_hook_buttons(builder, hook_commands)
except Exception as e:
logger.warning(f"[KEY_CREATION_COMPLETE] Ошибка при применении хуков: {e}")
expiry_time_local = expiry_time.astimezone(moscow_tz)
expiry_time_local - datetime.now(moscow_tz)
@@ -44,6 +44,8 @@ from handlers.utils import (
get_least_loaded_cluster,
is_full_remnawave_cluster,
)
from hooks.hooks import run_hooks
from hooks.hook_buttons import insert_hook_buttons
from logger import logger
from panels.remnawave import RemnawaveAPI
from panels.three_xui import delete_client, get_xui_instance
@@ -498,6 +500,13 @@ async def finalize_key_creation(
builder.row(InlineKeyboardButton(text=SUPPORT, url=SUPPORT_CHAT_URL))
builder.row(InlineKeyboardButton(text=MAIN_MENU, callback_data="profile"))
try:
hook_commands = await run_hooks("key_creation_complete", chat_id=tg_id, admin=False, session=session, email=email, key_name=key_name)
if hook_commands:
builder = insert_hook_buttons(builder, hook_commands)
except Exception as e:
logger.warning(f"[KEY_CREATION_COMPLETE] Ошибка при применении хуков: {e}")
link_to_show = public_link or remnawave_link or "Ссылка не найдена"
tariff_info = None
+7
View File
@@ -405,6 +405,13 @@ async def complete_key_renewal(
builder = InlineKeyboardBuilder()
builder.row(InlineKeyboardButton(text=MY_SUB, callback_data=f"view_key|{email}"))
try:
hook_commands = await run_hooks("renewal_complete", chat_id=tg_id, admin=False, session=session, email=email, client_id=client_id)
if hook_commands:
builder = insert_hook_buttons(builder, hook_commands)
except Exception as e:
logger.warning(f"[RENEWAL_COMPLETE] Ошибка при применении хуков: {e}")
formatted_expiry_date = datetime.fromtimestamp(new_expiry_time / 1000, tz=moscow_tz).strftime("%d %B %Y, %H:%M")
formatted_expiry_date = formatted_expiry_date.replace(