skillfed

pytgcalls

a library connecting the tgcalls Python binding with MTProto

pytgcalls v2.1.0 1.4M downloads/30d#3,961 on PyPI551
Copyleft license LGPLv3 Abandoned released

What it is and what it does

pytgcalls is a Python SDK that wraps the tgcalls C++ library (Telegram's own WebRTC implementation) and combines it with MTProto to let you build bots that participate in Telegram voice chats. It supports both Pyrogram and Telethon as MTProto clients and provides high-level abstractions for joining group calls, recording audio, broadcasting streams, and managing voice state. Audio is handled in PCM 16-bit 48kHz format via raw bytes, files, or system devices.

The package is abandoned—its last release was 2021-08-22 and the repository received its final commit 2023-01-09. While it remains functional for existing use cases, it will not receive updates for new Telegram protocol changes, security vulnerabilities, or compatibility with modern Python versions. Developers should evaluate whether the lack of maintenance is acceptable for their production needs.

Use it for:

  • Build a bot that joins a Telegram group voice chat and plays back a prerecorded audio file or live stream.
  • Create a voice chat recorder that captures incoming audio from a Telegram group call and saves it to a file.
  • Implement a radio or music broadcast bot that streams audio to multiple Telegram voice chats simultaneously.
  • Develop a private call handler bot that can receive and respond to incoming Telegram calls programmatically.
  • Set up a voice activity detection system to monitor when users are speaking in a Telegram group call.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Enables Python bots to join Telegram voice chats, make and receive private calls, and broadcast audio using WebRTC via the tgcalls C++ binding and MTProto protocol.

No. While the package works for its stated purpose and has low install friction, it is abandoned (last release 2021-08-22, last commit 2023-01-09). Without active maintenance, it will not receive security patches, protocol updates, or compatibility fixes for modern Python versions. For new projects, seek an actively maintained alternative or verify that the stale codebase meets your specific, unchanging requirements.

Install

pytgcalls on PyPI

pip

pip install pytgcalls

uv

uv add pytgcalls

poetry

poetry add pytgcalls

Installing pytgcalls

Before you install

Low install friction with prebuilt wheels for macOS, Linux, and Windows. However, the package is abandoned—last release was 2021-08-22 and last commit 2023-01-09. No active maintenance means security patches and compatibility updates are unlikely.

License in practice

Licensed under LGPLv3 (copyleft). Any derivative work or modification must be released under the same license; linking or bundling requires source disclosure.

Quickstart

pip install pytgcalls

from pytgcalls import GroupCallFactory

group_call = GroupCallFactory(app).get_file_group_call('input.raw')
await group_call.start(chat_id)

Requires a Telegram API key, a valid MTProto client (Pyrogram or Telethon), and audio in PCM 16-bit 48kHz raw format (convert via ffmpeg).

Verify before relying

  • Whether the C++ tgcalls binding remains compatible with current Telegram protocol changes since the last 2023 commit.
  • Current stability and whether incoming/outgoing private calls (marked TODO in description) were ever released.
  • Whether prebuilt wheels still work on modern Python versions (3.10+) despite classifiers only listing up to 3.9.

Package facts

License LGPLv3 (copyleft)
Python support supports the current Python release (~=3.6)
Install friction low — pure-Python wheel
Runtime dependencies 1 — tgcalls
Maintenance abandoned — 1,818 days since the last release
Last repo commit
First released
Downloads 1,392,623/month — #3,961 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: pytgcalls-2.1.0-py3-none-any.whl

Keywords: python, library, telegram, async, asynchronous, webrtc, lib, voice-chat, voip, group-chat, video-call, calls, pyrogram, telethon, pytgcalls, tgcalls

Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)Natural Language :: EnglishOperating System :: MacOSOperating System :: OS IndependentOperating System :: UnixProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Programming Language :: Python :: ImplementationProgramming Language :: Python :: Implementation :: CPythonTopic :: CommunicationsTopic :: Communications :: Internet PhoneTopic :: Communications :: TelephonyTopic :: InternetTopic :: MultimediaTopic :: Multimedia :: Sound/AudioTopic :: Multimedia :: Sound/Audio :: Capture/RecordingTopic :: Multimedia :: VideoTopic :: Multimedia :: Video :: CaptureTopic :: Software Development :: LibrariesTopic :: Software Development :: Libraries :: Python Modules

Tags

telegram voice chat bottelegram voip pythontelegram group call recordingtelegram audio broadcasttelegram webrtc callstelegram call bot sdkvoice chat library
telegram-botvoipabandoned

More Libraries packages