[NOTE] If you get Couldn't Sign In or App not Secure error while logging in. Create and use a fresh google account.
YEET MEET (Telegram Group: https://t.me/YeetMeetTG)
YEET MEET is a telegram bot which can be deployed to a server, heroku or on your local machine. It can attend your Google Meet and Zoom classes for you. You can also schedule meetings and it will automatically join at the given time.
/mlogin - Login to Meet
/zlogin - Login to Zoom
/meet - Command to join Google Meet classes or metting
/zoom - Command to join Zoom Meeting
/status - Sends screenshot of the web page
/exit - Exit Meeting
/timatable - Shows todays meeting schedule
Join Google Meeting
/meet https://meet.google.com/agr-ghts-ade
Join Zoom Meeting
/zoom 12354674654 ax56rR
Get screenshot of the web page
/status
Exit Google Meet or Zoom Meeting
/exit
If you've set SCHEDULER in config.py to True
Use /timetable to get todays schedule
config.py Explained
BOT_TOKEN : You can get the BOT TOKEN from Bot Father on Telegram. Here is a guide on how to create and new bot and get it's BOT_TOKEN
GUSERNAME : Your Email/Google username.
Example: [email protected]/aditya
GPASSWORD : Your Gmail/Google password
SCHEDULER : If you want to use scheduler on bot set this to TRUE
else set it to `False
USERID` : Set this to your Telegram User ID. Guide to get your Telegram User ID
If you want to use Scheduler set SCHEDULER to True in config.py
- cd YeetMeet
- cd bot
- python schedule.py
The scheduler.py script will guide you to setup schedule for your meetings. It stores the schedule in a CSV file.
Set ENVIRONMENT VARIABLES according to VARIABLES in config.py OR See How to edit config.py
- Download and Install Google Chrome and Chromedriver.
git clone https://github.com/1337w0rm/YeetMeet
cd YeetMeet
pip install -r requirements.txt
python chromium.py
Note: Login to your Google account from your local machine first by sending /mlogin or /zlogin command to your bot on Telegram, so that you don't have to re-login again and again on Heroku. This will create a meet.pkl or zoom.pkl file in your YeetMeet directory depending on the command sent to Telegram Bot respectively
For Zoom, logging in is kinda buggy right now. Will try to fix it in some weeks.
Set ENVIRONMENT VARIABLES according to VARIABLES in config.py OR See How to edit config.py
Prerequisite
- You need to have Python3 installed.
- You need Heroku-CLI installed on your system. Installation Guide Heroku CLI
- You need to have Google Chrome and Chromedriver installed and in your PATH Environment Variable.
Deployment
-
Download and Install Google Chrome and Chromedriver.
-
git clone https://github.com/1337w0rm/YeetMeet
-
cd YeetMeet
-
pip install -r requirements.txt
-
python chromium.py
-
Login to your Google Account using
/mlogin
for meet and/zlogin
for Zoom. Wait till you getLogged In
message from your bot. -
Now through Heroku-CLI login to your Heroku account.
heroku login -i
-
Create a Heroku App
heroku create appname --buildpack heroku/python
-
Set Chromedriver Builpack
heroku buildpacks:add https://github.com/heroku/heroku-buildpack-chromedriver -a appname
-
Set Google Chrome buildpack
heroku buildpacks:add https://github.com/1337w0rm/heroku-buildpack-google-chrome -a appname
-
Optional If you've set SCHEDULE to
True
you need to set your timezone on Heroku.heroku config:add TZ="Asia/Kolkata"
change it to your timezone by using TZ="Your timezone". For India it is TZ="Asia/Kolkata" -
Initialize git repository
git init
-
Select this app in your Heroku-CLI
heroku git:remote -a appname
-
Add all files to
git add .
-
Commit the changes
git commit -am "Your commit message"
-
Push Code to Heroku
git push heroku master
-
Scale the dynos
heroku ps:scale worker=1