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.
Metadata
Release files for basiccalls 2.2.9.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| basiccalls-2.2.9.2.tar.gz | 51.8 kB | Without provenance | Details for basiccalls-2.2.9.2.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| basiccalls-2.2.9.2-py3-none-any.whl | Python 3 | none | any | Details for basiccalls-2.2.9.2-py3-none-any.whl |
Total release size: 137.7 kB
Release files / basiccalls-2.2.9.2.tar.gz
| Download URL | basiccalls-2.2.9.2.tar.gz |
|---|---|
| Size | 51.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d9cb4d56aef62d935b582b03b3a0ca2af23727d2d1bbed92c85343974af10d6f
|
|
BLAKE2b-256 checksum How to use checksums |
1d3ec36f7b3a929d682d3185163b2e9f82332243b81d5751ccbd08b14146b5b4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.11
|
Release files / basiccalls-2.2.9.2-py3-none-any.whl
| Download URL | basiccalls-2.2.9.2-py3-none-any.whl |
|---|---|
| Size | 85.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f0827faafb288a5d537bbe7e27da7f12457701daf8b35ad4c29e1161c84c2c0b
|
|
BLAKE2b-256 checksum How to use checksums |
4feb7595b788868a69ebe7a036d0b93c7f4a334cf65c678c31bceeca41e8e4b0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.11
|
Security for basiccalls 2.2.9.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.