{ "info": { "author": "bakatrouble", "author_email": "bakatrouble@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: GNU Lesser General Public License v3 or later (LGPLv3+)", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation", "Programming Language :: Python :: Implementation :: CPython", "Topic :: Communications", "Topic :: Communications :: Internet Phone", "Topic :: Internet", "Topic :: Software Development :: Libraries", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "# pytgvoip_pyrogram\n\n[![PyPI](https://img.shields.io/pypi/v/pytgvoip_pyrogram.svg?style=flat)](https://pypi.org/project/pytgvoip_pyrogram/)\n\n**Sample usage of [PytgVoIP](https://github.com/bakatrouble/pytgvoip) library with [Pyrogram](https://github.com/bakatrouble/pyrogram)**\n\nHopefully `pytgvoip` support will be [integrated in Pyrogram itself](https://github.com/pyrogram/pyrogram/pull/218), but this repository would still be available as reference even after merge. \n\nDetailed `pytgvoip` usage guide is also available [here](https://pytgvoip.readthedocs.io/en/latest/guides/usage.html) \n\n[Community](https://t.me/pytgvoip)\n\n```python\n# making outgoing calls\nfrom pyrogram import Client\nfrom tgvoip_pyrogram import VoIPFileStreamService\n\napp = Client('account')\napp.start()\n\nservice = VoIPFileStreamService(app, receive_calls=False)\ncall = service.start_call('@bakatrouble')\ncall.play('input.raw')\ncall.play_on_hold(['input.raw'])\ncall.set_output_file('output.raw')\n\n@call.on_call_ended\ndef call_ended(call):\n app.stop()\n```\n\n```python\n# accepting incoming calls\nfrom pyrogram import Client\nfrom tgvoip_pyrogram import VoIPFileStreamService, VoIPIncomingFileStreamCall\n\napp = Client('account')\napp.start()\n\nservice = VoIPFileStreamService(app)\n\n@service.on_incoming_call\ndef handle_call(call: VoIPIncomingFileStreamCall):\n call.accept()\n call.play('input.raw')\n call.play_on_hold(['input.raw'])\n call.set_output_file('output.raw')\n \n # you can use `call.on_call_ended(lambda _: app.stop())` here instead\n @call.on_call_ended\n def call_ended(call):\n app.stop()\n```\n\n[More examples](examples/README.md)\n\n## Requirements\n* Python 3.5 or higher\n* PytgVoIP (listed as dependency)\n* Pyrogram (listed as dependency)\n\n## Installing\n```pip3 install pytgvoip-pyrogram```\n\n\n## Encoding audio streams\nStreams consumed by `libtgvoip` should be encoded in 16-bit signed PCM audio.\n```bash\n$ ffmpeg -i input.mp3 -f s16le -ac 1 -ar 48000 -acodec pcm_s16le input.raw # encode\n$ ffmpeg -f s16le -ac 1 -ar 48000 -acodec pcm_s16le -i output.raw output.mp3 # decode\n```\n\n## Copyright & License\n* Copyright (C) 2019 [bakatrouble](https://github.com/bakatrouble)\n* Licensed under the terms of the [GNU Lesser General Public License v3 or later (LGPLv3+)](COPYING.lesser)", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/bakatrouble/pytgvoip_pyrogram", "keywords": "telegram messenger voip library python pyrogram", "license": "LGPLv3+", "maintainer": "", "maintainer_email": "", "name": "pytgvoip-pyrogram", "package_url": "https://pypi.org/project/pytgvoip-pyrogram/", "platform": "", "project_url": "https://pypi.org/project/pytgvoip-pyrogram/", "project_urls": { "Community": "https:/t.me/pytgvoip", "Homepage": "https://github.com/bakatrouble/pytgvoip_pyrogram", "Source": "https://github.com/bakatrouble/pytgvoip_pyrogram", "Tracker": "https://github.com/bakatrouble/pytgvoip_pyrogram/issues" }, "release_url": "https://pypi.org/project/pytgvoip-pyrogram/0.0.11/", "requires_dist": null, "requires_python": "", "summary": "Pyrogram support module for Telegram VoIP Library for Python", "version": "0.0.11", "yanked": false, "yanked_reason": null }, "last_serial": 8802758, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "5e25ad662461dfa0835ca32d988a8751", "sha256": "1327aa67906ee8bbdcd0c16f558c81fc81f7890c0c504a3653338268617e0383" }, "downloads": -1, "filename": "pytgvoip_pyrogram-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "5e25ad662461dfa0835ca32d988a8751", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 27198, "upload_time": "2019-03-06T17:40:18", "upload_time_iso_8601": "2019-03-06T17:40:18.051548Z", "url": "https://files.pythonhosted.org/packages/67/c8/d4e39c0ec7f705e0c96456bcdd017ff28e5068c58fbe3e83e7f4b697676d/pytgvoip_pyrogram-0.0.1-py3-none-any.whl", "yanked": false, "yanked_reason": null } ], "0.0.10": [ { "comment_text": "", "digests": { "md5": "194ee3c34e24053cdda35f2f3ec5b1b5", "sha256": "7c4f4b5dadea2c5d19edc8ffb5cd1d459e6355d21e1bd81254da0018150642a4" }, "downloads": -1, "filename": "pytgvoip_pyrogram-0.0.10.tar.gz", "has_sig": false, "md5_digest": "194ee3c34e24053cdda35f2f3ec5b1b5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7805, "upload_time": "2020-10-02T12:44:31", "upload_time_iso_8601": "2020-10-02T12:44:31.520257Z", "url": "https://files.pythonhosted.org/packages/3a/8c/2563e3d15fe565f231dd352f40a23216ef3b86836438bf59accaad4e98d3/pytgvoip_pyrogram-0.0.10.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.11": [ { "comment_text": "", "digests": { "md5": "36f54412955728a33221ac68cc5d8d9c", "sha256": "6972e2c408ae8ad1fb5a7b3532f2879f00a9b747aa227fb9f957bb2f31e7cc46" }, "downloads": -1, "filename": "pytgvoip_pyrogram-0.0.11.tar.gz", "has_sig": false, "md5_digest": "36f54412955728a33221ac68cc5d8d9c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7803, "upload_time": "2020-12-02T16:52:39", "upload_time_iso_8601": "2020-12-02T16:52:39.186490Z", "url": "https://files.pythonhosted.org/packages/bf/c5/a772a5f1677aa511fa490f8b8dfd0ae77d2efa53a76cb879b7e1401fa5b7/pytgvoip_pyrogram-0.0.11.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "239d5f3d7b25371fbaa69f6b2af24167", "sha256": "746a3aae2f520d1c02a0dc34dd2ac1f8d07e30ed6a212d8e8e77bf72beab39c3" }, "downloads": -1, "filename": "pytgvoip_pyrogram-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "239d5f3d7b25371fbaa69f6b2af24167", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 27262, "upload_time": "2019-03-29T21:11:56", "upload_time_iso_8601": "2019-03-29T21:11:56.356691Z", "url": "https://files.pythonhosted.org/packages/76/95/5dc60c2b0d4d3c26a19ca9032ef4c5e093b9c09cd72a5066fc6161c7b12d/pytgvoip_pyrogram-0.0.2-py3-none-any.whl", "yanked": false, "yanked_reason": null } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "9e5bbbc17521194c7491ae5515eef2ab", "sha256": "47f2a482f6d413c803ffd56cf947c4ea6d3bf77c250409ba99cae7059a3fd1a4" }, "downloads": -1, "filename": "pytgvoip_pyrogram-0.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "9e5bbbc17521194c7491ae5515eef2ab", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 27293, "upload_time": "2019-03-29T21:19:45", "upload_time_iso_8601": "2019-03-29T21:19:45.400810Z", "url": "https://files.pythonhosted.org/packages/b0/f7/206436c6c4180b1a69935218c530f7c1250effcc7ea2d44aea507cb3e1fe/pytgvoip_pyrogram-0.0.3-py3-none-any.whl", "yanked": false, "yanked_reason": null } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "fdd571d597973d71ee8d44d43db76065", "sha256": "366d75c1b9c63bf15a4a83462be7d0f248849bcfc99ad758b72642c4aa56483b" }, "downloads": -1, "filename": "pytgvoip_pyrogram-0.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "fdd571d597973d71ee8d44d43db76065", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 27295, "upload_time": "2019-04-23T18:03:08", "upload_time_iso_8601": "2019-04-23T18:03:08.452668Z", "url": "https://files.pythonhosted.org/packages/47/1d/b76aef16ec5649657a331fdc28d3c1112182c05704cfcc5300a3731aacba/pytgvoip_pyrogram-0.0.4-py3-none-any.whl", "yanked": false, "yanked_reason": null } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "bbf6b62b009bf25e8447716c677b0893", "sha256": "1c00718907cc40e8e556e7f02976bb5cb3e41d0a1106cc5a1e9c675fad8b71a5" }, "downloads": -1, "filename": "pytgvoip_pyrogram-0.0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "bbf6b62b009bf25e8447716c677b0893", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 27244, "upload_time": "2019-06-26T15:13:12", "upload_time_iso_8601": "2019-06-26T15:13:12.673778Z", "url": "https://files.pythonhosted.org/packages/17/98/6c18d9fb6ba25bd7fcebda7797fc5dfc64e027a6617abe8ef30c2d99c71f/pytgvoip_pyrogram-0.0.5-py3-none-any.whl", "yanked": false, "yanked_reason": null } ], "0.0.6.1": [ { "comment_text": "", "digests": { "md5": "ed15d3e543dab01f456f375e3a7ec997", "sha256": "b729faa1a3406d9802635a4c8a87ce20eab70f2881186289fb86075998539c09" }, "downloads": -1, "filename": "pytgvoip_pyrogram-0.0.6.1-1-py3-none-any.whl", "has_sig": false, "md5_digest": "ed15d3e543dab01f456f375e3a7ec997", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 27355, "upload_time": "2019-10-24T21:47:22", "upload_time_iso_8601": "2019-10-24T21:47:22.065474Z", "url": "https://files.pythonhosted.org/packages/a0/c9/9619de29ea63fb346a68004d382e25a508365eb0477245df236030243a81/pytgvoip_pyrogram-0.0.6.1-1-py3-none-any.whl", "yanked": false, "yanked_reason": null } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "6aab396ff48780e950b39102111e6c70", "sha256": "53abe42c8edced883ca12c107e06ea1064b83767f4d7a8b644e3199b0e4ac140" }, "downloads": -1, "filename": "pytgvoip_pyrogram-0.0.7-py3-none-any.whl", "has_sig": false, "md5_digest": "6aab396ff48780e950b39102111e6c70", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 28378, "upload_time": "2020-04-12T23:27:36", "upload_time_iso_8601": "2020-04-12T23:27:36.952943Z", "url": "https://files.pythonhosted.org/packages/b1/6f/25c04569925b8bda92baffaf6471de492d82d50f95a0bef0112d1f3c0092/pytgvoip_pyrogram-0.0.7-py3-none-any.whl", "yanked": false, "yanked_reason": null } ], "0.0.8": [ { "comment_text": "", "digests": { "md5": "6bc479c770863de5b0c67da495307c2c", "sha256": "7ed9c68e7ef532873f4875b1df3dc094ddc9daa1d9ca6f2e7ee81b2ae639c95a" }, "downloads": -1, "filename": "pytgvoip_pyrogram-0.0.8-py3-none-any.whl", "has_sig": false, "md5_digest": "6bc479c770863de5b0c67da495307c2c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 28391, "upload_time": "2020-05-06T14:43:23", "upload_time_iso_8601": "2020-05-06T14:43:23.155173Z", "url": "https://files.pythonhosted.org/packages/dc/71/3222d02faa61549ecf80ce6f271479e8830d05ca36fd30c9779675543576/pytgvoip_pyrogram-0.0.8-py3-none-any.whl", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "36f54412955728a33221ac68cc5d8d9c", "sha256": "6972e2c408ae8ad1fb5a7b3532f2879f00a9b747aa227fb9f957bb2f31e7cc46" }, "downloads": -1, "filename": "pytgvoip_pyrogram-0.0.11.tar.gz", "has_sig": false, "md5_digest": "36f54412955728a33221ac68cc5d8d9c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7803, "upload_time": "2020-12-02T16:52:39", "upload_time_iso_8601": "2020-12-02T16:52:39.186490Z", "url": "https://files.pythonhosted.org/packages/bf/c5/a772a5f1677aa511fa490f8b8dfd0ae77d2efa53a76cb879b7e1401fa5b7/pytgvoip_pyrogram-0.0.11.tar.gz", "yanked": false, "yanked_reason": null } ], "vulnerabilities": [] }