User Guide
ClientBook
ClientBook is an application for insurance agents to manage client contacts, optimized for use with just a keyboard, while still offering a visual interface for ease of viewing of client contacts. The purpose of ClientBook is to help insurance agents who can type fast to accomplish their client management tasks faster than traditional applications. If this is the first time that you are using an application like ClientBook, you do not have to worry, as we have included a section here to guide you through this user guide.
ClientBook
Why ClientBook?
ClientBook is designed for insurance agents who are always on the go. We understand the pain and inconvenience of having to navigate around your screen without a mouse while you are out meeting clients. We are also aware that you might have to remember various details about your many clients, and that is difficult.
Thus, ClientBook is born!
Requiring minimal interactions with your cursor, ClientBook still allows you to complete essential contact management tasks with our minimal yet essential set of contact management features.
Purpose of This User Guide
The purpose of this user guide is to help you, the user get started with using ClientBook as well as to help you to get familiarised with the features that it has to offer so that you can become comfortable with using it in your day-to-day operations as an insurance agent.
How to Use This User Guide
If you are a new user, you can start with the Quick Start section to get ClientBook running. After that, we have also provided an Example Usage section to help you get familiarised with ClientBook. If you are an experienced user, we have provided a convenient Summary of Commands at the end of this user guide.
To familiarise you with the user guide, here are some conventions that are used throughout the user guide.
Conventions | What it means |
Tip | Tips that may be helpful to your usage of ClientBook |
Caution | Cautionary information to help you to avoid mishaps |
Note | Information that you need to know to use ClientBook |
Table of Contents
Please use the table of contents to navigate through the user guide quickly. ClientBook’s commands are grouped into contact management, contact viewing, shortcuts and general commands.
- 1. User Interface
- 2. Quick Start
- 3. Example Usage
- 4. Overview
- 5. Feature Description
- 6. Frequently Asked Questions
- 7. Summary of Commands
- 8. Glossary
- 9. Contact Us
User Interface
ClientBook makes use of a graphical user interface to help you manage your client contacts better. This section provides you with a better understanding of what each component of ClientBook’s user interface does for you.
ClientBook’s graphical user interface is made up of 4 main components:
- Menu Bar
- Allows you to get help about how to use ClientBook or exit the application.
- Command Box
- Allows you to type in your commands to manage your client contacts.
- Result Display
- Tells you whether your command has been performed successfully.
- Client List
- Shows you the list of clients stored in your ClientBook.
Quick Start
The quick start section provides a tutorial which will guide you through the steps needed to get ClientBook running.
Step 1.
Ensure you have Java 11
or above installed in your Computer.
- To check if you have this installed or for instructions on how to install, refer to our FAQ here.
Step 2.
Download the latest release of the application, clientbook.jar
, here.
Step 3.
Copy the downloaded file to the folder (we will be referring to this folder as the home folder) where you want to store the ClientBook application and your client information.
Step 4.
Double-click the downloaded clientbook.jar
file in your home folder to start the app. The screen below should appear in a few seconds.
- Alternatively, for those who are tech-savvy, you can launch the application via Command Prompt in Windows or Terminal in Mac OS/Linux using the following command:
java -jar clientbook.jar
. -
Note how the app contains some sample data.
Graphical User Interface of ClientBook.
Step 5.
Type a command in the command box and press Enter to execute it.
- Some example commands you can try:
Command | Purpose |
---|---|
help |
Opens the help window with a URL to this User Guide |
list |
Lists all contacts |
add n/John Doe p/98765432 e/johnd@example.com a/Orchard Street, Block 123, #01-01 i/Policy_1022 |
Adds a client named John Doe and his information to the ClientBook |
delete 3 |
Deletes the 3rd contact in the displayed list (i.e. deletes Charlotte Oliveiro ) |
exit |
Exits ClientBook |
Please refer to the Feature Description section below for the full list of commands and their descriptions.
Example Usage
Described below are some commands that you can try to get yourself familiarised with ClientBook.
If you have followed the Quick Start guide correctly, you should see the screen below. For each of the commands, type them into the command box and press enter to execute the command.
Graphical User Interface of ClientBook.
Step 1.
Try adding a new Client contact using the command add n/James Lee p/91234567 e/james@gmail.com a/Blk 123 Serangoon Rd t/Friend t/Colleague i/OCBC#412>www.ocbc.com/policy/412
.
That is a very long command, but it can be broken down into simple parts. We have just added a client called James Lee with the following details:
- Phone number: 91234567
- Email address: james@gmail.com
- Address: Blk 123 Serangoon Rd
We have also indicated that James is a friend as well as colleague of ours by adding the tags Friend
and Colleague
. Lastly,
we indicated that James has purchased a policy from us with a policy ID of OCBC#412 and that the policy’s document can be found at www.ocbc.com/policy/412
.
Now, if you scroll down the contact list, you should find James at the bottom of the list.
Step 2.
Try editing a Client contact using the command edit 1 p/61234567
.
This command edits the phone number of the first client displayed in the contact list to 61234567. In this case, Alex Yeoh’s phone number in ClientBook has been changed to 61234567.
Step 3.
Delete a Client contact using the command delete 3
.
This command deletes the contact of the third client displayed in the contact list.
Conclusion
Now that you have tried out the basic commands available in ClientBook, go ahead and try out more advanced features that you can find
in the Feature-Description section below. Whenever you like, you can use the command batch delete 1,2,3,4,5,6,7
to delete all the sample entries and start using your very own ClientBook.
Overview
Feature Summary
Feature | Description |
---|---|
Contact Management | |
add |
Add a client contact |
edit |
Edit a client contact |
delete |
Delete a client contact |
batch |
Execute some commands in batch |
meet |
Schedule a meeting with a client |
Contact Viewing | |
list |
List all clients |
find |
Search for client contacts based on keywords |
policy |
Display policies associated with a selected client |
sort |
Sort the list of clients |
Feature | Description |
---|---|
Shortcuts | |
addshortcut |
Add a shortcut |
editshortcut |
Edit a shortcut |
deleteshortcut |
Delete a shortcut |
listshortcut |
List all shortcuts |
clearshortcut |
Clear all shortcuts |
General | |
lock |
Lock ClientBook with a user-selected password |
unlock |
Unlock ClientBook |
help |
View help |
exit |
Exit ClientBook |
Keyboard commands | Keyboard commands to enter command keywords quickly |
Saving data | Save the data to a file in the home folder |
What information can we store for each client contact?
Each client attribute such as name and address have been assigned identifiers so that you do not have to type out
the entire attribute when using ClientBook. For example, name has been abbreviated to n
. Listed below are all the identifiers
which correspond to client attributes as well as restrictions that have to be followed when they are used as part of a command.
Attribute | Identifier | Notes |
Name | n |
|
Phone number | p |
|
Address | a |
NA |
e |
|
|
Tag | t |
|
Insurance Policies | i |
|
Meeting | m |
|
Feature Description
This section describes the features that ClientBook has and how to use them. The note below explains some of the notations that are present in our features’ commands.
Notes about the command format:
-
Words in UPPER_CASE are the input fields to be supplied by the user.
- E.g. in
add n/NAME
, NAME is an input. For example:add n/John Doe
.
- E.g. in
-
Input fields in square brackets are optional.
- E.g.
n/NAME [t/TAG]
can be entered asn/John Doe t/friend
or asn/John Doe
.
- E.g.
-
Input fields with … after them can be used multiple times.
- E.g.
[t/TAG]…
can be entered 0 or more times,t/basic
,t/basic t/lifeinsurance
etc.
- E.g.
-
Input fields can be entered in any order.
- E.g. if the command specifies
n/NAME p/PHONE_NUMBER
,p/PHONE_NUMBER n/NAME
is also acceptable.
- E.g. if the command specifies
-
Extraneous input for commands that do not take in parameters (such as
help
,exit
andlistshortcut
) will be ignored.- E.g. if the command specifies
help 123
, it will be interpreted ashelp
.
- E.g. if the command specifies
-
INDEX
refers to the index number shown in the displayed client list.
Contact Management Features
Contact management features are here to help you to manage your many client contacts. This section includes basic features such as adding and removing of client contacts.
add
: Add a client contact
Purpose: Allows you to add a client as a new contact to ClientBook.
Format: add n/NAME p/PHONE_NUMBER e/EMAIL a/ADDRESS [i/POLICY_ID[>POLICY_URL]]… [t/TAG]…
Tip: A client can have any number of tags and insurance policies (including 0).
Examples:
- Example of a client with insurance policy and URL associated with insurance policy
-
add n/Tom Tan p/91234567 e/tomt@email.com a/Orchard i/Policy_1274>www.myinsurancecompany.com/policy_1274 t/basic
-
- Example with no insurance policy and no tag
-
add n/Betsy Crowe e/betsycrowe@email.com a/Kent Ridge p/61234567
-
edit
: Edit a client contact
Purpose: Allows you to edit the information of an existing client contact in the ClientBook.
Format: edit INDEX [n/NAME] [p/PHONE] [e/EMAIL] [a/ADDRESS] [i/POLICY_ID[>POLICY_URL]]… [t/TAG]…
- Edits the client at the specified
INDEX
. - At least one of the optional fields must be provided.
- For fields that are allowed to be empty, specifying the identifier and leaving it empty will clear the existing information.
-
edit 1 i/
will clear the existing policies.
-
Caution: Existing values will be replaced with the input values.
Example:
- Edit the phone number and email address of the first client to be
91234567
andjohndoe@example.com
respectively.-
Command to enter:
edit 1 p/91234567 e/johndoe@example.com
-
delete
: Delete a client contact
Purpose: Allows you to delete a specified client’s contact from ClientBook.
Format: delete INDEX
- Deletes the client at the specified
INDEX
.
Examples:
- Delete the second client in the currently displayed list.
-
Command to enter:
delete 2
-
Command to enter:
- To easily delete a specific client “Charlotte Chan”,
delete
can be used in conjunction withfind
.- First, enter the command
find n/Charlotte Chan
to look for all clients named “Charolotte Chan” - After we get the filtered list, use
delete 1
to delete the client “Charlotte Chan” from ClientBook.
- First, enter the command
batch
: Execute commands in batch
Purpose: Allows you to the same edit
or delete
commands for multiple client contacts so that you do not have to
enter the same command multiple times.
Format: batch COMMAND INDICES [ARGUMENTS]
- Only
edit
anddelete
commands can be executed in batch. -
INDICES
are comma-separated e.g.1,2,3
or1, 2, 3
and they refer to the index number shown in the displayed client list. - There must be no repeat index in
INDICES
. - The optional
ARGUMENTS
input is only applicable if theCOMMAND
isedit
. - For
edit
, you can only batch edit the following attributes:- phone number
- address
- tags
- insurance policies
Tip:
The same rules apply when editing clients’ phone number and address!
If a parameter is expected only once in the command, but you specified it multiple times, only the last occurrence of the parameter will be taken.
Examples:
- Update the particulars of clients belonging to the same family and owning the same insurance policy.
-
Command to enter:
batch edit 1, 2, 4 a/Hougang Green t/TanFamily i/FamPol#111
-
Command to enter:
- Delete several client contacts at once.
-
Command to enter:
batch delete 1, 2, 4
-
Command to enter:
meet
: Schedule a meeting with a client
Purpose: Allows you to schedule a meeting on a particular date, start time, end time and place with a client in ClientBook.
Format: meet INDEX [-ACTION] DATE START_TIME END_TIME PLACE
- Schedules a meeting with the client at the specified
INDEX
. -
ACTION
can beadd
to add a meeting,delete
to delete a meeting,clear
to clear all meetings of a client.- If an
ACTION
is not specified, the defaultACTION
isadd
.
- If an
- There will be a check for clashes between meetings when adding a new meeting.
Examples:
- Add a meeting for a specific client and there are no clashes.
-
Command to enter:
meet 5 -add 20.05.2021 15:00 16:00 MRT
-
- Add a meeting for a specific client but there are clashes.
-
Command to enter:
meet 3 20.02.2021 12:00 15:00 KENT RIDGE MRT
-
Contact Viewing Features
Contact viewing features allow you to view your client contacts in different ways. For example, you may reorder your contact list or look for specific clients.
list
: List all clients
Purpose: Shows you a list of all your clients. You may use optional identifiers in conjunction with the -
symbol to select which client details you want to see, so that you can have a clutter-free view of your client contacts.
Format: list [-p] [-e] [-a] [-i] [-m]
- A client’s name and tags will be shown regardless of the identifiers that you specify.
- You may use one or more optional identifiers.
Example:
- Show a list of all clients with only their phone number and insurance policy information.
-
Command to enter:
list -p -i
-
Command to enter:
find
: Search for client contacts based on keywords
Purpose: Allows you to find client contacts based on the attribute and keywords that you specify.
You may use optional identifiers in conjunction with the -
symbol to limit the details shown, similar to the list
command.
Format: find IDENTIFIER/KEYWORD [& KEYWORDS]… [-p] [-e] [-a] [-i] [-m]
- The
IDENTIFIER
specifies which attribute of the client you want to search for. For example, if you want to search for a client contact by name, use then
identifier.- For more information about the identifiers for each field, refer to What information can we store for each client contact?.
- You may not use multiple attributes as your search criteria.
-
find n/David a/Botanic gardens
is invalid.
-
- The search is case-insensitive.
-
find n/hans
is equivalent tofind n/Hans
.
-
- The symbol
&
between keywords allows you to search for Clients using multiple keywords. - The order of the keywords does not matter.
-
find n/alex & david
is equivalent tofind n/david & alex
-
Examples:
- Find all clients whose address contains the word
geylang
.-
Command to enter:
find a/geylang
-
Command to enter:
- Find the email and phone number of all clients whose names contain
alex
anddavid
using the&
symbol, and only display their email addresses and phone numbers.-
find n/alex & david -e -p
-
policy
: Display policies associated with a client
Purpose: Launches a popup window for you to view all the policies associated with the selected client contact, if the selected client contact has any policies.
Format: policy INDEX
- Displays policies owned by the client at the specified
INDEX
.
Example:
- Display the policies associated with the second client in the currently displayed list.
-
Command to enter:
policy 2
-
Command to enter:
sort
: Sort list of clients
Purpose: Allows you to sort the current list of clients in ClientBook so that you can view your clients in a particular order.
Format: sort -IDENTIFIER -DIRECTION
- Sorts the list of clients according to the specified
IDENTIFIER
andDIRECTION
. - The
IDENTIFIER
can be eithern
to sort your clients by name alphabetically ori
to sort by number of insurance policies. - The
DIRECTION
can be eitherasc
to sort by ascending order ordes
to sort by descending order.
Examples:
- Sort the current list of clients by ascending number of insurance policies owned if you want to see which of your clients have the least policies with you.
-
Command to enter:
sort -i -asc
-
Command to enter:
- Sort the current list of clients by name in reverse alphabetical order.
-
Command to enter:
sort -n -des
-
Command to enter:
Shortcuts
We understand that you might have commands that you frequently use. You may use shortcuts to abbreviate those commands to make using ClientBook more convenient. As this feature is not commonly found in other contact management applications, we have included the following Example Usage section to guide you through on how to use this feature.
Example Usage
Scenario:
You are an insurance agent and you have many client contacts stored inside of ClientBook. Your work mainly requires
you to manage your clients’ policies and you would like a way to view all your clients’ policies while hiding other
additional information (e.g. address, email, phone). You know that you can do so with the list -i
command. However,
you would like a faster way to do it because you have to use it frequently, so you decided to create a
shortcut named li
to perform the same action as list -i
.
Step 1.
Adding the shortcut using the command addshortcut sn/li sc/list -i
.
This command creates a shortcut which performs list -i
everytime you type li
in the command box, and it is saved to
your shortcut library.
Step 2.
Using the shortcut using the command li
.
As you have saved this shortcut in the shortcut library, you may now use li
to perform the command list -i
anytime
and as many times as you want, which will save you from the hassle of having to type list -i
everytime.
addshortcut
: Add shortcut
Purpose: Allows you to a command shortcut to the shortcut library.
Format: addshortcut sn/SHORTCUT_NAME sc/SHORTCUT_COMMAND
- Adds a shortcut named
SHORTCUT_NAME
to the shortcut library and assigns a valid ClientBook commandSHORTCUT_COMMAND
to it. - The
SHORTCUT_NAME
must be alphanumeric without any spacing and must not already exist the shortcut library.
Example:
- Add a shortcut named
li
to represent the commandlist -i
(filter all client information to show policy details only) in the shortcut library.-
Command to enter:
addshortcut sn/li sc/list -i
-
Command to enter:
editshortcut
: Edit shortcut
Purpose: Allows you to editt the command of a shortcut in the shortcut library.
Format: editshortcut sn/SHORTCUT_NAME sc/SHORTCUT_COMMAND
- Finds a shortcut named
SHORTCUT_NAME
in the shortcut library and replaces its existing command with the provided valid ClientBook commandSHORTCUT_COMMAND
. - The
SHORTCUT_NAME
must be alphanumeric without any spacing and must exist in the shortcut library.
Example:
- Edit a shortcut named
ls
in the shortcut library such that it takes on a new commandlist
.-
Command to enter:
editshortcut sn/ls sc/list
-
Command to enter:
deleteshortcut
: Delete shortcut
Purpose: Allows you to delete a shortcut from the shortcut library.
Format: deleteshortcut SHORTCUT_NAME
- Finds a shortcut named
SHORTCUT_NAME
in the shortcut library and deletes it from the shortcut library. - The
SHORTCUT_NAME
must be alphanumeric without any spacing and must exist in the shortcut library.
Example:
- Delete a shortcut named
ls
in the shortcut library.-
Command to enter:
deleteshortcut ls
-
Command to enter:
listshortcut
: List all shortcuts
Purpose: Allows you to list all shortcuts in the shortcut library in case you want to view the shortcuts that you have previously created.
Format: listshortcut
clearshortcut
: Delete all shortcuts
Purpose: Allows you to clear the shortcut library.
Format: clearshortcut
General Features
lock
: Lock ClientBook with a user-selected password
Purpose: Allows you to lock ClientBook and ClientBook’s data so that your clients’ information is protected against unauthorised access.
Format: lock [CURRENT_PASSWORD] [NEW_PASSWORD]
- If ClientBook is not yet locked:
-
CURRENT_PASSWORD
field can be omitted. -
NEW_PASSWORD
can also be omitted and ClientBook will attempt to lock itself using your most recently used password, if any.
-
- If ClientBook is already locked:
- ClientBook verifies the current password before locking ClientBook with
NEW_PASSWORD
.
- ClientBook verifies the current password before locking ClientBook with
Caution:
- After setting a password, ClientBook can only be launched through Command Prompt or Terminal.
- Refer to Quick Start on how to launch the application through Command Prompt or Terminal.
Examples:
- Lock ClientBook with password
123
.-
Command to enter:
lock 123
-
- Change ClientBook’s password from
123
to456
.-
Command to enter:
lock 123 456
-
unlock
: Unlock ClientBook
Purpose: Allows you to remove ClientBook’s password lock.
Format: unlock PASSWORD
- Attempts to unlock ClientBook with
PASSWORD
. - ClientBook’s password lock is removed after executing this command. After executing this command, future launches of ClientBook will not require a password.
Examples:
- Unlock ClientBook with a wrong password
123
.-
Command to enter:
unlock 123
-
- Unlock ClientBook with the correct password
456
.-
Command to enter:
unlock 456
-
help
: View help
Purpose: Shows the URL to this user guide.
Format: help
exit
: Exit ClientBook
Format: exit
Keyboard commands
Purpose: We note that continuously typing the same command keywords can become tiresome. Hence, we have provided keyboard commands which when pressed, will fill in the command keyword for you.
Keyboard Command | Output |
---|---|
CTRL + A | add |
CTRL + D | delete |
CTRL + E | edit |
CTRL + F | find |
CTRL + L | list |
CTRL + S | sort |
Saving data
ClientBook saves its data file automatically after any command that changes the data.
Caution: Please do not make changes to the data file. If the format is invalid, all your data will be lost at the next run.
Upcoming Features (v2.0 and beyond!)
- Archiving data files
- Customisable user interface
- Login interface
- And more!
Frequently Asked Questions
Setting Up
Q: How do I check that Java is installed on my laptop?
A: Launch Command Prompt or Terminal and enter the following command: java -version
.
If you get an error message (Java command not found
), it means that Java is not installed on your laptop.
Q: How do I install Java?
A: Head over to the official Java website here, and download the appropriate installer for your system!
Q: How do I transfer my data to another laptop?
A: Copy the entire home folder (with all the files inside) over to the other laptop! It’s as simple as that!
Summary of Commands
Action | Command Format |
---|---|
Contact Management | |
Add | add n/NAME p/PHONE_NUMBER e/EMAIL a/ADDRESS [i/POLICY_ID[>POLICY_URL]]… [t/TAG]… |
Edit | edit INDEX [n/NAME] [p/PHONE_NUMBER] [e/EMAIL] [a/ADDRESS] [i/POLICY_ID[>POLICY_URL]]… [t/TAG]… |
Delete | delete INDEX |
Batch | batch COMMAND INDICES [ARGUMENTS] |
Meet | meet INDEX [-ACTION] DATE START_TIME END_TIME PLACE |
Contact Viewing | |
List | list [-p] [-e] [-a] [-i] [-m] |
Find | find IDENTIFIER/KEYWORD [& KEYWORDS]… [-IDENTIFIER]… |
Policy | policy INDEX |
Sort | sort -IDENTIFIER -DIRECTION |
Shortcuts | |
Add Shortcut | addshortcut sn/SHORTCUT_NAME sc/SHORTCUT_COMMAND |
Edit Shortcut | editshortcut sn/SHORTCUT_NAME sc/SHORTCUT_COMMAND |
Delete Shortcut | deleteshortcut SHORTCUT_NAME |
List Shortcuts | listshortcut |
Clear Shortcuts | clearshortcut |
General | |
Lock | lock [CURRENT_PASSWORD] NEW_PASSWORD |
Unlock | unlock [CURRENT_PASSWORD] |
Help | help |
Exit | exit |
Summary of Keyboard Commands
Keyboard Command | Output |
---|---|
CTRL + A | add |
CTRL + D | delete |
CTRL + E | edit |
CTRL + F | find |
CTRL + L | list |
CTRL + S | sort |
Glossary
-
Alphanumeric A character or group of characters is considered alphanumeric if it contains only numbers and alphabets.
-
Attribute The types of information you can store in ClientBook. E.g. phone number, address, name of your clients.
-
CLI (command line interface) A text box like interface which allows a user to enter and execute commands.
-
Command Prompt A command line interpreter application on the Windows operating system.
-
GUI (graphical user interface) A form of user interface with graphical features such as icons that allows a user to interact with our program.
-
Identifier The alphabetical letter associated with an attribute.
-
Java A programming language and computing platform that is used to run ClientBook.
-
JSON (JavaScript Object Notation) A format for storing and transporting data.
-
Terminal A command line interpreter application on MacOS/Linux operating systems.
-
UI (user interface) An interface for a user to interact with a program.
Contact Us
Didn’t find what you were looking for? Contact us at clientbook@email.com.
ClientBook is still a work in progress. We hope to be able to further improve ClientBook to suit your needs. Should you have any suggestions, feel free to drop us an email! We would love to hear from you insurance agents who are actively out and about, providing us with the best services.