Skip to main content

a Python binding for tgcalls C++ library

Project description

tgcalls
Voice chats, private incoming and outgoing calls in Telegram for Developers
Examples Documentation Channel Chat

Telegram WebRTC (VoIP) Mentioned in Awesome Telegram Calls

This project consists of two main parts: tgcalls, pytgcalls. The first is a C++ Python extension. The second uses the extension along with MTProto and provides high level SDK. All together, it allows you to create userbots that can record and broadcast in voice chats, make and receive private calls.

Pyrogram's snippet

from pyrogram import Client, filters
from pyrogram.utils import MAX_CHANNEL_ID

from pytgcalls import GroupCallFactory

app = Client('pytgcalls')
group_call = GroupCallFactory(app).get_file_group_call('input.raw')


@group_call.on_network_status_changed
async def on_network_changed(context, is_connected):
    chat_id = MAX_CHANNEL_ID - context.full_chat.id
    if is_connected:
        await app.send_message(chat_id, 'Successfully joined!')
    else:
        await app.send_message(chat_id, 'Disconnected from voice chat..')


@app.on_message(filters.outgoing & filters.command('join'))
async def join_handler(_, message):
    await group_call.start(message.chat.id)


app.run()

Telethon's snippet

from telethon import TelegramClient, events

from pytgcalls import GroupCallFactory

app = TelegramClient('pytgcalls', api_id, api_hash).start()
group_call_factory = GroupCallFactory(app, GroupCallFactory.MTPROTO_CLIENT_TYPE.TELETHON)
group_call = group_call_factory.get_file_group_call('input.raw')


@app.on(events.NewMessage(outgoing=True, pattern=r'^/join$'))
async def join_handler(event):
    chat = await event.get_chat()
    await group_call.start(chat.id)

app.run_until_disconnected()

Features

  • Python solution.
  • Supporting popular MTProto libraries: Pyrogram, Telethon.
  • Abstract class to implement own MTProto bridge.
  • Work with voice chats in channels and chats.
  • Multiply voice chats (example).
  • System of custom handlers on events.
  • Join as channels or chats.
  • Join using invite (speaker) links.
  • Speaking status with audio levels inside and outside of voice chat.
  • Mute/unmute, pause/resume, stop/play, volume control and more...

Available sources of input/output data transfers

  • File (GroupCallFile, playout example, recording example) — to use any audio files including named pipe (FIFO).
  • Device (GroupCallDevice, example) — to use system virtual devices. Please don't use it with real microphone, headphones, etc.
  • Raw (GroupCallRaw, example of restreaming) — to send and receive data in bytes directly from Python.

Note: All audio data is transmitted in PCM 16 bit, 48k. Example how to convert files using FFmpeg.

Requirements

  • Python 3.6 or higher.
  • A Telegram API key.
  • x86_64/arm64 platform and Unix system (use WSL for Windows).

TODO list

  • Incoming and Outgoing calls (already there and working, but not in release).
  • Private and group video calls.
  • Python binary wheels for Windows and more...

Installing

For Pyrogram

pip3 install -U pytgcalls[pyrogram]

For Telethon

pip3 install -U pytgcalls[telethon]

tgcalls
PyPi Sources

tgcalls

The first part of the project is C++ extensions for Python. Pybind11 was used to write it. Binding occurs to the tgcalls library by Telegram, which is used in all official clients. To implement the binding, the code of Telegram Desktop and Telegram Android was studied. Changes have been made to the Telegram library. All modified code is available as a subtree in this repository. The main idea of the changes is to improve the sound quality by making the minimum number of code edits for a simple update. In addition, audio modules for WebRTC were developed. Modules are allowing to transfer audio data directly from Python via bytes, transfer and control the playback/recording of a file or a virtual system device.

How to build

Short answer for linux:

git clone git@github.com:MarshalX/tgcalls.git --recursive
cd tgcalls

For x86_64:

docker-compose up tgcalls_x86_64

For AArch64 (ARM64):

docker-compose up tgcalls_aarch64

Python wheels will be available in dist folder in root of tgcalls.

More info:

Also, you can investigate into manylinux GitHub Actions builds.

Documentation

Temporarily, instead of documentation, you can use an example along with MTProto.


pytgcalls
Documentation PyPi Sources

pytgcalls

This project is implementation of using tgcalls Python binding together with MTProto. By default, this library are supports Pyrogram and Telethon clients for working with Telegram Mobile Protocol. You can write your own implementation of abstract class to work with other libraries.

Learning by example

Visit this page to discover the official examples.

Documentation

pytgcalls's documentation lives at tgcalls.org.

Audio file formats

RAW files are now used. You will have to convert to this format yourself using ffmpeg. The example how to transcode files from a code is available here.

From mp3 to raw (to play in voice chat):

ffmpeg -i input.mp3 -f s16le -ac 2 -ar 48000 -acodec pcm_s16le input.raw

From raw to mp3 (files with recordings):

ffmpeg -f s16le -ac 2 -ar 48000 -acodec pcm_s16le -i output.raw clear_output.mp3

For playout live stream you can use this one:

ffmpeg -y -i http://stream2.cnmns.net/hope-mp3 -f s16le -ac 2 -ar 48000 -acodec pcm_s16le input.raw

For YouTube videos and live streams you can use youtube-dl:

ffmpeg -i "$(youtube-dl -x -g "https://youtu.be/xhXq9BNndhw")" -f s16le -ac 2 -ar 48000 -acodec pcm_s16le input.raw

And set input.raw as input filename.


Getting help

You can get help in several ways:

Contributing

Contributions of all sizes are welcome.

Special thanks to

License

You may copy, distribute and modify the software provided that modifications are described and licensed for free under LGPL-3. Derivatives works (including modifications or anything statically linked to the library) can only be redistributed under LGPL-3, but applications that use the library don't have to be.

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 Distributions

tgcalls-2.0.0-cp310-cp310-win_amd64.whl (16.8 MB view details)

Uploaded CPython 3.10Windows x86-64

tgcalls-2.0.0-cp310-cp310-win32.whl (15.4 MB view details)

Uploaded CPython 3.10Windows x86

tgcalls-2.0.0-cp310-cp310-macosx_10_12_x86_64.whl (8.8 MB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

tgcalls-2.0.0-cp39-cp39-win_amd64.whl (16.7 MB view details)

Uploaded CPython 3.9Windows x86-64

tgcalls-2.0.0-cp39-cp39-win32.whl (15.4 MB view details)

Uploaded CPython 3.9Windows x86

tgcalls-2.0.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.7 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

tgcalls-2.0.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (8.1 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

tgcalls-2.0.0-cp39-cp39-macosx_11_0_arm64.whl (7.5 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

tgcalls-2.0.0-cp39-cp39-macosx_10_12_x86_64.whl (8.8 MB view details)

Uploaded CPython 3.9macOS 10.12+ x86-64

tgcalls-2.0.0-cp38-cp38-win_amd64.whl (16.8 MB view details)

Uploaded CPython 3.8Windows x86-64

tgcalls-2.0.0-cp38-cp38-win32.whl (15.4 MB view details)

Uploaded CPython 3.8Windows x86

tgcalls-2.0.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.7 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

tgcalls-2.0.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (8.1 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ ARM64

tgcalls-2.0.0-cp38-cp38-macosx_10_12_x86_64.whl (8.8 MB view details)

Uploaded CPython 3.8macOS 10.12+ x86-64

tgcalls-2.0.0-cp37-cp37m-win_amd64.whl (16.8 MB view details)

Uploaded CPython 3.7mWindows x86-64

tgcalls-2.0.0-cp37-cp37m-win32.whl (15.4 MB view details)

Uploaded CPython 3.7mWindows x86

tgcalls-2.0.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.7 MB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ x86-64

tgcalls-2.0.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (8.1 MB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ ARM64

tgcalls-2.0.0-cp37-cp37m-macosx_10_12_x86_64.whl (8.8 MB view details)

Uploaded CPython 3.7mmacOS 10.12+ x86-64

tgcalls-2.0.0-cp36-cp36m-win_amd64.whl (16.8 MB view details)

Uploaded CPython 3.6mWindows x86-64

tgcalls-2.0.0-cp36-cp36m-win32.whl (15.4 MB view details)

Uploaded CPython 3.6mWindows x86

tgcalls-2.0.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.7 MB view details)

Uploaded CPython 3.6mmanylinux: glibc 2.17+ x86-64

tgcalls-2.0.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (8.1 MB view details)

Uploaded CPython 3.6mmanylinux: glibc 2.17+ ARM64

tgcalls-2.0.0-cp36-cp36m-macosx_10_12_x86_64.whl (8.8 MB view details)

Uploaded CPython 3.6mmacOS 10.12+ x86-64

File details

Details for the file tgcalls-2.0.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: tgcalls-2.0.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 16.8 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.7.9

File hashes

Hashes for tgcalls-2.0.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 ea24f60511962798ccc90e4fc719f3d9605c93ca491c2ea60fe77828c871a00d
MD5 07948d57a756ac8f5a2db0fcccaa0c3d
BLAKE2b-256 c6877bde0b14a671f2c290c84931b2b192bfe0521facefb8043111497fb1699d

See more details on using hashes here.

File details

Details for the file tgcalls-2.0.0-cp310-cp310-win32.whl.

File metadata

  • Download URL: tgcalls-2.0.0-cp310-cp310-win32.whl
  • Upload date:
  • Size: 15.4 MB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.7.9

File hashes

Hashes for tgcalls-2.0.0-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 ede5a61fee32a6b4ee4cd45f39c933143f502f59f743ce68a3aeff312e61d5ff
MD5 e3c358d94944c5fee58c5f3472ce45fe
BLAKE2b-256 351f89337fbb1e295e145a332ed896adc96d8ab5b2ef4a27643e8ea3a2f6b730

See more details on using hashes here.

File details

Details for the file tgcalls-2.0.0-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: tgcalls-2.0.0-cp310-cp310-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 8.8 MB
  • Tags: CPython 3.10, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.7.11

File hashes

Hashes for tgcalls-2.0.0-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 162704099e712ddc589c75a82aa642ca3ab5996f918e384257fc034a8b47e9ca
MD5 ecccc1be5772fc0ff36717a3af373d72
BLAKE2b-256 1b3f375649464746d1b6d77692d5e5ed2c346adb233b753b82a655dbfc7b3443

See more details on using hashes here.

File details

Details for the file tgcalls-2.0.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: tgcalls-2.0.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 16.7 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.7.9

File hashes

Hashes for tgcalls-2.0.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 366f00223bc7e1f881ccf5a88a031dbf60023ae68e378f7d26d78a21e73a0fe9
MD5 0ae7194f2e4a8a067215383fb6a0926c
BLAKE2b-256 60adc49c89134955acb84b6b5ce6d298275551aeb3a05c11dd3bae1a9fb2488c

See more details on using hashes here.

File details

Details for the file tgcalls-2.0.0-cp39-cp39-win32.whl.

File metadata

  • Download URL: tgcalls-2.0.0-cp39-cp39-win32.whl
  • Upload date:
  • Size: 15.4 MB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.7.9

File hashes

Hashes for tgcalls-2.0.0-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 cc51b9f69e8d108a8df746d2c17495ca065700c8e62807213e488f7dd1dd6940
MD5 1766a9c1622e3a37d5bbd42135d8e405
BLAKE2b-256 8294306fa1ffd3d018fa5b2f75ae0f74b68e4e441bc1b961af2ec8ba61910318

See more details on using hashes here.

File details

Details for the file tgcalls-2.0.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for tgcalls-2.0.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 06aa52c363ee74c269d1354776258d6aa0cb5ed9d683561cf06e59d97ae4df66
MD5 23871e0aecd593287c002c31695cb258
BLAKE2b-256 7c1fcc3a9a764c7bacf540136f2b18ad9413c31e8fcd2e7f58d0ab322e013b14

See more details on using hashes here.

File details

Details for the file tgcalls-2.0.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for tgcalls-2.0.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7d23102e50a6b7db2be4f785f5987a5f93435a237259b5a84efe54e40a8b3456
MD5 413a9c79baed3052596bf638c1dca8de
BLAKE2b-256 0bdaed4bdf7d50672eeb050865f42e9965487c65ed355c538a475aa0d9b9484f

See more details on using hashes here.

File details

Details for the file tgcalls-2.0.0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

  • Download URL: tgcalls-2.0.0-cp39-cp39-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 7.5 MB
  • Tags: CPython 3.9, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.2

File hashes

Hashes for tgcalls-2.0.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 98ca36fa1bd9d72e6e06ea25d478026bd9cd283227915a4949cd66b5d85eea58
MD5 fc8eea54f047942df341e249e3292c0a
BLAKE2b-256 e5271a73dced13dfd1482949fe9231e9dac8379458589dc212139f702c1dbce2

See more details on using hashes here.

File details

Details for the file tgcalls-2.0.0-cp39-cp39-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: tgcalls-2.0.0-cp39-cp39-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 8.8 MB
  • Tags: CPython 3.9, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.7.11

File hashes

Hashes for tgcalls-2.0.0-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 483348b522813a36e23fca628ea0f6c2ecf7326b308c039e2788665d4fbe7fca
MD5 781d519b7fb5c0b3f85d1ae3f23fcc37
BLAKE2b-256 d273da53e21015323b995e468176dae4fd55eb34a54b0b8ce0af3e1fd6d2e64e

See more details on using hashes here.

File details

Details for the file tgcalls-2.0.0-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: tgcalls-2.0.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 16.8 MB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.7.9

File hashes

Hashes for tgcalls-2.0.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 6da16b3363f38d255dae42d00624a1137ddb6932515c91b340c2c04bfa76910f
MD5 1d57ec80027428dc0b9a26a8ad65b7af
BLAKE2b-256 0c75f20dcd5da899684f754a32295f55b2048b8d9e117ba0ce7a09c7f880b3a8

See more details on using hashes here.

File details

Details for the file tgcalls-2.0.0-cp38-cp38-win32.whl.

File metadata

  • Download URL: tgcalls-2.0.0-cp38-cp38-win32.whl
  • Upload date:
  • Size: 15.4 MB
  • Tags: CPython 3.8, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.7.9

File hashes

Hashes for tgcalls-2.0.0-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 3ac3ec33dde1ca47e60e645088ad9fa9a891eb0cc2d552de3d13de147a9921ca
MD5 954dd07f075270e18ad245036e5f851f
BLAKE2b-256 a685c88c4dca817e808e9acd79d3ee0629513f3137cbb1f416c0bfaaf1a1b399

See more details on using hashes here.

File details

Details for the file tgcalls-2.0.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for tgcalls-2.0.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 392eb284d07fb499ccc48bfdde0fe8614e157862a6c3e1ca0d7a1eb3d9b51c6b
MD5 ec7060eefcd56df32db3c8c11d6d8085
BLAKE2b-256 0fb6d80b1546473232f0d0a26a8b20a7c43cd3688f855f5690d9900029a5372c

See more details on using hashes here.

File details

Details for the file tgcalls-2.0.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for tgcalls-2.0.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 4358aec40f654d8235571a6c2d84a3d22ae09eb516e1bd15b44de6360d87e7c7
MD5 66e32f57ccb7c3907cb608b886750c9c
BLAKE2b-256 ea3c146a3c85a74647c69c99c2ac0871ec9eee2fe53c790a21f2a164fdb366a0

See more details on using hashes here.

File details

Details for the file tgcalls-2.0.0-cp38-cp38-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: tgcalls-2.0.0-cp38-cp38-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 8.8 MB
  • Tags: CPython 3.8, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.7.11

File hashes

Hashes for tgcalls-2.0.0-cp38-cp38-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 15efd80c0a4e9a721baa8c01344f7340dcc7043fbbf4108eddaf07a5a43ecddc
MD5 d4b83cd48da36a13fc2731cf46cec86d
BLAKE2b-256 b70e7587eb8bc79361a80e6e95b3148dc13896ebf97d7e7ae885f45abf494bd2

See more details on using hashes here.

File details

Details for the file tgcalls-2.0.0-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: tgcalls-2.0.0-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 16.8 MB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.7.9

File hashes

Hashes for tgcalls-2.0.0-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 8984153f0c828a2e2493df899ef913d9fff8cfce2145a4a811612022742096be
MD5 a47b67525355f665b2505781700d4c38
BLAKE2b-256 2bdb6862ec4c33263d99e3f6a76e19f0ef461c2a707fa9f57445e0b8ff89757c

See more details on using hashes here.

File details

Details for the file tgcalls-2.0.0-cp37-cp37m-win32.whl.

File metadata

  • Download URL: tgcalls-2.0.0-cp37-cp37m-win32.whl
  • Upload date:
  • Size: 15.4 MB
  • Tags: CPython 3.7m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.7.9

File hashes

Hashes for tgcalls-2.0.0-cp37-cp37m-win32.whl
Algorithm Hash digest
SHA256 279393b82d678f45ad536ab6d2e676649a39390fa639afa41b149279ee93a450
MD5 ab71eb5f997b36a6c8e98105d5462696
BLAKE2b-256 a57eb27ec3dc6e5f5896e017cd0c433789c2a2bd49f9e45953a6868db6e9b489

See more details on using hashes here.

File details

Details for the file tgcalls-2.0.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for tgcalls-2.0.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1d1f633a9c7d17be57b70c7b2ae65e44a595b803415022a0902dba03e754c7fe
MD5 37377094dc29ed3c3624899b22c3c819
BLAKE2b-256 253cee519c48448e37138407cefd4c77be9c5b6aa73466de57adf66d65efc0a3

See more details on using hashes here.

File details

Details for the file tgcalls-2.0.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for tgcalls-2.0.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f494163f891bd50e8f85e7372239b65e83837840bce9484ab14ee22abf08eb97
MD5 ea06652470ff934e5f49dd3d6e0d78f2
BLAKE2b-256 ff44f8467349f7cfa760922ec36b81f7e3ee6241ca1ebea86a92e818046defd5

See more details on using hashes here.

File details

Details for the file tgcalls-2.0.0-cp37-cp37m-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: tgcalls-2.0.0-cp37-cp37m-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 8.8 MB
  • Tags: CPython 3.7m, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.7.11

File hashes

Hashes for tgcalls-2.0.0-cp37-cp37m-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 e5dec38444a0e466a81c4e23f90c3f3ada183c01a4dc83590d0e12e14de31580
MD5 91505d5801593077528a21be76022877
BLAKE2b-256 99e9ecbb5304dabf09d24d78de844f791fb94a7114d8af1465818b8d15828b08

See more details on using hashes here.

File details

Details for the file tgcalls-2.0.0-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: tgcalls-2.0.0-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 16.8 MB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.7.9

File hashes

Hashes for tgcalls-2.0.0-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 7ea7a0534fd402c09d1c2a3852c56148a1d16e2e6b5adc7ad53e562873f5caad
MD5 92e72aaa0d7694fd938358aa8c2265f0
BLAKE2b-256 6901d8818362f5f1cf10688a8f0943b66182b3bb16b6d48f8435523230af25d0

See more details on using hashes here.

File details

Details for the file tgcalls-2.0.0-cp36-cp36m-win32.whl.

File metadata

  • Download URL: tgcalls-2.0.0-cp36-cp36m-win32.whl
  • Upload date:
  • Size: 15.4 MB
  • Tags: CPython 3.6m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.7.9

File hashes

Hashes for tgcalls-2.0.0-cp36-cp36m-win32.whl
Algorithm Hash digest
SHA256 2d0bffff02952128029212a333213347ed1c7623959ad10e73085e3216a318e6
MD5 bc6594c24308316f7505308b6fc51532
BLAKE2b-256 6a43be3fc21327cb705ae304226bd3ec8cff0ff720025bbb037156973854fee1

See more details on using hashes here.

File details

Details for the file tgcalls-2.0.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for tgcalls-2.0.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 72fb5f99802d61fcd75570a6549d3284db34fe7a183035fa88dae7c178153342
MD5 1f8913912f6ce369edc83eca6ae9041b
BLAKE2b-256 83cc79e65e8cfe3196b8d5a5042c4f8455da764dacbff16d8b8dd33f1bc1984f

See more details on using hashes here.

File details

Details for the file tgcalls-2.0.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for tgcalls-2.0.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 67c8cad204679654b12be930a56c3e68f7c44ac0a1d86ca7717f2b2e119d1f8a
MD5 7c3c705ff8de25b049c2e69cb9a7989c
BLAKE2b-256 d51bccd1719f4551203ba165d7b6ac9f2491527ddd01c99588b1ff99f2a37024

See more details on using hashes here.

File details

Details for the file tgcalls-2.0.0-cp36-cp36m-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: tgcalls-2.0.0-cp36-cp36m-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 8.8 MB
  • Tags: CPython 3.6m, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.7.11

File hashes

Hashes for tgcalls-2.0.0-cp36-cp36m-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 4005d6be6ec2538e1af9aebf5f93e561b8589068321b4ba9a9b47b59c6358a03
MD5 00f894de7eca7fa6f21d900519a48ebe
BLAKE2b-256 6075cd39755f1600316af33f57b8ac33a1b39eeccc022e1d13a2729b9ef853c4

See more details on using hashes here.

Supported by

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