Professional Documents
Culture Documents
Import Import As Import Import Import Import Import Import Import Import As Import Import Import Import
Import Import As Import Import Import Import Import Import Import Import As Import Import Import Import
Import Import As Import Import Import Import Import Import Import Import As Import Import Import Import
pyttsx3 #pip install pyttsx3
import speech_recognition as sr #pip install speechRecognition
import datetime
import wikipedia #pip install wikipedia
import webbrowser
import os
import smtplib
import sys
import wmi
import tkinter as tk
import pyjokes
#import psutil
import ctypes
#import pygame
import re
# import required modules
import requests, json
engine = pyttsx3.init('sapi5')
voices = engine.getProperty('voices')
# print(voices[1].id)
engine.setProperty('voice', voices[1].id)
#initialization of pygame
#pygame.init()
#screen = pygame.display.set_mode((800,600))
#running = True
#while running:
# for event in pygame.event.get():
# if event.type == pygame.QUIT:
# running=False
def speak(audio):
engine.say(audio)
engine.runAndWait()
def gooffline():
speak('ok sir')
speak('As you wish')
speak('closing the program')
speak('going offline')
quit()
def shutdown():
speak('understood sir')
speak('connecting to command prompt')
speak('shutting down your computer')
os.system('shutdown -s')
def gooff():
os.system('shutdown -s')
def brightness(voice_note):
if 'decrease ' in voice_note:
print ('ok listen.......')
dec = wmi.WMI(namespace='wmi')
methods = dec.WmiMonitorBrightnessMethods()[0]
methods.WmiSetBrightness(30, 0)
elif 'increase ' in voice_note:
print ('ok listen.......')
ins = wmi.WMI(namespace='wmi')
methods = ins.WmiMonitorBrightnessMethods()[0]
methods.WmiSetBrightness(100, 0)
#def confimation():
# nam = input()
# speak("what is your name")
# if 'steve' in nam or 'stephen' in nam:
# speak("welcame mister steve")
# elif 'satish'in nam:
# speak("welcome mister satish")
# elif 'tina'in nam:
# speak("welcome misses tina")
# elif''in nam:
# gooff()
def wishMe():
hour = int(datetime.datetime.now().hour)
if hour>=0 and hour<12:
speak("Good Morning!")
elif hour>=12 and hour<18:
speak("Good Afternoon!")
else:
speak("Good Evening!")
speak("I am friday ,Sir Please tell me how may I help you")
def takeCommand():
#It takes microphone input from the user and returns string output
r = sr.Recognizer()
with sr.Microphone() as source:
print("Listening...")
r.pause_threshold = 1
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 sendEmail(to, content):
server = smtplib.SMTP('smtp.gmail.com', 587)
server.ehlo()
server.starttls()
server.login('stephenchaudhary@peterspanchgani.org', 'A@1234567')
server.sendmail('stephenchaudhary@peterspanchgani.org', to, content)
server.close()
if __name__ == "__main__":
#confimation()
wishMe()
while True:
# if 1:
query = takeCommand().lower()
# Logic for executing tasks based on query
if 'wiki' in query or 'how' in query or 'who' in query:
speak('Searching...')
query = query.replace("wikipedia", "")
results = wikipedia.summary(query, sentences=2)
speak("According to Wikipedia")
print(results)
speak(results)
elif 'open youtube' in query:
webbrowser.open("youtube.com")
elif 'open google' in query:
webbrowser.open("google.com")
elif 'open stackoverflow' in query:
webbrowser.open("stackoverflow.com")
elif 'open gmail' in query:
webbrowser.open("gmail.com")
elif'open chrome' in query:
chromepath = "C:\\Program Files (x86)\\Google\\Chrome\\
Application\\chrome.exe"
os.startfile(chromepath)
# Music
# Time
elif 'time' in query:
strTime = datetime.datetime.now().strftime("%H:%M:%S")
speak(f"Sir, the time is {strTime}")
elif 'open code' in query:
codePath = "E:\\Sublime Text 3"
os.startfile(codePath)
elif 'email' in query:
try:
speak("What should I say?")
content = takeCommand()
to = "stephenchaudhary@peterspanchgani.org"
sendEmail(to, content)
speak("Email has been sent!")
except Exception as e:
print(e)
speak("Sorry mister steve . I am not able to send this email")
elif 'hello' in query:
speak('Hello Sir')
elif'shutdown' in query:
shutdown()
elif'down' in query or 'abort' in query or 'stop' in query:
gooffline()
elif 'joke' in query:
speak(pyjokes.get_joke())
print(pyjokes.get_joke())
else:
speak(" City Not Found ")
#elif 'brightness' in query:
# brightness()