Giter Site home page Giter Site logo

pytgcalls / ntgcalls Goto Github PK

View Code? Open in Web Editor NEW
35.0 3.0 9.0 115.58 MB

A Native Implementation of Telegram Calls in a seamless way.

Home Page: https://pytgcalls.github.io

License: GNU Lesser General Public License v3.0

CMake 12.03% Python 6.21% C++ 79.36% C 2.02% Dockerfile 0.38%
audio calls cpp ffmpeg group-chat lib library nadymov py-tgcalls pytgcalls

ntgcalls's Introduction

pytgcalls logo

A simple and elegant client that allows you to make group voice calls quickly and easily.
Examples Documentation PyPi Channel Chat

PyTgCalls PyPI Downloads

This project allows making Telegram call using MtProto and WebRTC, this is possible thanks to the power of NTgCalls library and @evgeny-nadymov

Example Usage

from pytgcalls import PyTgCalls
from pytgcalls import idle
from pytgcalls.types import MediaStream
...
chat_id = -1001185324811
app = PyTgCalls(client)
app.start()
app.play(
    chat_id,
    MediaStream(
        'http://docs.evostream.com/sample_content/assets/sintel1m720p.mp4',
    )
)
idle()

Features

  • Prebuilt wheels for macOS, Linux and Windows.
  • Supporting all type of MTProto libraries: Pyrogram, Telethon and Hydrogram.
  • Work with voice chats in channels and chats.
  • Join as channels or chats.
  • Mute/unmute, pause/resume, stop/play, volume control and more...

Requirements

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.

ntgcalls's People

Contributors

dadadani avatar doggyhaha avatar laky-64 avatar null-nick avatar roj1512 avatar turiog avatar yumiko-bots avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

ntgcalls's Issues

cannot Generate the CPP bindings

Describe the bug
as the docs says I ran this command:

python3 setup.py build_shared

in the root directory ofc,
got this error:

[ 97%] Building CXX object ntgcalls/CMakeFiles/ntgcalls.dir/utils/dispatch_queue.cpp.o
[100%] Linking CXX shared library libntgcalls.so

/usr/bin/ld: cannot find -lX11: No such file or directory
clang: error: linker command failed with exit code 1 (use -v to see invocation)
gmake[2]: *** [ntgcalls/CMakeFiles/ntgcalls.dir/build.make:293: ntgcalls/libntgcalls.so] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:176: ntgcalls/CMakeFiles/ntgcalls.dir/all] Error 2
gmake: *** [Makefile:91: all] Error 2
Traceback (most recent call last):
  File "Projects/ntgcalls/setup.py", line 232, in <module>
    setup(
  File "/usr/lib/python3/dist-packages/setuptools/__init__.py", line 107, in setup
    return distutils.core.setup(**attrs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/setuptools/_distutils/core.py", line 185, in setup
    return run_commands(dist)
           ^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/setuptools/_distutils/core.py", line 201, in run_commands
    dist.run_commands()
  File "/usr/lib/python3/dist-packages/setuptools/_distutils/dist.py", line 969, in run_commands
    self.run_command(cmd)
  File "/usr/lib/python3/dist-packages/setuptools/dist.py", line 1233, in run_command
    super().run_command(command)
  File "/usr/lib/python3/dist-packages/setuptools/_distutils/dist.py", line 988, in run_command
    cmd_obj.run()
  File "Projects/ntgcalls/setup.py", line 198, in run
    subprocess.run(
  File "/usr/lib/python3.11/subprocess.py", line 571, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['cmake', '--build', '.', '--config', 'Release', '-j8']' returned non-zero exit status 2.

running on Debian latest build

31352 Aborted?

Bug
The processes automatically get aborted after 5 to 6 hours.

Expected behavior
It was expected to run without any errors. 😩

Environment

  • OS: Ubuntu 20.04
  • Branch: dev
  • NTgCalls Version: 1.0.0.dev23
  • Python Version: 3.10.12

Additional context

# Fatal error in: ../../../../_source/ubuntu-20.04_x86_64/webrtc/src/rtc_base/task_queue_libevent.cc, line 158

# last system error: 24
# Check failed: pipe(fds) == 0

# start: line 1: 31352 Aborted  |   (core dumped) python3 -m Modules

segmentation fault

Code runs well then suddenly stops:

PyTgCalls v1.0.5 powered by NTgCalls v1.0.0.dev24, Copyright (C) 2021-2023 Laky-64 https://github.com/Laky-64
Licensed under the terms of the GNU Lesser General Public License v3 or later (LGPLv3+)

zsh: segmentation fault python3 video.py

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.