sTiKyt e2611b2c5a Base of the cross-distro installer, some fixes (#102)
* Ensure root execution

Added a check to ensure the script runs with root privileges, and prompt for the root password if necessary.

Package manager detection

Automatic package manager detection and installation commands. This change simplifies the installation process by automating the detection of the package manager and installing necessary packages accordingly. Added support for multiple package managers such as apt, apk, yum, and pacman.

Add repository cloning and environment setup in install.sh

Refactored install.sh to improve virtual environment setup, forbid it from executing apt commands without verifying apt presence, added loops for database and installation options.

Add repository cloning and environment setup in install.sh

Refactored install.sh to improve virtual environment setup, forbid it from executing apt commands without verifying apt presence, added loops for database and installation options.

* Update README format and streamline installation instructions

Reformatted sections for better readability, removed unnecessary </p>, replaced weird symbols with spaces

* spacing

* enhnace PM_PERMIT comment

* enhance git install instrunction

* Enhance repo existence check in installation script

Updated the condition to verify both the presence of the directory and essential files (.env.dist, main.py, modules) before proceeding in the existing repository path. This change ensures the script runs only if all required files are available, preventing errors during installation.

* Add user prompt for virtual environment creation

Introduce a prompt to let the user decide whether to create a virtual environment, providing guidance and the option to skip if needed.

* Fixed a typo in options for db_type

* Reorder script execution for better flow

Moved the execution of `install.py` to ensure configuration prompts occur before running the script.

* Update README.md

---------

Co-authored-by: Abhi <85984486+AbhiTheModder@users.noreply.github.com>
2024-11-29 06:27:08 +05:30
2024-11-05 08:06:35 +05:30
2024-04-30 02:19:35 +00:00
2024-11-25 03:55:37 +05:30
2024-11-25 03:55:37 +05:30
2024-09-24 18:45:43 +05:30
2024-08-14 16:12:08 +00:00
2024-08-07 23:41:39 +05:30
2024-11-25 03:55:37 +05:30
2024-08-07 23:41:55 +05:30
2024-08-14 17:08:22 +00:00
2024-04-14 08:58:19 +00:00
2024-11-25 03:55:37 +05:30
2023-02-08 23:19:01 +05:30
2024-09-11 14:44:20 +05:30
2024-04-17 09:01:52 +05:30
2024-04-21 21:10:59 +05:30
2024-01-06 19:46:41 +00:00
2024-08-10 01:03:14 +05:30
2024-11-25 05:55:14 +05:30
2024-04-14 08:58:19 +00:00
2024-01-31 12:15:56 +05:30

🌕 Moon-Userbot

Moon-Userbot

Open Source Love Maintenance CodeFactor DeepSource GitHub Forks GitHub Stars Last commit Size Contributors License PRs Welcome

A Simple, Fast, Customizable, Ai powered Userbot for Telegram made after Dragon-Userbot abandoned

Warning

The use of this Telegram Userbot is at your own risk, and you are solely responsible for any consequences that may arise from your use of this Userbot. The developer of this Userbot shall not be held liable for any damages or consequences that may occur as a result of your use of this software, whether such use is lawful, unlawful, or malicious. By using this Userbot, you acknowledge that you have read and understood this warning, and that you agree to comply with all applicable laws and regulations, and to use this software responsibly and ethically.

🤖 Ai powers

  • Gemini Pro Ai [ ]
    • Ask/Chat with Ai
    • Get details from image
    • Cooking instructions
    • Ai Marketer
  • Cohere Coral Ai [ ]
    • Ask/Chat with Ai
    • UP-TO Date Info
    • Site-Search Support
    • Chat History Support
  • ChatGPT 3.5 Turbo [ ]
    • Ask/Chat with Ai
  • SDXL [ ]
  • DALL-E 3 [ ]
  • Upscaling []
  • Text to Image []

🚀 Installation

🏕️ Necessary Vars

  • API_ID - Get it from my.telegram.org
  • API_HASH - Get it from my.telegram.org
  • PM_LIMIT - set your pm permit warn limit
  • DATABASE_URL - ONLY for MongoDB, your mongodb url
  • DATABASE_NAME - set to db.sqlite3 if want to use sqlite3 db else leave blank
  • DATABASE_TYPE - set to sqlite3 if want to use sqlite3 db else leave blank

Optional Vars

  • STRINGSESSION
    • only If you want to use on cloud hosts use string_gen.py to generate OR Run on Repl.it

Important

STRINGSESSION is necessary for deployment through Docker/Cloud Host etc.

  • APIFLASH_KEY - ONLY, If you want to use web screnshot plugin You can get it from here

  • RMBG_KEY - ONLY, If you want to use removbg plugin You can get it from here

  • VT_KEY - ONLY, If you want to use VirusTotal plugin You can get it from here

  • GEMINI_KEY - ONLY, If you want to use gemini ai plugin You can get it from here

  • COHERE_KEY - ONLY, If you want to use cohere ai plugin You can get it from here

  • VCA_API_KEY - ONLY, If you want to use ai tools like sdxl,upscale plugin You can get it from here

☁️ Cloud Host

Koyeb Heroku Render
Deploy To Koyeb Deploy To Heroku Deploy to Render

🐳 Docker

You can either use docker run or docker compose.

Prerequisites

  • Docker
  • Docker Compose (version 1.x for docker-compose.yml, version 2.x for compose.yml)
  • Put your environment vars in .env file check .env.dist for example format

👷‍♂️docker run:

  • Start:
    docker run --env-file ./.env -d qbtaumai/moonuserbot:latest
    
  • Updating:
    docker stop $(docker ps -q) && docker rm $(docker ps -a -q)
    
    then re-run the start command

Docker Compose V1 (docker-compose.yml):

If you're using Docker Compose version 1.x, use the following commands to start and update the service:

  • Start:
    docker-compose -f docker-compose.yml up -d
    
  • Updating & running:
    docker-compose -f docker-compose.yml down && docker-compose -f docker-compose.yml pull && docker-compose -f docker-compose.yml up -d
    

Docker Compose V2 (compose.yml):

If you're using Docker Compose version 2.x, use the following commands to start and update the service:

  • Start:
    docker compose -f compose.yml up -d
    
  • Updating & running:
    docker compose -f compose.yml down && docker compose -f compose.yml pull && docker compose -f compose.yml up -d
    

Important

Make Sure you add appropriate env vars

🖥️ Local Host

🐧 Linux (WSL compatible)

Install Git

There are instructions for installing on several different Unix distributions on the Git website, at https://git-scm.com/download/linux

Clone the repo

git clone https://github.com/The-MoonTg-project/Moon-Userbot.git

Installation

cd Moon-Userbot 
chmod +x install.sh
./install.sh

Installer tested on:

  • Arch
  • Debian
  • Ubuntu
  • WSL (APT based distros)

Feel free to test on other distros and let us know!

📱 Termux

Tip

Use GitHub version


Full Installation instruction Given here

Note

If you choose MongoDB for your cloud then you need to setup mongo_db_url**

Recommended: sqlite

🐩 Contributions

Contributions of any type are welcome like custom_modules etc. Feel free to do pull-request's with your changes!

Working on your first Pull Request? You can learn how from this free series How to Contribute to an Open Source Project on GitHub

👨🏻‍💻 Support

👨🏻‍💼 Credits

Written on Pyrogram[Pyrofork]❤️ and pytgcalls❤️

Disclaimer

Warning

The use of this Telegram Userbot is entirely at your own risk. The developer of this Userbot is not responsible for any misuse, damage, or legal consequences that may arise from your use of this software.

It is your responsibility to ensure that you use this Userbot in accordance with all applicable laws and regulations, and that you do not engage in any activities that may cause harm to others or violate their privacy. This includes, but is not limited to, the use of this Userbot to send spam, harass others, or engage in any other form of unlawful or malicious activity. The developer of this Userbot does not endorse or condone any such activities, and any such use of this software is strictly prohibited. By using this Userbot, you acknowledge that you are solely responsible for your own actions and that the developer of this Userbot shall not be held liable for any damages or consequences that may arise from your use of this software. It is your responsibility to ensure that you have obtained all necessary permissions and consents before using this Userbot to interact with others, and that you respect their privacy and rights. The developer of this Userbot shall not be held liable for any breach of privacy or rights that may occur as a result of your use of this software.

Licence

                    GNU GENERAL PUBLIC LICENSE
                        Version 3, 29 June 2007

  Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/>
  Everyone is permitted to copy and distribute verbatim copies
  of this license document, but changing it is not allowed.

                             Preamble

   The GNU General Public License is a free, copyleft license for
 software and other kinds of works.
Description
A Simple, Fast, Customizable, Ai powered Userbot for Telegram with most easiest installation. Built in python using pyrofork(pyrogram)
Readme GPL-3.0 906 KiB
Languages
Python 92.8%
Shell 6.8%
Nix 0.3%
Dockerfile 0.1%