Fork of py-tgcalls: Enhanced async client API for Telegram Calls with Kurigram compatibility and extended features.
Project description
BasicCalls 
🚀 Enhanced Fork of py-tgcalls
BasicCalls is an enhanced fork of the original py-tgcalls library with additional features and improvements:
✨ Key Enhancements
- Kurigram Compatibility: Full support for Kurigram (Pyrogram fork) with UpdateGroupCall compatibility patches
- Improved Stability: Enhanced error handling and connection management
- Extended Features: Additional functionality for modern Telegram voice/video calls
- Better Integration: Optimized for BasicMusic and similar projects
🔧 What's New
- UpdateGroupCall peer/chat_id fallback system for Kurigram compatibility
- Enhanced MTProto client detection and initialization
- Improved MediaStream handling with better error management
- Comprehensive test system for validation
A simple and elegant client that allows you to make group voice calls quickly and easily.
Examples
•
Repository
•
Developer
•
PyPI
This project allows making Telegram calls using MTProto and WebRTC, based on the power of NTgCalls library and @evgeny-nadymov, with enhancements by Yakup Kaya.
Example Usage
from pytgcalls import PyTgCalls
from pytgcalls import idle
...
chat_id = -1001185324811
app = PyTgCalls(client)
app.start()
app.play(
chat_id,
'http://docs.evostream.com/sample_content/assets/sintel1m720p.mp4',
)
idle()
Kurigram Usage Example
# Enhanced compatibility with Kurigram
from kurigram import Client
from pytgcalls import PyTgCalls
app = Client("my_app", api_id=API_ID, api_hash=API_HASH)
calls = PyTgCalls(app)
# Automatic UpdateGroupCall compatibility handling
@calls.on_update()
async def on_update(client, update):
# Works seamlessly with both peer and chat_id formats
pass
Features
- Prebuilt wheels for macOS, Linux and Windows.
- Supporting all type of MTProto libraries: Pyrogram, Telethon, Hydrogram and Kurigram.
- Enhanced Kurigram compatibility with UpdateGroupCall patches.
- Work with voice chats in channels and chats.
- Join as channels or chats.
- Mute/unmute, pause/resume, stop/play, volume control and more...
- Improved error handling and connection stability.
- Comprehensive testing system for validation.
Installation
pip install basiccalls
Original Credits
This project is a fork of py-tgcalls by Laky-64. Enhanced and maintained by Yakup Kaya for improved compatibility and features.
Contact & Support
- Developer: Yakup Kaya
- Email: y4kupkaya@gmail.com
- GitHub: @y4kupkaya
- Telegram: @yakupkaya
- LinkedIn: yakupkaya
- Twitter: @y4kupkaya
Requirements
- Python 3.9 or higher.
- An MTProto Client
- A Telegram API key.
How to install?
Here's how to install the PyTgCalls lib, the commands are given below:
# With Git
pip install git+https://github.com/pytgcalls/pytgcalls -U
# With PyPi (Recommended)
pip install py-tgcalls -U
Key Contributors
- @Laky-64 (DevOps Engineer, Software Architect):
- Played a crucial role in developing PyTgCalls being an ex developer of pyservercall and of tgcallsjs.
- Automation with GitHub Actions
- @kuogi (Senior UI/UX designer, Documenter):
- As a Senior UI/UX Designer, Kuogi has significantly improved the user interface of our documentation, making it more visually appealing and user-friendly.
- Played a key role in writing and structuring our documentation, ensuring that it is clear, informative, and accessible to all users.
- @vrumger (Senior Node.js Developer, Software Architect):
- Has made important fixes and enhancements to the WebRTC component of the library, improving its stability and performance.
- Main developer of TgCallsJS
- @alemidev (Senior Python Developer):
- Has made important fixes and enhancements to the async part of the library
Junior Developers
- @TuriOG (Junior Python Developer):
- Currently working on integrating NTgCalls into PyTgCalls, an important step in expanding the functionality and usability of the library.
Special Thanks
- @evgeny-nadymov: A heartfelt thank you to Evgeny Nadymov for graciously allowing us to use their code from telegram-react. His contribution has been pivotal to the success of this project.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file basiccalls-2.2.9.1.tar.gz.
File metadata
- Download URL: basiccalls-2.2.9.1.tar.gz
- Upload date:
- Size: 51.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8c154987925d1a60a1aa5531865f5aa7c91345f7f8a63ab911721d90445acda6
|
|
| MD5 |
8d9981d9dd035bd66398d8b4b334b9a8
|
|
| BLAKE2b-256 |
147ceec3fa18b0034116fe39b5f051d5453deb9d09d2928948e6c9d0b32e436e
|
File details
Details for the file basiccalls-2.2.9.1-py3-none-any.whl.
File metadata
- Download URL: basiccalls-2.2.9.1-py3-none-any.whl
- Upload date:
- Size: 85.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6431cc9a8745f97d8e3559c5bf6c7b3b89047d693466d886d110789661a775e8
|
|
| MD5 |
9eb9359ceac79d8d137a97fd80aba612
|
|
| BLAKE2b-256 |
3ee21d44033fd1e50676961c139c70fe09726ae83580196732408cd35647829e
|