fix: android tv connection for remnawave
This commit is contained in:
@@ -145,18 +145,11 @@ async def process_macos_menu(callback_query: CallbackQuery, session: Any):
|
||||
|
||||
@router.callback_query(F.data.startswith("connect_tv|"))
|
||||
async def process_connect_tv(callback_query: CallbackQuery, session: Any):
|
||||
data = callback_query.data.split("|")
|
||||
key_name = data[1]
|
||||
callback_data = callback_query.data
|
||||
|
||||
if key_name == "direct" and len(data) > 2:
|
||||
callback_data = f"continue_tv|{key_name}|{data[2]}"
|
||||
else:
|
||||
callback_data = callback_data.replace("connect_tv", "continue_tv")
|
||||
key_name = callback_query.data.split("|")[1]
|
||||
|
||||
builder = InlineKeyboardBuilder()
|
||||
builder.row(
|
||||
InlineKeyboardButton(text=TV_CONTINUE, callback_data=callback_data)
|
||||
InlineKeyboardButton(text=TV_CONTINUE, callback_data=f"continue_tv|{key_name}")
|
||||
)
|
||||
builder.row(InlineKeyboardButton(text=BACK, callback_data=f"view_key|{key_name}"))
|
||||
builder.row(InlineKeyboardButton(text=MAIN_MENU, callback_data="profile"))
|
||||
@@ -172,20 +165,13 @@ async def process_connect_tv(callback_query: CallbackQuery, session: Any):
|
||||
|
||||
@router.callback_query(F.data.startswith("continue_tv|"))
|
||||
async def process_continue_tv(callback_query: CallbackQuery, session: Any):
|
||||
data = callback_query.data.split("|")
|
||||
key_name = data[1]
|
||||
subscription_link = None
|
||||
|
||||
if key_name == "direct" and len(data) > 2:
|
||||
subscription_link = data[2]
|
||||
else:
|
||||
record = await get_key_details(session, key_name)
|
||||
subscription_link = record["key"]
|
||||
|
||||
key_name = callback_query.data.split("|")[1]
|
||||
record = await get_key_details(session, key_name)
|
||||
subscription_link = record.get("key") or record.get("remnawave_link")
|
||||
message_text = SUBSCRIPTION_DETAILS_TEXT.format(subscription_link=subscription_link)
|
||||
|
||||
builder = InlineKeyboardBuilder()
|
||||
builder.row(InlineKeyboardButton(text=BACK, callback_data=f"connect_tv|{key_name}|{subscription_link}" if subscription_link else f"connect_tv|{key_name}"))
|
||||
builder.row(InlineKeyboardButton(text=BACK, callback_data=f"connect_tv|{key_name}"))
|
||||
builder.row(InlineKeyboardButton(text=MAIN_MENU, callback_data="profile"))
|
||||
|
||||
await edit_or_send_message(
|
||||
|
||||
@@ -153,7 +153,7 @@ async def key_cluster_mode(
|
||||
)
|
||||
)
|
||||
builder.row(
|
||||
InlineKeyboardButton(text=TV_BUTTON, callback_data=f"connect_tv|direct|{final_link}")
|
||||
InlineKeyboardButton(text=TV_BUTTON, callback_data=f"connect_tv|{email}")
|
||||
)
|
||||
elif CONNECT_PHONE_BUTTON:
|
||||
builder.row(
|
||||
|
||||
@@ -529,7 +529,7 @@ async def finalize_key_creation(
|
||||
)
|
||||
)
|
||||
builder.row(
|
||||
InlineKeyboardButton(text=TV_BUTTON, callback_data=f"connect_tv|direct|{public_link or remnawave_link}")
|
||||
InlineKeyboardButton(text=TV_BUTTON, callback_data=f"connect_tv|{email}")
|
||||
)
|
||||
elif CONNECT_PHONE_BUTTON:
|
||||
builder.row(
|
||||
|
||||
@@ -327,7 +327,7 @@ async def render_key_info(
|
||||
)
|
||||
)
|
||||
builder.row(
|
||||
InlineKeyboardButton(text=TV_BUTTON, callback_data=f"connect_tv|direct|{final_link}")
|
||||
InlineKeyboardButton(text=TV_BUTTON, callback_data=f"connect_tv|{key_name}")
|
||||
)
|
||||
else:
|
||||
if CONNECT_PHONE_BUTTON:
|
||||
|
||||
Reference in New Issue
Block a user