ECHO v1.2.2 XS7 #IM #NF (Improvements/New Features)
----
[![](https://img.shields.io/github/repo-size/theseekerofficial/Echo?color=blue&label=Repo%20Size&labelColor=333333)](#) [![](https://img.shields.io/github/commit-activity/m/theseekerofficial/Echo?logo=github&labelColor=333333&label=Github%20Commits&color=red)](#) [![](https://img.shields.io/github/license/theseekerofficial/Echo?style=flat&label=License&labelColor=333333&color=yellow)](#)|[![](https://img.shields.io/github/issues-raw/theseekerofficial/Echo?style=flat&label=Open%20Issues&labelColor=333333&color=purple)](#) [![](https://img.shields.io/github/issues-closed-raw/theseekerofficial/Echo?style=flat&label=Closed%20Issues&labelColor=333333&color=orange)](#) [![](https://img.shields.io/github/issues-pr-raw/theseekerofficial/Echo?style=flat&label=Open%20Pull%20Requests&labelColor=333333&color=lightgrey)](#) [![](https://img.shields.io/github/issues-pr-closed-raw/theseekerofficial/Echo?style=flat&label=Closed%20Pull%20Requests&labelColor=333333&color=green)](#)
:---:|:---:|
[![](https://img.shields.io/github/languages/count/theseekerofficial/Echo?style=flat&label=Total%20Languages&labelColor=333333&color=teal)](#) [![](https://img.shields.io/github/languages/top/theseekerofficial/Echo?style=flat&logo=python&labelColor=333333&color=lightblue)](#) [![](https://img.shields.io/github/last-commit/theseekerofficial/Echo?style=flat&label=Last%20Commit&labelColor=333333&color=9cf)](#) [![](https://badgen.net/github/branches/theseekerofficial/Echo?label=Total%20Branches&labelColor=333333&color=violet)](#)|[![](https://img.shields.io/github/forks/theseekerofficial/Echo?style=flat&logo=github&label=Forks&labelColor=333333&color=ff69b4)](#) [![](https://img.shields.io/github/stars/theseekerofficial/Echo?style=flat&logo=github&label=Stars&labelColor=333333&color=yellowgreen)](#)
[![](https://img.shields.io/badge/ECHO%20Updates%20Channel-Join-9cf?style=for-the-badge&logo=telegram&logoColor=blue&style=flat&labelColor=333333)](https://t.me/Echo_AIO) |[![](https://img.shields.io/badge/ECHO%20Support%20Unit-Join-9cf?style=for-the-badge&logo=telegram&logoColor=blue&style=flat&labelColor=333333)](https://t.me/ECHO_Support_Unit) |
---
## Readme Contents
- [Introduction](#introduction)
- [Features](#features)
- [Super Plugins](#super-plugins)
- [Commands](#commands)
- [Supporter Plugins](https://github.com/theseekerofficial/Echo/tree/supporter-plugins)
- [What are Supporter Plugins](#what-are-supporter-plugins-)
- [Usage](#usage)
- [Configure Echo](#configure-echo)
- [Deployment](#deployment)
- [VPS](#vps)
- [Direct](#Run-directly-in-python)
- [Docker](#Run-Using-Docker)
- [Render](#render)
- [Demo Bot](#demo-bot)
- [Creator Details](#creator-details)
## Wiki Content
- [Home](https://github.com/theseekerofficial/Echo/wiki)
- [Why Echo?๐ค](https://github.com/theseekerofficial/Echo/wiki/Why-Echo%3F%F0%9F%A4%94)
- [Features๐งฉ](https://github.com/theseekerofficial/Echo/wiki/Features%F0%9F%A7%A9)
- [Yet to Come ๐ฏ](https://github.com/theseekerofficial/Echo/wiki/Yet-to-Come-%F0%9F%8E%AF)
- [Credits ๐ค](https://github.com/theseekerofficial/Echo/wiki/Credits-%F0%9F%A4%9D)
# Introduction
**Echo**, your personal AI assistant on Telegram, is designed to enhance your productivity by providing a seamless experience. With MongoDB integration, your data persist even if the bot restarts, ensuring you never miss a moment. Whether you're managing your schedule in private messages or coordinating group activities, Echo has you covered.
**Echo** developed from scratch by The Seeker's Cave Organization, it is a standalone project. ๐ฅ
# Features
1. **Universal Usage and Portability:** โพ๏ธ
- Works seamlessly in both private messages and any Telegram group where the bot is an admin.
- We have included all the necessary fonts, graphics, and other elements in the repository to ensure Echo functions as expected and to enhance its portability.
2. **Persistent Storage:** ๐ฝ
- MongoDB integration for storing reminders and user data.
- Reminders and other user data persist even if the bot restarts.
3. **Token System and Paid User system for Monatize Echo with URL Shortners** ๐ธ
- A token system available for features/plugins command
- A Paid user system for subscription method. Those who are in the paid users list can bypass the token system
- The owner can turn on or off the token system as needed.
- Manage, Delete, and view paid users effortlessly
4. **Custom Timezones:** โ
- Set your preferred timezone for personalized reminder notifications.
5. **Imporved Reminders Module:** โฐ
- No limit on the number of reminders you can set in Echo.
- Recurring (repeating) reminders for minutely, hourly, daily, weekly, monthly, yearly time periods
- View all active reminders under one command.
- Edit Reminders function
- Delete Reminders function
6. **Deployment Support:**
- Deploy on both Render and VPS for flexible hosting options.๐
7. **Meet Your Personal AI Assistant within Echo**
- Echo can generate responses from Google's Most Powerful AI Modle aka Google Gemini. Simply put your API key in the Echo and meet Gemini! ๐ค
- Global API setup or user's own API setup mechanism based on your preference.โ๏ธ
8. **Chatbot powered by Google Gemini**
- Feeling bored? Chat with Echo! Play games with Echo!! Echo replies to anything you say with the support of Google's Gemini Pro.๐ฌ
- Global API setup or user's own API setup mechanism based on your preference.โ๏ธ
9. **Image analysis module powered up with Google Gemini**
- Analyse or get descriptions about any of your images using Echo! ๐
10. **Automatically Setting Up Bot Commands**
- No need to manually set up bot commands in BotFather. We got you. Soon as the bot is deployed bot commands will be set automatically๐
11. **Modern and Advanced Broadcast Module/ Super Improved Scheduled Broadcast Module**
- Amplify your voice! Send important updates directly to all your audience with categorized broadcast menu (PM Only Broadcast, Group Only Broadcast, All Chat Broadcast).
Designed with easy-to-use Telegram Inline Buttons. [Only Available to Pre-authorized users in config.env]
- Be a time master with Echo's Scheducast module. Schedule your important broadcast messages with a blink! ๐
12. **Easily Update you Echo using UPSTREAM_REPO:**
- Just by sending /restart cmd You can update your echo bot to latest version. โคด๏ธ
13. **External Ping Support:**
- Integrated with Uptimerobot to keep Render instances online. ๐
14. **Custom Ringtones:**
- Type `/ringtones` to get 4 sample custom ringtones to improve the Reminders. Look at the `/help` message for more info ๐ต
15. **All-in-One Calculators**
- Echo includes all the calculators you need for both day-to-day and academic use.
- Designed using interactive telegram inline buttons
- Basic Calculator โ
- Scientific Calculator โ
- Unit Converter โ
- Length ๐
- Volume ๐ง
- Area โฌ๏ธ
- Weight/Mass โ๏ธ
- Time โฐ
- Speed ๐๐จ
- Pressure ๐จโ๏ธ
- Energy โก๏ธ
- Power โก๏ธ๐ช
- Angle ๐
- Data Spectrum ๐ถ
- Fuel Efficiency โฝ๏ธ
- Temperature ๐ก๏ธ
- Cooking ๐ฝ๏ธ
16. **Telegraph Image Uploading**
- Upload any Telegram image to Telegraph and get an instant direct link to your image ๐บ
- Reply to any image as /uptotgph to see the magic! ๐ช
17. **Logo Generator**
- Enhance your creativity using Echo's Logo Generator Plugin๐งฌ
- /logogen is your magic word! ๐ช
18. **ShiftX (Advanced Multifile Converter Plugin)** ๐๏ธ
- What you want to convert?
- Images?
- Videos?
- Documents?
- Audios?
- No need to go around websites to convert you files. Echo got your back ๐ค
- More conversation pairs yet to come โพ๏ธ
- Convert a wide range of files simply within the Telegram Interface ๐ฅ
19. **Doc Spotter (Advanced Auto Filtering)**
- Are you an admin that has a movie group? This plugin is for you.๐ซต
- Enabled ability to Switch beteen Inline buttons to Inline URL Buttons ๐ฆ
- URL Ad Shortner Support for Doc Spotter Buttons ๐ซฐ๐ธ
- Feel the power of DocSpotter Plugin ๐ช
- Multiple F-Sub chats (Channels or Groups)
- IMDB info and poster fetching
- Enable or disable IMDb in your preferences.
- Button dashboard only has access to the user who searches keyword
- Requested file received in Bot PM
- Indexing any file type in telegram
- Delete Indexed Files Easily
20. **Image Background Remover**
- Easily Remove your Images Background Using Echo's Background Remover ๐ผ๏ธโ๏ธ
- User own Personal and Global API mechanism for more flexibility ๐ฆพ
21. **Chat Cloner [Clonergram]**
- Want to clone a group or channel? Leave it to Echo, /clonegram is the magic word ๐
- Working on both groups and channels โ๏ธ
- Clone only selected message/file types you prefer
- Text Cloning โ
- Image Cloning โ
- File Cloning โ
- Stiker Cloning โ
- Audio Cloning โ
- Video Cloneing โ
23. **IMDb Search**
- Find your favorite movies and TV shows using /imdb ๐ฟ๐๏ธ
25. **Force Subscribe Function**
- Grow your chats with the advanced feature-rich F-Sub Plugin. This plugin will give the opportunity for it ๐ช
- Subscription checking support for both groups and channels
26. **FileFlex, File Manipulation Plugin (Echo Original Plugin)**
- Add custom captions with custom handlers and HTML Handlers to your files ๐ง
- Add URL Buttons to your files super easily
- Plugin Modes,
- Instant Flex โฉ
- Pre-Configured Flex โ๏ธ
- FileFlex Jobs for Chats for automatic FileFlexes ๐ผ
- Custom Global Templates ๐ผ๏ธ
- You can modify your files with a ton of possibility using FileFlex Plugin
27. **Info & Utility Modules**
- Simple Modules that could help to you in day-to-day telegram usage ๐
- Status of Echo ๐
- See Database Usage for Each Database in Echo (/database)
- Find Your Telegram ID (/info)
- Find Any Other user Telegram ID (/info)
- Find Any Other chat(Channel/Group) Telegram ID (/info)
- See a stats report about Echo and Host Server (/overview)
- /users Command for Owner to See Echo Using User's and Group Chats list
28. **Commit Detector Function**
- Keep updated about your fav GitHub repo within the telegram environment. This feature can detect new commits from any public repo and send them to your telegram channel(s)/group(s)๐ช
- Exclusively for Echo deploying owners only
-
29. **CadeCapsule Module for Run Supporter Plugins**
- Codecapsule is a file management system that allows Echo to run separate supporter plugins in different screen sessions. ๐
- These supporter plugins are improve to functionality of the main plugins in Echo
# Super Plugins
## 1) Guardian
### Guardian boasts a highly user-friendly interface and is a super customizable group manager plugin. We're excited to launch the initial version of Guardian with these 5 major features ๐ก๏ธ:
1) **Welcomer ๐**
- Send a costomized welcome message when a user join your group
- Supports text messages, media, and URL buttons with HTML and custom handlers like ([id], [first_name], ...)
- Linked to Logger to log every user join when logger mode is enabled
- Group topic support
- And many more features
2) **Goodbye ๐โโ๏ธ**
- Send a costomized goodbye message when a user leave your group
- Similar to Welcomer, supports text, media, and URL buttons with HTML and special handlers
- Topic support
- Linked to Logger
3) **Rules โ ๏ธ**
- Supports displaying URL based rules
- Text, media, and URL button support
- In-group /rules command support
- Capable of linking group rules to Welcomer, Goodbye, and Captcha
4) **Logger ๐**
- Supports logging every event of every other features
- Ability to toggle only needed logging elements in the dashboard
- Can set up Logging Chat for both groups and channels
- Provides detailed information about the event
5) **Captcha ๐ง ** *(The most advanced and largest module we created in Echo)*
- Supports 5 types of captcha: Button, Math, Rule Acceptation, reCaptcha, Quiz
- Customizable messages for some types of captcha modes (Custom Text with Special Handlers, Media, and URL Buttons)
- Group topic support
- A range of punishments set (Mute, Kick, Ban, Do Nothing)
- Auto Punishment Executor
- Audio (TTS) support for reCAPTCHA
- Wide range of quiz sets
- Captcha Auto - Regenerating System
- Support to enable or disable captcha system for invited users (Users who not joined via invite links)
6) **Link Generator ๐**
- Generate a invite link instantly using /link command
- Set custom user limits, expire durations and enable approval mode based on admins need
- Revoke generated invite links easily
- Set a Public Invite link for members of the group. When members send /link command they will see the public invite link
# Commands
- `/start`: Initiate the bot and receive a warm welcome.๐
- `/help`: To get help message and more info.๐ค
- `/broadcast`: Amplify your voice! Send important updates directly to all your followers.๐ข")
- `/scheducast`: Be a master of time. Schedule your broadcasts using Echo's Scheducast module๐ข")
- `/gemini [text]`: Meet Your Personal AI Assistant, Google Gemini ๐ค
- `/chatbot`: Chat with Echo's Chatbot๐ฌ
- `/mygapi`: Setup Your Google G-API๐
- `/analyze4to`: Start the image analyze using AI๐
- `/showmygapi`: Check your current G-API โ
- `/delmygapi`: Delete Your G-API from Echo's Database ๐๏ธ
- `/uptotgph`: Upload any telegram image to Telegraph and get instant direct link ๐
- `/logogen`: Craft your own logo with endless possibilities. (with Support for adding your own graphics, frames and more) ๐จ๐๏ธ
- `/codecapsule` : Run Supporter Plugins ๐โก
- `/imdb` : Find your fav movies and TV shows using /imdb ๐ฟ๐๏ธ
- `/docspotter`: Advanced auto filter feature packed with all feature you need for file managing ๐๏ธ
- `/erasefiles`: Delete indexed files easily โป๏ธ
- `/shiftx`: Convert wide range of files using Echo's ShiftX Plugin โป๏ธ
- `/clonegram`: Clone any type of message between chats ๐
- `/fsub`: Create a Force Subscribe Taks for a chat โ๏ธ
- `/setreminder`: Set a reminder for a specific date and time.๐๏ธ
- `/myreminders`: To see all your active reminders.๐
- `/editreminders`: Edit Your remindersโ๏ธ
- `/delreminder`: Delete unnecessary reminders in a flash ๐๏ธ
- `/settimezone TIMEZONE`: Customize your preferred timezone for reminder notifications.โณ
- `/ringtones`: Get uncommon ringtone files for set to Echo Reminder Bot.๐ต
- `/info`: See User/Bot/Chat info ๐
- `/removebg`: Remove background from any image ๐ช
- `/rbgusage`: See your RemoveBG API Usage ๐
- `/moreinfo`: Unbox the secrets! Type /moreinfo for the full bot lowdown & bonus notes.๐
- `/users`: Get users and groups list that uses Echo ๐ฅ
- `/addpaid`: Add a paid user ๐ธ
- `/paid`: see paid user(s) info ๐
- `/database`: Get database stats ๐
- `/bsettings`: Config Echo easily โ๏ธ
- `/restart`: Restart your bot and Update to the letest version โคด๏ธ
**You can discover additional sub-commands within the /help command that may not be explicitly listed.**
## What are Supporter Plugins ๐ค
โ Supporter Plugins are auxiliary scripts that work in conjunction with the main Echo Environment, designed to enhance the functionality of the primary plugins used by an Echo bot. These plugins are separate codes that do not run directly within the main Echo Environment but are managed through it. Hereโs a bit more detail about how they operate and the available plugins
โ Supporter Plugins utilize the codecapsule.py module within the Echo client, ensuring seamless integration and control from the main Echo Environment.
โ They use Linux screen sessions to remain active and operational, ensuring that they can continue running independently without requiring constant user intervention.
โก You can find more info in the supporter-plugins branch
โก current Available Supporter Plugins:
- TeleFileDex.py (For index history of a channel or group for Doc Spotter Plugin)
- TeleCloner.py (For Clone chat history to destination chat. Supporter Plugin for Clonegram main Plugin)
- SafeSync.py (Mongodb Backup code for main Echo Client database)
# Usage
โ๏ธ. **Start a Chat:**
- Begin a conversation with the bot either by searching on Telegram or using the provided link.
โ๏ธ. **Simple Commands:**
- Use intuitive commands like `/start` to initiate the bot and `/setreminder` to schedule reminders.
โ๏ธ. **Personalize Time Zone:**
- Optionally set your preferred timezone using the `/settimezone` command.
โ๏ธ. **Group Friendly:**
- Set reminders effortlessly in groups by mentioning the bot (@YourBotUsername) followed by the `/setreminder` command.
โ๏ธ. **Control Usage of Echo**
- Control the bot access to users using "GO_PUBLIC" and "ALLOWED_CHATS" ENVs
# Configure Echo
This section provides detailed information on the required environment variables for configuring Echo in the `config.env` file. These environment variables are essential for the proper functioning of your Echo bot. Please follow the instructions below to set up your environment variables before running the bot.
## Required Environment Variables (๐ด)
### Primary
1. **TOKEN** [๐ด]
- Description: Bot Token Generated by [BotFather](https://telegram.me/BotFather)
- Example: `TOKEN=your_bot_token_here`
2. **MONGODB_URI** [๐ด]
- Description: Your MongoDB URI
- Example: `MONGODB_URI=mongodb://username:password@localhost:27017/echo_database`
3. **OWNER** [๐ด]
- Description: Owner ID of echo
- Example: `OWNER=123456789`
4. **UPSTREAM_REPO_URL** [๐ด]
- Description: Your fork repo URL or Official repo link
- Example: `UPSTREAM_REPO_URL=https://github.com/theseekerofficial/Echo`
### Secondary
1. **REMINDER_CHECK_TIMEZONE** [๐ด]
- Description: Set a global timezone for reminders.
- Example: `REMINDER_CHECK_TIMEZONE=America/New_York`
2. **AUTHORIZED_USERS** [๐ด]
- Description: Give access to users special modules like broadcast, scheducast, etc. (comma-separated list of user IDs or usernames)
- Example: `AUTHORIZED_USERS=123456789,987654321,147852369`
3. **SCEDUCAST_TIMEZONE** [๐ด]
- Description: Set a preferred timezone for the scheducast module.
- Example: `SCEDUCAST_TIMEZONE=Asia/Tokyo`
4. **SCEDUCAST_TIME_OFFSET** [๐ด]
- Description: Set the correct time offset for the timezone you mentioned in SCEDUCAST_TIMEZONE. The offset should be in hours and minutes.
- Example: `SCEDUCAST_TIME_OFFSET=9.5`
- Explanation: If your local timezone is Asia/Colombo, and it is 5 hours and 30 minutes ahead of UTC, you should set this value to `5.5`.
## Optional But Recommended to Fill Environment Variables (๐ถ)
### Echo Profile Setup
1. **SETUP_BOT_PROFILE** [๐ถ]
- Description;
- You have been advised to set SETUP_BOT_PROFILE environment variable to False after you set up your Echo profile correctly during the first deployment using /bsettings to prevent unnecessary rate limit errors.
- Set True to set up the Echo profile automatically. If you keep this env as empty or False you will have to set the bot profile manually in BotFather
- Example: `SETUP_BOT_PROFILE=True`
2. **BOT_NAME** [๐ถ]
- Description: Enter a new name for Echo
- Example: `BOT_NAME=๏ผฅ๏ฝ๏ฝ๏ฝ`
3. **BOT_ABOUT** [๐ถ]
- Description: Enter a new about text for Echo. โ ๏ธ Remember about Telegram about text limits. keep the about text shorter
- Example: `BOT_ABOUT=Echo is your All-in-One AI Personal Assistant ๐ค`
4. **BOT_DESCRIPTION** [๐ถ]
- Description: Enter a new description for Echo
- Example: `BOT_DESCRIPTION=Echo is a personal AI assistant on Telegram that enhances productivity through the seamless integration of reminders, schedules, broadcasts, and many more features.๐`
## Optional Environment Variables (๐ฉ)
### Feature Configurations and Others
1. **DS_IMDB_ACTIVATE** [๐ฉ]
- Description: Set True or Flase to Enable or Disable IMDb Poster and Info in Doc Spotter Button List message
- Example: `DS_IMDB_ACTIVATE=True`
2. **DS_URL_BUTTONS** [๐ฉ (Required to be True for URL Shortner feature to work)]
- Description: Set True or Flase to Enable or Disable URL Buttons for Result list in DS Plugin | `This ENV needs to set True for URL Shortner feature to work`
- Example: `DS_URL_BUTTONS=True`
3. **GO_PUBLIC** [๐ฉ]
- Description: Set to True for available Echo for all users in telegram. | Set to False to restrict Echo's usage to chats in ALLOWED_CHATS
- Example: `GO_PUBLIC=True`
4. **ALLOWED_CHATS** [๐ฉ]
- Description: List of chat IDs (USER IDs or GROUP IDs | Both types acceptable) that allow to use Echo
- Note: `This ENV only works if the GO_PUBLIC env is set to "False"`
- Example: `ALLOWED_CHATS=123456789,-100987654321,192837465`
5. **URL_SHORTNER**
- Fill your shortener's domain.
- To disable this URL shortener feature, keep empty these envs
- Supported Shortners: `atglinks.com, exe.io, gplinks.in, shrinkme.io, urlshortx.com, shortzon.com, shorte.st, ouo.io`
- Example: `URL_SHORTNER=https://atglinks.com`
6. **URL_SHORTNER_API**
- Description: Fill your shortener's api.
- To disable this URL shortener feature, keep empty these envs
- Supported Shortners: `atglinks.com, exe.io, gplinks.in, shrinkme.io, urlshortx.com, shortzon.com, shorte.st, ouo.io`
- Example: `URL_SHORTNER_API=dhoyj96oh4j50j90j5uy3g40y045h32tr473g4t804t`
7. **GH_CD_URLS** [๐ฉ (Required if GH_CD_CHANNEL_IDS ENV was Filled)]
- Description: Fill in the repo URL in the format theseekerofficial/Echo.
- Example: `GH_CD_URLS=theseekerofficial/Echo`
8. **GH_CD_CHANNEL_IDS** [๐ฉ (Required if GH_CD_URLS ENV was Filled)]
- Description: Add the Channel ID(s)/Group ID(s) that you need to post-commit update.
- Example: `GH_CD_CHANNEL_IDS=-100123456789`
9. **GH_CD_PAT** [๐ฉ]
- Description: Your GitHub Personal Authorization Token for 5000 requests per hour API calls.
- Example: `GH_CD_CHANNEL_IDS=ujb32uvb579g29824t89v245h8`
10. **ENABLE_GLOBAL_G_API** [๐ฉ]
- Description: Enable Global API for AI-related features (True or False)
- Example: `ENABLE_GLOBAL_G_API=True`
11. **GLOBAL_G_API** [๐ฉ]
- Description: Add your API key from [Google AI Studios](https://aistudio.google.com/app/apikey)
- Example: `GLOBAL_G_API=urwgui598t42598bgt589t5`
12. **SHIFTX_MP3_TO_AAC_BITRATE** [๐ฉ]
- Description: Set a quality for MP3 to AAC Outputs. Set a value among 128k, 192k, 256k, 320k | 128k = Lowest quality, smallest file size / 320k = highest quality, largest file size.
- Example: `SHIFTX_MP3_TO_AAC_BITRATE=192k`
13. **SHIFTX_AAC_TO_MP3_BITRATE** [๐ฉ]
- Description: Set a quality for ACC to MP3 Outputs. Set a value among 128k, 192k, 256k, 320k | 128k = Lowest quality, smallest file size / 320k = highest quality, largest file size.
- Example: `SHIFTX_AAC_TO_MP3_BITRATE=256k`
14. **SHIFTX_OGG_TO_MP3_QUALITY** [๐ฉ]
- Description: Set a quality for OGG to MP3 Outputs. Set a value from 0 to 9 | 9 = Lowest quality, smallest file size / 0 = highest quality, largest file size.
- Example: `SHIFTX_OGG_TO_MP3_QUALITY=5`
15. **SHIFTX_MP3_TO_OGG_QUALITY** [๐ฉ]
- Description: Set a quality for MP3 to OGG Outputs. Set a value from -1 to 10 | -1 = Lowest quality, smallest file size / 10 = highest quality, largest file size.
- Example: `SHIFTX_MP3_TO_OGG_QUALITY=4`
16. **REMOVEBG_API** [๐ฉ]
- Description: Set a Global API Key for RemoveBG Plugin. Get one from [RemoveBG](https://www.remove.bg/dashboard#api-key)
- Example: `REMOVEBG_API=abcdefgh12345678`
17. **RESTART_AT_EVERY** [๐ฉ]
- Description: Set `True` to send F-Sub user to inform message in PM and Group. Set `False` to send F-Sub user to inform message only in Group.
- Example: `FSUB_INFO_IN_PM=True`
18. **FSUB_INFO_IN_PM** [๐ฉ]
- Description: Set a time to auto restart to Echo (Fill in seconds). 24hours = `86400`
- The minimum time that can be set for this env is 600
- To Disable auto restart, set this ENV to `0`
- Example: `RESTART_AT_EVERY=86400`
### Plugin On/Off
1. **GEMINI_PLUGIN** [๐ฉ]
- Description: Set to `True` or `False` to Enable or Disable the Gemini Text Plugin.
- Example: `GEMINI_PLUGIN=True`
2. **CHAT_BOT_PLUGIN** [๐ฉ]
- Description: Set to `True` or `False` to Enable or Disable the Chatbot Plugin.
- Example: `CHAT_BOT_PLUGIN=True`
3. **GEMINI_IMAGE_PLUGIN** [๐ฉ]
- Description: Set to `True` or `False` to Enable or Disable the Gemini Image Analysis Plugin.
- Example: `GEMINI_IMAGE_PLUGIN=True`
4. **CALCULATOR_PLUGIN** [๐ฉ]
- Description: Set to `True` or `False` to Enable or Disable the Calculator Plugin.
- Example: `CALCULATOR_PLUGIN=True`
5. **SCI_CALCULATOR_PLUGIN** [๐ฉ]
- Description: Set to `True` or `False` to Enable or Disable the Scientific Calculator Plugin.
- Example: `SCI_CALCULATOR_PLUGIN=True`
6. **UNIT_CONVERTER_PLUGIN** [๐ฉ]
- Description: Set to `True` or `False` to Enable or Disable the Units Converter Plugin.
- Example: `UNIT_CONVERTER_PLUGIN=True`
7. **TELEGRAPH_UP_PLUGIN** [๐ฉ]
- Description: Set to `True` or `False` to Enable or Disable the Telegraph Image Upload Plugin.
- Example: `TELEGRAPH_UP_PLUGIN=True`
8. **LOGOGEN_PLUGIN** [๐ฉ]
- Description: Set to `True` or `False` to Enable or Disable the Logo Gen Plugin.
- Example: `LOGOGEN_PLUGIN=True`
9. **DOC_SPOTTER_PLUGIN** [๐ฉ]
- Description: Set to `True` or `False` to Enable or Disable the Doc Spotter Plugin.
- Example: `DOC_SPOTTER_PLUGIN=True`
10. **SHIFTX_PLUGIN** [๐ฉ]
- Description: Set to `True` or `False` to Enable or Disable the ShiftX Plugin.
- Example: `SHIFTX_PLUGIN=True`
11. **REMOVEBG_PLUGIN** [๐ฉ]
- Description: Set to `True` or `False` to Enable or Disable the RemoveBG Plugin.
- Example: `REMOVEBG_PLUGIN=True`
12. **IMDb_PLUGIN** [๐ฉ]
- Description: Set to `True` or `False` to Enable or Disable the IMDb Plugin.
- Example: `IMDb_PLUGIN=True`
13. **CLONEGRAM_PLUGIN** [๐ฉ]
- Description: Set to `True` or `False` to Enable or Disable the Clonegram Plugin.
- Example: `CLONEGRAM_PLUGIN=True`
14. **F_SUB_PLUGIN** [๐ฉ]
- Description: Set to `True` or `False` to Enable or Disable the F-Sub Plugin.
- Example: `F_SUB_PLUGIN=True`
15. **FILEFLEX_PLUGIN** [๐ฉ]
- Description: Set `True` or `False` to Enable or Disable Fileflex Plugin
- Example: `FILEFLEX_PLUGIN=True`
Make sure to replace the placeholder values with your actual configuration settings. These environment variables are crucial for customizing and configuring the behavior of your Echo bot. Ensure that they are correctly set before running the bot to ensure its proper functionality.
If you have any questions or need further assistance, please refer to the documentation or reach out to the [Echo support team.](https://t.me/ECHO_Support_Unit)
# Deployment
## ๐VPS
~Pre-Requiremtnts
- Make sure to install Python 3.10 installed in your Ubuntu system. If you only have a version like Python 3.8, Install Python 3.10 too
### Run directly in python
-------------------------------------------------------------------------------------
~Deploying Steps
1. Give a Star to `https://github.com/theseekerofficial/Echo` ๐
2. Fork the Repo
3. Set up a MongoDB database and obtain the connection URI.
4. Rename `rename_me_as_config.env` as `config.env`
5. Fill `config.env` as described above
6. Clone the repository: `git clone https://github.com/your_username/Echo.git`
7. To Creating Virtual Environment, Run `python3.10 -m venv venv` in your server terminal
8. Activate the virtual environment using `source venv/bin/activate`
9. Install required Python packages: `pip install -r requirements.txt`
10. Update System `sudo apt update`
11. Install ffmpeg for ShiftX Plugin and screen for CodeCapsule Module ( Optional but Recommended | If you skip installation, Echo will dynamically install ffmpeg and screen itself ) `sudo apt install -y ffmpeg screen`
12. Run the bot: `python bot.py` or `python3 bot.py`
___All-in-One Deploy CMDs for VPS (Make Sure to install python3.10 in your server)___
```
deactivate
cd
rm -rf Echo
git clone https://github.com/theseekerofficial/Echo
cd Echo
python3.10 -m venv venv
source venv/bin/activate
sudo apt update
sudo apt install -y ffmpeg screen
pip install -r requirements.txt
python3 bot.py
```
***Use a method like `Linux Screen` to keep your Echo online 24/7 when using VPS deployment***
### Run Using Docker
-------------------------------------------------------------------------------------
~Deploying Steps
1. Give a Star to `https://github.com/theseekerofficial/Echo` ๐
2. Fork the Repo
3. Set up a MongoDB database and obtain the connection URI.
4. Rename `rename_me_as_config.env` as `config.env`
5. Fill `config.env` as described above
6. Clone the repository: `git clone https://github.com/your_username/Echo.git`
7. Run this
```
docker build -t echo .
```
8. After building Docker Image, run this
```
docker run -p 8000:8000 echo
```
9. Enjoy โจ
## ๐Render
1. Give a Star to `https://github.com/theseekerofficial/Echo` ๐
2. Fork the Repo
3. Edit and Fill necessary environment variables in config.env
4. Create a new web service in your render account and click "Build and deploy from a Git repository"
![Render1](https://telegra.ph/file/272a6339cefb39cd2cbf3.jpg)
5. Connect your GitHub account to render if you repo private other vise copy your public GitHub repo (Not recommended) and paste it to render dashbord
![Render2](https://telegra.ph/file/64d2374b90f02c16515c1.jpg)
6. Give a Name for you web service and fill `python bot.py` in Start Command. Follow provided photo
![Render3](https://telegra.ph/file/abc352875450e7207b611.jpg)
7. Select a Instance Type [Recommended: 512 MB (RAM) | Free$0/ month 0.1 CPU]
![Render4](https://telegra.ph/file/a94474e10aaddfb4f5dc8.jpg)
8. Click "Create Web Service" Button
![Render5](https://telegra.ph/file/23f6f6b7440ce10c54866.jpg)
9. Wait Until deploy complete. Keep alert in the log to check is there any errors. If you deploy success you need to get something like this in the log
![Render6](https://telegra.ph/file/f50f10b967db275a8a276.jpg)
10. After deploy complete, copy your Webhook URL (Something like https://{your_project_name}.onrender.com). You can find it in the top of your deployment page
![Render7](https://telegra.ph/file/36cbeb8b0d5e3e839f705.jpg)
11. Not go to https://uptimerobot.com/ and create an account, after that Fallow this, Click Add New Monitor Button > Monitor Type: HTTP(s) > Give any Friendly Name as you wish >
Fill URL (or IP) as this :- {your_render_webhook_url} > and click Create Monitor
![Render8](https://telegra.ph/file/9a4ccb39ee8a3cbd0f7e6.jpg)
12. Now Bot has successfully deployed to Render
# Demo Bot
- **Test the lestest version of code using this demo bot,**
- **Did you know you can make this bot your personal assistant? Not only can it handle reminders for you, but you can also use other plugins too as you needs. ๐ However, for the best experience, we recommend deploying your very own ECHO!**
`Deployed in Render`
[Echo](https://t.me/Echo_Reminder_Bot)
# Creator Details
Crafted๐จ with ๐ค by ๐ฃ๐ฑ๐ฎ ๐ข๐ฎ๐ฎ๐ด๐ฎ๐ป
- **Name:** ๐ฃ๐ฑ๐ฎ ๐ข๐ฎ๐ฎ๐ด๐ฎ๐ป
- **Telegram:** [@MrUnknown114](https://t.me/MrUnknown114)
- **GitHub:** [GitHub Profile](https://github.com/theseekerofficial)
![LICENSE](https://www.gnu.org/graphics/gplv3-127x51.png)
Proofreaded by, [@The_Seeker_116](https://t.me/The_Seeker_116) ๐โ๏ธ
Enhanced by,
- OpenAI's GPT3.5 & GPT-4 ๐ช
- Google Gemini โจ
- Codeium ๐ฆพ
Feel free to connect with the creator for inquiries or support related to Echo in [ECHO Support Unit](https://t.me/ECHO_Support_Unit).
Enjoy using Echo and stay organized!
#ECHO #EchoAIO #Made_From_Scratch