From 82e6d47219714deaccb1ad6cea11d832b31481a8 Mon Sep 17 00:00:00 2001 From: Curiouspaul1 <170408025@live.unilag.edu.ng> Date: Mon, 11 Oct 2021 03:53:13 +0100 Subject: [PATCH 1/6] added gitignore file --- .gitignore | 141 ----------------------------------------------------- 1 file changed, 141 deletions(-) diff --git a/.gitignore b/.gitignore index 7831c2e..8b13789 100644 --- a/.gitignore +++ b/.gitignore @@ -1,142 +1 @@ -# Byte-compiled / optimized / DLL files -__pycache__/ -*.py[cod] -*$py.class -# C extensions -*.so - -# Distribution / packaging -.Python -build/ -develop-eggs/ -dist/ -downloads/ -eggs/ -.eggs/ -lib/ -lib64/ -parts/ -sdist/ -var/ -wheels/ -share/python-wheels/ -*.egg-info/ -.installed.cfg -*.egg -MANIFEST - -# PyInstaller -# Usually these files are written by a python script from a template -# before PyInstaller builds the exe, so as to inject date/other infos into it. -*.manifest -*.spec - -# Installer logs -pip-log.txt -pip-delete-this-directory.txt - -# Unit test / coverage reports -htmlcov/ -.tox/ -.nox/ -.coverage -.coverage.* -.cache -nosetests.xml -coverage.xml -*.cover -*.py,cover -.hypothesis/ -.pytest_cache/ -cover/ - -# Translations -*.mo -*.pot - -# Django stuff: -*.log -local_settings.py -db.sqlite3 -db.sqlite3-journal - -# Flask stuff: -instance/ -.webassets-cache - -# Scrapy stuff: -.scrapy - -# Sphinx documentation -docs/_build/ - -# PyBuilder -.pybuilder/ -target/ - -# Jupyter Notebook -.ipynb_checkpoints - -# IPython -profile_default/ -ipython_config.py - -# pyenv -# For a library or package, you might want to ignore these files since the code is -# intended to run in multiple environments; otherwise, check them in: -# .python-version - -# pipenv -# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. -# However, in case of collaboration, if having platform-specific dependencies or dependencies -# having no cross-platform support, pipenv may install dependencies that don't work, or not -# install all needed dependencies. -#Pipfile.lock - -# PEP 582; used by e.g. github.com/David-OConnor/pyflow -__pypackages__/ - -# Celery stuff -celerybeat-schedule -celerybeat.pid - -# SageMath parsed files -*.sage.py - -# Environments -.env -.venv -env/ -venv/ -ENV/ -env.bak/ -venv.bak/ - -# Spyder project settings -.spyderproject -.spyproject - -# Rope project settings -.ropeproject - -# mkdocs documentation -/site - -# mypy -.mypy_cache/ -.dmypy.json -dmypy.json - -# Pyre type checker -.pyre/ - -# pytype static type analyzer -.pytype/ - -# Cython debug symbols -cython_debug/ - -# IDE/Editor -.vscode -.idea \ No newline at end of file From 143be3789389c6ae58c70b7cea83f5086fff5492 Mon Sep 17 00:00:00 2001 From: Curiouspaul1 <170408025@live.unilag.edu.ng> Date: Mon, 11 Oct 2021 05:56:35 +0100 Subject: [PATCH 2/6] updated jarvis.py, requirements file and moved loc.py logic to helpers.py --- .gitignore | 3 + helpers.py | 73 +++++++++++++++ jarvis.py | 134 +++++++++------------------ loc.py | 37 -------- requirements.txt | 232 ++++++----------------------------------------- 5 files changed, 145 insertions(+), 334 deletions(-) create mode 100644 helpers.py delete mode 100644 loc.py diff --git a/.gitignore b/.gitignore index 8b13789..6297b29 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,4 @@ +*env/ +*__pycache__/ +*.env diff --git a/helpers.py b/helpers.py new file mode 100644 index 0000000..0d62076 --- /dev/null +++ b/helpers.py @@ -0,0 +1,73 @@ +import pyttsx3 +import pyautogui +import psutil +import pyjokes +import speech_recognition as sr +import datetime +import requests +import geocoder + + +engine = pyttsx3.init() +voices = engine.getProperty('voices') +engine.setProperty('voice', voices[0].id) +g = geocoder.ip('me') + + +def speak(audio) -> None: + engine.say(audio) + engine.runAndWait() + +def screenshot() -> None: + img = pyautogui.screenshot() + img.save('path of folder you want to save/screenshot.png') + +def cpu() -> None: + usage = str(psutil.cpu_percent()) + speak("CPU is at"+usage) + + battery = psutil.sensors_battery() + speak("battery is at") + speak(battery.percent) + +def joke() -> None: + for i in range(5): + speak(pyjokes.get_jokes()[i]) + +def takeCommand() -> str: + r = sr.Recognizer() + with sr.Microphone() as source: + print('Listening...') + r.pause_threshold = 1 + r.energy_threshold = 494 + r.adjust_for_ambient_noise(source, duration=1.5) + audio = r.listen(source) + + try: + print('Recognizing..') + query = r.recognize_google(audio, language='en-in') + print(f'User said: {query}\n') + + except Exception as e: + # print(e) + + print('Say that again please...') + return 'None' + return query + +def weather(): + api_url = "https://fcc-weather-api.glitch.me/api/current?lat=" + \ + str(g.latlng[0]) + "&lon=" + str(g.latlng[1]) + + data = requests.get(api_url) + data_json = data.json() + if data_json['cod'] == 200: + main = data_json['main'] + wind = data_json['wind'] + weather_desc = data_json['weather'][0] + speak(str(data_json['coord']['lat']) + 'latitude' + str(data_json['coord']['lon']) + 'longitude') + speak('Current location is ' + data_json['name'] + data_json['sys']['country'] + 'dia') + speak('weather type ' + weather_desc['main']) + speak('Wind speed is ' + str(wind['speed']) + ' metre per second') + speak('Temperature: ' + str(main['temp']) + 'degree celcius') + speak('Humidity is ' + str(main['humidity'])) diff --git a/jarvis.py b/jarvis.py index df889af..6102ae2 100644 --- a/jarvis.py +++ b/jarvis.py @@ -6,15 +6,10 @@ import os import sys import smtplib -import psutil -import pyjokes -import pyautogui from news import speak_news, getNewsUrl from diction import translate -from loc import weather +from helpers import * from youtube import youtube -import psutil -import pyjokes from sys import platform import os import getpass @@ -25,94 +20,47 @@ # print(voices[0].id) +class Jarvis: + def __init__(self) -> None: + if platform == "linux" or platform == "linux2": + self.chrome_path = '/usr/bin/google-chrome' + + elif platform == "darwin": + self.chrome_path = 'open -a /Applications/Google\ Chrome.app' + + elif platform == "win32": + self.chrome_path = 'C:\Program Files (x86)\Google\Chrome\Application\chrome.exe' + else: + print('Unsupported OS') + exit(1) + webbrowser.register( + 'chrome', None, webbrowser.BackgroundBrowser(self.chrome_path) + ) + + def wishMe(self) -> None: + hour = int(datetime.datetime.now().hour) + if hour >= 0 and hour < 12: + speak("Good Morning SIR") + elif hour >= 12 and hour < 18: + speak("Good Afternoon SIR") + + else: + speak('Good Evening SIR') + + weather() + speak('I am JARVIS. Please tell me how can I help you SIR?') + + def sendEmail(self, to, content) -> None: + server = smtplib.SMTP('smtp.gmail.com', 587) + server.ehlo() + server.starttls() + server.login('email', 'password') + server.sendmail('email', to, content) + server.close() + + def execute_query(self): + query = self.takeCommand() -def speak(audio): - engine.say(audio) - engine.runAndWait() - - -def screenshot(): - img = pyautogui.screenshot() - img.save('path of folder you want to save/screenshot.png') - - -def cpu(): - usage = str(psutil.cpu_percent()) - speak("CPU is at"+usage) - - battery = psutil.sensors_battery() - speak("battery is at") - speak(battery.percent) - - -def joke(): - for i in range(5): - speak(pyjokes.get_jokes()[i]) - - -def takeCommand(): - - r = sr.Recognizer() - with sr.Microphone() as source: - print('Listening...') - r.pause_threshold = 1 - r.energy_threshold = 494 - r.adjust_for_ambient_noise(source, duration=1.5) - audio = r.listen(source) - - try: - print('Recognizing..') - query = r.recognize_google(audio, language='en-in') - print(f'User said: {query}\n') - - except Exception as e: - # print(e) - - print('Say that again please...') - return 'None' - return query - - -def wishMe(): - hour = int(datetime.datetime.now().hour) - if hour >= 0 and hour < 12: - speak("Good Morning SIR") - elif hour >= 12 and hour < 18: - speak("Good Afternoon SIR") - - else: - speak('Good Evening SIR') - - weather() - speak('I am JARVIS. Please tell me how can I help you SIR?') - - -def sendEmail(to, content): - server = smtplib.SMTP('smtp.gmail.com', 587) - server.ehlo() - server.starttls() - server.login('email', 'password') - server.sendmail('email', to, content) - server.close() - - -def cpu(): - usage = str(psutil.cpu_percent()) - speak("CPU is at"+usage) - - battery = psutil.sensors_battery() - speak("battery is at") - speak(battery.percent) - - -def joke(): - for i in range(5): - speak(pyjokes.get_jokes()[i]) - - -def screenshot(): - img = pyautogui.screenshot() - img.save('path of folder you want to save/screenshot.png') if __name__ == '__main__': diff --git a/loc.py b/loc.py deleted file mode 100644 index 433e425..0000000 --- a/loc.py +++ /dev/null @@ -1,37 +0,0 @@ -import geocoder -import requests -import json -import pyttsx3 - -g = geocoder.ip('me') - -engine = pyttsx3.init() -voices = engine.getProperty('voices') -engine.setProperty('voice', voices[0].id) - - -def speak(audio): - engine.say(audio) - engine.runAndWait() - - -def weather(): - api_url = "https://fcc-weather-api.glitch.me/api/current?lat=" + \ - str(g.latlng[0]) + "&lon=" + str(g.latlng[1]) - - data = requests.get(api_url) - data_json = data.json() - if data_json['cod'] == 200: - main = data_json['main'] - wind = data_json['wind'] - weather_desc = data_json['weather'][0] - speak(str(data_json['coord']['lat']) + 'latitude' + str(data_json['coord']['lon']) + 'longitude') - speak('Current location is ' + data_json['name'] + data_json['sys']['country'] + 'dia') - speak('weather type ' + weather_desc['main']) - speak('Wind speed is ' + str(wind['speed']) + ' metre per second') - speak('Temperature: ' + str(main['temp']) + 'degree celcius') - speak('Humidity is ' + str(main['humidity'])) - - -if __name__ == '__main__': - weather() diff --git a/requirements.txt b/requirements.txt index f964c7c..3a2adb5 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,212 +1,36 @@ -altgraph==0.17 -appdirs==1.4.4 -asgiref==3.2.7 -autopep8==1.5.3 -beautifulsoup4==4.9.1 -cachetools==4.1.0 -camelcase==0.2 -certifi==2020.4.5.1 -chardet==3.0.4 -click==7.1.2 -comtypes==1.1.7 -decorator==4.4.2 -dialogflow==1.0.0 -distlib==0.3.0 -Django==3.0.7 -filelock==3.0.12 -Flask==1.0.2 -Flask-SQLAlchemy==2.4.3 +beautifulsoup4==4.10.0 +bidict==0.21.3 +certifi==2021.10.8 +charset-normalizer==2.0.6 +click==8.0.3 +colorama==0.4.4 +comtypes==1.1.10 +decorator==5.1.0 future==0.18.2 geocoder==1.38.1 -google-api-core==1.17.0 -google-auth==1.14.3 -googleapis-common-protos==1.51.0 -grpcio==1.28.1 -idna==2.9 -itsdangerous==1.1.0 -Jinja2==2.11.2 -joblib==0.15.1 -lxml==4.5.1 -MarkupSafe==1.1.1 +idna==3.2 +jsonlib-python3==1.6.1 +loc==0.0.2 MouseInfo==0.1.3 -mysqlclient @ file:///C:/Users/gs935/Downloads/mysqlclient-1.4.6-cp38-cp38-win32.whl -numpy==1.18.5 -pandas==1.0.5 -pefile==2019.4.18 -Pillow==7.1.2 -prompt-toolkit==3.0.5 -protobuf==3.11.3 -pyasn1==0.4.8 -pyasn1-modules==0.2.8 -PyAudio @ file:///C:/Users/gs935/Downloads/PyAudio-0.2.11-cp38-cp38-win32.whl -PyAutoGUI==0.9.50 -pycodestyle==2.6.0 -pydub==0.24.1 -PyGetWindow==0.0.8 -PyInstaller==3.6 -PyMsgBox==1.0.8 -pyperclip==1.8.0 +Pillow==8.3.2 +psutil==5.8.0 +PyAudio @ file:///C:/Users/Paulo/Documents/projects/hacktoberfest/J.A.R.V.I.S/PyAudio-0.2.11-cp38-cp38-win_amd64.whl +PyAutoGUI==0.9.53 +PyGetWindow==0.0.9 +pyjokes==0.6.0 +PyMsgBox==1.0.9 +pyperclip==1.8.2 pypiwin32==223 PyRect==0.1.4 -PyScreeze==0.1.26 -python-dateutil==2.8.1 -pyttsx3==2.71 -PyTweening==1.0.3 -pytz==2020.1 -pywin32==228 -pywin32-ctypes==0.2.0 -ratelim==0.1.6 -requests==2.23.0 -rsa==4.0 -scikit-learn==0.23.1 -scipy==1.5.0 -six==1.14.0 -sklearn==0.0 -soupsieve==2.0.1 -SpeechRecognition==3.8.1 -SQLAlchemy==1.3.17 -sqlparse==0.3.1 -threadpoolctl==2.1.0 -toml==0.10.1 -urllib3==1.25.9 -virtualenv==20.0.20 -wcwidth==0.1.9 -Werkzeug==1.0.1 -wikipedia==1.4.0 -wit==5.1.0 -youtube-search==0.1.4 -======= -beautifulsoup4==4.9.1 -bidict==0.19.0 -certifi==2020.6.20 -chardet==3.0.4 -click==7.1.2 -decorator==4.4.2 -future==0.18.2 -geocoder==1.38.1 -idna==2.10 -jsonlib==1.6.1 -loc==0.0.2 -PyAudio==0.2.11 -pyobjc==6.2.1 -pyobjc-core==6.2.1 -pyobjc-framework-Accounts==6.2.1 -pyobjc-framework-AddressBook==6.2.1 -pyobjc-framework-AdSupport==6.2.1 -pyobjc-framework-AppleScriptKit==6.2.1 -pyobjc-framework-AppleScriptObjC==6.2.1 -pyobjc-framework-ApplicationServices==6.2.1 -pyobjc-framework-AuthenticationServices==6.2.1 -pyobjc-framework-AutomaticAssessmentConfiguration==6.2.1 -pyobjc-framework-Automator==6.2.1 -pyobjc-framework-AVFoundation==6.2.1 -pyobjc-framework-AVKit==6.2.1 -pyobjc-framework-BusinessChat==6.2.1 -pyobjc-framework-CalendarStore==6.2.1 -pyobjc-framework-CFNetwork==6.2.1 -pyobjc-framework-CloudKit==6.2.1 -pyobjc-framework-Cocoa==6.2.1 -pyobjc-framework-Collaboration==6.2.1 -pyobjc-framework-ColorSync==6.2.1 -pyobjc-framework-Contacts==6.2.1 -pyobjc-framework-ContactsUI==6.2.1 -pyobjc-framework-CoreAudio==6.2.1 -pyobjc-framework-CoreAudioKit==6.2.1 -pyobjc-framework-CoreBluetooth==6.2.1 -pyobjc-framework-CoreData==6.2.1 -pyobjc-framework-CoreHaptics==6.2.1 -pyobjc-framework-CoreLocation==6.2.1 -pyobjc-framework-CoreMedia==6.2.1 -pyobjc-framework-CoreMediaIO==6.2.1 -pyobjc-framework-CoreML==6.2.1 -pyobjc-framework-CoreMotion==6.2.1 -pyobjc-framework-CoreServices==6.2.1 -pyobjc-framework-CoreSpotlight==6.2.1 -pyobjc-framework-CoreText==6.2.1 -pyobjc-framework-CoreWLAN==6.2.1 -pyobjc-framework-CryptoTokenKit==6.2.1 -pyobjc-framework-DeviceCheck==6.2.1 -pyobjc-framework-DictionaryServices==6.2.1 -pyobjc-framework-DiscRecording==6.2.1 -pyobjc-framework-DiscRecordingUI==6.2.1 -pyobjc-framework-DiskArbitration==6.2.1 -pyobjc-framework-DVDPlayback==6.2.1 -pyobjc-framework-EventKit==6.2.1 -pyobjc-framework-ExceptionHandling==6.2.1 -pyobjc-framework-ExecutionPolicy==6.2.1 -pyobjc-framework-ExternalAccessory==6.2.1 -pyobjc-framework-FileProvider==6.2.1 -pyobjc-framework-FileProviderUI==6.2.1 -pyobjc-framework-FinderSync==6.2.1 -pyobjc-framework-FSEvents==6.2.1 -pyobjc-framework-GameCenter==6.2.1 -pyobjc-framework-GameController==6.2.1 -pyobjc-framework-GameKit==6.2.1 -pyobjc-framework-GameplayKit==6.2.1 -pyobjc-framework-ImageCaptureCore==6.2.1 -pyobjc-framework-IMServicePlugIn==6.2.1 -pyobjc-framework-InputMethodKit==6.2.1 -pyobjc-framework-InstallerPlugins==6.2.1 -pyobjc-framework-InstantMessage==6.2.1 -pyobjc-framework-Intents==6.2.1 -pyobjc-framework-IOSurface==6.2.1 -pyobjc-framework-iTunesLibrary==6.2.1 -pyobjc-framework-LatentSemanticMapping==6.2.1 -pyobjc-framework-LaunchServices==6.2.1 -pyobjc-framework-libdispatch==6.2.1 -pyobjc-framework-LinkPresentation==6.2.1 -pyobjc-framework-LocalAuthentication==6.2.1 -pyobjc-framework-MapKit==6.2.1 -pyobjc-framework-MediaAccessibility==6.2.1 -pyobjc-framework-MediaLibrary==6.2.1 -pyobjc-framework-MediaPlayer==6.2.1 -pyobjc-framework-MediaToolbox==6.2.1 -pyobjc-framework-Metal==6.2.1 -pyobjc-framework-MetalKit==6.2.1 -pyobjc-framework-ModelIO==6.2.1 -pyobjc-framework-MultipeerConnectivity==6.2.1 -pyobjc-framework-NaturalLanguage==6.2.1 -pyobjc-framework-NetFS==6.2.1 -pyobjc-framework-Network==6.2.1 -pyobjc-framework-NetworkExtension==6.2.1 -pyobjc-framework-NotificationCenter==6.2.1 -pyobjc-framework-OpenDirectory==6.2.1 -pyobjc-framework-OSAKit==6.2.1 -pyobjc-framework-OSLog==6.2.1 -pyobjc-framework-PencilKit==6.2.1 -pyobjc-framework-Photos==6.2.1 -pyobjc-framework-PhotosUI==6.2.1 -pyobjc-framework-PreferencePanes==6.2.1 -pyobjc-framework-PushKit==6.2.1 -pyobjc-framework-Quartz==6.2.1 -pyobjc-framework-QuickLookThumbnailing==6.2.1 -pyobjc-framework-SafariServices==6.2.1 -pyobjc-framework-SceneKit==6.2.1 -pyobjc-framework-ScreenSaver==6.2.1 -pyobjc-framework-ScriptingBridge==6.2.1 -pyobjc-framework-SearchKit==6.2.1 -pyobjc-framework-Security==6.2.1 -pyobjc-framework-SecurityFoundation==6.2.1 -pyobjc-framework-SecurityInterface==6.2.1 -pyobjc-framework-ServiceManagement==6.2.1 -pyobjc-framework-Social==6.2.1 -pyobjc-framework-SoundAnalysis==6.2.1 -pyobjc-framework-Speech==6.2.1 -pyobjc-framework-SpriteKit==6.2.1 -pyobjc-framework-StoreKit==6.2.1 -pyobjc-framework-SyncServices==6.2.1 -pyobjc-framework-SystemConfiguration==6.2.1 -pyobjc-framework-SystemExtensions==6.2.1 -pyobjc-framework-UserNotifications==6.2.1 -pyobjc-framework-VideoSubscriberAccount==6.2.1 -pyobjc-framework-VideoToolbox==6.2.1 -pyobjc-framework-Vision==6.2.1 -pyobjc-framework-WebKit==6.2.1 -pyttsx3==2.88 +PyScreeze==0.1.28 +pyttsx3==2.90 +pytube==11.0.1 +pytweening==1.0.4 +pywin32==302 ratelim==0.1.6 -requests==2.24.0 -six==1.15.0 -soupsieve==2.0.1 +requests==2.26.0 +six==1.16.0 +soupsieve==2.2.1 SpeechRecognition==3.8.1 -urllib3==1.25.9 +urllib3==1.26.7 wikipedia==1.4.0 From 6e9a10737695a7a148767ddd7e4125ebdc103e01 Mon Sep 17 00:00:00 2001 From: Curiouspaul1 <170408025@live.unilag.edu.ng> Date: Mon, 11 Oct 2021 06:15:32 +0100 Subject: [PATCH 3/6] updated helpers --- PyAudio-0.2.11-cp38-cp38-win_amd64.whl | Bin 0 -> 112483 bytes helpers.py | 25 ++++++++++++++-- jarvis.py | 38 ++++++++----------------- 3 files changed, 35 insertions(+), 28 deletions(-) create mode 100644 PyAudio-0.2.11-cp38-cp38-win_amd64.whl diff --git a/PyAudio-0.2.11-cp38-cp38-win_amd64.whl b/PyAudio-0.2.11-cp38-cp38-win_amd64.whl new file mode 100644 index 0000000000000000000000000000000000000000..4842e137f50827ddb6d3b1be04a7b8e867077c8d GIT binary patch literal 112483 zcmV(-K-|AjO9KQH000080M(PmQcl?v`RI%R001ll0384T0AFx#a&%#JWNB|MV{kJ# zEq7^dUtw)zHZ(49d1TzZeS8yD);OLtNeR$0K^ut*64$tvg>|b%Z8x%J+6hb`g|33s zH$bX9_>Pc3k&0j%=U^Y$NGS8n{;o*7cU2d>KE^;7r3b;07dr@l|m8>hC=_3f#< z=(=|5Ubtrb!N|9M>U&hj`tqr8oxf<~)B|*Vo65~!^mnRf{-SmI)nCr9we)=RedW`! z{hnhi^_xuhEXp+9ob%QcBdx>qBX{47eh!l_!(=+a)9$$l?j3Zyz>I(K9+EQkGRD<3 z!@_}0ucw%eLdNCXXMS6{Bg1qLTvx+&7&cI9F`dMhc^1?7%hEbL#bT<-K)`0027ce% z!F!WAeV`d8d**j$H(edNw;}}Bzulyd6UT1tQ75#1^~`(j4&7}sslVlQntlgYDWh9H zAN;?XXEXV(gFhYcei&TeKPO+^)iZcT8Y7Gq8!=^C&aH3eteH4@1QUP_!rt`b^X0qu z!ABq?!Dxy;7rE!;EBbCo{Qv8pKff->-j@n(`TZ=W(9fbR6+KeDD{)s~!6@5i- zsq1l@(m%hhvG%LIP$Km{!0MFjXAWeT6z6Z@uN=$%Rd0()X02i^PK~Tx`B-s=DV5)M ziyS%Pj*N(8!<@-%U$}2=2h=D>Ho5O;l%xCM`P=04!b1P`SGmGRWhOebQg^g2?2uV8 z{I=42S)1aDoHVaB@6$9vs^?|4b^piP11LdT0HthbHr#6+Hkoj(qn2RY{dhw#biv=i zT4iQ?CkqANJHj2`r7wHW419brp86 zEdY0ww%W7ZCLl7R5c7wwl*?_yc-Bk2w#(q|@e5?u3`6OILt$CXOdQzA=Q|xfkrAi* z8s(4lHOha~H&uR1U!%PHyye$o`L)*$ZsojE{D|6a6rvGK+Q;Bj+&kz z8}ta=m$1eFGf7N#iQbmV{^HOUtsxMpvy0xg%EN$gaDDt_w5{SRxx7IxZwWAKqs)9T zFV<#kCfXt_y8`H-Q00Wb3+o+MnM{#W1BJzBVR6Xi^>WO)?+A2l$&eoz(U;F9Ti}dT&`gN>+oupr<>DSr%b*X;+qkjF9etlcNZr87! z`Zd$9x1(QwtY5F!uOs#At@?Gge*K+(eN(@_r(gf6U#}jizb{HlugSmAWb(qV7=B~m zcMJUPfL}TM9)RC0_|1b~1bz&DPr>gG@Ou${e}Uf{@LLbRM)+-o-!Ay=huQP)tX`D|18$-|14?vZ^!;Rfii>~I>E9d!2;@3AWW?5L6C?N z?F32`fnwncIq{1H@}hM?00dCeMo#~tZ9tWN&Z$zf;BRL2(K|Fw4Wd*^fZd;~rS# zm%vQl-iu~B2s2H5CsSl5OM}jMYBTqBCqOWMtWRPsMwJq?4ThxrI)Aio{-rW=_QncX zAE_{q6>?~Ga-;!>OI_uWT3e60@E`GuJZAee6KP@S0(K$>O5dlK;=t= z@W-tV&N7+u_XlGm{#dWtI?AXI^RE#G`%KCDniZQ5(&gm=mIJ7?MY|b# zdo>ld4W
{kX2f;(lD1*L$B(^JV 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

*5$FjeM@;%x3~178J8@*D3^?` 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 literal 0 HcmV?d00001 diff --git a/helpers.py b/helpers.py index 0d62076..677b525 100644 --- a/helpers.py +++ b/helpers.py @@ -3,16 +3,17 @@ import psutil import pyjokes import speech_recognition as sr -import datetime +import json import requests import geocoder +from difflib import get_close_matches engine = pyttsx3.init() voices = engine.getProperty('voices') engine.setProperty('voice', voices[0].id) g = geocoder.ip('me') - +data = json.load(open('data.json')) def speak(audio) -> None: engine.say(audio) @@ -71,3 +72,23 @@ def weather(): speak('Wind speed is ' + str(wind['speed']) + ' metre per second') speak('Temperature: ' + str(main['temp']) + 'degree celcius') speak('Humidity is ' + str(main['humidity'])) + + +def translate(word): + word = word.lower() + if word in data: + speak(data[word]) + elif len(get_close_matches(word, data.keys())) > 0: + x = get_close_matches(word, data.keys())[0] + speak('Did you mean ' + x + + ' instead, respond with Yes or No.') + ans = takeCommand().lower() + if 'yes' in ans: + speak(data[x]) + elif 'no' in ans: + speak("Word doesn't exist. Please make sure you spelled it correctly.") + else: + speak("We didn't understand your entry.") + + else: + speak("Word doesn't exist. Please double check it.") diff --git a/jarvis.py b/jarvis.py index 6102ae2..e21570c 100644 --- a/jarvis.py +++ b/jarvis.py @@ -58,30 +58,8 @@ def sendEmail(self, to, content) -> None: server.sendmail('email', to, content) server.close() - def execute_query(self): - query = self.takeCommand() - - - -if __name__ == '__main__': - - if platform == "linux" or platform == "linux2": - chrome_path = '/usr/bin/google-chrome' - - elif platform == "darwin": - chrome_path = 'open -a /Applications/Google\ Chrome.app' - - elif platform == "win32": - chrome_path = 'C:\Program Files (x86)\Google\Chrome\Application\chrome.exe' - else: - print('Unsupported OS') - exit(1) - - webbrowser.register( - 'chrome', None, webbrowser.BackgroundBrowser(chrome_path)) - wishMe() - while True: - query = takeCommand().lower() + def execute_query(self, query): + # TODO: make this more concise if 'wikipedia' in query: speak('Searching Wikipedia....') query = query.replace('wikipedia', '') @@ -89,7 +67,6 @@ def execute_query(self): speak('According to Wikipedia') print(results) speak(results) - elif 'youtube downloader' in query: exec(open('youtube_downloader.py').read()) @@ -234,8 +211,17 @@ def execute_query(self): speak('What should I say?') content = takeCommand() to = 'email' - sendEmail(to, content) + self.sendEmail(to, content) speak('Email has been sent!') except Exception as e: speak('Sorry sir, Not able to send email at the moment') + + + +if __name__ == '__main__': + bot_ = Jarvis() + bot_.wishMe() + while True: + query = takeCommand().lower() + bot_.execute_query(query) From fc84b7a93f0e07bf3e292a2927b76ea16612023b Mon Sep 17 00:00:00 2001 From: Curiouspaul1 <170408025@live.unilag.edu.ng> Date: Mon, 11 Oct 2021 06:16:04 +0100 Subject: [PATCH 4/6] updated requirements --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 3a2adb5..6ca0268 100644 --- a/requirements.txt +++ b/requirements.txt @@ -14,7 +14,7 @@ loc==0.0.2 MouseInfo==0.1.3 Pillow==8.3.2 psutil==5.8.0 -PyAudio @ file:///C:/Users/Paulo/Documents/projects/hacktoberfest/J.A.R.V.I.S/PyAudio-0.2.11-cp38-cp38-win_amd64.whl +PyAudio PyAutoGUI==0.9.53 PyGetWindow==0.0.9 pyjokes==0.6.0 From de5f775c9663e5eafc0972141ab39686aa2d6363 Mon Sep 17 00:00:00 2001 From: Curiouspaul1 <170408025@live.unilag.edu.ng> Date: Mon, 11 Oct 2021 06:22:39 +0100 Subject: [PATCH 5/6] update on gitignore --- .gitignore | 144 +++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 141 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 6297b29..7831c2e 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,142 @@ -*env/ -*__pycache__/ -*.env +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +share/python-wheels/ +*.egg-info/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.nox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +*.py,cover +.hypothesis/ +.pytest_cache/ +cover/ + +# Translations +*.mo +*.pot + +# Django stuff: +*.log +local_settings.py +db.sqlite3 +db.sqlite3-journal + +# Flask stuff: +instance/ +.webassets-cache + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +.pybuilder/ +target/ + +# Jupyter Notebook +.ipynb_checkpoints + +# IPython +profile_default/ +ipython_config.py + +# pyenv +# For a library or package, you might want to ignore these files since the code is +# intended to run in multiple environments; otherwise, check them in: +# .python-version + +# pipenv +# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. +# However, in case of collaboration, if having platform-specific dependencies or dependencies +# having no cross-platform support, pipenv may install dependencies that don't work, or not +# install all needed dependencies. +#Pipfile.lock + +# PEP 582; used by e.g. github.com/David-OConnor/pyflow +__pypackages__/ + +# Celery stuff +celerybeat-schedule +celerybeat.pid + +# SageMath parsed files +*.sage.py + +# Environments +.env +.venv +env/ +venv/ +ENV/ +env.bak/ +venv.bak/ + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ +.dmypy.json +dmypy.json + +# Pyre type checker +.pyre/ + +# pytype static type analyzer +.pytype/ + +# Cython debug symbols +cython_debug/ + +# IDE/Editor +.vscode +.idea \ No newline at end of file From 2114cebc697ce10f1190808bcc0c6acc6426f7f4 Mon Sep 17 00:00:00 2001 From: Curiouspaul1 <170408025@live.unilag.edu.ng> Date: Mon, 11 Oct 2021 06:36:57 +0100 Subject: [PATCH 6/6] updated readme, showing how to use requirements.txt to install dependencies --- README.md | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index aad46fa..f3d67c0 100644 --- a/README.md +++ b/README.md @@ -30,17 +30,12 @@

Required Packages

``` -pip3 install SpeechRecognition -pip3 install jsonlib -pip3 install pyttsx3 -pip3 install PyAudio -pip3 install geocoder -pip3 install loc -pip3 install wikipedia -pip install psutil -pip install pyjokes - +pip install -r requirements.txt +``` +> _ To install PyAudio on windows head over to https://www.lfd.uci.edu/~gohlke/pythonlibs/#pyaudio and download the .whl for your machine and run the installation as shown below, then install the remaining dependencies from the requirements.txt file. You may remove pyAduio from the requirements file if it interrupts your installation (its there for unix users) +```bash +pip install PyAudio‑0.2.11‑cp‑cpm‑win_amd.whl ``` ### On Ubuntu based Linux distribution you need to install the following packages, so that the code works: