Watu Feature List
Watu Feature List
0.0 - Onboarding
During the onboarding process, the user needs to accept the privacy policy, create an account,
set up their own contact information, and grant various device permissions. Initially, the user
will be presented with a splash screen showcasing an animated Watu logo, then between 1
and 3 “value proposition” screens that educate the user on the main features of the app.
If an existing user is attempting to log in, they must also have a path to log in using their
verified email address. This is to handle the situations where a user gets a new phone and a
new phone number and no longer has access to the phone number they signed up with.
Only their first or last name, and email address are required. After entering their email
address, the server will send them a confirmation email that includes a link to verify they’ve
received it.
● Notifications
● Contacts
● Camera and/or photo album when the user first attempts to upload their photo
(Later, the app will need to acquire permissions to Bluetooth and potentially Location
Services if the user attempts to connect with someone using the Bluetooth Connect
feature.)
If the recipient is already a Watu user, they will receive the connection request as a
notification in Watu, and view it from the Connect screen. From there, they can Accept or
Ignore the request. Upon accepting, they are prompted to choose a Privacy Profile of their
own, and then the connection will be established, and both contacts’ shared information will
be synchronized between their two devices.
If the recipient elects to ignore the request, the request notification will simply disappear
from their phone. The original sender will not be notified directly, but the indicator for that
contact will no longer say “Requested” - it will simply change back to a “Connect” action.
If the recipient is not yet a Watu user, they will receive the connection request as a text
message that includes a link to download the app. Once they download the app and onboard,
they will see the pending connection request in their notifications, and can follow the same
steps described above to complete the connection.
If the phone number is the primary phone number associated with a Watu account, a
small card is displayed showing the user’s photo and name, or whatever information is
allowed by that user’s Public Privacy Profile. From here, the user can press the Connect
button to continue the connection process.
If the phone number is NOT associated with a Watu account, the user can type in a first
and last name, and then press the connect button to continue the connection process.
This will create a static contact in case the recipient never onboards to Watu. If the
recipient does eventually onboard to Watu and accepts the connection, this static
contact will turn into a connected Smart Contact, and you will receive whatever
additional contact information the recipient is sharing with you via their selected
Privacy Profile.
A similar connect button can be found when viewing the contact detail screen for a
static contact.
The user can also display their own QR code for someone else to scan by either going
to the connect screen, or by tapping the Profile Menu icon, and then tapping their own
photo with the QR icon on it.
The user can also share the image of their QR code via text message, email, etc. using
the OS’s standard share interface. Likewise, the user can select a photo from their
gallery to scan when attempting to connect with a user via QR code as opposed to
scanning a QR code in real-time using the camera. This functionality was implemented
in the alpha version of Watu by IndiaNIC.
Users can modify each of these built-in profiles, delete them, or create their own from scratch.
When connecting with other users, you will select a Privacy Profile to assign to them, and
Watu will only share the elements of your own contact info that are allowed by that profile.
Tapping a privacy profile will expand it to show a list of all the elements currently entered into
your own contact information with a checkbox next to each. The elements that are shared by
this privacy profile will be checked. You can change the list of elements that are shared by
tapping the checkboxes next to each element.
If you add any elements of your contact info that a Privacy Profile allows, any users that are
currently assigned to that profile will automatically receive the new elements and they will
remain updated in real-time on their devices.
If you remove any elements, those pieces of information will not be removed from the
connected users’ devices, but they will become “static information” and will stop being
updated in real-time.
The default Privacy Profile cannot be deleted. This ensures that every Watu account always
has at least one Privacy Profile.
If a different Privacy Profile is currently assigned to some number of connected contacts, and
that Privacy Profile is deleted, all contacts assigned to it will be reassigned to the default
Privacy Profile.
You can add or remove pieces of information from the Public privacy profile, but it cannot be
deleted. Also, you cannot remove your primary phone number from it. If you opt to remove
both your name and photo from the Public profile, the only thing people will see when they
try to connect with you via phone number is that you are a Watu user.
The right edge of the contacts list shows a small alphabet, and allows you to quickly scroll to
the contacts whose first names begin with the letter you are scrolling to.
3.1 - Searching
You can search for a contact by name, company, or tag by using the search bar at the top of
the contact list. This shows the search results in real-time as you type more and more letters.
Options for the secondary line include Company and Job Title (default), City and State,
Nickname, or Tags. The user can also choose a “Nothing” option, in which case the second line
would be absent, and the name would be vertically aligned in the center of the row.
3.5 - Connect/Invite/Status
A button should appear on the right side of every static contact for which a phone number
exists. The label and functionality of this button depends on that person’s status as a member
of Watu, or the status of your connection with them, according to the following rules:
● CONNECT
This label should be used when at least one of the contact’s phone numbers matches
the primary phone number of a Watu user. This label indicates that you can potentially
connect with this contact immediately without waiting for them to onboard to Watu.
Tapping the button will initiate the connect process with this contact.
● INVITE
This label should be used when at least one phone number exists on the contact, but it
is not associated with any Watu account. It implies that you will send them a
connection request that they will receive via text message inviting them to download
Watu for the first time. Tapping the button will initiate the connect process with this
contact.
● REQUESTED
This label is used when you have sent this contact a Connection Request, but they
haven’t yet responded to it. Tapping the button when this label is showing will allow
you to cancel your Connection Request.
From this screen, you can mark a contact as a favorite, add it to a group, delete it, or block the
user from sending you connection requests in Watu.
You can also put this screen into edit mode where you can add, remove, or modify any static
data. If it’s a static contact, all of its data will be static and is completely editable. If it’s a
connected Smart Contact, some or all of its data will be rendered in an accent color to indicate
that it is “connected” information, and therefore cannot be edited. However, static data can
still be added to and edited on a Smart Contact.
For static contacts, this screen also includes a large, inviting Connect button, which initiates
the connection request process.
Tapping on the various elements within the contact details should launch the
context-appropriate native app. For example, tapping a phone number should pop an action
sheet allowing the user to select Phone Call or Text Message, and then launch the phone’s
native app for that function. Tapping a physical address should open the Maps app to that
location. Tapping a social media element should launch the corresponding social media app
directly to that contact’s profile page within that app.
5.0 - Tags
You can apply tags to any of your contacts, which provides a way to help you remember
specific traits about them, skills they possess, hobbies they’re into, or reference how you
know them. For example, you might tag your plumber’s contact info with #plumber so you can
easily find them in a search. Or you might tag all your best friends with #besties for the same
reason.
You can also apply tags to your own contact information, and then share these tags with your
connections via a Privacy Profile so people know who you are and what you’re all about. If any
of your connected Smart Contacts are sharing their own tags with you, these tags will be
rendered in an accent color just like any other “connected” information, and any static tags
you manually add to them will be rendered in the neutral color.
Other users will never see the tags you add to them manually. You can only share your own
tags with other users via a Privacy Profile.
6.0 - Groups
The groups feature is designed to allow users to manually assign a number of users to a
single, easily accessible collection. Each group acts like a folder that contains a subset of their
contacts. Each group can have an optional icon representing the group. A contact can exist in
more than one group at any given time.
Users can access the group feature via the main tab bar. From here, they will see all existing
groups and can create new ones.
For example, if I was to tap on the Company Smart Group, I would first be presented with a list
of all the unique companies represented by my contacts. One of them might be “IndiaNIC”,
and when I click on it, I would then see all of my contacts that have “IndiaNIC” set in their
company field.
City/State combinations would also be available as a Smart Group, and I would be able to see
all the unique City/State combinations in a list, and then within each one see all the contacts
that have an address in that city and state. (Any contacts that do not have both City and State
in at least one of their addresses will not be included in any Location Smart Group.)
A Smart Group for Tags would work similarly, showing me all the unique tags in a list, and then
within each tag, all the contacts that have been tagged with that same value.
One Smart Group that does not follow this pattern would be the Smart Contacts Smart Group,
which would simply contain all the “connected” contacts I have.
Like regular groups, I should also be able to send a group text message or email to selected
contacts within a Smart Group using the same functionality described above.
If Watu automatically identifies any duplicates within your ingested contacts, a small
notification dot will appear on the Profile Menu icon, and a numerical badge will appear on
the Settings and Merge Duplicates menu items within the Profile Menu itself, showing the
number of potential duplicates you have in your list.
STEP 1
The first screen within the merge process shows all the unique names that have potential
duplicates. Most will only have a single duplicate, showing 2 contacts that share the same first
and last name, phone number, or email address. However, some names may have many more
than one other duplicate, if Watu finds that they all share some combination of names, phone
numbers, or email addresses.
STEP 2
Tapping on a potential duplicate will show the complete list of contacts that are all potential
duplicates. Usually this will only be two contacts, but sometimes there can be more. Each
contact will have a checkbox next to it that can be toggled off. A minimum of two contacts
must be checked in order to proceed. When the user taps the Merge button, all selected
contacts’ data will be combined into a single contact preview.
STEP 3
On the contact preview screen, each individual piece of information will have a checkbox next
to it, and it will be checked by default. If the user presses the Merge & Save button, this new
contact will replace all the individual duplicates, and all selected information will be included.
If any pieces of information were left unchecked, those elements would be deleted and would
not appear in the final merged contact.
If any contacts were left unchecked in Step 2, the user should be returned to this step to
complete the merge on the remaining contacts. If the remaining contacts are in fact different
people, the user can elect to press the “Do Not Merge” button, which will mark any checked
contacts as unique, and Watu will stop recommending them as potential duplicates in the
future.
Once all contacts from Step 2 have either been merged, or marked “Do Not Merge”, the user
will be returned to the main merge screen (Step 1) showing all the other unique contacts that
may have duplicates elsewhere within their list, and they can continue merging them one by
one.
If a user somehow ends up with two contacts representing the same person where one
contact is a connected Smart Contact, and the other is a regular static contact, Watu will
include them in the regular merge list as outlined in the steps above. However, when the user
gets to Step 3, any connected data being shared by the Smart Contact will not be able to be
unchecked and deleted during the merge. This data will appear checked, and the checkbox
itself will be disabled.
If you elect to delete your entire Watu account (Profile Menu → Settings → Delete Account),
you can optionally elect to restore your contacts to the state they were in when you first
onboarded. This will delete any new contacts that have been created on the phone, and wipe
out any modifications made to any contacts since the backup was taken on the day you
onboarded.
We implemented this as a failsafe in case your contacts are corrupted in some way during the
onboarding process (network interruptions or some other unforeseen event), or if they’re
corrupted shortly after beginning to use the app, its merge features, or any other bugs that
damage your contacts.
10.0 - Miscellaneous
10.1 - Offline Mode
When the device does not have internet connectivity, such as when the device is in Airplane
Mode, or is out of range of WiFi and a cell tower, the app should clearly indicate that it is
offline. While in this mode, a number of features should be disabled, including but not limited
to:
● CAN create, delete, and modify static contacts and static data on connected contacts
● CAN add, delete, or modify Groups
● CAN add, delete, or modify Privacy Profiles
● CAN edit your own contact information
● CAN modify contact view settings
● CAN view group contacts and initiate group texts and emails
● CAN view notifications that were already received
After modifying any of the above information while offline, the data will be synchronized to
the user’s account on the server when the app comes back online.
10.2 - Notifications
Notifications can be accessed from the Profile/Settings menu. From here, they should be able
to view notifications they’ve received, and view connection requests that they’ve sent in case
they need to cancel them. UPDATE: Connection request notifications are now found on the
Connect screen.
1. Connection Request
Another user has sent them a connection request that they need to respond to. The
details of these notifications can be accessed from the main Connect screen.