Skip to main content

An edited 1.24.0 version of the full-featured Telegram client library for Python 3

Project description

About

A simple clone of the awesome Telegram MTproto client version 1.24.0 but with up to date components, You do not have to change previous code with telethon, as there are no breaking changes.

install: (if any issues, try uninstalling telethon first):

pip install -U newthon

Reactions

client.send_reaction(chat, message, "😢")

or shorter:

message.react("😁", big=True)

to send a reaction with animation(for pms) use big=True, and, to remove a reaction use remove=True:

message.react(remove=True)

Premium

  • You can send files larger that 2GiB through Telegram

  • Premium users will have .premium in their user object

  • Premium stickers will also have .premium that might need dealing if you don’t have subscription.

spoilers and custom emoji

Use ||Text|| to create spoilers, for HTML use <tg-spoiler>Text</tg-spoiler> to create a customEmoji markdown use <emoji id=”5373101475679443553”>😉</emoji>. the id being the document id of any CustomEmoji Document.id in its pack.

Requests of join and events for ChatAction events

  • event.new_invite (only for bot accounts)

@bot.on(events.ChatAction(func=lambda e : e.new_join_request))
async def _(event):
    event.approve_user(approved=True or False)
  • event.new_approve for user accounts

@client.on(events.ChatAction(func=lambda e : e.new_approve))
async def _(event):
    event.approve_user(approved=True/False)

using raw api to accept old requests

  • Getting them

result = client(functions.messages.GetChatInviteImportersRequest(
    peer="chat",
    offset_date=None,
    offset_user=telethon.tl.types.InputUserEmpty(),
    limit=1000
))
  • manual approve

for a in result:
    client(functions.messages.HideChatJoinRequestRequest(
        peer='chat or username',
        user_id='To-approve',
        approved=True or False
    ))
  • batch approve:

client(functions.messages.HideAllChatJoinRequestsRequest(
    peer=entity,
    approved=True or False
))

WebView Button

You can input a web bot button as an inline button or a keyboard button, sine it can be both. the default is inline button, you can use the inline=False to use it in a keyboard button

from telethon import Button
client.send_message(chat, "Open Google", buttons=Button.web("google", "https://google.com")
  • note that webapp keyboard can be only a single button, it won’t allow others with it.

client.send_message(chat, "YouTube", buttons=Button.web("google", "https://YouTube.com", inline=False)

Content privacy

chat.noforwards will return True for chats with forward restriction enabled, same applies to bot messages with message.noforwards You can use the argument noforwards=True in sender methods.

client.send_message(chat, "lonami is god", noforwards=True)

iter_participant

aggressive True will sleep by default. its sleep value can be adjusted using the sleep parameter, this will make it sleep for that specified amount before processing next chunk.

client.get_participant(chat, aggressive=True, sleep=2)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

newthon-1.27.5-py3-none-any.whl (1.4 MB view details)

Uploaded Python 3

File details

Details for the file newthon-1.27.5-py3-none-any.whl.

File metadata

  • Download URL: newthon-1.27.5-py3-none-any.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.28.1 requests-toolbelt/0.9.1 urllib3/1.26.10 tqdm/4.62.3 importlib-metadata/4.8.1 keyring/21.8.0 rfc3986/1.5.0 colorama/0.4.4 CPython/3.10.4

File hashes

Hashes for newthon-1.27.5-py3-none-any.whl
Algorithm Hash digest
SHA256 7eae39ad2ff68623d28949ab4985f11739dbea8dc8a91d976123e11ee11bacc5
MD5 16a9bfcd265951e5229923bf9225deaf
BLAKE2b-256 02fc4473d575145f590e1b18a6728a124ef0745c72cd9b91ccc2b0eadb02ce07

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page