MsRewards/README.md

93 lines
2.8 KiB
Markdown

# MsReward
A Microsoft reward automator, designed to work headless on any x64 server.
Using a discord webhook or SQL to log points everyday.
Using Selenium and Geckodriver.
# Installation instruction
Make sure your contry is [supported by MS Rewards](https://support.microsoft.com/en-us/topic/microsoft-rewards-regions-9795ec47-c0f4-a33e-aede-738903359d63).
Create 5 Microsoft accounts, that the programm will use.
- [linux](#linux)
- [Windows](#windows)
- [MacOS](#macos)
- [Database configuration](#database)
- [Options](#options)
- [Flags](#flags)
## Linux
### Using docker (Recommended)
Make sure that [docker](https://docs.docker.com/get-docker/) and [git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git) are installed.
Clone the repository:
```
git clone https://github.com/piair338/MsRewards
```
Build the docker container:
```
cd MsRewards
sudo docker build -t msrewards .
```
Run the app for the first time to configure it.
```
sudo docker run -ti --name MsRewards msrewards
```
Then to run it everyday, you can use cron and add the line:
```
10 10 * * * sudo docker start MsRewards
```
### **not** using docker (not recommended)
**This is only a recommandation and shouldn't be used !**
```
sudo apt-get install xdg-utils libdbus-glib-1-2 bzip2 wfrench tigervnc-standalone-server xvnc -y
curl -sSLO https://download-installer.cdn.mozilla.net/pub/firefox/releases/91.9.1esr/linux-x86_64/en-US/firefox-91.9.1esr.tar.bz2
tar -xjf firefox-91.9.1esr.tar.bz2
sudo mv firefox /opt/
sudo ln -s /opt/firefox/firefox /usr/bin/firefox
curl -sSLO https://github.com/mozilla/geckodriver/releases/download/v0.31.0/geckodriver-v0.31.0-linux64.tar.gz
tar zxf geckodriver-v0.31.0-linux64.tar.gz
sudo mv geckodriver /usr/bin/
rm geckodriver-v0.31.0-linux64.tar.gz
rm firefox-91.9.1esr.tar.bz2
```
## Windows
Not yet tested, but using docker should work.
## MacOS
I don't have a mac (yet) so i can't test, but again, install docker and follow the linux installation.
# Database
To use the database, I recommend MySql, Create a database with the name `MsRewards` and create a table `daily`, like the one from the image :
![B96F2F6D-7257-4F12-BFA7-0BEC3FB72993](https://user-images.githubusercontent.com/74496300/172872979-05396b6b-b682-471a-b71b-41602d816504.jpeg)
# Options
TODO
# Flags
## Override
Enable you to choose what action to perform on which account. **Linux only**
```
python3 main.py -o
```
## VNC
Enble a vnc to a specific port
```
python3 main.py -v 1234
```
## config
Tell the programm which config to use.
Default to ./user_data/config.cfg
Putting only a number is equivalent to ./user_data/config[number].cfg
```
python3 main.py -c 12
```
## Add points to database
Add points to the database using the credentials provided in the default config file.
argument : file with a list of `account,points`
```
python3 main.py -a file.csv
```