1
Fork 0
mirror of https://github.com/Steffo99/greed.git synced 2024-10-16 13:47:27 +00:00
Customizable, multilanguage Telegram shop bot with Payments support
Find a file
2020-07-07 00:07:20 +02:00
config Improve language configuration options 2020-05-03 11:41:12 +02:00
strings Fully remove global strings files 2020-05-03 12:40:11 +02:00
.gitignore Add transaction file 2018-04-19 09:37:42 +02:00
configloader.py Merge branch 'master' into logging 2020-04-23 17:22:58 +02:00
CONTRIBUTING.md Update CONTRIBUTING.md 2020-04-23 17:46:58 +02:00
core.py Fix #63 2020-07-06 23:54:26 +02:00
database.py Fix __repr__ being parsed as html entities 2020-06-24 14:36:39 +02:00
LICENSE.txt Rename LICENSE 2018-05-03 08:51:44 +02:00
localization.py Add a json conversion 2020-05-03 13:36:01 +02:00
README.md Add some screenshots (closes #59) 2020-07-01 02:08:59 +02:00
requirements.txt Create requirements and update README 2018-05-03 08:48:31 +02:00
utils.py Fully remove global strings files 2020-05-03 12:40:11 +02:00
worker.py Fix https://t.me/greed_project/488 2020-07-07 00:07:20 +02:00

Greed

A customizable, multilanguage Telegram shop bot with Telegram Payments support!

Demo

Send a message to @greedtestbot on Telegram to view a demo of the bot in action!

Use the special credit card number 4242 4242 4242 4242 to add unlimited credit to your account.

Screenshots

Requirements

Consider renting a VPS to host the bot on; a cheap one should do, as greed is pretty lightweight! :)

Installation

This installation procedure assumes you have python3.8 installed on an Ubuntu server. If you have a different version installed,

  1. Download the project files by running:

    git clone https://github.com/Steffo99/greed.git
    
  2. Create a new virtualenv:

    virtualenv -p python3.8 venv
    
  3. Activate the virtualenv:

    source venv/bin/activate
    
  4. Install the project requirements:

    pip install -r requirements.txt
    
  5. Optional: For colored output, install coloredlogs:

    pip install coloredlogs
    
  6. Generate the configuration file:

    python -OO core.py
    
  7. Edit the configuration file to your preferences:

    nano config/config.ini
    

    Ensure the is_template field is set to no.
    Press Ctrl+X and then two times Enter to save and quit.

  8. Generate the database:

    python -OO database.py
    
  9. Optional: customize the files in the strings folder for custom messages.

  10. Start the bot:

    python -OO core.py
    
  11. Open Telegram, and send a /start command to your bot to be promoted to 💼 Manager.

  12. Optional: Stop the bot, and start it in a screen so it can keep running even after you close the console window:

    screen venv/bin/python -OO core.py
    

    To safely detach the screen, press Ctrl+A and then Ctrl+D.

Usage

All features can be accessed through the Telegram bot chat.

As a 💼 Manager, you can add new products, check the placed orders, create new transactions and generate .csv log files.
You can also add additional 💼 Managers.

Users will be able to add credit to their wallet, place orders and contact you in case they require assistance.

Updating

To update the bot, run the following commands:

git stash
git pull
git stash pop

Documentation and help

If you find a bug, have an idea for a new feature or just require help with greed, please post an issue on GitHub, or, if GitHub is blocked in your country, join the Telegram group and send a message there.

If you can read Italian, you can try to read the paper I wrote about greed for my final High School exam.

If you are proficient in Python, you can also try reading the code. Most of the bot interactions can be found in the worker.py file, so try to have a look there.

Forks

Some people made a copy of Greed and added or changed some things to it (they made a fork).
These forks are listed below.

Please note that @Steffo99, the main developer of greed, does not endorse any of these forks.

Bitcoin - Blockonomics

DarrenWestwood is currently maintaining a greed fork adding Bitcoin support through Blockonomics.