{"id":13722017,"url":"https://github.com/callsmusic/tgvc-userbot","last_synced_at":"2025-05-07T14:31:00.550Z","repository":{"id":44765868,"uuid":"343624194","full_name":"callsmusic/tgvc-userbot","owner":"callsmusic","description":"Telegram voice chat userbot made with Pyrogram and MarshalX/tgcalls with playlist support","archived":true,"fork":false,"pushed_at":"2022-01-28T12:30:52.000Z","size":126,"stargazers_count":161,"open_issues_count":3,"forks_count":333,"subscribers_count":8,"default_branch":"dev","last_synced_at":"2024-11-14T11:39:48.346Z","etag":null,"topics":["calls","group-chat","music-player-bot","pyrogram","pytgcalls","python","telegram","telegram-userbot","telegram-voice-chat","tgcalls","voice-chat","voice-chats","voip"],"latest_commit_sha":null,"homepage":"https://t.me/VCSets","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/callsmusic.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null},"funding":{"custom":["https://github.com/callsmusic/tgvc-userbot/blob/dev/.github/FUNDING.yml"]}},"created_at":"2021-03-02T02:43:18.000Z","updated_at":"2024-09-29T21:27:42.000Z","dependencies_parsed_at":"2022-08-12T11:21:48.137Z","dependency_job_id":null,"html_url":"https://github.com/callsmusic/tgvc-userbot","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/callsmusic%2Ftgvc-userbot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/callsmusic%2Ftgvc-userbot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/callsmusic%2Ftgvc-userbot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/callsmusic%2Ftgvc-userbot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/callsmusic","download_url":"https://codeload.github.com/callsmusic/tgvc-userbot/tar.gz/refs/heads/dev","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252895544,"owners_count":21821179,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["calls","group-chat","music-player-bot","pyrogram","pytgcalls","python","telegram","telegram-userbot","telegram-voice-chat","tgcalls","voice-chat","voice-chats","voip"],"created_at":"2024-08-03T01:01:23.722Z","updated_at":"2025-05-07T14:31:00.213Z","avatar_url":"https://github.com/callsmusic.png","language":"Python","funding_links":["https://github.com/callsmusic/tgvc-userbot/blob/dev/.github/FUNDING.yml"],"categories":["Open Source bots","Python"],"sub_categories":[],"readme":"# Telegram Voice Chat UserBot [![Mentioned in Awesome Telegram Calls](https://awesome.re/mentioned-badge-flat.svg)](https://github.com/tgcalls/awesome-tgcalls)\n\n![Python Workflow](https://github.com/callsmusic/tgvc-userbot/actions/workflows/python-package.yml/badge.svg)\n\nA Telegram UserBot to Play Audio in Voice Chats.\n\nThis is also the source code of the userbot which is being used for playing\nDJ/Live Sets music in [VC DJ/Live Sets](https://t.me/VCSets) group.\n\nMade with [tgcalls](https://github.com/MarshalX/tgcalls)\nand [Pyrogram Smart Plugin](https://docs.pyrogram.org/topics/smart-plugins)\n\nIt's recommended to use [tgmusicbot](https://github.com/callsmusic/tgmusicbot)\nalong with this userbot.\n\n## Introduction\n\n**Features**\n\n- Playlist, queue\n- Loop one track when there is only one track in the playlist\n- Automatically downloads audio for the first two tracks in the playlist to\n  ensure smooth playing\n- Automatically pin the current playing track\n- Show current playing position of the audio\n\n**Plugin**: vc.`player`\n\nCommands only works in groups, userbot account itself and contacts can use any\ncommands, all members can use common commands after the userbot join the VC\n\n1. Start the userbot, try `!ping`, `!uptime` or `!sysinfo` command to check if\n   the bot was running\n2. send `!join` to a voice chat enabled group chat from userbot account itself\n   or its contacts, be sure to make the userbot account as group admin and give\n   it at least the following permissions:\n    - Delete messages\n    - Manage voice chats (optional)\n3. reply to an audio with `/play` to start playing it in the voice chat, every\n   member of the group can use common commands such like `/play`, `/current`\n   and `!help` now.\n4. check `!help` for more commands\n\n**Plugin**: vc.`channel`\n\nAlmost same as `player` plugin but commands only works in Saved Messages,\n`!join` takes arguments to be able to join group or channel voice chats.\n\n**Plugin**: `ping` and `sysinfo`\n\nCommands only works for userbot account itself and its contacts.\n\n## Requirements\n\n- Python 3.6 or higher\n- A\n  [Telegram API key](https://docs.pyrogram.org/intro/quickstart#enjoy-the-api)\n  and a Telegram account\n- Choose plugins you need, install dependencies which listed above and run\n  `pip install -U -r requirements.txt` to install Python package dependencies\n  as well\n- [FFmpeg](https://www.ffmpeg.org/)\n\n## Run\n\nChoose one of the two methods and run the userbot with\n`python userbot.py`, stop with \u003ckbd\u003eCTRL+c\u003c/kbd\u003e. The following example assume\nthat you were going to use `vc.player` and `ping` plugin, replace\n`api_id`, `api_hash` to your own value.\n\n### Method 1: use config.ini\n\nCreate a `config.ini` file\n\n```\n[pyrogram]\napi_id = 1234567\napi_hash = 0123456789abcdef0123456789abcdef\n\n[plugins]\nroot = plugins\ninclude =\n    vc.player\n    ping\n    sysinfo\n```\n\n### Method 2: write your own userbot.py\n\nReplace the file content of `userbot.py`\n\n```\nfrom pyrogram import Client, idle\n\napi_id = 1234567\napi_hash = \"0123456789abcdef0123456789abcdef\"\n\nplugins = dict(\n    root=\"plugins\",\n    include=[\n        \"vc.player\",\n        \"ping\",\n        \"sysinfo\"\n    ]\n)\n\napp = Client(\"tgvc\", api_id, api_hash, plugins=plugins)\napp.start()\nprint('\u003e\u003e\u003e USERBOT STARTED')\nidle()\napp.stop()\nprint('\\n\u003e\u003e\u003e USERBOT STOPPED')\n```\n\n## Notes\n\n- Read module docstrings of [plugins/](plugins) you are going to use at the\n  beginning of the file for extra notes\n\n## Self-hosting\n\nThis userbot should run fine on any cloud server. Popular choices of cloud\nserver providers are DigitalOcean, Vultr and Hetzner. You can use one of the\nfollowing referral links to sign up on Vultr to give the project author\ncredits in case you want to try Vultr.\n\n\u003ca href=\"https://www.vultr.com/?ref=7321667\"\u003e\u003cimg src=\"https://www.vultr.com/media/banners/banner_728x90.png\" width=\"728\" height=\"90\"\u003e\u003c/a\u003e\n\nOr [Give100get25 - Vultr](https://www.vultr.com/?ref=8559837-6G)\n\n# License\n\nAGPL-3.0-or-later\n\n```\ntgvc-userbot, Telegram Voice Chat Userbot\nCopyright (C) 2021  Dash Eclipse\n\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU Affero General Public License as published by\nthe Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU Affero General Public License for more details.\n\nYou should have received a copy of the GNU Affero General Public License\nalong with this program.  If not, see \u003chttps://www.gnu.org/licenses/\u003e.\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcallsmusic%2Ftgvc-userbot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcallsmusic%2Ftgvc-userbot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcallsmusic%2Ftgvc-userbot/lists"}