diff --git a/docs/UserGuide.md b/docs/UserGuide.md index d1dddca70d1..b60a7646c0f 100644 --- a/docs/UserGuide.md +++ b/docs/UserGuide.md @@ -3,13 +3,15 @@ layout: page title: OutBook User Guide --- -OutBook is an app that allows busy professionals to manage their numerous contacts and meeting schedule. +OutBook is an app that allows young tech-savvy free-lance insurance agents to manage their numerous contacts and meeting schedule. It is optimised for Command Line Interface (CLI) aims to significantly reduce the time needed for organizational tasks. + +This guide is to help you explore and learn about what are its features and how to use them. * Table of Contents {:toc} -------------------------------------------------------------------------------------------------------------------- - +
# Quick start 1. Ensure you have Java `11` or above installed in your Computer. @@ -21,6 +23,7 @@ OutBook is an app that allows busy professionals to manage their numerous contac 4. Open a command terminal, `cd` into the folder you put the jar file in, and use the `java -jar OutBook.jar` command to run the application.
A GUI similar to the below should appear in a few seconds. Note how the app contains some sample data.
![Ui](images/Ui.png) +
5. Type the command in the command box and press Enter to execute it. e.g. typing **`help`** and pressing Enter will open the help window.
Some example commands you can try: @@ -47,7 +50,7 @@ OutBook is an app that allows busy professionals to manage their numerous contac **:information_source: Notes about the command format:**
-* Words in `UPPER_CASE` are the parameters to be supplied by the user.
+* Words in `UPPER_CASE` are the parameters to be supplied by you.
e.g. in `add n/NAME`, `NAME` is a parameter which can be used as `add n/John Doe`. * Items in square brackets are optional.
@@ -56,18 +59,18 @@ OutBook is an app that allows busy professionals to manage their numerous contac * Items with `…`​ after them can be used multiple times including zero times.
e.g. `[t/TAG]…​` can be used as ` ` (i.e. 0 times), `t/friend`, `t/friend t/family` etc. -* Parameters can be in any order.
+* You can place parameters in any order.
e.g. if the command specifies `n/NAME p/PHONE_NUMBER`, `p/PHONE_NUMBER n/NAME` is also acceptable. -* Extraneous parameters for commands that do not take in parameters (such as `help`, `list`, `exit` and `clear`) will be ignored.
- e.g. if the command specifies `help 123`, it will be interpreted as `help`. +* Any extraneous parameters you place for commands that do not take in parameters (such as `help`, `list`, `exit` and `clear`) will be ignored.
+ e.g. if you type `help 123`, it will be interpreted as `help`. * If you are using a PDF version of this document, be careful when copying and pasting commands that span multiple lines as space characters surrounding line-breaks may be omitted when copied over to the application. ### Viewing help : `help` -Shows a message explaning how to access the help page. +Shows you a message explaining how to access the help page. ![help message](images/helpMessage.png) @@ -79,7 +82,7 @@ Format: `help` Adds a contact to OutBook. -Format: `addc n/NAME p/PHONE_NUMBER e/EMAIL l/LAST_CONTACTED_TIME s/STATUS [t/TAG]…​` +Format: `addc n/NAME p/PHONE_NUMBER e/EMAIL l/LAST_CONTACTED_TIME s/STATUS [r/REMARK][t/TAG]…​` * NAME, PHONE_NUMBER, and EMAIL are compulsory fields. STATUS, TAG and LAST_CONTACTED_TIME are optional. * PHONE_NUMBER must contain only numbers, and be at least 3 digits long. @@ -98,7 +101,7 @@ Format: `addc n/NAME p/PHONE_NUMBER e/EMAIL l/LAST_CONTACTED_TIME s/STATUS [t/TA
:bulb: **Tip:** -A person can have any number of tags (including 0) +You can put any number of tags (including 0) on a contact.
* `addc n/John Doe p/98765432 e/johnd@example.com l/01.10.2023 1000` @@ -108,18 +111,18 @@ A person can have any number of tags (including 0) ### Listing all persons : `listc` -Shows a list of all contacts in OutBook. +Shows you a list of all contacts in OutBook. Format: `listc` ### Deleting a person : `deletec` -Deletes the specified person from OutBook. +Deletes a contact from OutBook. Format: `deletec INDEX` -* Deletes the person at the specified `INDEX`. +* Deletes the contact at the specified `INDEX`. * The index refers to the index number shown in the displayed person list. * The index **must be a positive integer** 1, 2, 3, …​ @@ -132,7 +135,7 @@ Examples: Edits an existing contact in OutBook. -Format: `editc INDEX [n/NAME] [p/PHONE] [e/EMAIL] [l/LAST_CONTACTED_TIME] [s/STATUS] [t/TAG]…​` +Format: `editc INDEX [n/NAME] [p/PHONE] [e/EMAIL] [l/LAST_CONTACTED_TIME] [s/STATUS] [r/REMARK] [t/TAG]…​` * Edits the contact at the specified `INDEX`. The index refers to the index number shown in the displayed person list. The index **must be a positive integer** 1, 2, 3, …​ * All fields are optional, but at least one must be provided. @@ -146,7 +149,7 @@ Examples: * `editc 2 n/Betsy Crower t/` Edits the name of the 2nd person to be `Betsy Crower` and clears all existing tags. -### Editing a contact : `remark` +### Remarking a contact : `remark` Adds a remark to a contact. @@ -188,7 +191,7 @@ Format: `findc [n/KEYWORDS] [p/KEYWORDS] [e/KEYWORDS] [l/DATETIME] [s/KEYWORDS] * For a single field, a Person must match at least one keyword to be returned as a result (i.e. `OR` search). e.g. `John Doe` will return `John Lee`, `James Doe` * If there are multiple fields specified, the Person must match at least one keyword in each field to be returned as a result (i.e. `AND` search). - e.g. `m/Shop Meet a/Mall` will return `Meeting: Shop at mall, Location:Mall` + e.g. `n/John Doe s/Active` will return `Name: John Lee, Status: Active` Examples: * `findc n/alice` returns `Alice` and `alice tan` @@ -217,14 +220,14 @@ Examples: ### Listing all meetings : `listm` -Shows a list of all meetings in OutBook. +Shows you a list of all meetings in OutBook. Format: `listm` ### Deleting a meeting : `deletem` -Deletes the specified meeting from OutBook. +Deletes a meeting from OutBook. Format: `deletem INDEX` @@ -246,8 +249,8 @@ Format: `editm INDEX [m/TITLE] [a/LOCATION] [s/START] [e/END] [t/TAG]…​` * Edits the meeting at the specified `INDEX`. The index refers to the index number shown in the displayed meeting list. The index **must be a positive integer** 1, 2, 3, …​ * At least one of the optional fields must be provided. * Existing values will be updated to the input values. -* When editing tags, the existing tags of the person will be removed i.e adding of tags is not cumulative. -* You can remove all the person’s tags by typing `t/` without +* When editing tags, the existing tags of the meeting will be removed i.e adding of tags is not cumulative. +* You can remove all the meeting’s tags by typing `t/` without specifying any tags after it. Examples: @@ -267,12 +270,12 @@ Format: `viewm INDEX` * Displays meeting Title, Location, Meeting times, Attendees and Tags. Examples: -* `viewm 2` Displays detailed information related to the 2nd meeting on the list, including current participants. +* `viewm 2` Displays detailed information related to the 2nd meeting on the list, including current attendees. -### Locating meetings by name: `findm` +### Search for Meetings using meeting fields: `findm` -Find meetings for which all respective field (Title, location, attendee...) given by the user, contain at least 1 keyword, as well as happen within the duration given (start & end). +Find meetings which details match the keywords you specified for at least 1 of these fields: title, location, attendee, tag; and fall within the start and end time you give. Format: `findm [m/KEYWORDS] [a/KEYWORDS] [t/KEYWORDS] [n/ATTENDEENAME] [s/START e/END]` @@ -292,17 +295,18 @@ Examples: * `findm m/Meeting s/09.09.2023 0000 e/09.10.2023 0000` returns `Zoom meeting`, `Meeting advisor`, if these meetings start after 09.09.2023 0000 and end before 09.10.2023 0000
![result for 'findAlexMeeting'](images/findAlexMeetingResult.png) + ### Add contact to meeting: `addmc` Adds a contact to a meeting as an attendee. Format: `addmc MEETING_INDEX CONTACT_INDEX` -* Adds a contact at the specified `CONTACT_INDEX` to a meeting at the specified `MEETING_INDEX`. +* Adds the contact you specified with `CONTACT_INDEX` to a meeting specified with `MEETING_INDEX`. * `MEETING_INDEX` refers to the index number shown in the displayed meeting list. * `CONTACT_INDEX` refers to the index number shown in the displayed contact list. -* The index **must be a positive integer** 1, 2, 3, …​ -* Both `MEETING_INDEX` & `CONTACT_INDEX` must refer to the index of an existing meeting or contact respectively. +* The indexes **must be positive integers** 1, 2, 3, …​ +* Both `MEETING_INDEX` & `CONTACT_INDEX` must refer to the index of an existing meeting and contact respectively. * Contact name will be listed in the detailed description of meetings when `viewm` is used. Examples: @@ -317,7 +321,7 @@ Format: `rmmc MEETING_INDEX ATTENDEE_INDEX` * Removes a contact at the specified `ATTENDEE_INDEX` to the meeting at the specified `MEETING_INDEX`. * `MEETING_INDEX` refers to the index number shown in the displayed meeting list. * `ATTENDEE_INDEX` refers to the index number of the attendee as shown in `viewm`. -* The index **must be a positive integer** 1, 2, 3, …​ +* The indexes **must be positive integers** 1, 2, 3, …​ * Both `MEETING_INDEX` & `ATTENDEE_INDEX` must refer to the index of an existing meeting or attendee. Examples: @@ -341,7 +345,7 @@ OutBook data are saved in the hard disk automatically after any command that cha ### Editing the data file -OutBook data are saved automatically as a JSON file `[JAR file location]/data/outbook.json`. Advanced users are welcome to update data directly by editing that data file. +OutBook data are saved automatically as a JSON file `[JAR file location]/data/outbook.json`. If you are an experienced user, you are welcome to update data directly by editing that data file.
:exclamation: **Caution:** If your changes to the data file makes its format invalid, OutBook will discard all data and start with an empty data file at the next run. Hence, it is recommended to take a backup of the file before editing it. @@ -365,20 +369,22 @@ If your changes to the data file makes its format invalid, OutBook will discard ## Command summary -| Action | Format, Examples | -|---------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| **Add contact** | `addc n/NAME p/PHONE_NUMBER e/EMAIL l/LAST_CONTACTED_TIME o/ORGANISATION [t/TAG]…​`
e.g., `add n/James Ho p/22224444 e/jamesho@example.com l/09.09.2023 0000 o/NUS t/friend t/colleague` | -| **Add contact to meeting** | `addmc MEETING_INDEX CONTACT_INDEX`
e.g., `addmc 2 1` | -| **Add meeting** | `addc m/TITLE a/LOCATION s/START e/END`
e.g., `addm m/Lunch a/Cafeteria s/20.09.2023 1200 e/20.09.2023 1300` | -| **Clear** | `clear` | -| **Delete contact** | `deletec INDEX`
e.g., `deletec 3` | -| **Delete meeting** | `deletem INDEX`
e.g., `deletem 3` | -| **Edit contact** | `editc INDEX [n/NAME] [p/PHONE_NUMBER] [e/EMAIL] [l/LAST_CONTACTED_TIME] [o/ORGANISATION] [t/TAG]…​`
e.g.,`editc 2 n/James Lee e/jameslee@example.com` | -| **Find contact** | `findc KEYWORD [MORE_KEYWORDS]`
e.g., `findc James Jake` | -| **Find meeting** | `findm [m/KEYWORDS] [a/KEYWORDS] [t/KEYWORDS] [n/ATTENDEENAME] [s/START e/END]`
e.g., `findm m/Zoom Meet s/09.09.2023 0000 e/09.10.2023 0000` | -| **Help** | `help` | -| **List contacts** | `listc` | -| **List meetings** | `listm` | -| **Remove contact from meeting** | `rmmc MEETING_INDEX ATTENDEE_INDEX`
e.g., `rmmc 2 2` | -| **View contact details** | `viewc INDEX`
e.g., `viewc 4` | -| **View meeting details** | `viewm INDEX`
e.g., `viewm 4` | +| Action | Format, Examples | +|---------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| **Add contact** | `addc n/NAME p/PHONE_NUMBER e/EMAIL l/LAST_CONTACTED_TIME o/ORGANISATION [r/REMARK] [t/TAG]…​`
e.g., `add n/James Ho p/22224444 e/jamesho@example.com l/09.09.2023 0000 o/NUS t/friend t/colleague` | +| **Add contact to meeting** | `addmc MEETING_INDEX CONTACT_INDEX`
e.g., `addmc 2 1` | +| **Add meeting** | `addm m/TITLE a/LOCATION s/START e/END [t/TAG]…​`
e.g., `addm m/Lunch a/Cafeteria s/20.09.2023 1200 e/20.09.2023 1300` | +| **Clear** | `clear` | +| **Delete contact** | `deletec INDEX`
e.g., `deletec 3` | +| **Delete meeting** | `deletem INDEX`
e.g., `deletem 3` | +| **Edit contact** | `editc INDEX [n/NAME] [p/PHONE_NUMBER] [e/EMAIL] [l/LAST_CONTACTED_TIME] [o/ORGANISATION] [r/REMARK] [t/TAG]…​`
e.g.,`editc 2 n/James Lee e/jameslee@example.com` | +| **Edit meeting** | `editm INDEX [m/TITLE] [a/LOCATION] [s/START] [e/END] [t/TAG]…​`
e.g.,`editm 1 a/Hawker Centre s/15.09.2023 1500` | +| **Find contact** | `findc KEYWORD [MORE_KEYWORDS]`
e.g., `findc James Jake` | +| **Find meeting** | `findm [m/KEYWORDS] [a/KEYWORDS] [t/KEYWORDS] [n/ATTENDEENAME] [s/START e/END]`
e.g., `findm m/Zoom Meet s/09.09.2023 0000 e/09.10.2023 0000` | +| **Help** | `help` | +| **List contacts** | `listc` | +| **List meetings** | `listm` | +| **Remove contact from meeting** | `rmmc MEETING_INDEX ATTENDEE_INDEX`
e.g., `rmmc 2 2` | +| **View contact details** | `viewc INDEX`
e.g., `viewc 4` | +| **View meeting details** | `viewm INDEX`
e.g., `viewm 4` | +| **Exit** | `exit` | \ No newline at end of file