Jarvis v1.0

import pyautogui

import speech_recognition as sr

import os

import sys

import webbrowser

import keyboard

import keyboard as keyb

import gtts

import pyttsx3

import pyautogui as pg

import time


def talk(words):

 print(words) # Дополнительно выводим на экран


engine = pyttsx3.init()



engine.setProperty('rate', 180)

engine.setProperty('volume', 10)



engine.say("Здраствуйте, как я могу вам помочь?")


engine.runAndWait()




#pip install pyttsx3 pypiwin32


talk("Здраствуйте, как я могу вам помочь?")


##"""

##  Функция command() служит для отслеживания микрофона.

##  Вызывая функцию мы будет слушать что скажет пользователь,

##  при этом для прослушивания будет использован микрофон.

##  Получение данные будут сконвертированы в строку и далее

##  будет происходить их проверка.

##"""

def command():


 r = sr.Recognizer()



 with sr.Microphone() as source:


   print("Слушаю")


   r.pause_threshold = 0.5


   r.adjust_for_ambient_noise(source, duration=1)


   audio = r.listen(source)


 try: # Обрабатываем все при помощи исключений

##    """

##    Распознаем данные из mp3 дорожки.

##    Указываем что отслеживаемый язык русский.

##    Благодаря lower() приводим все в нижний регистр.

##    Теперь мы получили данные в формате строки,

##    которые спокойно можем проверить в условиях

##    """

   zadanie = r.recognize_google(audio, language="ru-RU").lower()


   print("Вы сказали: " + zadanie)


 except sr.UnknownValueError:


   talk("Команда не распознана")

   zadanie = command()



 return zadanie


#(

def makeSomething(zadanie):


 if 'сайт' in zadanie:


   engine.say("Одну секунду")

   engine.runAndWait()

   # Указываем сайт для открытия

   url = 'https://www.innetgalaxy.com/'

   webbrowser.open(url)


 elif 'twitch' in zadanie:

   engine.say("Открываю")

   # Указываем сайт для открытия

   engine.runAndWait()

   url = 'https://www.twitch.tv/'

   webbrowser.open(url)


 elif 'шахматы' in zadanie:

   engine.say("Одну секунду")

   # Указываем сайт для открытия

   engine.runAndWait()

   url = 'https://www.chess.com/'

   webbrowser.open(url)


 elif 'новости' in zadanie:

   engine.say("Как пожелаете")

   # Указываем сайт для открытия

   engine.runAndWait()

   url = 'https://news.google.com/topics/CAAqKAgKIiJDQkFTRXdvSkwyMHZNR1ptZHpWbUVnSnlkUm9DVlVFb0FBUAE?hl=ru&gl=UA&ceid=UA%3Aru'

   webbrowser.open(url)


 elif 'гитхаб' in zadanie:

   engine.say("Открываю")

   # Указываем сайт для открытия

   engine.runAndWait()

   url = 'https://github.com/...'

   webbrowser.open(url)


 elif 'youtube' in zadanie:

   engine.say("Ок")

   engine.runAndWait()

   # Указываем сайт для открытия

   url = 'https://www.youtube.com/'

   webbrowser.open(url)


 elif 'музыка' in zadanie:

   engine.say("Ок")

   engine.runAndWait()

   # Указываем сайт для открытия

   os.system('"C:\\Users\\..."')

   engine.runAndWait()


 elif 'стоп' in zadanie:

   engine.say("Одну секунду")

   engine.say("Процесс завершен")

   engine.runAndWait()


   sys.exit()


 elif 'остановить программу' in zadanie:

   talk("Без вопросов")

   engine.say("Программа преостоновленна")

   engine.runAndWait()

   sys.exit()


 elif 'спокойной ночи' in zadanie:

   engine.say("Спокойной ночи Сэр")

   engine.runAndWait()

   sys.exit()


 elif 'имя' in zadanie:

   engine.say("Джарвис, версия 1.0")

   engine.runAndWait()


 elif 'спасибо' in zadanie:

   engine.say("Всегда пожалуйста")

   engine.runAndWait()


 elif 'доброе утро' in zadanie:

   engine.say("Доброе утро Сэр")

   engine.runAndWait()


 elif 'привет' in zadanie:

   engine.say("Здравствуйте")

   engine.runAndWait()


 elif 'добрый вечер' in zadanie:

   engine.say("Добрый вечер Сэр")

   engine.runAndWait()


 elif 'как дела' in zadanie:

   engine.say("Все как всегда - отлично")

   engine.runAndWait()


 elif 'Дискорд' in zadanie:

   engine.say("Запуск")

   os.system('C:\\Users\\...')

   engine.runAndWait()



 elif 'discord' in zadanie:

   engine.say("Запуск")

   os.system('C:\\Users\\...')

   engine.runAndWait()



 elif 'steam' in zadanie:

   engine.say("Запуск")

   os.system('C:\\Users\\...')

   engine.runAndWait()


 elif 'viber' in zadanie:

   engine.say("Запуск")

   os.system('C:\\Users\\...')

   engine.runAndWait()


 elif 'epic games' in zadanie:

   engine.say("Запуск")

   os.system('"C:\\Users\\..."')

   engine.runAndWait()


 elif 'google' in zadanie:

   engine.say("Ok")

   os.system('"C:\\Users\\..."')

   engine.runAndWait()


 elif 'диагностика' in zadanie:

   engine.say("Произвожу диагностику")

   engine.runAndWait()

   os.system('dir/s')


 elif 'сведения' in zadanie:

   engine.say("Имя Джарвис")

   engine.say("Версия 1.0")

   engine.say("Имя разработчика Николай Сергеевич")

   engine.say("Дата создания двадцать четвертое декабря две тысячи двадцать второго года")

   engine.runAndWait()


 elif 'диспетчер задач' in zadanie:

   engine.say("Сию секунду")

   engine.runAndWait()

   os.system('"C:\\Users\\..."')


 elif 'телеграмм' in zadanie:

   engine.say("Готово")

   engine.runAndWait()

   os.system('"C:\\Users\\..."')


 elif 'telegram' in zadanie:

   engine.say("Готово")

   engine.runAndWait()

   os.system('"C:\\Users\\..."')


#)


while True:

 makeSomething(command())