Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 0 additions & 27 deletions gmeet_joiner/README.md

This file was deleted.

35 changes: 0 additions & 35 deletions gmeet_joiner/main.py

This file was deleted.

4 changes: 0 additions & 4 deletions gmeet_joiner/requirements.txt

This file was deleted.

35 changes: 35 additions & 0 deletions gmeet_zoom_joiner/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# gmeet_zoom_bot.py

This python script will help you to join daily repetitive classes easily.

- It'll join google meet or zoom meeting as per given time and link.

## Setup instructions


- Firstly clone the project to the desired location, and locate it in the terminal. You would have to download the required modules, you can do this by doing:
`pip install -r requirements.txt` or `pip3 install -r requirements.txt`

- You can now modify the script slightly according to your schedule:
1) If you are using chrome as you browser then, in `gMeet()` function replace the `for i in range(4)` with `for i in range(5)`. ( If you are using safari do not change the script.)

2) Now you can assign your links to `url1` and `url2` variables.

3) You can replace the timings in main function.

4) Lastly you can replace 'command' with 'ctrl' if you are on windows.

- This script will let you run two meetings that you have on a daily bases, still you can add more if you wish.

- Please note: The following program supports python3

## Detailed explanation of script, if needed

Below two key modules of this script.

* `pyautogui` module is used for automation
* `schedule` module is used to schedule meeting

## Output

Join meeting as per given time and link
80 changes: 80 additions & 0 deletions gmeet_zoom_joiner/gmeet_zoom_bot.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
import time
import webbrowser
import schedule
import pyautogui
import pyperclip


url1 = "PASTE gmeet link/zoom link/zoom meeting id"
url2 = "PASTE gmeet link/zoom link/zoom meeting id"


def gMeet(url):
webbrowser.open(url)
time.sleep(3)
print("Joining Class")
time.sleep(2)
pyautogui.hotkey('command', 'd')
print("Turned off camera")
pyautogui.hotkey('command', 'e')
print("Turned off mic")
time.sleep(3)

for i in range(4):
pyautogui.press('tab')

time.sleep(3)
pyautogui.press('enter')


def zMeet(url):
# copy link
pyperclip.copy(url)

time.sleep(0.2)

pyautogui.press('esc', interval=0.1)

time.sleep(0.3)

# open shart
pyautogui.press('win', interval=0.5)
# type zoom
pyautogui.write('zoom')
time.sleep(2)
# press enter
pyautogui.press('enter', interval=0.5)

time.sleep(8)

# Click zoom button
x, y = pyautogui.locateCenterOnScreen('zoom_btn.png')
pyautogui.click(x, y)

pyautogui.press('enter', interval=0.5)

# paste link
pyautogui.hotkey('ctrl', 'v')

# use tabs to move to next section
pyautogui.press('tab', interval=0.5)
pyautogui.press('tab', interval=0.5)
pyautogui.press('tab', interval=0.5)
pyautogui.press('enter', interval=0.5) # mute mic

pyautogui.press('tab', interval=0.5)
pyautogui.press('enter', interval=0.5) # turn off camera

pyautogui.press('tab', interval=0.5)
pyautogui.press('enter', interval=3) # join zoom link


if __name__ == "__main__":
schedule.every().day.at("16:00").do(gMeet(url1) if (
url1.startswith("https://meet")) else zMeet(url1))
schedule.every().day.at("06:00").do(gMeet(url2) if (
url2.startswith("https://meet")) else zMeet(url2))

while True:
schedule.run_pending() # check if we need to run anything
time.sleep(10) # wait 10 second before checking again'''
3 changes: 3 additions & 0 deletions gmeet_zoom_joiner/requirements.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
PyAutoGUI==0.9.52
pyperclip==1.8.2
schedule==1.1.0
Binary file added gmeet_zoom_joiner/zoom_btn.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.