SAGE

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 32

DELHI PUBLIC SCHOOL DEHRADUN

SESSION 2023-24

COMPUTER SCIENCE
PYTHON PROJECT

Submitted by :-

(i) Parikshit Tyagi – XII A – Roll No. 18

(ii) Anant Rawat – XII B – Roll No. 5


DEPARTMENT OF COMPUTER SCIENCE
DELHI PUBLIC SCHOOL, DEHRADUN
____________________________________________
Certificate
This is to certify that the original and genuine content of this project
entitled “S.A.G.E” has been satisfactorily executed and prepared by
Anant Rawat and Parikshit Tyagi the students of class XII A and
XII B, under the direct supervision of Dr. Pooja Vashista (Subject
Teacher) for the academic session 2023-24. This bonafide work of
theirs have been submitted to Delhi Public School, Dehradun for
consideration in partial fulfilment of Computer Science Practical
Examination conducted by AISSCE, New Delhi
The project report is up to the expectation and a result of their efforts
and endeavor.

Internal Examiner External Examiner


Principal
ACKNOWLEDGEMENT

Project is like a bridge between theoretical and practical learning and


now on the accomplishment of this project successfully, we would
like to thank all the people who have been concerned with it and
bestowed upon us their blessings and the heart pledged support.

Primarily, we would like to thank God, who always guided us to work


on the right path of life. Without his grace this project could hot
become a reality. Next to him are our parents, to whom we are greatly
indebted for their love and encouragement to this stage.

We are feeling highly obliged in taking the opportunity to express our


special thanks and gratitude to our Respected Principal Sir, Mr. B. K.
Singh and Vice Principal Ma'am, Mrs. Sujata Singh, for their valuable
guidance, keen interest and encouragement.

We express our deep and sincere gratitude to my subject teacher Dr.


Pooja Vashista, whose guidance, encouragement, suggestions and
constructive criticism have contributed immensely to the evolution of
our ideas on the project.

At last, but not the least, we are thankful to all our teachers and
friends who have been always helped us and encouraged us
throughout the year. No more we have the words to express our
thanks, but our heart is still full of favours received from every
person.
Table Of Contents
SNO. Description Page No.
1 Certificate 1
2 Acknowledgement 2
3 Introduction 4
4 Modules Used 6
5 System Requrements 11
6 List of Functions 12

7 Output 29

8 Biblography
SAGE - Voice-Controlled Personal
Assistant

SAGE is an advanced voice-controlled personal assistant built in


Python. This powerful assistant leverages various Python modules
and functions to interact with users, provide information, and
automate tasks. In this spiral book, we will explore the modules and
functions that empower SAGE to be your virtual assistant.

SAGE is equipped to respond to a multitude of voice commands and


perform actions such as:
- Searching Wikipedia and providing detailed information.
- Conducting web searches on Google and YouTube.
- Managing web browser tabs, allowing you to open and navigate
websites effortlessly.
- Setting alarms to help you stay on schedule.
- Controlling YouTube video playback with commands like pause,
play, rewind, and mute.
- Launching applications such as Chrome, Notepad, and Command
Prompt.
- Executing system commands like taking screenshots and opening
new windows.
- Performing calculations with simple mathematical expressions.
- Providing your IP address information.
- Adjusting system volume to your preference.
- Playing music from Spotify, making it a capable music assistant.
- Scheduling and viewing meetings for efficient time management.
- Entertaining you with a collection of jokes and humor.
- And many more features, making SAGE a versatile personal
assistant that simplifies your tasks and adds convenience to your daily
routine.

Conclusion
SAGE Online is a highly capable voice-controlled personal assistant
that can simplify and enhance your daily tasks. Whether you need
information, automation, or entertainment, SAGE is at your service,
making it a valuable addition to your digital toolkit.
Modules Used :-

1. Pyttsx3 (Text-to-Speech Conversion):


This module is utilized to convert text into natural-sounding speech.
SAGE can communicate with users using synthesized voice.

2. Speech recognition (Voice Recognition):


SAGE's voice recognition capabilities are provided by this module. It
can understand spoken words, convert them to text, and act upon user
commands.

3. Datetime (Time Management):


The `datetime` module helps SAGE greet users with "Good
Morning," "Good Afternoon," or "Good Evening" messages, based on
the current time.

4. Wikipedia (Information Retrieval):


SAGE can fetch information from Wikipedia by using the `wikipedia`
module. This feature allows users to obtain summaries of various
topics.

5.Webbrowser (Web Browsing):


SAGE can open web pages in your default web browser, facilitating
tasks like web searches, website launches, and YouTube video
searches.

6. OS (Operating System Interaction):


SAGE can interact with the operating system, open files, and execute
system-level commands, making it versatile for system management
tasks.

7. Random (Random Responses):


To add spontaneity and fun to interactions, SAGE can generate
random responses or actions in certain situations, ensuring engaging
user experiences.
8. Pywhatkit (YouTube Interaction):
SAGE can interact with YouTube, allowing you to search for videos
and play content. This feature is ideal for music and video enthusiasts.

9. SYS (System Control):


The `sys` module provides access to system-specific parameters and
functions. It can be handy for system control tasks and process
management.

10. Pyautogui (Mouse and Keyboard Control):


SAGE can take control of your mouse and keyboard with the
`pyautogui` module, enabling the automation of various tasks and
interactions with your computer.

11. Operator (Mathematical Expressions):


The `operator` module allows SAGE to evaluate simple mathematical
expressions. It can perform addition, subtraction, multiplication, and
division.

12. Requests (HTTP Requests):


When you ask SAGE for your IP address, it uses the `requests`
module to make an HTTP request and retrieve your public IP address.

13. pyjokes (Jokes):


SAGE can tell you random jokes generated using the `pyjokes`
module, bringing humor to your interactions.

14. keyboard (Keyboard Automation):


SAGE can simulate keyboard inputs, thanks to the `keyboard`
module. This is particularly helpful for automating keyboard
interactions.

15. sqlite3 (Database Management):


SAGE can create and manage an SQLite database table to schedule
meetings, making it an efficient scheduler and organizer.

SYSTEM REQUIRMENTS
Recommended System Requirements
 Processor- Intel® Core™ i3-4300M at 2.60 GHz
 Disk Space- 2 to 4GB
 Operating System- Windows 10, UBUNTU, MACOS
 Python Version: 3.10 64-bit

Minimum System Requirements


 Processor- Intel Atom® Processor
 Disk Space- 1 GB
 Operating System- Windows 7, MACOS, UBUNTU
 Python Versions: 2.7.X , 3.6.X

Prerequisites before installing MySQL Connector


Python :-
• Required root or administrative privileges to perform the
installation
• Python and MySQL must be installed on the device
• MySQL Connector Python needs to be in the system’s PATH
for code to run else it fails
• If Python doesn’t exist in system’s PATH, please manually
add the directory containing python.exe

Functions and Capabilities :-


Speak(audio)
SAGE uses the `pyttsx3` module to convert text into speech, allowing
it to communicate with users through voice.

WishMe()
SAGE greets users according to the time of day, providing a friendly
"Good Morning," "Good Afternoon," or "Good Evening" message. It
introduces itself as your assistant.

TakeCommand()
Utilizing the `speech_recognition` module, SAGE listens to user
commands through the microphone, converts spoken words into text,
and processes your requests.
Create_Meeting_Table()
SAGE can create a structured SQLite database table to store
information about scheduled meetings, making it an efficient
scheduler.
Schedule_Meeting()
You can instruct SAGE to schedule meetings, and it will store the
meeting title, date, time, location, and description in the database for
your convenience.

Get_Upcoming_Meetings()
SAGE can retrieve and display upcoming scheduled meetings,
helping you stay organized and on top of your appointments.

Overview
1. Greeting Users
SAGE greets users with a friendly message based on the time of day.

2. Searching Wikipedia
SAGE can search Wikipedia for information.

3. Web Searches on YouTube


SAGE can search for videos on YouTube.

4. Web Browsing
SAGE can open websites in a web browser.

5. Setting Alarms
SAGE can set alarms based on a specified time.
6. Opening Google Maps
SAGE can open Google Maps in a web browser.

7. Controlling YouTube Video Playback


SAGE can control video playback on YouTube, including pausing and
playing videos.

8. Voice Commands for YouTube


SAGE can control YouTube video playback with various voice
commands, such as rewinding, muting, and more.
9. Repeating User's Words
SAGE can repeat the user's spoken words.

10. Launching Applications


SAGE can open applications like Google Chrome, Facebook,
Instagram, and Spotify.
11.Window Management
SAGE can manage windows by maximizing, minimizing, and more.
12. Searching on Google
SAGE can perform Google searches.

13. Manipulating Browser Tabs


SAGE can manage web browser tabs, including opening new tabs,
switching between tabs, and closing tabs.
14. Clearing Browsing History
SAGE can clear browsing history in the web browser.

15. Closing Applications


SAGE can close the Google Chrome application.

16. Telling the Time


SAGE can tell the current time to the user.

17. System Control


SAGE can shut down, restart, or lock the system.
18. Opening Notepad
SAGE can open the Notepad application.

19. Closing Notepad


SAGE can close the Notepad application.

20. Opening Command Prompt


SAGE can open the Command Prompt.`

21. Closing Command Prompt


SAGE can close the Command Prompt.
22. Telling Jokes
SAGE can tell random jokes to entertain users.

23. Going to Sleep


SAGE can gracefully exit and "go to sleep."

24. Taking Screenshots


SAGE can take screenshots and save them with a specified name.
25. Calculations
SAGE can perform calculations with simple mathematical
expressions.

26. Retrieving IP Address


SAGE can fetch and announce the user's IP address.
27. Controlling Volume
SAGE can adjust the system volume.
28. Refreshing Web Pages
SAGE can refresh a web page.
29. Scrolling Web Pages
SAGE can scroll down web pages.

30. Introduction and Creator Information


SAGE provides information about itself and its creator.

31. Typing Text


SAGE can type text as specified by the user.
32. Playing Music on Spotify
SAGE can play music on Spotify.

33. Scheduling Meetings


SAGE can schedule meetings, save them in a database, and retrieve
upcoming meetings.
This overview covers all the features listed in the code and
the associated code sections. You can include these details
in your spiral book for a comprehensive understanding of
what SAGE can do.
Output
Bibliography

 CodeWithHarry – Youtube

 Tech-Gram Academy – Youtube

 Chronics – Youtube

 Kaushik Shresth - Youtube

You might also like