Giter Site home page Giter Site logo

bolisettysujith / j.a.r.v.i.s Goto Github PK

View Code? Open in Web Editor NEW
191.0 4.0 183.0 22.67 MB

A voice assistant ๐Ÿ—ฃ๏ธ which can be used to interact with your computer ๐Ÿ’ป and controls your pc operations ๐ŸŽ›๏ธ

Home Page: https://bolisettysujith.github.io/J.A.R.V.I.S/

License: MIT License

Python 100.00%
python speech-recognition jarvis-ai voice-assistant youtube-downloader pyqt5-gui pyttsx3 jarvis whatsapp-messages youtube-songs email-sender screenrecorder voicerecorder covid-19-india instagram-photo-downloader pdf-reader news-reader location-tracker py2exe hacktoberfest

j.a.r.v.i.s's Introduction

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

    Unfortunately there is no such thing as magic, and neither we, nor anyone else, have the ability to derive a phoneโ€™s location from an input string.

    Here is what is actually happening:

    The phone number is entered and a library is used to turn the country calling code into the name of the country. For example numbers starting with +91 becomes India, +880 is Bangladesh, +34 is Spain, etc.

    The country name is then sent to our geocoding API as a forward geocoding request (placename to coordinates). We then return the coordinates of the center of the country. For example we turn India into 22.3511148, 78.6677428, roughly in the middle of Uttar Pradesh.

    People get confused and angry as to why the coordinates are not actually where the phone is physically located.

    Reference: We can NOT convert a phone number into a location. Sorry.

  • 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/<your-github-username>/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 to launch Jarvis, use the following commands:

    GUI Version of Jarvis

    $ python Jarvis.py
    

    Terminal Version of Jarvis

    $ python JarvisWithoutGUI.py
    

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 please read the CONTRITUTING.md file.

Want to run JARVIS as an Application?

Read this, to convert a .py file to .exe file.

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.

j.a.r.v.i.s's People

Contributors

bolisettysujith avatar dependabot[bot] avatar iampranavdhar avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

j.a.r.v.i.s's Issues

Bug: Not Replying Back and UI Bug

When I run the cmd python JARVIS.py It Keeps says Listening reputedly even after I press q As said in ERROR.md
hear a screenshot
Screenshot_20230112_075702

Screenshot_20230112_075651

Also When I press Run All gif files disappear
screenshots
before Run
Screenshot_20230112_075619
After Run
Screenshot_20230112_075638

Please Help me if you can

bug

if i run the code python opens a new tab named main and i get half of screen i cannot see full screen so i cant run jarvis
image

Bug: requirements.txt

Describe the bug
A clear and concise description of what the bug is.

To Reproduce
Steps to reproduce the behavior:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

Current behavior
A clear and concise description of what issues the bug causing.

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

  • OS: [e.g. iOS]
  • Browser [e.g. chrome, safari]
  • Version [e.g. 22]

Additional context
Add any other context about the problem here.

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.

how can i remove the gui?

Describe the bug
A clear and concise description of what the bug is.

To Reproduce
Steps to reproduce the behavior:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

Current behavior
A clear and concise description of what issues the bug causing.

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

  • OS: [e.g. iOS]
  • Browser [e.g. chrome, safari]
  • Version [e.g. 22]

Additional context
Add any other context about the problem here.

feat: QR code Generator

Write a program in a way that JARVIS should create a QR code image, by entering the text/link as an input.

Add Interaction commands

At present, there are fewer interaction commands in JARVIS so try to add more interaction commands

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.

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๐Ÿ˜

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.

Please help me i am getting an error like this

File "c:\Users\acer\Desktop\Jarvis\J.A.R.V.I.S\JARVIS.py", line 1086, in init
self.ui = Ui_JarvisUI(path=current_path)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: Ui_JarvisUI() takes no arguments

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.

In your terminal version i cant hear any audio of jarvis speaking

Describe the bug
A clear and concise description of what the bug is.

To Reproduce
Steps to reproduce the behavior:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

Current behavior
A clear and concise description of what issues the bug causing.

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

  • OS: [e.g. iOS]
  • Browser [e.g. chrome, safari]
  • Version [e.g. 22]

Additional context
Add any other context about the problem here.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.