FIELD OF THE INVENTIONThe present invention is directed toward a computerized system and method that facilitates the exchange of data between a plurality of authorized users of the system.
BACKGROUNDThe communications world is becoming more and more technologically advanced each year. The era of each person having only one single telephone number is essentially a thing of the past. With the advent of computer technology, including wireless communications such as mobile phones, personal digital assistants (PDA's), laptop or notebook computers, personal computers (PC's) and other electronic devices, keeping track of family, friends, business associates and colleagues, and other acquaintances has become increasingly difficult. Not only does each person typically maintain several different phone numbers, electronic mail addresses, home and business addresses and other types of important information, but such information changes with a greater frequency than only a decade previously.
Historically, one staple of the common household or office has been a manually maintained address book or Rolodex organizer. However, with today's growing and ever-changing contact information, one can spend a substantial amount of time writing, erasing and further updating this important data. Even those that have become accustomed to maintaining a computerized address book are still routinely required to update and/or confirm the contact information of everyone in their address book in an attempt to keep somewhat current. Also, because it has become a daunting task to keep track of each contact's basic contact information, efficiently keeping dozens, hundreds or even thousands of these contacts apprised of one's own recently-changed contact information has become even more complicated. In other words, these types of manually compiled and maintained computer address books have numerous logistical drawbacks and ultimately do not ensure that the information in them is up-to-date and accurate.
In addition, because there are so many modes (i.e. mobile phone, work phone, home phone, e-mail, text message, etc.) of contacting or accessing even one person, it is nearly impossible to know the specific mode which will yield the highest success rate at a particular time on any given day. Oftentimes, substantial guesswork is required by trying two, three, four or more different such modes before reaching a desired contact. In some cases, none of the modes of access may be successful, such as when the desired contact is staying at the residence of a friend or relative.
Moreover, because of the growing number of different modes of access, a greater likelihood of potentially being contacted by undesirable persons or entities (also commonly known as “spam”) exists. Regrettably, current efforts of safeguarding against or blocking spammers have enjoyed just limited success with within certain modes of access. Spamming still runs rampant within other modes of access.
Unfortunately, attempts at creating a computerized address book have not been entirely satisfactory. Such address books typically require manual updating, which can be very time-consuming. Further, these address books often require synchronization between a PC, a PDA, a mobile phone and/or other electronic devices to increase the likelihood that consistent information is maintained. In addition, some electronic address books require the user to download software onto their computer system in order to run the programs. With these types of systems, one must typically be on his or her own device to access such information or other data. Moreover, if the electronic device is ever lost, stolen, broken or destroyed, or if the data on the device becomes lost or unusable e.g. in the case of a hard drive crash, the user may need to completely reprogram the device and re-enter all of the data onto the device, or obtain the data from a backup system, which may also be not entirely up-to-date. Such an unpleasant experience can be extremely frustrating and can require a significant amount of time which most people cannot afford to spend.
In light of the above, a need exists for a manner of keeping track of one's contacts which requires less maintenance by the user. A further need exists for a way to keep business and/or personal contact information up-to-the-minute accurate with a substantially reduced level of time and effort. Still another need exists to provide a system and method that increases the likelihood of successfully accessing another person by the mode desired by that person. Yet another need exists to provide a method of ubiquitously accessing and/or maintaining important data from a greater number of computerized devices.
SUMMARYThe present invention is directed toward a system for transmission of data between a first device operated by a first user and a second device operated by a second user. In certain embodiments, the system includes a database that is configured to be in network communication with the first device and the second device. The database is configured to receive a first set of data input by the first user and a second set of data input by the second user. Further, the database is configured to allow the second user to access a first portion of the first set of data only after the second user authorizes the first user via the database to access a first portion of the second set of data.
In one embodiment, the database is configured to allow the second user to have access to the first portion of the first set of data from the database only after the first user authorizes the second user via the database to access the first portion of the first set of data from the database.
In some embodiments, at least one of the first portion of the first set of data and the first portion of the second set of data includes video data. In certain embodiments, at least one of the first portion of the first set of data and the first portion of the second set of data includes audio data. In some embodiments, at least one of the first portion of the first set of data and the first portion of the second set of data includes geographic location information. In certain embodiments, at least one of the first portion of the first set of data and the first portion of the second set of data includes visual data. In certain embodiments, at least one of the first portion of the first set of data and the first portion of the second set of data includes textual data. In some embodiments, each of the first portion of the first set of data and the first portion of the second set of data are selected from the group consisting of video data, audio data, geographic location information, visual data and textual data. In various embodiments, at least one of the first device and the second device is a mobile phone.
Additionally, or in the alternative, the first portion of the first set of data changes periodically over time. In one such embodiment, the second device is a mobile phone having a storage device, and the database is configured to automatically update the storage device of the mobile phone with the first portion of the first set of data at regular intervals and/or whenever a change to the first portion of the first set of data occurs.
In another embodiment, the present invention is directed toward a method for transmitting data between a first user and a second user. In certain embodiments, the method includes the steps of a first user inputting a first set of data into a database, a second user inputting a second set of data into the database, and the database authorizing access to the second user to a first portion of the first set of data from the database only after the second user authorizes the first user to access at least a first portion of the second set of data from the database.
In certain embodiments, the step of the database authorizing includes the first user authorizing the database to allow the second user to access the first portion of the first set of data from the database.
In some embodiments, the step of the first user inputting includes the first user using a first device to input the first set of data. In various embodiments, the method also includes the step of the first user accessing the first portion of the second set of data from the database using a second device that is electrically decoupled from the first device.
In certain embodiments, at least one of the first portion of the first set of data and the first portion of the second set of data includes video information. In some embodiments, at least one of the first portion of the first set of data and the first portion of the second set of data includes audio information. In various embodiments, at least one of the first portion of the first set of data and the first portion of the second set of data includes geographic location information. In other embodiments, at least one of the first portion of the first set of data and the first portion of the second set of data includes visual data. In some embodiments, at least one of the first device and the second device is a mobile phone.
In certain embodiments, the first portion of the first set of data changes periodically over time. In one embodiment, the second device is a mobile phone having a storage device, and the database is configured to automatically update the storage device of the mobile phone with the first portion of the first set of data at certain time intervals and/or whenever a change is made to the first portion of the first set of data.
In other embodiments, the present invention is directed toward a system for transmission of data between a first device operated by a first user and a second device operated by a second user. In some embodiments, the system includes a database that is configured to be in network communication with the first device and the second device. The database can be configured to receive a first set of data input by the first user and a second set of data input by the second user. Further, the database can be configured to allow the second user to access a first portion of the first set of data only after (i) the second user authorizes the first user via the database to access a first portion of the second set of data from the database, and (ii) the first user authorizes the second user via the database to access the first portion of the first set of data from the database. In one embodiment, one of the first portion of the first set of data and the first portion of the second set of data includes video data, and one of the first device and the second device is a mobile phone.
BRIEF DESCRIPTION OF THE DRAWINGSThe novel features of this invention, as well as the invention itself, both as to its structure and its operation, will be best understood from the accompanying drawings, taken in conjunction with the accompanying description, in which similar reference characters refer to similar parts, and in which:
FIG. 1 is a diagram of a computer system having features of the present invention that illustrates the interconnectivity among a plurality of devices and a server using a communications network;
FIG. 2 is a flow diagram illustrating one embodiment the computer system having features of the present invention, including various functions available during usage of the computer system;
FIG. 3 is a flow diagram of one embodiment of a log in process using the present invention;
FIG. 4A is an embodiment of a contact list screen having features of the present invention;
FIG. 4B is another embodiment of the contact list screen having features of the present invention;
FIG. 4C is an embodiment of a contact screen having features of the present invention;
FIG. 5A is an embodiment of a user data screen having features of the present invention;
FIG. 5B is an embodiment of a customizable data screen including a plurality of data fields;
FIG. 6A is an embodiment of an add contact screen having features of the present invention;
FIG. 6B is an embodiment of a confirmation screen for adding a Contact;
FIG. 6C is an embodiment of an authorization request screen having features of the present invention;
FIG. 6D is another embodiment of the authorization request screen having features of the present invention;
FIG. 6E is a diagram illustrating authorization of one or more modes of access between a plurality of Users of the computer system;
FIG. 6F is an embodiment of an authorization confirmation screen for adding a Contact;
FIG. 6G is an embodiment of a portion of a table illustrating a requirement by a database of the computer system for reciprocity between a plurality of Users of the computer system;
FIG. 6H is a flow diagram illustrating a requirement for reciprocity between a plurality of Users of the computer system;
FIG. 7A is a flow diagram illustrating one or more determinations by the database for providing access to data between a plurality of Users of the computer system;
FIG. 7B is an embodiment of a contact view screen having features of the present invention;
FIG. 7C is another embodiment of the contact view screen having features of the present invention;
FIG. 7D is an embodiment of a text message screen having features of the present invention;
FIG. 7E is another embodiment of the text message screen having features of the present invention;
FIG. 7F is another embodiment of the text message screen having features of the present invention;
FIG. 7G is an embodiment of an electronic mail screen having features of the present invention;
FIG. 7H is another embodiment of the electronic mail screen having features of the present invention;
FIG. 8 is an embodiment of a remove contact screen having features of the present invention;
FIG. 9A is an embodiment of a contact properties screen having features of the present invention;
FIG. 9B is an embodiment of a mobile list screen having features of the present invention;
FIG. 10A is an embodiment of an immediate mode of access screen having features of the present invention;
FIG. 10B is an embodiment of an immediate mode of access schedule screen having features of the present invention;
FIG. 10C is another embodiment of the immediate mode of access schedule screen having features of the present invention;
FIG. 10D is another embodiment of the immediate mode of access schedule screen having features of the present invention;
FIG. 11 is an embodiment of a synchronization screen having features of the present invention; and
FIG. 12 is a diagram illustrating the storage of data in the database of the computer system.
DESCRIPTIONThe present invention provides a social media computer system (also sometimes referred to herein simply as a “system”) and method that facilitates the transmittal and/or retrieval of personal and business information or other types of data by and between one or more users (hereinafter “User”) of the system. Using a reciprocal authorization method, a hierarchical security system, and/or an easier and more efficient manner of modifying information to be provided to other users, each User can access and provide current data with greater security and accuracy.
As an overview,FIG. 1 is a simplified block diagram that illustrates acomputer system10 including aserver12 in communication with a plurality ofdevices14A-D which are operatively connected together using acommunications network16, such as the Internet. Theserver12 includes computer hardware having one or more processors. Further, the server can include software (not shown) that interfaces with and/or connects to thedatabase17. As used herein, the term “database” can include one or more software applications, which can include one or more web applications, that interface with and/or connect to thedatabase17 to perform the functions provided herein. As one example, the software can also be used for formatting various screens illustrated herein that display data from thedatabase17 or provide functionality associated with thedatabase17. Other examples of the functionality of the software applications are provided herein by referring to the various functions performed by thedatabase17.
Theserver12 illustrated inFIG. 1 can function as part of a non-distributed network which includes a database17 (illustrated in phantom) that stores data. In an alternative embodiment, theserver12 can be part of a distributed network that utilizes a plurality of components or nodes in one or more separate geographical locations, with each component performing one or more separate functions of the system. In the embodiment illustrated inFIG. 1, theserver12 can manage and/or control functions related to communications among and between thedevices14A-D, as well as data and other information or communication transfers between thedatabase17 and one or more of thedevices14A-D.
Each of thedevices14A-D can include necessary hardware and software for initiating, controlling and/or displaying images that are generated during usage of thesystem10. Eachdevice14A-D is typically a computer having processing and program execution capability. In the embodiment illustrated inFIG. 1, thefirst device14A can be a notebook computer, thesecond device14B can be a desktop computer such as a personal computer (PC), thethird device14C can be a wireless device such as a personal digital assistant (PDA), and thefourth device14D can be another wireless device such as a wireless phone (also sometimes referred to herein as a “mobile phone”). Importantly, the present invention is suitable for use with any wired or wireless device that can access an integrated network such as the Internet. Moreover, identification of the types ofdevices14A-D in this embodiment is for ease of discussion only. It is recognized that any of thedevices14A-D can be any type of wired or wireless device suitable for use with the present invention, and such devices are not restricted to those devices listed above.
Thecommunications network16 can include a number of communication sub-systems or apparatuses. Eachdevice14A-D is able to electronically communicate with thecommunications network16 using an Internet Service Provider (ISP) or an online service provider, such as America Online, AT&T or Earthlink as non-exclusive examples. Access to such service providers is achieved through local telephone, cable, digital subscriber line (DSL) or another suitable communications connection from eachdevice14A-D. However, the system operates equally as effectively even when thedevices14A-D are electrically decoupled from one another14A-D and/or thedatabase17.
Amouse18, akeyboard20, akeypad22, auditory or optical recognition devices (not shown) or another input device can be included in one or more of thedevices14A-D, which enables the User to initiate and/or carry out the User's commands. Acomputer display screen24 can provide the User with visual data and/or other information from thedatabase17 while using thesystem10. Additionally, audio information from thedatabase17 can be queried, stored and/or communicated to the User through thecorresponding device14A-D.
Theserver12 can also communicate with thecommunications network16 such as the Internet through a local connection and a service provider to the network. Theserver12 can store all user data in thedatabase17, which can be a Structured Query Language (SQL) database, for example. Further, theserver12 can access thecommunications network16 to transfer or transmit information and/or data to thedevices14A-D. As provided herein, each User can have a unique user identifier that allows such User to access thedatabase17 using any or all of thedevices14A-D. Alternatively, each of thedevices14A-D can have an address associated with it that theserver12 uses in connection with communication transfers. Additionally, theserver12 has an address that enables desired communications from thedevices14A-D to reach theserver12 in the context of initiating the transmittal, storage and/or retrieval of data. Moreover, in one embodiment, the data transmitted between theserver12 and thedevices14A-D is encrypted using Secure Sockets Layer (SSL) or another suitably effective data encryption method.
Theserver12 can include a plurality of server units forming a server array (not shown) that can function as a multi-processing unit capable of handling requests and/or queries from a substantial number ofdevices14A-D, e.g. thousands or millions. With this design, a large number of data transfers can occur simultaneously from a plurality of devices. In one embodiment, no downloading of software is required by thedevices14A-D to access thedatabase17. Alternatively, eachdevice14A-D can have identical or substantially similar software which can be obtained by downloading the software from theserver12.
As described herein, each User of thesystem10 can compile a list of individuals or entities with whom the User wants to keep in contact and/or exchange information. The list of contacts is also referred to herein as a contact list, which includes certain information or other data regarding the individual or the entity (hereinafter a “Contact”). As used herein, the terms “User” and “Contact” are interchangeable. In other words, in the embodiments provided herein, a Contact can be a User, or vice versa. Moreover, for the sake of simplicity, the description provided herein focuses on a limited number of Users and Contacts. However, it is recognized that the present invention can accommodate any number of Users and/or Contacts.
As provided herein, the present invention automatically provides a User with current personal and/or business information as input by each Contact into thedatabase17. Stated another way, in one embodiment, the User does not need to manually input any information of the User's Contacts in order to receive immediate, up-to-the-second data regarding each Contact in the User's contact list. The User can also provide his or her own data to a limited number or all of the Contacts without the time requirement of individually providing such information to each separate Contact. In other words, such information can be provided categorically, accurately and efficiently. Moreover, the level or extent of information to be provided to each Contact can be precisely controlled by the User. In one embodiment, the agreement to exchange information between two Users must be reciprocal, or no information is transmitted between the two Users.
As background, the present invention is suitable for use over the Internet by using the World Wide Web. Further, thesystem10 can also effectively be used in an Intranet environment. Additionally, thesystem10 can be used in a Wide Area Network (WAN) and/or a Local Area Network (LAN) setting. Moreover, the present invention performs equally well in a wired network over which the information is transmitted, or in a wireless environment.
FIG. 2 is a simplified flow diagram illustrating one embodiment of some of the features and functions of the present invention. It is recognized thatFIG. 2 is merely illustrative and is not intended to be limiting in any manner. In an Internet setting, the User can access a system website (step210) from any device that has web browser capabilities. For example, such access can occur from the device's web browser (i.e. Internet Explorer, Netscape or Mozilla as non-exclusive examples) or a Wireless Application Protocol (WAP) browser (i.e. Nokia WAP browser or Openwave WAP browser as non-exclusive examples) for wireless devices by inputting the appropriate uniform resource locator (URL) to gain access to a home page of the facilitating website (step210). Alternatively, an application can be downloaded and/or installed onto a device, which can use the Internet to connect to thedatabase17. Thedatabase17 can then be queried to populate the application downloaded and/or installed onto the device, without the necessity of a web browser.
In the embodiment illustrated inFIG. 2, the User can then select from various available options. For example, the User can elect to seek information regarding the system (step212), register with the system (step214), or log in to the system (step216) to access additional functions. It is recognized that the options available to the User as illustrated inFIG. 2 are not exclusive of all options that can be exercised by the User, but are representative examples of one or more types of options commonly available to the User. Additionally, not all options illustrated inFIG. 2 are required for thesystem10 to be effective.
For example, obtaining information (step212) can provide the User with information about thesystem10, which can be in the form of Frequently Asked Questions (FAQ's) (step218), services provided to Users of the system, security information such as retrieval of a lost password (step220), requests for feedback, and other relevant information, and may include hyperlinks to sub pages for providing this information.
The User can opt to register (step214) with thesystem10. Upon selecting the registration option (step214), the User can be requested to review terms of a user agreement (step222), and indicate acceptance or rejection of the terms. In the event the User accepts the terms of the agreement, the User can then register with the system (step224). During the registration process (step224), the User provides basic information to the system, which can include the User's name and/or electronic mail address (step226), a password (step228) and/or a username (step230), for example. The information input by the User is provided to the database17 (illustrated inFIG. 1), and a unique user-specific identifier can be provided to the User by thedatabase17. The user-specific identifier can be a numeric, alphanumeric or alphabetical identifier, or any other suitable unique identifier such as a username chosen by the User or by thedatabase17. If chosen by thedatabase17, the identifier can be provided to the User by electronic mail, facsimile, or by another suitable means, provided a requisite level of security can be maintained. Additionally, procedures can be available to the User in the event the User forgets his or her user-specific identifier.
FIG. 3 is a flowchart that outlines the process of logging in (step216) to the website (step210). Once the User has elected to log in (step320), the User is prompted for basic information that can include the User's unique identifier, username and/or password, for example. Additional information can also be requested to verify the User's identity. Thedatabase17 is queried (step322) to determine if the information submitted by the User is consistent with records maintained in thedatabase17. Thedatabase17 then determines whether or not the log in information, i.e. the password and identifier input by the User matches the corresponding information in thedatabase17 for the User (step324) based on the data input by the User at the time of registration (step224 illustrated inFIG. 2). If it is determined that the log in information provided by the User does not match the information provided at the time of registration (step224), the log in is invalid. The User is notified that the attempt to log in was unsuccessful, and the User is returned to the User Log In page (step320). The User can then attempt to log in (step216) once again, although provisions are included to limit the number of unsuccessful log in attempts over time by a User. If, however, thedatabase17 determines that the User has correctly provided the required log in information, the log in is valid, and the User is then provided access to the User's contact list (step232).
Referring back toFIG. 2, once the User accesses his or her contact list (step232), the User can have one or more options that can be performed in any desired order, which can vary from the order provided herein. Further, each of the options need not be exercised by the User at any given web session. In this embodiment, some of the general functions that the User can perform include editing and/or updating (step234) the User's own information (step236) and/or password (step238) currently in thedatabase17. The User can also add a new Contact (step240), and view and/or access information from one or more Contacts (step242), which can include sending an electronic mail message to the Contact (step244), sending a text message to the Contact (step246) and/or accessing a website of the Contact (step248). The User can also remove a Contact (step250) from the User'scontact list232. Further, the User can view and/or edit the properties (step252) of the Contacts, which can include assigning or changing a group for any Contact (step254), assigning or editing a Clearance Level for any Contact (step256) and/or adding or removing a Contact to or from the User's Mobile List (step258). The User can print (step260) a portion or all of the User'scontact list232, and view a User directory (step262) of some or all Users that have registered with thesystem10. In addition, the User can access an immediate mode of access (step264) of any Contact (step266) or the User can edit the User's own immediate mode of access (step268). Moreover, the User can create or edit a future mode of access schedule of the User (step270), and/or directly send a text message (step272) to a Contact, as non-exclusive examples.
It should be recognized that each of the output screens described herein are representative of an output of the database17 (illustrated inFIG. 1) including information stored in thedatabase17. Further, the actual screen view of any of the other exemplar screens described herein can vary due to the vast creativity that can be used to generate any screen, including the colors, font, size, layout, functionality, content, sound, etc. For example, the positioning of the functions can be similar to that illustrated in the Figures, or such positioning can vary. The type of functions included on each screen can vary widely from that illustrated in the Figures, provided the requisite functionality is included to carry out the intent of the present invention as provided herein.
FIG. 4A illustrates one representative embodiment of acontact list screen432 which is accessed once the User gains access to thecontact list232. The screen view illustrated inFIG. 4A is particularly suited for a PC, a notebook computer or the like, which typically utilize screens having relatively large dimensions. Alternatively, appropriately formatted screen views can be used with any wireless devices, such as mobile phones, PDA's, handheld electronic mail devices, pagers, etc., which commonly utilize screens having smaller dimensions.
In this embodiment, a hypothetical User (Bob) has accessed hiscontact list screen432, which also includes additional functions that are easily accessible. In the embodiment illustrated inFIG. 4A, three of the User's Contacts appear on the screen in acontact viewing region434. The amount of information included in thecontact viewing region434 can vary. In one embodiment, a predetermined number of Contacts are accessed in thecontact viewing region434. In an alternative embodiment, the User can specify the number or type of Contacts that can be viewed at one time on the User'scontact list screen432.
In the embodiment illustrated inFIG. 4A, thecontact viewing region434 includes thename436 of each Contact, agroup designation438 for each Contact, a unique user-specific identifier440 for each Contact, and an immediate mode ofaccess442 for each Contact. It is recognized, however, that the amount and/or type of information and the number of functions illustrated inFIG. 4A can be varied to suit the design requirements of thedatabase17 and thesystem10, and thatFIG. 4A is merely representative of one example of thecontact list screen432. For example, the information included in thecontact viewing region434 can be customized by the User so that the name of each Contact is on the far left side of thecontact viewing region434, with the other information appearing to the right of the name. Alternatively, for instance, the User may desire more or less information for each Contact to be displayed.
Thegroup designation438 indicates one or more groups that the User has designated for each Contact. As provided in greater detail below, the User can organize the Contacts into groups that can make the number of Contacts in the User'scontact viewing region434 more manageable.
The user-specific identifier440 can be any series of numbers, letters or other symbols that the Contact has chosen, or that has been provided to the Contact by thedatabase17. For example, inFIG. 4A, Jane Doe has either been assigned or has chosen thenumber1145 as her user-specific identifier440.
The immediate mode ofaccess442 for each Contact instantly provides the User with a specific way that the User can currently access or otherwise contact one or more such Contacts on the User's contact list. The immediate mode of access can also be referred to herein as a “virtual location” or a “means of access”. Stated another way, each Contact can determine and then input into thedatabase17 the precise mode that the User can access such Contact in real time, e.g. at the moment that the User is viewing the immediate mode ofaccess442. For example, if Bob wants to know how he can reach Betty Jones, Betty has provided her immediate mode ofaccess442, which is a phone number (555-555-4001) where she can be contacted at that moment in time. From the perspective of Bob, he may be completely unaware of Betty's physical or geographical location, but he knows he can reach Betty using the immediate mode ofaccess442 Betty has provided. Should Betty update her immediate mode ofaccess442, Bob's contact list would accurately reflect the updated immediate mode ofaccess442 input by Betty.
The type of information that can appear as the immediate mode ofaccess442 can vary depending upon the information provided to thedatabase17 by each Contact. For instance, the immediate mode ofaccess442 can be in the form of a home telephone number, a work telephone number, a mobile phone number, an electronic mail address, a pager number, an actual geographical address or location, a message service number such as a text messaging number, or any other suitable mode of access. As a further example, the Contact may be staying at a cabin in the mountains rented by her brother-in-law. The Contact can input a phone number of the cabin or the Contact's mobile phone as the Contact's immediate mode ofaccess442, and this information can then be accessed by any User with whom the Contact has the appropriate level of reciprocity or has otherwise agreed can view the Contact's immediate mode ofaccess442, as provided herein.
Alternatively, the Contact is not required to provide any immediate mode ofaccess442, and can simply leave the data field blank, or choose “None”, as non-exclusive examples. Still alternatively, the Contact can provide any specific information she desires, such as directions to a residence, or a note or instruction that she would like certain Users to see upon accessing such Users' own contact lists which show Betty as a Contact. Because of the wide variety of immediate modes ofaccess442 that can be provided to thedatabase17 by each Contact, the foregoing examples are merely representative, and are not intended to be limiting in any way.
The User can also view the User's own immediate mode ofaccess444 from thecontact list screen432. This immediate mode ofaccess444 is transmitted to all Contacts on Bob'scontact list232 whom Bob has agreed to provide such access, e.g. Contacts on Bob'scontact list232 that have the requisite clearance level, as explained below. This feature allows the User to note what the User has designated as his own immediate mode ofaccess444, without having to navigate to other areas of the website for such information. For example, in the event Bob has forgotten to change his immediate mode ofaccess444 from his mobile phone to his home phone once he has arrived home, Bob could instantly see his oversight and change his immediate mode ofaccess444 accordingly.
In this embodiment, the User can use agroup selection menu446 to determine which groups of Contacts are displayed at a given time. For example, if the User is seeking information from certain family members, the User can select a “Family” group from thegroup selection menu446, causing only those Contacts the User has designated as “Family” to appear in thecontact viewing region434. As provided in greater detail below, any number of different types of groups can be used in thegroup selection menu446, such as “Family”, “Business”, “Friends”, “All”, “Special”, etc. With this design, the User can more readily and efficiently access information regarding a specific Contact on the User's contact list without the need of wading through hundreds or thousands of individual Contacts.
Thecontact list screen432 can also include additional information and/or functions. For example, from thecontact list screen432 illustrated inFIG. 4A, the User can update or otherwise modify the User's own information. In the embodiment illustrated inFIG. 4A, for example, the User can select a hyperlink entitled MyData234, which can allow the User to input data specific to the User. In one embodiment, the User is then taken to another screen that provides the User with various options.
FIG. 4B is another embodiment of thecontact list screen432 which is accessed once the User gains access to thecontact list232 from a wireless and/or handheld device such as amobile phone14D (illustrated inFIG. 1). In this embodiment, the User may need to navigate through one or more screens to obtain the functionality that can be found in thecontact list screen432 illustrated inFIG. 4A. As illustrated inFIG. 4B, thecontact list screen432 can include thenames490 of the Contacts, through which the User can scroll to locate one or more specific Contacts. Once the specific Contact is located, the User can highlight and select the Contact to reveal another screen which provides various data fields for information input by the Contact.
FIG. 4C is an embodiment of acontact screen433 that is accessible with a wireless device such as amobile phone14D (illustrated inFIG. 1). The contact screen illustrated inFIG. 4C provides the name of the Contact, the immediate mode ofaccess442 for the Contact, and a list of additional functions that the User can select to navigate to other screens that may contain data input by the Contact or may include additional functionality. In this embodiment, the contact screen illustrated inFIG. 4C includes functions such as viewing the data input by theContact242, synchronizing the data input by the Contact with the memory of themobile phone274, sending electronic mail to theContact244 through the database17 (illustrated inFIG. 1), sending a text message to theContact272, and viewing and/or modifying the User's properties for theContact252. It is recognized that additional functions as provided herein can be accessed from thecontact screen433 by scrolling up or down thecontact screen433, or by selecting one of the visible functions illustrated inFIG. 4C.
FIG. 5A is an example of auser data screen534 on which the User can edit the User'sown information535, change the User'spassword537, or return539 to the User's contact list screen432 (illustrated inFIG. 4A). It is recognized that additional options can also be provided to the User. However, for the sake of simplicity, theuser data screen534 includes only the foregoing options. Further, as with any of the screens provided herein, the title of the screen is provided for convenience only, and can vary from those indicated herein.
FIG. 5B is one embodiment of anedit Information screen535A that the User can be taken to in order for the User to enter, manipulate, modify or otherwise update the User's own data in the database17 (illustrated inFIG. 1). In this embodiment, the User can input data into one or more data fields541 (various examples illustrated inFIG. 5B). Any number ofdata fields541 can be included on thisscreen535A. Further, the type of information requested in eachdata field541 can be varied to suit the design requirements of thesystem10. For example, in the embodiment illustrated inFIG. 5B, the User can input data into thedatabase17 relating to personal information, home address and phone numbers, work information, and on-line and/or mobile device information as non-exclusive examples. In one embodiment, the data fields541 can be categorized, as illustrated inFIG. 5B. Alternatively, the data fields541 can be separated by additional or different categories, or not categorized at all.
Any relevant data can be requested and input into thedatabase17 by the User. For instance, the data fields541 can request information relating to the User's medical condition, financial information, insurance information, legal information, important dates, family history, personal notes by the User, and/or basically any other information that may be desirable or useful to one or more of the User's Contacts, and which the User wants to provide to such Contact(s). It should be recognized that the data fields541 illustrated inFIG. 5B are not in any way intended to be limiting in the type of information and/or data that can be provided by the User into thedatabase17. For example, data that can be provided to and/or retrieved from thedatabase17 can not only include text information, but such data can also include audio and/or video information.
Additionally, in one embodiment, the User is also requested to select aprivacy level543 for one or more data fields541. In general, theprivacy level543 is used in conjunction with a clearance level (not shown inFIG. 5B) that the User assigns to each Contact to customize which data fields541 of the User each Contact in the User's contact list will be able to view, as described in greater detail below. In the embodiment illustrated inFIG. 5B, the User can select theprivacy level543 from a drop-down menu. Alternatively, theprivacy level543 can be manually input, or selected in any other suitable manner. In another embodiment, adefault privacy level543 is provided for eachdata field541, e.g. “Medium”, although the default privacy level setting can be established at any level as required by the User.
In this embodiment, the User can specify the privacy level to be “High”, “Medium” or “Low”. However, any type of hierarchical levels can be used. For example, a scale of 1 to 5, first to tenth, none to all, least to most, or any other suitable scale can be used. As an overview, provided the clearance level assigned to the Contact is at least as great as theprivacy level543 of aparticular data field541, the Contact will be able to viewsuch data field541. Conversely, if the clearance level for the Contact is hierarchically lower than theprivacy level543, the Contact will not be able to view theparticular data field541.
In an alternative embodiment, the User can toggle eachdata field541 between an “on” position and an “off” position for each Contact. In this embodiment, no clearance level needs to be assigned to the Contact because access to the data fields541 by the Contact are solely controlled by this binary type ofprivacy level543.
Once the User has input data into thedatabase17 to the User's satisfaction, the User can then be asked to update thedatabase17 or cancel the recently-input data.
Additionally, the User can elect to change the User's password. For example, from the user data screen534 (illustrated inFIG. 5A), the User can select the ChangeMy Password hyperlink537 which will take the User to a screen (not shown) that allows the User to change the User's password for security reasons or any other purpose. Additionally, the User can select a Return to MyContacts hyperlink539 that takes the User back to the User's contact list screen432 (illustrated inFIG. 4A).
The User can add any number of Contacts to the User'scontact list232. In one embodiment, the User can select anAdd New Contact240 option from the contact list screen432 (illustrated inFIG. 4A). By selecting this option, the User can be taken to another screen having functionality allowing the User to add a Contact.
FIG. 6A is an embodiment of an addnew contact screen640, which can be accessed from the “Add New Contact” hyperlink240 (illustrated inFIG. 4A). From the addnew contact screen640, the User can specify a desired Contact that the User desires to add to the User's contact list232 (illustrated inFIG. 4A). In this embodiment, the User can input an electronic mail address of the desired Contact, or can input the user-specific identifier,e.g. #1001, of the Contact if known to the User. In alternative embodiments, the User can input any other relevant information that will specifically identify the desired Contact. Still alternatively, the User can utilize a hyperlink from the User directory262 (depicted inFIG. 2), as described in greater detail below.
Further, in the embodiment illustrated inFIG. 6A, the User can select aninitial clearance level642 for the desired Contact. As indicated above, theclearance level642 operates in conjunction with the privacy level543 (illustrated inFIG. 5B) to determine which data fields541 (illustrated inFIG. 5B) entered into thedatabase17 by the User the Contact will be able to view. In an alternative embodiment, the clearance level can be assigned to the desired Contact at a later point in time, e.g. once the desired Contact authorizes the User to gain access to the desired Contact's data.
The User can select from a plurality ofclearance levels642 for each Contact, which can be in the form of a drop-down menu644 or another suitable method for selecting theclearance level642. Similar to theprivacy level543 designations, theclearance level642 designations can vary. In one embodiment, theclearance levels642 are hierarchical such that theclearance level642 can be either “High”, “Medium” or “Low”. In this example, a Contact assigned by the User with a “High”clearance level642 can have access to a greater number of the User's data fields541 than a Contact having a “Medium” or “Low”clearance level642. Further, a Contact having a “Medium”clearance level642 can have access to a greater amount of the User's data than a Contact having a “Low”clearance level642. With this design, the User can control and/or customize the amount of data, and the specific types of data, that can be accessed by each Contact in the User's contact list.
Alternatively, theclearance levels642 can be on a numeric scale, i.e. 1 through 3, 1 through 5, 1 through 10, etc. Still alternatively, any other suitable hierarchical system can be utilized for determiningclearance levels642. Generally, the greater number of designations for theclearance levels642 andprivacy levels543, the more precisely the User can control the Contact's access to the User's data in thedatabase17. In one embodiment, theclearance level642 of the Contact is not specifically revealed to the Contact, but is only manifested by the extent of information to which the Contact has access from the User. Alternatively, the Contact can be provided with access to theclearance level642 that has been assigned by the User for that Contact. In either event, the Contact is unable to directly modify theclearance level642 assigned to that Contact by the User.
Once the user-specific identifier and the clearance level are input into thedatabase17 by the User as illustrated inFIG. 6A, thedatabase17 is queried to determine if the user-specific identifier is valid, or if the user-specific identifier is a duplicate Contact on the User'scontact list232. If the user-specific identifier is valid and is not a duplicate in the User'scontact list232, thedatabase17 is queried to insert specified information of the new Contact into the User'scontact list232. In one embodiment, if the User is already authorized by the Contact to view some or all of the Contact's data, the name of the Contact can appear in the User'scontact list232. If the User is not authorized to view the Contact's information, in one embodiment, only the user-specific identifier or other non-personal information appears in the User'scontact list232.
FIG. 6B is an embodiment of anotification screen646 which confirms to the User that the User has added a desired Contact to the User's contact list232 (illustrated inFIG. 4A). In the embodiment illustrated inFIG. 6B, the User has added a Contact with the user-specific identifier of #1001. Further, in one embodiment, the desired Contact can be sent an electronic mail message requesting action on the part of the desired Contact to either accept or reject the User's request for authorization. The electronic mail message can be customizable so that the User can personalize the message to the desired Contact. Alternatively, the electronic mail message can be predetermined and unalterable.
FIG. 6C is an embodiment of anauthorization screen648 that can be sent by the database17 (illustrated inFIG. 1) to the desired Contact following the User adding the desired Contact to the User's contact list232 (illustrated inFIG. 4A). In this embodiment, the desired Contact can be taken directly to thisauthorization screen648 upon logging on to thesystem10. Alternatively, the desired Contact can be directed to theauthorization screen648 at another time while using thesystem10.
In this embodiment, the desired Contact is provided thename650 of the person or entity (John Johnson) requesting authorization from the Contact. The desired Contact is requested to either authorize652 the User to gain access to some or all of the desired Contact's data, or reject654 such authorization, thereby denying any access by the User to the data input by the Contact into thedatabase17. In the event the desired Contact provides authorization to the User, the Contact can then select aclearance level656 that is applicable only to John Johnson from a drop-down menu658 or another suitable selection method. With this design, the Contact can control the data input by the Contact to which John Johnson has access, as described herein.
FIG. 6D is another embodiment of theauthorization screen648A that can be sent by the database17 (illustrated inFIG. 1) to the desired Contact following the User adding the desired Contact to the User's contact list232 (illustrated inFIG. 4A). In this embodiment, the Contact can also determine which modes ofaccess660 the User is authorized to use in order to communicate with the Contact. In this embodiment, the Contact can select among various predetermined modes ofaccess660, such as electronic mail, telephone, wireless phone, wireless message, and instant message, which are provided merely as representative examples. It is recognized that numerous other modes of accessing an individual or entity exist, and that the present invention can be equally effective with any such mode ofaccess660.
In this embodiment, the Contact has authorized the User to access specific modes ofaccess662 indicated by the Contact, namely, telephone and wireless phone. Thus, when the User views the data of the Contact, the User will be provided access to the Contact's telephone number(s) and wireless phone number(s). Further, the Contact has determined that the authorized modes ofaccess662 for the User to communicate with the Contact are also by telephone and wireless phone. To the extent that thesystem10 controls direct access between the User and the Contact using the stated modes ofaccess660, any attempt by User to view an unauthorized mode ofaccess664, and/or contact the Contact by such unauthorized mode of access, i.e. electronic mail, wireless message or instant message, would be denied by thesystem10. With this design, thesystem10 can inhibit or prevent contact between the User and the Contact by modes not authorized by the Contact, thereby reducing unwanted solicitations, spammers, telemarketers, and the like.
FIG. 6E is a simplified diagram illustrating one embodiment of how each User can use the authorization process outlined inFIG. 6D to specify one or more modes ofaccess660 for each Contact on the User's contact list. In this manner, the User can control (i) access to data which includes particular modes ofaccess660 of one or more other Users, and/or (ii) by which modes ofaccess660 such User can be contacted by one or more of the other Users. In this embodiment User A, User B and User C have authorized each other to access some or all of each other's data in thedatabase617. As illustrated inFIG. 6E, each User accesses thedatabase617 via the Internet. Specifically, User A can authorize User B to access any of the eight modes of access660 (1-8) listed inFIG. 6E so that when User B retrieves User A's data from thedatabase17, User B will be allowed to view each of the numbers (or other data) associated with the eight specified modes ofaccess660. Additionally or alternatively, User A can authorize User B to utilize any of the eight modes of access660 (1-8) to communicate with User A. In this example, User B has authorized User A to access User B'smobile phone #1 and text message number modes of access660 (2 and6), and/or has authorized User A to utilize either of these modes of access660 (2 and6) to communicate with User B.
Somewhat similarly, User A has authorized User C to access User A's facsimile,mobile phone #1, work phone and text message number modes of access660 (1,2,5 and6), and/or has authorized User C to utilize the same modes ofaccess660 to communicate with User A. User C has authorized User A to access User C's facsimile,mobile phone #1, home phone andelectronic mail #2 modes of access660 (1,2,4 and8), and/or has authorized User A to utilize the same modes ofaccess660 to actually communicate with User C.
In this example, User B also has authorized User C to access User B'smobile phone #2, work phone, text message number andelectronic mail #1 modes of access660 (3,5,6 and7), and/or User B has authorized User C to utilize such modes ofaccess660 to actually communicate with User B. User C has authorized User B to access User C's home phone andelectronic mail #1 modes of access660 (4 and7), and/or User C has authorized User B to utilize these same modes ofaccess660 to communicate with User C.
FIG. 6F is an embodiment of aconfirmation screen668 that the Contact can receive once the Contact has authorized the User (John Johnson) to gain access to some or all of the Contact's data input by the Contact into the database17 (illustrated inFIG. 1). As indicated, an electronic mail can also be automatically sent to the User, notifying the User that the Contact has accepted the User's request for authority for the User to access the Contact's data from thedatabase17.
The methodology for adding a Contact can vary depending upon the design requirements of thedatabase17. When adding a desired Contact, this Contact may or may not already be registered with thesystem10. If the desired Contact has previously registered (step214 illustrated inFIG. 2) with thesystem10, a first protocol can be followed by thedatabase17. If the desired Contact has not previously registered with the system, a second protocol can be followed. The first and second protocols can vary depending upon the requirements of thesystem10.
In one embodiment of thesystem10, the database can require reciprocity between the User and the Contact before (i) any data input into thedatabase17 by the Contact can be accessed by the User, or (ii) any data input into thedatabase17 by the User can be accessed by the Contact. Thus, in this embodiment, in order for the User to gain access to at least a portion of the data input by the Contact, the User must also provide the Contact with access to at least a portion of the data input by the User. Stated another way, in this embodiment, there must be a reciprocal agreement between the User and the Contact to share information, although the extent of the information shared can vary so that the information shared can be disparate as between the User and the Contact. In other words, the User may agree to provide the Contact with access to certain data fields541 (illustrated inFIG. 5B), while the Contact agrees to provide the User with access to all data fields541.
In an alternative embodiment, the User and the Contact must agree to share information between them to a substantially similar degree. For example, thesystem10 can require that both the User and the Contact have clearance levels642 (illustrated inFIG. 6A) that are either the same, or within a predetermined number of hierarchical steps from one another. In yet another embodiment, the agreement to share does not need to be reciprocal unless one of the User and the Contact so declares. In still another embodiment, the User can manually enter information and/or data relating to a Contact who has not as yet authorized the User to access the Contact's data from the database, or who has not as yet registered with thesystem10.
For example, in embodiments where a reciprocal agreement is required between the User and a desired Contact, in one embodiment of the first protocol, the User can begin the process of adding the desired Contact by inputting the appropriate user-specific identifier for the new Contact when prompted by thedatabase17. Alternatively, the User can input different information specific to the Contact such as an electronic mail address of the Contact, the username of the Contact, or some other appropriate designation for the Contact. Thus, in one embodiment, the User must know some information about the Contact in order to begin the process of adding the Contact to the contact list of the User, thereby reducing unwanted requests for authorization from persons or entities unknown to the desired Contact. Alternatively, the User can simply input the name of the desired Contact, which can be input by the User, or can be taken from a user directory262 (illustrated inFIG. 2) which lists one or more of the users of thedatabase17, as described in greater detail below. Once the User has input the required information into thedatabase17, the Contact can then be notified by thedatabase17 or by other means that the User is attempting to establish a data link to exchange information with the Contact.
At this point, the Contact can have the option of accepting the request, thereby establishing the reciprocity necessary to exchange information. If the Contact elects to accept the request, the Contact can also be asked to input a clearance level for the User. In other words, because the Contact would understand that the User and the Contact will have a reciprocal agreement, the Contact can have the opportunity to determine the extent that the User will be able to access information of the Contact from thedatabase17. Alternatively, the Contact can reject the request, at which point the User would not have the required reciprocity, and would not have access to any of the Contact's data that may be stored on thedatabase17. In this event, the User can be notified of such rejection by the Contact via electronic mail, by a message from theserver12, or by another mode of accessing the User. Further, in one embodiment, the User can no longer request authorization from such Contact.
With the second protocol, the desired Contact can receive notification that the User is attempting to add the desired Contact to the User's contact list. This notification can be sent to the Contact by electronic mail, or by any other suitable means. Further, the notification can include information regarding the functions of thesystem10, along with a hyperlink to the website210 (illustrated inFIG. 2) on which thedatabase17 can be accessed. Moreover, the desired Contact can be requested to register with thesystem10, and accept User's request that the User and the desired Contact be linked in order to exchange information from thedatabase17. Once the desired Contact has registered with the system, reciprocity can be achieved using the first protocol described above, for example.
FIG. 6G is a portion of a simplified table that can be maintained in the database17 (shown inFIG. 1) illustrating the requirement for reciprocity between a User and a Contact. In this embodiment, theUser670 is identified within the database as “19”. The first column shows identification numbers ofcertain Users670 that have input their data into thedatabase17. The second column shows identification numbers ofcertain Contacts672 that are on the contact list232 (illustrated inFIG. 4) of therespective Users670 in the same horizontal row. The third column identifies theclearance level656 that theowner670 has assigned to theContact672 in the same horizontal row.
For example, thefirst row674 shows a User “1”, a Contact “19” and a clearance level of “3”. To thedatabase17, this means that the Contact “19” is on the contact list of the User “1”, and the User “1” has assigned a thirdlevel clearance level656 to the Contact “19”. However, in this embodiment, unless another row having reciprocal information is present, thedatabase17 will not allow the exchange of data between the User “1” and the Contact “19” to occur. As illustrated in thefifth row676, the required reciprocity exists. In thefifth row676, the User “19” has authorized the Contact “1” at the thirdlevel clearance level656. Therefore, because “1” has authorized “19”, and “19 has authorized “1”, thedatabase17 will allow “1” and “19” to exchange and/or access the information of the other.
In contrast,FIG. 6G illustrates that the same reciprocity is not present between Users “17” and “19”. In this example, User “17” has authorized Contact “19” to access some or all of the data of User “17” in thefourth row678, but User “19” has not authorized Contact “17” to access the data of User “19”. Thus, because there is no reciprocity between these Users, no data can be accessed by either User “17” or “19” when reciprocity is required.
FIG. 6H is a flow diagram further illustrating an embodiment of the present invention wherein the exchange of data requires reciprocity. The example illustrated inFIG. 6H includes two Users utilizing the present invention. Although only two Users are described, it should be recognized that thesystem10 can be used by thousands or even millions of Users in the same manner. Further, althoughFIG. 6H refers to “personal” information and “current contact information”, it is recognized that thesystem10 provided herein is equally effective with all types of information.
In this example,User1inputs User1's data to thedatabase617 atstep680.User1 also addsUser2 toUser1's contact list atstep682. In this embodiment, no information can be exchanged betweenUser1 andUser2 at this point. Atstep684,User2inputs User2's data into thedatabase617. Further,User2 addsUser1 toUser2's contact list atstep686. At this point in time,User1 andUser2 have reciprocal access to each other's data. OnceUser1requests User2's data atstep688, the data will be retrieved from thedatabase617 atstep690 and will be displayed toUser1 atstep692. Somewhat similarly, onceUser2 requests User l's data atstep694,User1's data will be retrieved from thedatabase617 atstep696 and displayed toUser2 atstep698. The extent of the data received by each User can vary depending upon the clearance levels and the privacy levels of each User, as provided herein.
Referring back toFIG. 2, the User can view thedata242 input by one or more of the Contacts on the User'scontact list232. In one embodiment, the User highlights a Contact on the contact list, and selects a “View”option242. The database17 (illustrated inFIG. 1) is then queried to determine if the User is authorized to view the information of the specific Contact selected, e.g. if reciprocity is required, has the Contact authorized the User to access some or all of the Contact's data? If the User is authorized, the clearance level and privacy level settings are queried from thedatabase17.
As an overview, the privacy level settings are queried to determine how secure or restricted the Contact wants each field of the Contact's data to be. In one embodiment, each data field has a privacy level setting that can be established by the Contact. In alternate embodiments, only certain fields can have privacy level settings. Based on the results of the query, thedatabase17 determines to what extent, if any, the User is authorized to view the data input into thedatabase17 by the Contact. For example, if the Contact has not authorized the User to view the Contact's personal information, then the User is notified by theserver12 that he or she does not have access to the requested Contact's information. On the other hand, if the Contact has authorized the User to view any portion of the Contact's information, the information is displayed to the User in accordance with the clearance level that has been established by the Contact for the specific User.
FIG. 7A is a flow chart illustrating in greater detail one embodiment of the determination by the database17 (illustrated inFIG. 1) of the extent to which the User can view the Contact's data in thedatabase17. In this embodiment, a query of whether the User has authorization to view the data from a selected Contact occurs atstep700. As provided above, authorization can occur when the Contact adds the User to the Contact's contact list or otherwise authorizes the User as provided herein. If authorization has not occurred, a “not authorized” message is displayed atstep701. Atstep702, the specific clearance level by the Contact for the selected User is determined.
Atstep704, for each data field of the Contact, the privacy level of the data field is compared to the clearance level assigned to the User by the Contact. The privacy level of each data field can be measured against the clearance level to inhibit unauthorized information from being provided to the User. Atstep706, thedatabase17 is queried to determine if the User's clearance level is greater than or equal to the privacy level setting for a first data field. If it is not, the User is not allowed to view the first data field atstep708. If the clearance level is greater than or equal to the privacy level setting for the first data field, the data is retrieved atstep712 for eventual display to the User.
Regardless of the outcome for the first data field atstep706, thedatabase17 is then queried to determine if there are additional data fields to review atstep710. If there are additional data fields to review, e.g. a second data field, then the process returns to step704, and steps704 through710 are repeated until there are no more data fields to review. Once there are no more data fields to review, a display of the authorized information is provided to the User atstep714.
FIG. 7B illustrates an embodiment of acontact data screen714B that can be displayed to a User who has requested to view information from John Johnson having a user-specific identifier of #1144, for example. In this embodiment, the name, birthdate, home address, work address, a plurality of phone numbers, e-mail addresses and a website of the Contact are displayed to the User. It is recognized thatFIG. 7B represents only one of any number of possible displays of information, which can vary depending at least in part upon the information input by the Contact, the clearance level of the User as determined by the Contact, and the privacy level settings established by the Contact.
Thecontact data screen714B can also include hyperlinks which allow the User to perform various functions directly from thecontact data screen714B. For example, the User can use a keyboard, mouse or other device to highlight and/or click on anelectronic mail hyperlink716, which can take the User to another screen or electronic mail program which would allow the User to compose and send an electronic mail message to the Contact. Additionally, the User can access a website input by the Contact using awebsite hyperlink718. Further, the contact data screen can include a button, control or hyperlink so the User can send the Contact a text message, multimedia message orother message720.
FIG. 7C is an embodiment of aview screen733 that is accessible with a wireless device such as amobile phone14D. In this embodiment, once the User selects one of the User's Contacts, the User can be taken to a listing of current phone numbers and other relevant data that the Contact has input into the database17 (illustrated inFIG. 1). The User can then scroll through the data to locate the specific information sought by the User relative to the Contact. In the event the User desires to contact the Contact, the User can highlight and select an appropriate phone number such as the immediate mode of access (not shown inFIG. 7C) to expeditiously call the Contact. Because the Contact has input the phone numbers and other data that the User is accessing, the User has an increased assurance that the data is up-to-date.
FIG. 7D is an embodiment of atext message screen720D to which the User can be taken following such a request by the User from the contact data screen illustrated inFIG. 7B. In the embodiment illustrated inFIG. 7D, the database17 (illustrated inFIG. 1) can automatically provide a selection of various phone numbers, pager numbers, or numbers from other devices from which the User can choose to send a text message to the Contact. For example, thedatabase17 can automatically set up thetext message screen720D to include a data field for the Contact's name ornickname722, for example. Further, thetext message screen720D can include allmobile device numbers724, the immediate mode of access of the Contact, and/or an “other” data field726 that the User can utilize to customizably input another number that indicates where the text message is to be sent.
In addition, thetext message screen720D can include a data field for the User's name ornickname728, and a “call back” orreply number730 for the User, which can be selected from a drop-down menu732, or from a listing (not shown) taken from the User's data stored on thedatabase17. Thetext message screen720D also includes amessage data field734 so the User can input a text message. In this embodiment, thetext message screen720D can also include acharacter counter736.
FIG. 7E is another embodiment of atext message screen720E that is used when the User desires to send a text message or other type of message. Thetext message screen720E illustrated inFIG. 7E is particularly suited for use with a wireless device such as amobile phone14D. In the embodiment illustrated inFIG. 7E, the database17 (illustrated inFIG. 1) can automatically provide a selection ofvarious numbers724E, including the Contact's immediate mode of access, or other phone numbers, pager numbers, or numbers from other devices from which the User can select to send a text message to the Contact. Further, thetext message screen720E illustrated inFIG. 7E can include an “other” data field (not shown inFIG. 7E) that the User can utilize to customizably input another number that indicates where the text message is to be sent. In addition, thetext message screen720E can include a “call back” orreply number730E for the User, which can be selected from a list of numbers previously input by the User and stored in thedatabase17.
FIG. 7F is another embodiment of atext message screen720F that the User can be taken to following selection of theappropriate numbers724E,730E (illustrated inFIG. 7E) on the User'smobile phone14D. Alternatively, the text message screen illustrated inFIG. 7F can appear when the User scrolls up or down from thetext message screen720E illustrated inFIG. 7E. In this embodiment, thetext message screen720F also includes amessage data field734F so the User can input a text message.Additional functions736F can be accessed by the User which allow the User to send or cancel the message, for example.
FIG. 7G is an embodiment of anelectronic mail screen744G that can be accessed by a User using a mobile device such as amobile phone14D. On thisscreen744G, the User can access one or more electronic mail addresses746G of a Contact from the Contact's data stored on the database17 (illustrated inFIG. 1), from which the User can select the appropriateelectronic mail address748G to use for sending an electronic mail message to the Contact. Further, the User can also select from one or more previously input electronic mail addresses750G (only onesuch address750G is shown inFIG. 7G) of the User for a return address.
FIG. 7H is another portion of anelectronic mail screen744H that can be accessed by a User using a mobile device such as amobile phone14D. On thisscreen744H, the User can input a subject752H and anelectronic mail message754H to be sent to a specified Contact.
FIG. 8 is an embodiment of aremove contact screen850 that allows a User to remove a Contact from the User's contact list232 (illustrated inFIG. 2). Once the User removes the Contact, the Contact can no longer access any data of the User from the database17 (illustrated inFIG. 1). Thus, in this embodiment, any break in the reciprocity of authorization between the User and the Contact results in neither the User nor the Contact having access to the other's data from thedatabase17.
FIG. 9A is an embodiment of a contact properties screen952 that the User can access following selection of the properties hyperlink252 (illustrated inFIG. 4A) from the contact list screen432 (illustrated inFIG. 4A) to view and/or adjust certain properties of one or more of the User's Contacts. In the example illustrated inFIG. 9A, the User has accessed the properties for Contact John Johnson. The functions included on the contact properties screen952 can vary. In the embodiment illustrated inFIG. 9A, the User can (i) view and/or modify a group setting954 of the Contact, (ii) view and/or modify theclearance level956 of the Contact, and/or (iii) view and/or modify a mobile list setting958 for the Contact.
The group setting954 allows the User to determine one or more specific groups with which the Contact can be associated. For example, the User can select frompredetermined group settings954 such as “Business, “Friends”, “Family”, “All”, “Special”, etc., or the User can customize the name of the group, e.g. “Golf”. The User can specify a group setting954 for one or more Contacts in the User's contact list. Consequently, when the User is scrolling through the User's contact list, the User can temporarily exclude various Contacts from the list by selecting a particular group so that the contact list only displays the Contacts that are members of such group. With this design, locating a particular Contact or group of Contacts from the User's contact list can be expedited.
The User can elect to change theclearance level956 for one or more of the Contacts on the User's contact list. In one embodiment, based on the Contact selected by the User from the contact list, thedatabase17 is queried to retrieve theappropriate clearance level956. In this example, the User can be presented with theclearance level956 for the Contact, and can then use the drop-down menu957 to select anew clearance level956. When the User selects anew clearance level956 for the Contact, thedatabase17 is queried to update theclearance level956 for that Contact. The next time the Contact accesses the data for the User, the extent of the Contact's access of the User's data will be determined by thenew clearance level956 set by the User for that Contact.
Further, in this embodiment, the User can elect to include or exclude the particular Contact from the User's mobile list. The User can utilize the mobile list setting958 for each Contact on the User's contact list. By selecting “Include”, the User is choosing to include the Contact and some or all of the Contact's data from the database17 (illustrated inFIG. 1) when the User accesses thedatabase17 from the User's wireless device such as amobile phone14D (illustrated inFIG. 1), as explained in greater detail below. In contrast, the User can elect to “Exclude” the Contact from the User's mobile list using the mobile list setting958. With this design, the User can expedite usage of the User'smobile phone14D by filtering out various Contacts that the User does not want to access while using the User'smobile phone14D or other wireless device.
FIG. 9B is an embodiment of amobile phone14D illustrating a mobilephone filter screen958A. In this embodiment, thescreen958A indicates whether the mobile phone filter is “on”960 or “off”962. In one embodiment, when the mobile phone filter is on, only the data from those Contacts whom the User has specified to “Include” on the User's mobile list can be accessed from the User's mobile phone. Further, when the mobile phone filter is off, the User can access some or all of the data from each Contact, regardless of whether the Contact has been included or excluded from the User's mobile list.
Referring again toFIG. 2, in one embodiment, the User can print260 any information from thedatabase17 to which the User has access. For example, the User can elect to print260 part or all of the data fields input into thedatabase17 from one Contact. Alternatively, the User can print260 certain data fields from some or all of the Contacts on the User's Contact list, e.g. all mobile phone numbers and home addresses for each Contact on the User's contact list as a non-exclusive example. In one embodiment, the User can select specific data fields from particular Contacts, and can quickly and efficiently consolidate and print260 this up-to-date information on a single page without having to pick and choose the data from the display of each Contact. With this design, less time is spent searching, selecting, and manually compiling the desired information.
Moreover, in one embodiment of thedatabase17, the User can access adirectory262 of some or all of the names of the individuals or entities that have registered with thesystem10. From thisdirectory262, the User can select one or more desired Contacts to add to the User'scontact list232. For example, in one embodiment, the name of each individual or entity can be hyperlinked to allow the User to more expeditiously and efficiently request an authorization from such individual or entity. In the embodiments that require reciprocity before data can be exchanged, the desired Contact must authorize the User to access the data of the desired Contact before the User has access to any data from the desired Contact.
Further, in one embodiment, when the User attempts to add an individual or entity from thedirectory262, the User has thereby authorized the Contact to access the User's data from thedatabase17, and the Contact can immediately access such data by logging in to thedatabase17. In an alternative embodiment, the Contact must first authorize the User before the Contact can access the User's data from thedatabase17.
Each User can have the option of removing or adding that User's name from thedirectory262. Alternatively, each User can have the option of including such User's name in thedirectory262 without including such User's name including a hyperlink, thereby disabling any requests for authorization of such User by other Users via thedirectory262.
FIG. 10A illustrates an embodiment of an immediate mode of access screen1064 that the User can reach once the User selects the immediate mode ofaccess function264 from the contact list screen432 (illustrated inFIG. 4A). In this embodiment, the database17 (illustrated inFIG. 1) provides the User with a plurality of potential mode ofaccess selections1066 that are taken directly from the User's data input into thedatabase17. From the list of various potential modes ofaccess1066, the User can select one mode of access to be the User's immediate mode ofaccess1068. Stated another way, the immediate mode ofaccess1068 is provided to one or more of the User's Contacts, and represents the desired manner of reaching the User at that moment from the perspective of the User. In the embodiment illustrated inFIG. 10A, the User has selected a home phone number, (555) 555-2001, as the User's immediate mode ofaccess1068. In an alternative embodiment, the immediate mode ofaccess1068 can be selected from a drop-down menu, or the immediate mode ofaccess1068 can be manually input into ablank data field1070 as illustrated inFIG. 10A. Still alternatively, a default immediate mode ofaccess1068 can be one specific data field such as the User's first mobile phone number, for example.
The immediate mode ofaccess1068 of the User can be automatically communicated to each Contact on the User's contact list232 (illustrated inFIG. 4A) that has authorized access to such information. Once the User changes his immediate mode ofaccess1068, an authorized Contact who is logged in or subsequently logs in to thesystem10 and retrieves the User's data will be provided with the updated immediate mode ofaccess1068 of the User. With this design, the guesswork normally required by a User in attempting to determine how to reach one of the User's Contacts is reduced or eliminated entirely.
FIG. 10B is an embodiment of a mode ofaccess schedule screen1072 that the User can utilize. The design of the mode ofaccess schedule screen1072 can vary depending upon the specific needs of the User and to suit the design requirements of thesystem10 and the database17 (illustrated inFIG. 1). In this embodiment, thedatabase17 can compile previously-input data by the User or newly input data by the User, and can provide a selection of various potential modes ofaccess1066 for the User. The User can then preset the User's anticipated immediate and future modes of access for various time periods. For example, in the embodiment illustrated inFIG. 10B, the schedule includes a plurality of one-hour time periods1074 and an eleven-hour time period1076 over a one-day time frame. However, it is recognized that the mode of access schedule can utilize any desired time periods over any extended time frame, as input by the User and/or specified by thedatabase17. For example, the time periods can be ten-minutes each, and the time frame can be one hour. Alternatively, the time periods can be 12-hours each, and the time frame can be one week. The foregoing examples are merely representative of the numerous possible time periods and time frames that can be utilized with the present invention.
As illustrated inFIG. 10B, the User can select one immediate mode ofaccess1068, e.g. ahome phone number1078, which can remain in effect for the entire time frame, e.g. one day. In this embodiment, the User chooses to be accessible at the same phone number for the entire day.
FIG. 10C is another mode ofaccess schedule screen1072 wherein the selections made by the User have been modified from the previous schedule illustrated inFIG. 10B. In this example, the User has generated and selected a Schedule A (1080), which can represent one or more particular days of the week, i.e. Mondays and Fridays, or it can represent a one-of-a-kind day that the User anticipates having. For example, the User expects to be accessible by the User's home phone number from approximately 8 a.m. to 9 a.m. Between 9 a.m. and 10 a.m., the User expects to be accessible on the User's mobile phone. Between 10 a.m. and 12 p.m., the User expects to be accessible by the User's work phone number, and so forth throughout the day. With this design, the User can preset the User's mode of access schedule for convenience, or in the event the User may not have access to the database17 (illustrated inFIG. 1) at various times during the day, week, month, etc. In this embodiment, the immediate mode ofaccess1068 that can be accessed by one or more of the User's Contacts will be automatically updated throughout the day, and will allow authorized Contacts on the User's contact list to access only the current information, e.g. the immediate mode ofaccess1068 of the User.
Schedule A can be saved to thedatabase17, and can be retrieved by the User and reused by the User as appropriate. In this embodiment, the mode of access schedule and/or the future modes of access cannot be accessed by any of the User's Contacts. Instead, any of the User's Contacts with access to the User's immediate mode ofaccess1068 can access only the immediate mode ofaccess1068 from the active time period, i.e. the time period that represents the current time of day. In one embodiment, the Contact does not have access to the time period so that the Contact does not know how long the current immediate mode ofaccess1068 will remain in effect before changing to another immediate mode ofaccess1068. Stated another way, the User's mode of access schedule is transparent to the User's Contacts. Alternatively, the User can provide Contacts access to the User's schedule in accordance with the clearance levels and privacy levels provided herein.
FIG. 10D is another mode ofaccess schedule screen1072 wherein the selections made by the User have been modified from the previous schedule illustrated inFIG. 10C. In this example, the User has generated and selected a Schedule B (1082), which can represent one or more particular days of the week, i.e. Tuesdays through Thursdays, or it can represent a unique day that the User anticipates having.
Schedule B can likewise be saved to the database17 (illustrated inFIG. 1), and can be retrieved by the User and reused by the User as appropriate.
In an alternative embodiment, a schedule somewhat similar to the mode of access schedule can be used for any other data field input by the User. For example, the schedule can track other information from the User that has a tendency to change over time, such as the User's physical location, as one non-exclusive example. The foregoing mode of access schedule is representative of the type of information that can be included in a schedule as provided herein, and is not intended to be limiting in any way.
FIG. 11 is an embodiment of asynchronization screen1184 generated by the database17 (illustrated inFIG. 1) that is accessible with a wireless device such as amobile phone14D. In this embodiment, a User can synchronize the data from the User's Contacts with a memory1186 of the wireless device. For example, the memory1186 can include one or more storage devices that store names, addresses, phone numbers, etc. The memory1186 can be in the form of an integrated circuit such as random access memory (RAM), a single in-line memory module (SIMM), a storage disk, a storage tape, a processor, or any other suitable device that can store data.
In this embodiment, the data that is maintained in thedatabase17 for one or more of the User's Contacts can manually or automatically be synchronized with the memory1186 of themobile phone14D or other wireless device. With this design, the User can update the memory1186 of the wireless device with the up-to-date data from thedatabase17, thereby increasing the likelihood of maintaining more current, accurate data within the memory1186 of the wireless device. By synchronizing the dynamic information stored and continually updated in thedatabase17 with the memory1186 of the wireless device, the User can increase the probability of having access to current data from the User's wireless device, even when the User cannot access the database directly from the Internet. For example, it is well known that in certain geographical locations it is difficult or impossible to obtain Internet access. The present invention allows the User to rely on the memory1186 of the User's wireless device which has been synchronized with the data from thedatabase17, without the User having to manually update the memory1186 for each of the User's Contacts.
The synchronization of data between thedatabase17 and the memory1186 of the wireless device can be customized by the User. In one embodiment, the User can synchronize specific data fields from thedatabase17 to the memory1186 of the wireless device. For example, the User can choose to synchronize only the immediate mode of access for one or more Contacts with the memory1186 of the wireless device. Provided this type of synchronization occurs on a routine basis, the User can be relatively certain of having access to the immediate mode of access of each Contact, without connecting to thesystem10 via the Internet. Alternatively, the User can synchronize other data fields, such as all mobile phone numbers or electronic mail addresses of the User's Contacts, as non-exclusive examples.
In one embodiment, the User can manually determine when to synchronize data from thedatabase17 with the memory1186 of the wireless device. In an alternative embodiment, the User can determine the frequency that thedatabase17 will automatically perform this synchronization process. For instance, with various wireless devices having the appropriate application technology, the User can specify that thedatabase17 will interface with the wireless device over the Internet and synchronize the specified data at any regular time intervals, such as at least approximately one time per week, one time per day, one time per hour, one time per minute, one time per second, continuously, or anytime a modification is made to a relevant data field for one of the User's Contacts, as non-exclusive examples. Still alternatively, thedatabase17 can interface with the wireless device over the Internet and synchronize relevant data from thedatabase17 when the User first connects to the Internet, or logs in to the website210 (illustrated inFIG. 2) of the present invention.
FIG. 12 is a diagram illustrating one embodiment of how data is stored in thedatabase1217. As described herein, multiple Users can have the same Contact in each of the Users' contact list. However, in this embodiment, only one data record is maintained in thedatabase1217 for such Contact. Thus, inFIG. 12,User #1,User #2 andUser #3 each have added Josh McGosh to their respective contact lists. Thedatabase1217 has stored only one Josh McGosh, under a unique database identifier number “4”. Therefore, when one or more of the Users want to access data input into thedatabase1217 by Josh McGosh, the database is queried, the appropriate determination of authorization (and reciprocity, if required) can be performed as provided herein, a comparison of the clearance levels for the Users and privacy levels for the data input by Josh McGosh can be performed as provided herein, and the data made available to the Users from a single location within thedatabase1217.
Stated another way, storage of a single set of data for each User in thedatabase1217 decreases the likelihood of inaccuracies of the data, and conserves space within thedatabase1217 by avoiding duplicative entries and/or data fields. In the example provided inFIG. 12, the data for each User or Contact takes up a reduced amount of space in the database, regardless of the number of other Users who have listed such User or Contact in their respective contact lists. Additionally, because the data of all of a User's Contacts is not stored on the User's device, little or no storage space is required by the User during usage of the present invention.
The present invention is particularly suited to a User having a plurality of Contacts in the User's contact list. With the design provided herein, because each Contact is responsible for updating only that Contact's own information, time spent by the User updating the User's Contact information can be substantially reduced or eliminated. For Users having a substantial number of Contacts in their contact list, this time reduction can be significant.
Moreover, in various embodiments, the present invention does not depend on synchronization of data between devices in order to keep data consistent. Personal, business or any other type of information for each User of the system is stored in thedatabase1217 and can be securely retrieved from any device as provided herein. Thus, Users do not need to constantly, or even occasionally synchronize data between two of the User's devices in order to maintain a high level of confidence that the data will be the same on each device.
Further, in alternative embodiments that utilize mobile devices that cannot connect internet access, the User can send information via Infrared (IR), Universal Serial Bus (USB), Firewire (IEEE), Short Message Service (SMS), Multimedia Message Service (MMS), or Enhanced Message Service (EMS), as non-exclusive examples, to the mobile device of the User. Mobile devices can also be synchronized to a personal computer using messaging technology such as or any other suitable messaging technology. With this design, blocks of Contact Information are sent in a SMS or MMS message from the Contact Information Service website to a phone number of the wireless device.
The present invention can be used in applications too numerous to list herein. In one embodiment, the present invention can be used to maintain a real time, updated address book that includes useful information that may be difficult or impossible to obtain by means other than keeping a physical address book that must be constantly updated by hand, assuming the information is readily available. Other examples of applications for the present invention include using thedatabase17 in the service industry to track the status of automobile repair work, in the insurance industry to track information from the insureds, in the financial industry to track investments and investor information as well as the stock market, in the real estate business to track information from potential buyers and sellers, and in the sales business to track information from customers and potential customers, as non-exclusive examples. Further, medical research, including medical conditions of patients can be monitored over a time following medical procedures in order to provide the medical community with a greater pool of data from which to draw for fostering advances in medicine. Moreover, tracking medical patients in need of medical services, e.g. transplant donors or potential recipients, can be easily and efficiently performed using the present invention.
Because all of the data input by the Users of thesystem10 can be maintained on thedatabase17, and because no downloading of software or other applications is necessary, if the User's electronic device is ever lost, stolen, broken or destroyed, or if the data on the device becomes lost or unusable, i.e. in the case of a hard drive crash or other system malfunction, the user does not need to completely reprogram the device and re-enter all of the data onto the device. Further the present invention obviates the need to obtain the lost data from a backup system, which may also be not entirely up-to-date. Such an unpleasant experience can be extremely frustrating and can require a significant amount of time which most people cannot afford to spend.
Thus, the system provided herein can allow each User to keep track of the User's Contacts, without requiring any maintenance to do so. Further, the present invention can increase the likelihood that business and/or personal contact information, or any other dynamic data is up-to-the-second accurate with a substantially reduced level of time and effort required by the User. Moreover, the system and method provided herein can increase the success rate of accessing a Contact by the mode desired by that Contact. In addition, the system and method can be used from nearly any Internet-accessible computer, which are basically ubiquitous around the world.
While theparticular system10 and method for exchange of data as herein shown and disclosed in detail are fully capable of obtaining the objects and providing the advantages herein before stated, it is to be understood that they are merely illustrative of various embodiments of the invention. No limitations are intended to the details of construction or design herein shown other than as described in the appended claims.