TelecastBot Telegram Bot ?
TelecastBot: Streams videos & audio in Telegram voice chats for both groups and channels. It supports live streams, YouTube videos, and Telegram media. It also supports scheduling streams, recording, and more.
Features ?
- Playlist and Queue Management: Smooth transitions with zero downtime.
- Video Recording: Capture moments directly from voice chats.
- Voicechat Scheduling: Plan and automate your streams.
- Spotify Track Support: Stream music directly from Spotify track links.
- Flexible UI: Easy control over the player with an intuitive interface.
- Customizable Settings: Toggle between audio or video modes, adjust quality, and more.
- YouTube Playlist Support: Stream directly from YouTube playlists.
- Live Streaming: Support for YouTube live streams.
- Telegram File Playback: Play media files shared within Telegram.
- Auto-Restart: Reliable operation through automatic restarts, even after platform reboots.
- Playlist Import/Export: Easily manage your playlists.
- Rich Customization: Change the voice chat title to the currently playing song, and much more.
Configuration Variables
Mandatory Vars
-
API_ID– Obtain from my.telegram.org -
API_HASH– Obtain from my.telegram.org -
BOT_TOKEN– Create a bot via @Botfather -
SESSION_STRING– Open @ItsSmartToolBot. Bot and use /pyro command and then follow all instructions. -
CHAT– Channel/Group ID where the bot plays music.
Recommended Optional Vars
-
DATABASE_URI– MongoDB database Url, recommended for full feature access, obtain from mongodb. -
HEROKU_API_KEY– Your Heroku API key, generate here. -
HEROKU_APP_NAME– Your Heroku app\’s name. -
FILTERS– Customize search filters for channel play (e.g.,video document,video document audio,video).
Optional Vars
-
LOG_GROUP: Group to send Playlist, if CHAT is a Group() -
ADMINS: ID of users who can use admin commands. -
STARTUP_STREAM: This will be streamed on startups and restarts of bot. You can use either any STREAM_URL or a direct link of any video or a Youtube Live link. -
REPLY_MESSAGE: A reply to those who message the USER account in PM. Leave it blank if you do not need this feature. (Configurable through bot if mongodb added.) -
ADMIN_ONLY: PassTrueIf you want to make /play command only for admins ofCHAT. By default /play is available for all.(Configurable through bot if mongodb added.) -
DATABASE_NAME: Database name for your mongodb database. -
SHUFFLE: Make itFalseif you dont want to shuffle playlists. (Configurable through bot if mongodb added.) -
EDIT_TITLE: Make itFalseif you do not want the bot to edit video chat title according to playing song. (Configurable through bot if mongodb added.) -
RECORDING_DUMP: A Channel ID with the USER account as admin, to dump video chat recordings. -
RECORDING_TITLE: A custom title for your videochat recordings. -
TIME_ZONE: Time Zone of your country, by default IST -
IS_VIDEO_RECORD: Make itFalseif you do not want to record video, and only audio will be recorded.(Configurable through bot if mongodb added.) -
IS_LOOP; Make itFalseif you do not want 24 / 7 Video Chat. (Configurable through bot if mongodb added.) -
IS_VIDEO: Make itFalseif you want to use the player as a musicplayer without video. (Configurable through bot if mongodb added.) -
PORTRAIT: Make itTrueif you want the video recording in portrait mode. (Configurable through bot if mongodb added.) -
DELAY: Choose the time limit for commands deletion. 10 sec by default. -
QUALITY: Customize the quality of video chat, use one ofhigh,medium,low. -
BITRATE: Bitrate of audio (Not recommended to change). -
FPS: Fps of video to be played (Not recommended to change.) -
SPOTIFY_CLIENT_ID– Your Spotify Client ID, obtain from Spotify Developer Console. -
SPOTIFY_CLIENT_SECRET– Your Spotify Client Secret, obtain from Spotify Developer Console.
Handling YouTube Download Errors with Cookies
To avoid errors related to YouTube sign-in requirements, using a cookie file is effective. Here\’s how to set it up:
Steps to Export and Use Cookies:
-
Create a Dedicated Chrome Profile:
- It\’s recommended to create a new Chrome profile for managing your bot\’s cookies.
-
Install a Cookie Management Extension:
- Use \”Cookie Editor\” or similar extensions to manage your cookies.
-
Export Cookies from YouTube:
- Log into YouTube in your new browser profile and export cookies in Netscape format via the cookie extension.
-
Save the Cookies File:
- Update your
cookies.txtin theTelecastBot/ytcookiesdirectory of your project.
- Update your
Managing Cookies:
-
Cookie Expiry:
- Refresh your cookies by exporting new ones if you encounter download issues.
-
Cookie Depletion:
- Avoid frequent bot restarts and excessive YouTube requests to prevent early cookie expiry.
This setup should help manage YouTube content access efficiently without encountering sign-in or bot protection errors.
System Requirements
- If You Want To Use VPS Then Use Vps Python Version 3.8 To 3.11
- Python: Version 3.8 or higher recommended.
- NodeJS: Version 15.0.0 or higher.
- FFMpeg: Necessary for media processing.
Ensure that your environment meets these specifications to guarantee full functionality of the script.
Deploy to Heroku
Deploy to VPS
git clone https://gi*t*hu*b.com/abirxdhack/TelecastBot cd TelecastBot pip3 install -r requirements.txt # install node js sudo bash install_node.sh # <Create Variables appropriately (.env [optional])> Or Directly Edit Config.py python3 main.py
Project Contributors
Main Author ?
- Name: Subin
- Telegram: @subin_works
Contributing Author ?
- Name: Bisnu Ray
- Telegram: @itsSmartDev
Contributing Author ?
- Name: Abir Arafat Chawdhury
- Telegram: @Modvip_rm
For inquiries or feedback, please feel free to reach out via Telegram.
Ethical Notice ?
Ethics Reminder: Simply modifying a few lines of code does not constitute original authorship. When forking a project, always fork responsibly and give proper credit to the original creators.
Ethics Reminder: I Just Decoded Encoded Parts Of This Repo Only So Subinips & Bisnu Ray Are Main Dev.
