python-program-read-description-programming-homework-help

Create a program that models the functionalities of a cell phone:

  1. Makes/receives calls:
    • Makes/receives calls using a functions called make_call(number) and receive_call(number).  These functions should return the date and time at which the call was made (i.e. the function was called)
  2. Access a phone book:
    • See a contact using a function view_contact(name)
    • See all contacts using a function view_all()
    • Add a contact using a function add_contact(name, number, email)
    • Edit a contact using a function edit_contact(name, option, new_info)
    • Call a contact using a function call_contact(name)
  3. Access the history of calls made/received using a print_history() function

TESTERS:

--------------------------- Main Menu --------------------------_x000D_
1. Make a call_x000D_
2. Receive a call_x000D_
3. Phone book_x000D_
4. Call History_x000D_
5. Quit_x000D_
>> 1_x000D_
_x000D_
What number do you wish to dial? (M to return to main menu)_x000D_
>> 5555555555_x000D_
_x000D_
Dialing 5555555555..._x000D_
Call ended._x000D_
_x000D_
--------------------------- Main Menu --------------------------_x000D_
1. Make a call_x000D_
2. Receive a call_x000D_
3. Phone book_x000D_
4. Call History_x000D_
5. Quit_x000D_
>> 3_x000D_
_x000D_
--------------------------- Phone Book Menu --------------------------_x000D_
1. Add a contact_x000D_
2. Edit a contact_x000D_
3. Display a contact_x000D_
4. Display all contacts_x000D_
5. Call contact_x000D_
6. Main Menu_x000D_
>> 1_x000D_
_x000D_
Enter the name: Kathy_x000D_
Enter the number: 562)555-5555_x000D_
Enter the email: katherine.varela@csulb.edu_x000D_
_x000D_
The following contact has been stored:_x000D_
Name: Kathy_x000D_
Number: 562)555-5555_x000D_
Email: katherine.varela@csulb.edu_x000D_
_x000D_
Do you wish to add more? Y/N_x000D_
>> Y_x000D_
_x000D_
Enter the name: Tim_x000D_
Enter the number: 323)555-5555_x000D_
Enter the email: tim@csulb.edu_x000D_
_x000D_
The following contact has been stored:_x000D_
Name: Tim_x000D_
Number: 323)555-5555_x000D_
Email: tim@csulb.edu_x000D_
_x000D_
Do you wish to add more? Y/N_x000D_
>> N_x000D_
_x000D_
--------------------------- Phone Book Menu --------------------------_x000D_
1. Add a contact_x000D_
2. Edit a contact_x000D_
3. Display a contact_x000D_
4. Display all contacts_x000D_
5. Call contact_x000D_
6. Main Menu_x000D_
>> 3_x000D_
_x000D_
What is the name of the contact you wish to display? (P - phonebook menu or M - main menu)_x000D_
>> Katheryne_x000D_
_x000D_
Katheryne does not exist in the phonebook. Would you like to try again? (Y - Yes, P - phonebook menu, or M - main menu)_x000D_
>> Y_x000D_
_x000D_
What is the name of the contact you wish to display? (P - phonebook menu or M - main menu)_x000D_
>> Katherine _x000D_
_x000D_
Katherine does not exist in the phonebook. Would you like to try again? (Y - Yes, P - phonebook menu, or M - main menu)_x000D_
>> P_x000D_
_x000D_
--------------------------- Phone Book Menu --------------------------_x000D_
1. Add a contact_x000D_
2. Edit a contact_x000D_
3. Display a contact_x000D_
4. Display all contacts_x000D_
5. Call contact_x000D_
6. Main Menu_x000D_
>> 4_x000D_
_x000D_
Displaying all contacts..._x000D_
_x000D_
-------------------------- * CONTACTS * --------------------------_x000D_
Name: Kathy_x000D_
Number: 562)555-5555_x000D_
Email: katherine.varela@csulb.edu_x000D_
_x000D_
-----------------------------------_x000D_
Name: Tim_x000D_
Number: 323)555-5555_x000D_
Email: tim@csulb.edu_x000D_
_x000D_
-----------------------------------_x000D_
_x000D_
--------------------------- Phone Book Menu --------------------------_x000D_
1. Add a contact_x000D_
2. Edit a contact_x000D_
3. Display a contact_x000D_
4. Display all contacts_x000D_
5. Call contact_x000D_
6. Main Menu_x000D_
>> 2_x000D_
_x000D_
Enter the name of the contact you wish to edit: Kathy_x000D_
What would you like to edit? (1 - name, 2 - number, or 3 - email)_x000D_
>> 1_x000D_
_x000D_
Enter the new name: Katherine_x000D_
_x000D_
The contact has successfully updated..._x000D_
Name: Katherine_x000D_
Number: 562)555-5555_x000D_
Email: katherine.varela@csulb.edu_x000D_
_x000D_
--------------------------- Phone Book Menu --------------------------_x000D_
1. Add a contact_x000D_
2. Edit a contact_x000D_
3. Display a contact_x000D_
4. Display all contacts_x000D_
5. Call contact_x000D_
6. Main Menu_x000D_
>> 3_x000D_
_x000D_
What is the name of the contact you wish to display? (P - phonebook menu or M - main menu)_x000D_
>> Katherine_x000D_
_x000D_
Name: Kathy_x000D_
Number: 562)555-5555_x000D_
Email: katherine.varela@csulb.edu_x000D_
_x000D_
--------------------------- Phone Book Menu --------------------------_x000D_
1. Add a contact_x000D_
2. Edit a contact_x000D_
3. Display a contact_x000D_
4. Display all contacts_x000D_
5. Call contact_x000D_
6. Main Menu_x000D_
>> 5_x000D_
_x000D_
Who do you wish to call? _x000D_
>> Tom_x000D_
_x000D_
Tom does not exist in the phonebook. Would you like to try again? (Y - Yes, P - phonebook menu, or M - main menu)_x000D_
>> Y_x000D_
_x000D_
Who do you wish to call? Tim_x000D_
_x000D_
Calling Tim..._x000D_
Call ended._x000D_
_x000D_
--------------------------- Phone Book Menu --------------------------_x000D_
1. Add a contact_x000D_
2. Edit a contact_x000D_
3. Display a contact_x000D_
4. Display all contacts_x000D_
5. Call contact_x000D_
6. Main Menu_x000D_
>> 6_x000D_
_x000D_
--------------------------- Main Menu --------------------------_x000D_
1. Make a call_x000D_
2. Receive a call_x000D_
3. Phone book_x000D_
4. Call History_x000D_
5. Quit_x000D_
>> 2_x000D_
_x000D_
Receiving call from 5678902346..._x000D_
Call ended._x000D_
_x000D_
--------------------------- Main Menu --------------------------_x000D_
1. Make a call_x000D_
2. Receive a call_x000D_
3. Phone book_x000D_
4. Call History_x000D_
5. Quit_x000D_
>> 2_x000D_
_x000D_
Receiving call from 4567891230..._x000D_
Call ended._x000D_
_x000D_
--------------------------- Main Menu --------------------------_x000D_
1. Make a call_x000D_
2. Receive a call_x000D_
3. Phone book_x000D_
4. Call History_x000D_
5. Quit_x000D_
>> 4_x000D_
_x000D_
Displaying call history..._x000D_
_x000D_
-------------------------- * CALL HISTORY * --------------------------_x000D_
Incoming: 456)789-1230_x000D_
06/19/2016   11:30 AM_x000D_
_x000D_
-----------------------------------_x000D_
_x000D_
Incoming: 567)890-2346_x000D_
06/19/2016   11:29 AM_x000D_
_x000D_
-----------------------------------_x000D_
_x000D_
Outgoing: Tim_x000D_
06/19/2016   11:27 AM_x000D_
_x000D_
-----------------------------------_x000D_
_x000D_
Outgoing: 555)555-5555_x000D_
06/19/2016   11:20 AM_x000D_
_x000D_
--------------------------- Main Menu --------------------------_x000D_
1. Make a call_x000D_
2. Receive a call_x000D_
3. Phone book_x000D_
4. Call History_x000D_
5. Quit_x000D_
>> 5_x000D_
_x000D_
Goodbye!_x000D_