A voice assistant which can be used to interact with your computer and controls your pc operations

Overview

JARVIS

BolisettySujith BolisettySujith

BolisettySujith Contrinutors License

Introduction πŸ‘¨β€πŸ’»

It is a voice assistant which can be used to interact with your computer and also you have been seeing it in Iron man movies, but this JARVIS is not that much advanced as shown in movies.

Built with: PythonPython

  • Demo video for JARVIS is available here

Cool functionalities of JARVIS 😎 :)

I have wrote code which you can use JARVIS in the following ways :

  • It can tell count of Covid-19 cases for each state in India
  • It can do Screen Recording with voice recording stuff.
  • It can also do voice recording
  • It can access your mobile camera
  • It can access your web camera
  • It can find the location of a phone number
  • It can read pdf's
  • It can work as a telephone dictionary(Add contacts, search contacts)
  • It can generate qr codes for Links/anyText.
  • It can check/find your Internet speed
  • It can tell your IP address
  • It can tell the latest news
  • It can check the system condition
  • It can send gmails
  • It can send whatsapp messages to Individual & group chats
  • It can play youtube songs
  • It can download youtube songs
  • It can download instagram profiles
  • It can find/tell your current location where ever you are
  • It can take screenshots with a custom filename
  • It can tell current time
  • It can tell current day
  • It can tell random progrmamming jokes
  • It can also tell your schedule for each day
  • It can be silent for a certain number of time if we mention how much time we want it to be silent
  • It can search in wikipedia and tell about it in 5 lines
  • It can tell procedure/instructions how to make something(Eg:How to make a cake)
  • It can search for information in browser which we want
  • It can control system volumes
  • It can control system power activities(Eg: shutdown, restart, sleep)
  • It can play music file in a particular directory where the songs are present
  • It can open your social media and open-source accounts
  • It can open your college meeting accounts
  • It can open your OTT platforms accounts
  • It can open your all google apps
  • It can open presentation tools like canva, google slide
  • It can open shopping websites
  • It can open all the URL links
  • It can open/close all the pc applications(NOTE: give correct path based on your OS)
  • It can sleep until you say wake up
  • Finally It can interact with you and you can also add more commands if you want 😎

NOTE: Before running the code you must make sure you have all the modules installed in your python version(NOTE: python version can be >=3.6).

These are the following modules used in JARVIS πŸ“š :

SpeechRecognisation | PyAudio | pyttsx3 | pywhatkit | datetime | wikipedia | pyjokes | cv2 | cv2 tools | requests | smtplib | psutil | random | instaloader | PyAutoGUI | PyPDF2 | bs4 | PyQt5 | pywikihow | speed test | pytube | numpy | urllib | covid | phonenumbers | folium | opencage | pillow | Pywave | win32api | mscvrt

API keys πŸ”‘

To run this project you should need some API key's for reading news, for finding phone number location. Register for your API key by clicking the following

Note : supported OS : Windows, working on the making the JARVIS for Linux, but it many take some time.

Installation πŸ’»

  • You need to first fork this repository and clone the repository to your local system

    git clone https://github.com/ /J.A.R.V.I.S.git

  • Make sure to install all the required python modules mentioned above or you can simply install them by

    pip install -r requirements.txt

    Note: For any errors while installing the python modules refer ERRORS.md because I got some errors while installing and using them.

  • Add the correct system paths in JARVIS.py to open the system applications

  • Add your gmail id and password to send emails(line:797,798)

  • Make sure you have registerd in NewsAPI and replace the apiKey=YOUR_NEWS_API_KEY with your API key(Line: 852) and in Open cage and replace the API_key = "_OPEN_CAGE_GEOCODE_API_KEY_" with your API key(PhoneNumber.py(lineNo: 13))

  • For using mobile camera you need to first install an app in mobile called IP Webcam after installing go to START SERVER it will open your mobile camara at the bottom of the screen you can see IPv4 there you can find the IP address and replace _IP_Webcam_IP_address_ with the IP address in JARVIS.py MobileCamera function(line: 332)

  • Add the correct system paths to gifs or for background images in JarvisUi.py and JARVIS.py. If you got any elements missing(RED SCREEN) refer ERRORS.md file.

  • Finally run the python JARVIS.py file

That's it #Enjoy speaking with your computer friend 😁

Demo video for JARVIS is available here

FINAL GUI of JARVIS 😎

JARVIS

Note: For any errors while installing the python modules refer ERRORS.md because I got some errors while installing and using them.

Motivation for this project πŸ™ƒ

Due to covid19 in my house I'm in a seperate room, without talking with anyone, so thought to talk with my laptop which I will use everyday, and came up with this project.

How to Contribute πŸ€”

To contribute to this project you can FORK && clone 🍴 the project as mentioned in Installation, You can contribute on the following:

  • Add Interation commands
    • If you want to add Interation commands you need to add atleast 5 interation commands.
  • Update current GUI
    • Feel free to change the GUI if u have any new design ideas.
  • Add more feature
    • There are many things that we can do with python. So I'm very happy to accept any such type of features.
  • Make the Project OS independent
    • At present this project is supported to windows only, so we want to make it OS independent(Linux)
  • Add your name in the Contributors.md file.

Finally, make a PR ✍ on the features you are adding, also If u are changing any GUI I would recommend you to attach any Screenshots/Video regarding that changes, it would be very helpful to me while reviewing.

Future plans πŸ˜‡

In the present JARVIS GUI we cannot see the commands running but they are visible on the terminal, so plan to bring up the commands to display on the GUI.

If you like the repository FORK && clone 🍴 the repository, start using JARVIS, and don't forget to ⭐ the repository.

Comments
  • Fix: Add error handling if there is no music directory

    Fix: Add error handling if there is no music directory

    What kind of change does this PR introduce ?

    Add brief description about what problem you are solving. If there is no folder called music the program couldn't able to handle the exception and leading to the termination of the whole program.

    Issue Number:

    Add related issue number here.

    closes #(issue)

    Did you add tests for your code?

    Yes or No. Note: Add unit tests or automation tests for your code. Yes

    Snapshots/Videos

    Add snapshots or videos wherever possible.

    Does this PR introduce a breaking change?

    Make sure this change does not break existing code functionality. It avoids getting the whole program terminated when the user uses music command.

    Other information

    Add extra information about this PR here

    Checklist

    • [X] Tested Changes
    • [X] No Errors
    • [X] Make sure this change does not break existing code functionality
    opened by BolisettySujith 0
  • Make the code OS independent

    Make the code OS independent

    The present JARVIS code will successfully run on windows, but while running in other OS there are some other errors occurring. So the main aim is to make the JARVIS code OS independent.

    bug help wanted Medium 
    opened by BolisettySujith 0
  • misleading feature - phone tracking

    misleading feature - phone tracking

    Ed from OpenCage here.

    OpenCage can not be used to determine the location of a phone just based on phone number. Please see our blog post about this.

    Please can you clarify this in the README (happy to submit a pull request if you like)? Many people believe this service can track a phone just based on number, which is just not true.

    feature 
    opened by freyfogle 1
  • Feat: Faster Install and Usage via .exe and .deb

    Feat: Faster Install and Usage via .exe and .deb

    Is your feature request related to a problem? Please describe.

    Every user that wants to use Cortona or Google Assistant or Alexa (top 3 AI projects today) doesn't need to go through the painful process of building it for themselves instead they should be able to install and try it in one click.

    Describe the solution you'd like

    One way is to create .exe files and release them with release section on github.

    Describe alternatives you've considered

    An alternative to try out J.A.R.V.I.S can be to use Brython and run it in the browser.

    feature 
    opened by vednig 1
  • Add more interactive commands

    Add more interactive commands

    To communicate or just to have a friendly talk with Jarvis there are a few interactive commands at present. This issue is mainly focused on the interaction with Jarvis😁

    Interactive good first issue 
    opened by BolisettySujith 0
  • Display the commands on GUI of JARVIS

    Display the commands on GUI of JARVIS

    We can see at now the commands are visible on the terminal but not on the GUI of the JARVIS. The aim is to make the commands visible on the GUI of the JARVIS.

    Medium 
    opened by BolisettySujith 0
A simple voice detection system which can be applied practically for designing a device with capability to detect a baby’s cry and automatically turning on music

Auto-Baby-Cry-Detection-with-Music-Player A simple voice detection system which can be applied practically for designing a device with capability to d

null 2 Dec 15, 2021
voice assistant made with python that search for covid19 data(like total cases, deaths and etc) in a specific country

covid19-voice-assistant voice assistant made with python that search for covid19 data(like total cases, deaths and etc) in a specific country installi

Miguel 2 Dec 5, 2021
Jarvis From Basic to Advance - make a voice assistant similar to JARVIS (in iron man movie)

JARVIS (Basic to Advance) This was my attempt to make a voice assistant similar to JARVIS (in iron man movie) Let's be honest, it's not as intelligent

codesempai 17 Dec 25, 2022
This is my voice assistant Patric!

voice-assistant This is my voice assistant Patric! You can add can add commands and even modify his name Indice How to use Installation guide How to u

Norbert Gabos 1 Jun 28, 2022
controls volume using hand gestures

controls volume using hand gestures

null 1 Oct 11, 2021
This is a realtime voice translator program which gets input from user at any language and converts it to the desired language that the user asks

This is a realtime voice translator program which gets input from user at any language and converts it to the desired language that the user asks ...

Mohan Ram S 1 Dec 30, 2021
A bot that can play music on Telegram Group and Channel Voice Chats

DaisyXmusic ❀ is the best and only Telegram VC player with playlists, Multi Playback, Channel play and more

TeamOfDaisyX 20 Jun 11, 2021
DaisyXmusic ❀ A bot that can play music on Telegram Group and Channel Voice Chats

DaisyXmusic ❀ is the best and only Telegram VC player with playlists, Multi Playback, Channel play and more

TeamOfDaisyX 34 Oct 22, 2022
This bot can stream audio or video files and urls in telegram voice chats

Voice Chat Streamer This bot can stream audio or video files and urls in telegram voice chats :) ?? Follow me and star this repo for more telegram bot

WiskeyWorm 4 Oct 9, 2022
Welcome to Nexus. Your personal virtual assistant

AI Voice Assistant Welcome to Nexus voice assistant Description Have you ever heard of voice assistants like Cortana, Siri, Google assistant, and Alex

Mustafah Zacs 1 Jan 10, 2022
Play any song directly into your group voice chat.

Telegram VCPlayer Bot Play any song directly into your group voice chat. Official Bot : VCPlayerBot | Discussion Group : VoiceChat Music Player Suppor

Shubham Kumar 50 Nov 21, 2022
A Simple Script that will help you to Play / Change Songs with just your Voice

Auto-Spotify using Voice Recognition A Simple Script that will help you to Play / Change Songs with just your Voice Explore the docs Β» Table of Conten

Mehul Shah 1 Nov 21, 2021
Open-Source bot to play songs in your Telegram's Group Voice Chat. Powered by @Akki_ThePro

VcPlayer Telegram Voice-Chat Bot [PyTGCalls] ⇝ Requirements β‡œ Account requirements A Telegram account to use as the music bot, You cannot use regular

Akki ThePro 2 Dec 25, 2021
DeepSpeech is an open source embedded (offline, on-device) speech-to-text engine which can run in real time on devices ranging from a Raspberry Pi 4 to high power GPU servers.

Project DeepSpeech DeepSpeech is an open-source Speech-To-Text engine, using a model trained by machine learning techniques based on Baidu's Deep Spee

Mozilla 20.8k Jan 3, 2023
Mina - A Telegram Music Bot 5 mandatory Assistant written in Python using Pyrogram and Py-Tgcalls

Mina - A Telegram Music Bot 5 mandatory Assistant written in Python using Pyrogram and Py-Tgcalls

null 3 Feb 7, 2022
Stevan KZ 1 Oct 27, 2021
This is an OverPowered Vc Music Player! Will work for you and play music in Voice Chatz

VcPlayer This is an OverPowered Vc Music Player! Will work for you and play music in Voice Chatz Telegram Voice-Chat Bot [PyTGCalls] ⇝ Requirements β‡œ

null 1 Dec 20, 2021
Xbot-Music - Bot Play Music and Video in Voice Chat Group Telegram

XBOT-MUSIC A Telegram Music+video Bot written in Python using Pyrogram and Py-Tg

Fariz 2 Jan 20, 2022
F.R.I.D.A.Y. ----- Female Replacement Intelligent Digital Assistant Youth

F.R.I.D.A.Y. Female Replacement Intelligent Digital Assistant Youth--Jarvis-- the virtual assistant made by python Overview This is a virtual assistan

JIB - Just Innovative Bro 4 Feb 26, 2022