By: Team W15-B2
Since: Jun 2016
Licence: MIT
- 1. Hello CYNC user!
- 2. Getting Started
- 3. UI Segments
- 4. Features
- 4.1. Viewing help :
help
- 4.2. Adding a new customer:
add
- 4.3. Listing all people :
list
- 4.4. Listing all tags :
listalltags
- 4.5. Editing a person :
edit
- 4.6. Search people by details:
find
- 4.7. Deleting a person :
delete
- Selecting a person :
select
- 4.8. Listing entered commands :
history
- 4.9. Display Google Calendar:
calendar
- 4.10. Adding a event to the calendar:
addevent
- 4.11. Mass Email :
email
- 4.12. Mass SMS :
sms
- 4.13. Undoing previous command :
undo
- 4.14. Redoing the previously undone command :
redo
- 4.15. Clearing all entries :
clear
- 4.16. Exiting the program :
exit
- 4.17. Saving the data
- 4.1. Viewing help :
- 5. Features Coming in V2.0
- 6. FAQ
- 7. Command Summary
- 8. Glossary
CYNC is an open-source, Command Line Interface (CLI) based software that helps small businesses to track and nurture relationships with their customers.
If you’re the owner of a small yoga studio, tuition centre, spa outlet, or even a dance studio, then CYNC is for you!
Our name, 'CYNC', was derived from the word "Sync". This represents our goal to keep customers and businesses in sync.
Also, the first 'C' in CYNC represents the customer. This shows how much we value your customers and understand that it’s a businesses' main priority. Hence, we do everything in our ability to help you please your customers.
Thank you for selecting CYNC as your preferred customer manager! Here are some steps to get you started:
-
Ensure you have Java version
1.8.0_60
or later installed in your Computer.ℹ️If you are unsure how to check Java version on your computer, do check out this link.
To download the latest Java version, click here.WarningHaving any Java 8 version is not enough.
This app will not work with earlier versions of Java 8. -
Download the latest
CYNC.jar
here. -
Copy the
CYNC.jar
file to the folder you want to use as the home folder for CYNC.💡It is recommended that you copy the CYNC.jar
to your computer’s Desktop for easy access. -
Double-click the file to start the app. The Graphical User Interface (GUI) should appear within seconds.
Image 2.0.1: Image of CYNC’s GUI when you first start the app
-
Type the command in the command box and press Enter to execute it.
e.g. typinghelp
and pressing Enter will open the help window. -
Some example commands you can try:
-
list
: lists all contacts that have -
add
n/John Doe p/98765432 e/[email protected] a/John street, block 123, #01-01
: adds a contact namedJohn Doe
to the Address Book. -
delete
3
: deletes the 3rd contact shown in the Person List Panel -
exit
: exits the app
-
-
Refer to the Features section below for details of each command. Before you do so, you may wish to familiarise yourself with the layout of CYNC. This will help you to better understand the instructions for each feature later on.
We wanted to keep the UI of CYNC easy and simple to navigate. CYNC’s UI is split into 5 main components, as visualised below.
Image 3.0.1: Main UI components, labelled
The Command Box
is the main point of interaction with the app.
Users can input commands into CYNC via the Comamnd Box
.
Quick Usage
-
To enter a command, type a
command
into theCommand Box
, then press the Enter key to submit it -
Use the Page Up key to view previously entered commands, and the Page Down key to return to a more recently entered command
-
Use the Up Arrow key and Down Arrow key to navigate the Command Predictions (explained below), folowed by the Tab key to select a prediction
CYNC has a command prediction feature, which tries to predict the commands that you will type before you even finish typing it. This allows the user to save time on typing and focus on making their customers happy.
While entering a command, if a command prediction is available, it will appear as a list below the input field, as shown in the image below.
Figure 3.1.1 : The Command Prediction Panel
Use the up and down arrow keys to navigate up or down the list.
Figure 3.1.2 : Pressing the down arrow key will navigate to the next command prediction
Use the tab key to select a prediction. The input field will immediately be updated to contain the text prediction!
Figure 3.1.3 : Pressing the tab button will select the highlighted command prediction
The Result Display
is the component which CYNC uses to let you know the app’s status, such as whether
-
A person has been successfully added to the AddressBook
-
Your SMS has been sent successfully
-
An invalid command has been entered
Below is an example of the result display confirming if the user wants to send SMSes to the persons listed.
Image 3.2.1: Illustration of the Result Display
in action
The Person List Panel
summarises the details of a customer and displays it in a logical manner.
To view more detailed information about the customer, you can click on the customer’s summarised details which brings you to their profile page.
Below is a close-up of the Person List Panel
Image 3.3.1: Illustration of the 'Person List Panel` in action
The Main Display Panel
's contents change according to the commands that are typed,
for example, typing the sms command will bring up an interface which you can use to send SMSes.
Some of the commands which affect the Main Display Panel
are
-
sms
-
email
-
calendar
-
listalltags
-
select
Below is an example of the Main Display Panel
being replaced to show the sms interface.
Image 3.4.1: Illustration of the 'Main Display Panel` showing the sms interface upon typing the sms all
command
The Status Bar Footer
displays important metadata about CYNC, such as
-
The date and time which CYNC’s database was last updated
-
The total number of persons in CYNC’s database
-
The address on your computer which your customers data is being stored
Below is a close-up screenshot to illustrate the different parts of the Status Bar Footer
.
Image 3.4.1: Close-up of the 'Status Bar Footer`
The features in CYNC are designed to assist businesses in storing their customers' information. We understand that small business owners are often strapped for time, so we have kept the commands short and intuitive.
Feel free to jump to the relevant command that you think will be useful to you. If you have no idea where to start,
we recommend you to read the add
command instruction as you will definitely need this command to get started.
If you need help with the usage of the software, type help
in the command box to open up this guide
Format: help
This is your most important feature of CYNC as it allows you to add a customer’s information into Cync.
Every customer will require a name[n/], email[e/], address[a/].
If you wish to group the customers together, you can use our tags[t/] feature.
CYNC would also auto generate a joined date based on the current day and assigned it to your new customer.
Format: add n/NAME p/PHONE_NUMBER e/EMAIL a/ADDRESS [t/TAG]…
Command Format
-
Words in
UPPER_CASE
are the parameters to be supplied by the user e.g. inadd n/NAME
,NAME
is a parameter which can be used asadd n/John Doe
. -
Items in square brackets are optional e.g
n/NAME [t/TAG]
can be used asn/John Doe t/friend
or asn/John Doe
. -
Items with
…
after them can be used multiple times including zero times e.g.[t/TAG]…
can be used ast/friend
,t/friend t/family
etc. -
Parameters can be in any order e.g. if the command specifies
n/NAME p/PHONE_NUMBER
,p/PHONE_NUMBER n/NAME
is also acceptable.
💡
|
A person can have any number of tags (including 0) |
Examples:
-
add n/John Doe p/98765432 e/[email protected] a/John street, block 123, #01-01
-
add n/Betsy Crowe t/friend e/[email protected] a/Newgate Prison p/1234567 t/criminal
If you wish to see a list of all customers stored in CYNC, you can use this feature
Format: list
You can use this feature when you’ve forgotten some of the tags that you’ve added or if you want to check for duplicate tags.
Format: listalltags
Upon entering this command, you should see the list of tags shown beside the Person List.
This is illustrated by the diagram below.
Image 4.4.1: Illustration of the listalltags
command
Your customer may have changed his/her details recently and you need to update them.
If so, you can edit an existing person in CYNC by using this feature.
Format: edit INDEX [n/NAME] [p/PHONE] [e/EMAIL] [a/ADDRESS] [t/TAG]…
-
Edits the person at the specified
INDEX
. The index refers to the index number shown beside a customer’s name in your current window. The index must be a positive whole number 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, we replace the existing tags with the updated ones.
-
You can remove all the person’s tags by typing
t/
without specifying any tags after it.
ℹ️
|
CYNC currently does not allow you to modify customers' joined date. |
Examples:
-
edit 1 p/91234567 e/[email protected]
Edits the phone number and email address of the 1st person to be91234567
and[email protected]
respectively. -
edit 2 n/Betsy Crower t/
Edits the name of the 2nd person to beBetsy Crower
and clears all existing tags.
If you wish to filter out customers by their details, type find
in the command box, followed by the keywords you want to search by.
This command can help you find people whose names, address, tags, email, or phone contain any of the given keywords.
Format: find KEYWORD [MORE_KEYWORDS]
Please take note of the following:
-
The search is case insensitive. e.g
hans
will matchHans
-
The order of the keywords does not matter. e.g.
Hans Bo
will matchBo Hans
-
Only full words will be matched for names, adresses and tags e.g.
Han
will not matchHans
,Ser
will not matchSerangoon
-
The full email address does not have to be keyed in e.g.
find johndo
will match with[email protected]
-
The full phone number does not have to be keyed in e.g.
9987
will match with99876261
. -
You can search multiple categories at the same time e.g.
find hans(name) friends(tag) serangoon(address)
will display people matching any keywords. -
People matching at least one keyword will be displayed (i.e.
OR
search). e.g.Hans Bo
will displayHans Gruber
,Bo Yang
Examples:
-
find John
Matchesjohn
andJohn Doe
-
find Betsy Tim John
Matches any person having namesBetsy
,Tim
, orJohn
-
find friends
Matches any person with the tagfriends
-
find serangoon
Matches any person whose address containsserangoon
-
find serangoon 99876261
Matches any person either whose address containsserangoon
or whose phone number is99876261
-
find gmail
Matches any person whose email address containsgmail
e.g.[email protected]
The result of the search will be displayed at the sidebar, as shown below:
If you wish to delete a person, you can do so by using this command.
Format: delete INDEX
-
Deletes the person at the specified
INDEX
. -
The index refers to the index number shown in the most recent listing.
-
The index must be a positive integer 1, 2, 3, …
Examples:
-
list
delete 2
Deletes the 2nd person in the address book. -
find Betsy
delete 1
Deletes the 1st person in the results of thefind
command.
If you wish to view more detailed information about a particular person (such as attendance and picture), you can use this command to do so.
Format: select INDEX
-
Selects the person and loads the detailed information for the person at the specified
INDEX
. -
The index refers to the index number shown in the most recent listing.
-
The index must be a positive integer
1, 2, 3, …
Examples:
-
list
select 2
Selects the 2nd person in the address book. -
find Betsy
select 1
Selects the 1st person in the results of thefind
command.
When you select a person, the person’s detailed information will appear to the right of the Person List. You may see an example below.
Image 4.7.1: Illustration of the select
command
ℹ️
|
If you made any changes to a person’s attendance and the person’s detailed information was showing in the panel before you made the changes,
you have to refresh by entering the command |
ℹ️
|
If you are on V1.5 or earlier, then the option to change attendance is not supported yet. |
You may have forgotten how you ended up at your current state of customers' information in CYNC and you will like to look back at your history.
If so, you can use this command, which will lists all the commands that you have entered in reverse chronological order.
Format: history
ℹ️
|
Pressing the ↑ and ↓ arrows will display the previous and next input respectively in the command box. |
To help you plan your schedule, we have integrated google calendar service into the software.
If you wish to use this service, a google account is required.
To open up google calendar in the browser panel, type calendar
in the command box.
Format: calendar
💡
|
Instead of a calendar, a google login page will be shown every time the application is restarted. Please log in to proceed to the calendar. |
The UI should appear as such before you log in:
The UI should appear as such after you have logged in:
Image 4.9.1: Illustration of the calendar
command
You can interact with the google calendar by clicking.
If you wish to add an event to the google calendar linked, you can interact with the google calendar directly by clicking, or with the command addevent
.
💡
|
This command can help you add events to the calendar more efficiently, directly through the command line such that you do not have to scroll through multiple pages. |
To use the addevent
command, type the command addevent
in the command box, followed by the details of the event.
The calendar shown will be updated automatically.
Please note that the event time has to be in 24hrs format, and the date format is Year-Month-Day. e.g. 16:00
for 4pm and 2017-12-30
for 30th December 2017.
Format: addevent n/EVENT NAME sd/START DAY(YYYY-MM-DD) st/START TIME(HH:MM) ed/END DAY(YYYY-MM-DD) et/END TIME(HH:MM)
If the event is added successfully, a message similar to below will be shown:
Examples:
-
addevent n/Halloween Party sd/2017-10-30 st/17:00 ed/2017-10-30 et/22:00
This feature allows you to customise and send out emails to all customers or to specific tagged customers in CYNC.
In order to do so, you would require a Google account as well.
Format: email all
or email TAG [MORE_TAG]
ℹ️
|
First time users will have to autheticate their Gmail Account and grant permission to send out emails through CYNC. Do also ensure that your account allows less secure app, you can do so through this link |
-
The search of tag is case sensitive. e.g
Sec1
will not matchsec1
-
The order of the keywords does not matter. e.g.
sec1 sec2
will matchsec2 sec1
-
Only full words will be matched e.g.
Friends
will not matchFriend
-
People matching at least one tag will be returned. e.g
email sec1 sec2
will return anyone with either tagsec1
,sec2
or both.
Examples:
-
email all
Email to all customers in CYNC. -
email OwesMoney
Email to customers with tag OwesMoney
Upon entering a valid email
command, the UI should appear as such.
With the To:
textbox prefilled with the desired customers' email addresses.
Image 4.11.1: Illustration of the email
command
💡
|
It is possible to add additional email addresses in |
After composing your email, click send.
CYNC will indicate if the emails are successfully sent.
ℹ️
|
The SMS Service is in its beta phase, and does not work for most users of CYNC. Contact the CYNC team to enable it for your business! |
Allows user to customise and send out SMSses to all customers or to specific tagged customers.
Format: sms all
or sms TAG [MORE_TAGS]
-
The search of tag is case sensitive. e.g
Sec1
will not matchsec1
-
The order of the tags does not matter. e.g.
sec1 sec2
will matchsec2 sec1
-
Only full words will be matched e.g.
Friends
will not matchFriends
-
People matching at least one tag will be returned. e.g
mass sec1 sec2
will return anyone with either tagsec1
,sec2
or both.
Examples:
-
sms all
SMS to all customers in CYNC. -
sms owesMoney
SMS to customers with tag owesMoney
The UI should appear as such, with the To
field already filled up:
Image 4.12.1: Illustration of the sms
command
💡
|
It is possible to add additional email addresses in |
After composing your SMS, click send.
If you have accidentally keyed in a command and you wish to revert CYNC to its previous state, you can use this command.
This command will restore CYNC to the state before the previous undoable command was executed.
Format: undo
ℹ️
|
Undoable commands: those commands that modify the address book’s content ( |
Examples:
-
delete 1
list
undo
(reverses thedelete 1
command) -
select 1
list
undo
Theundo
command fails as there are no undoable commands executed previously. -
delete 1
clear
undo
(reverses theclear
command)
undo
(reverses thedelete 1
command)
Reverses the most recent undo
command.
Format: redo
Examples:
-
delete 1
undo
(reverses thedelete 1
command)
redo
(reapplies thedelete 1
command) -
delete 1
redo
Theredo
command fails as there are noundo
commands executed previously. -
delete 1
clear
undo
(reverses theclear
command)
undo
(reverses thedelete 1
command)
redo
(reapplies thedelete 1
command)
redo
(reapplies theclear
command)
We know how much you value your customers' data. A login page will allow CYNC to keep unwanted visitors from reaching your data.
Here’s a mockup of what our login page will look like when it’s ready!
Image 5.1.1: Mockup of `Login Page`
We want to help you keep updated on your customers' activities.
By implementing a notification system, we can alert you when your customers
-
Are supposed to make their payments for the month
-
Have birthdays coming up, so that you can send them well wishes
-
Opts out of your newsletters, so that you can reach out to them for feedback to improve your business processes
We want CYNC to help keep track of your customer’s attendance for you, so that you can focus on growing your business.
By knowing your customers' attendance patterns, you can even detect when your customers are defaulting on their sessions, or know exactly which sessions your customers are attending.
Q: How do I transfer my data to another Computer?
A: Install the app in the other computer and overwrite the empty data file it creates with the file that contains the data of your previous Address Book folder.
We understand that there is a ton of information in this User Guide and you may just need a quick reference on how to use a certain command. If so, you can refer to this list.
Command | Format | Example |
---|---|---|
Add |
|
|
Clear |
|
|
Delete |
|
|
Edit |
|
|
Find |
|
|
List |
|
|
List All Tags |
|
|
Help |
|
|
Select |
|
|
Mass Emailing |
|
|
Mass SMSing |
|
|
History |
|
|
Undo |
|
|
Redo |
|