Added create_channel_bot_link function

This commit is contained in:
Alex Root Junior 2023-04-23 03:30:48 +03:00
parent 62a9f0cb6e
commit cf269e15f4
No known key found for this signature in database
GPG key ID: 074C1D455EBEA4AC
2 changed files with 100 additions and 4 deletions

View file

@ -26,3 +26,49 @@ def create_tg_link(link: str, **kwargs: Any) -> str:
def create_telegram_link(*path: str, **kwargs: Any) -> str:
return _format_url("https://t.me", *path, **kwargs)
def create_channel_bot_link(
username: str,
parameter: Optional[str] = None,
change_info: bool = False,
post_messages: bool = False,
edit_messages: bool = False,
delete_messages: bool = False,
restrict_members: bool = False,
invite_users: bool = False,
pin_messages: bool = False,
promote_members: bool = False,
manage_video_chats: bool = False,
anonymous: bool = False,
manage_chat: bool = False,
) -> str:
params = {}
if parameter is not None:
params["startgroup"] = parameter
permissions = []
if change_info:
permissions.append("change_info")
if post_messages:
permissions.append("post_messages")
if edit_messages:
permissions.append("edit_messages")
if delete_messages:
permissions.append("delete_messages")
if restrict_members:
permissions.append("restrict_members")
if invite_users:
permissions.append("invite_users")
if pin_messages:
permissions.append("pin_messages")
if promote_members:
permissions.append("promote_members")
if manage_video_chats:
permissions.append("manage_video_chats")
if anonymous:
permissions.append("anonymous")
if manage_chat:
permissions.append("manage_chat")
if permissions:
params["admin"] = "+".join(permissions)
return create_telegram_link(username, **params)