Wireless data exchange

A system of exchanging and managing information includes a mobile device configured to automatically insert, exchange and update a caller's contact information into a user's phonebook. The phonebook can reside on either the UICC card, SIM, USIM, Mega SIM, any other smart card or an integrated chip, on the mobile device or on a remote server. The automatic insert and/or automatic exchange mechanism is triggered when a call is made between two people on mobile phones or other devices.

BACKGROUND OF INVENTION

The phonebook plays a significant role in mobile communications. It is the source of the contact information for phone calls, text messages, faxes, instant messages and emails. A challenge in the mobile phone market is inserting, updating, and maintaining contact information stored in the phonebook. Currently, one must manually enter phone numbers into one's mobile phone. This takes time, is often difficult with such small buttons and screens on phones, and is prone to errors with manual data entry. Often, the result is that many individuals do not enter contact information in their mobile phonebooks.

In addition, these problems restrict the user from adding alternate phone numbers (e.g. business phone, home phone, and fax) associated with a contact, even though today's phonebooks can support multiple numbers. With the growth of more sophisticated phones (e.g. Smart Phones, IP phones, and Internet capable phones) there is also a need to store email addresses and Instant Message (IM) addresses of contacts. Entering email and IM addresses, however, can be even more problematic than entering phone numbers.

Another problem for users today is the inability to control the distribution of contact information to others. For example, one might provide a mobile phone number or business telephone number to another person but not want to provide their home telephone number. Thus, users continue to face many problems in using and benefiting from the capabilities of a device phonebook.

SUMMARY OF THE INVENTION

Embodiments of the invention provide systems, methods, and device enhancements to automatically insert, exchange and update a caller's contact information into a user's phonebook. The phonebook can reside on either the UICC card (Subscriber Interface Module (“SIM”), USIM, Mega SIM, any other smart card or an integrated chip), on the mobile device or on a remote server, for example. The automatic insert and/or automatic exchange mechanism is triggered when a call is made between two people on mobile phones or other devices. Upon call completion, a caller is asked if the caller wants to send updated information to a call recipient. If yes, the information is automatically sent to the recipient, based upon the permission settings provided by the sender, or caller. The recipient has the option of receiving the new information at his or her device. Thus, an embodiment of the invention comprises an information management system having a first user device having at least one of a Subscriber Identity Module, a UMTS Subscriber Identity Module, a smart card or an embedded chip, a second user device configured to interface with the first user device over a wireless network, and an application module configured to enable the first user device to retrieve information associated with the second user device over the wireless network upon a communication between the first user device and the second user device.

Implementations of the invention can include one or more of the following features. The system and methods of the invention may include AutoInsert/AutoExchange between two mobile phones with a call triggering the sending of contact information to a phone or other personal device. Autolnsert/AutoExchange may occur between two mobile phones with a phone call triggering the mobile network switch to prepare and distribute messages to the mobile phones. The messages process contact information exchange between two or more than two mobile phonebooks. Further, AutoInsert/AutoExchange may occur between two mobile phones utilizing the existing OnePIN™ technology that utilize a procedure covered under U.S. Pat. Nos. 6,374,259 and 6,654,768.

Features of the invention may provide one or more of the following advantages. The process may alleviate storage issues and processing power issues. The system and processes of the invention may assist in the integration issues of a Mobile Operator Network. Exchange of information between users on a network can be automated. Updates to information stored on a mobile device can be achieved automatically, or with manual entry by choice. Other capabilities will be apparent upon review of the following figures and description.

DETAIL DESCRIPTION OF THE INVENTION

Embodiments of the present invention are directed generally to a method and an apparatus for inserting, exchanging, updating and storing contact information in a mobile phone used over a mobile network. Embodiments of the invention can be used to insert, exchange, update or store information other than, or in addition to, contact information. Further embodiments of the invention can be used for devices other than mobile phones, and over networks other than mobile networks. Implementations of the invention are described as employing SIM. It is understood that SIM cards includes, but is not limited to, SIM, (U)SIM, Mega SIM, smart cards, and other applications, for example.

Referring toFIG. 1, a mobile contact management information system1000includes a first user phone1010, a second user phone1012, and a Mobile Operator Over The Air (OTA) communication platform1014on a mobile operator's network1016. The contact management information system1000is an UMTS Mobile Operator Network, for example. The system1000can be another type of mobile network, such as WCDMA (GSM), CDMA, CDMA2000, etc or a next generation phone system.

Referring toFIG. 2, a mobile contact management information system2000includes a first user phone2010, a second user phone2050, a remote computer2003, a remote database server2005, and an OTA communication platform2001. The remote computer2003and the remote database2005can be a part of the Mobile Operator network, for example. The remote computer2003is coupled to the remote database2005. The first user phone2010and the second user phone2050are connected to the OTA platform2001. The OTA platform2001connects the first user phone2010and the second user phone2050to the remote computer2003and the remote database server2005over the mobile network.

The first user phone2010includes a UICC card2030and a phone operating system2011. The UICC card2030includes a (U)SIM application module2090, a Javacard2031and a SIM Tool Kit (STK) framework2032, and a first user UICC card phonebook2033. The UICC card2030also stores a first user MyProfile Data File2035, a first User Last Number Dialed (LND) data file2037, a first User LND Pattern data file2038, a first User Operations Mode data file2034, and a first User Configuration File2039. The files2034,2035,2036,2037,2038and2039can be changed locally or remotely via an OTA update. The phone operating system2011includes a display control module2017, a phonebook module2015, a phone event management communication module2014, and a SMS module2016. The phone operating system may include other modules.

The second user phone2050includes a UICC card2080and an operating system2051. The second user UICC card2080includes a (U)SIM application module2091, a Javacard2081, a SIM Tool Kit (STK) framework2082, and a second user UICC card phonebook2083. The SIM File System stores a second user MyProfile Data File2085, a second User Last Number Dialed (LND) data file2087, a second User LND Pattern data file2088, a second User Operations Mode data file2084, and a second User Configuration File2089. The files2084,2085,2086,2087,2088,2089can be changed locally or remotely via an OTA update. The second user phone operating system2051includes a display control module2057, a phonebook module2055, a phone event management communication module2054, and a SMS module2056. The phone operating system may include other modules.

The UICC cards2030and2080are integrated into the respective phone and phone operating system software for each of the user phone2010and the user phone2050. The UICC card2030and the UICC card2080enable the first user phone2010and the second user phone2050to access the remote server2003and the remote database2005over the mobile network, OTA Platform2001and phone operator network. The (U)SIM application modules2090and2091are installed on each phone's operating system or can be programmed into the firmware of each phone. In this case, for example, the (U)SIM application module2090becomes a phone dependant software application rather than a UICC card application.

The (U)SIM application modules2090,2091and the UICC card phonebooks2033,2083of the first user phone2010and the second user phone2050can be combined such that both are deployed as a single software program. The UICC cards2030and2080can also be a different type of information storage and execution medium such as a communication chip or a variation of a UICC or Smart Card. The UICC cards2030and2080can also be another integrated smart card or chip within a phone. The UICC phonebooks2033,2083may be replaced with another type of file or software program to manage the contact entries and other personalized items.

The (U)SIM application module2090is saved on the UICC card2030. The module2090listens for phone call related events, sends requests to the other phones, receives caller information, and inserts contact information into the UICC phonebook2033or on the phone itself. Additional features can include: software activation, personal information update, default access level setting, phonebook backup and restore. The application module2090is compatible with 2G and 3G specifications, specifically: 3GPP TS 31.111 (Release 6) “USIM Application Toolkit (USAT)”, 3GPP TS 31.102 (Release 6) “Characteristics of the USIM application”, ETSI TS 102.241 (Release 6) “UICC API for Java Card”. The Mobile Network can also be any future mobile, fixed line, or any other combination of network. The application module2090can further support the following phonebook file types, for example: ADN, ANR, EMAIL, SNE, etc. The module2090can also support basic phonebook structure: PBR type ‘A8’ (‘A9’ or ‘AA’ type extended phonebooks are optional). The application module2090can communicate directly via GPRS, SMS, MMS, or TCP/IP. The UICC Card Requirements are, for example, Java Card 2.1.1/2.2.1. Basic functionality requires approximately 18K storage on the UICC card. Other card requirements and storage capacity are possible and envisioned. Further, although functionality is discussed with respect to the first user phone2010, similar functionality is available and installed on the second user phone2050.

Referring also toFIG. 3, the application module2090is built on the SIM Tool Kit (STK) Framework2032, which communicates to the first user phone2010through the Event Communication Module2014. The STK framework2032registers with the following events of the first user phone2010: a call control event3010, a call disconnected event3020, a call connected event3030, a menu selection event3040, an SMS PP data download event3050, and a terminal profile download event3060. The SIM Tool Kit (STK) framework2032sends proactive commands to the first user phone2010. For example, the framework2032sends a command for providing local information3070, select items3080, display texts3090, send SMS3100, refresh3110, more time3120, and get input3130. A setup event list3150and a setup menu3160are proactive commands issued through the STK Framework2032. A proactive handler3170is used as a data container, e.g., for storage of data.

Referring also toFIG. 4, a method of initiating the (U)SIM application module2090over the mobile phone2010and the UICC card2030, is now described. The (U)SIM application module2090can be inserted into the User1UICC card2030by the mobile operator or by the UICC manufacturer, for example. The UICC cards may be purchased with the (U)SIM application module2090preinstalled to the UICC card2030by the UICC card manufacturer, to the RAM of the card. The first user inserts the UICC card2030in the mobile phone2010and the (U)SIM application module2090is powered automatically to determine if the application module2090is set to a “Disable” state, stage5010. If the applet is not set to “Disable”, then the application module2090configures itself based on the Terminal Profile Download Event3060, at stage5020(seeFIG. 5Band related description).

Referring also toFIG. 5A, the application module2090handles the Terminal Profile Download Event5010. The terminal profile download event5010lists the events the phone supports. If some of the SIM Toolkit events/commands are not supported by the handset, the (U)SIM application module2090operates differently in order to compensate for the phone's short-comings, at stage5130. When the minimum handset requirements are not met, the (U)SIM application module2090deactivates and removes itself from the SIM Toolkit menu, stage5180. At stage5140, if the application module2090is in operational mode, the application downloads the MyProfile Data File2035. At stage5160, prior to the operation of the (U)SIM application module2090, the first user initiates setup of the application to enable sending and receiving contact information with others, stage5160. The (U)SIM application module2090requests that User1activates the application through a setup process, stage5170(seeFIG. 5Cand accompanying description for the setup process). At the conclusion of, or upon interruption of or at the temporary break from the setup Profile Process, stage5170, the activity ends, stage5190.

Referring also toFIG. 5B, the application module2090is configured according to the capabilities of the phone2010,2050. At stage5210, the application module2090sets to an “Idle” status. At stage5225, the application module2090collects the TAC (Part of IMEI number) from the phone2010. At stage5230, the application module2090gathers a handset mode from the Operation Mode File2034. At stage5235, the application module2090reads the User1Configuration File2039. At stage5240, the default language is set if UCS2 is supported within the UICC card2030. At stage5245, the Abbreviated Dialing Number (ADN) File (SIM phonebook2033) is tested. At stages5260,5265,5270, the (U)SIM application module2090registers the operation level of the application. The application module2090can operate in two different modes: SR (Send and Receive) or RS (Receive Then Send). The embodiments of this invention describe the fully featured SR Mode. RS Mode is a subset of the fully functional SR Mode. The applet reaches stage5290, and the application configuration is completed based on the terminal profile of the phone2010.

Referring also toFIG. 5C, a user sets up the MyProfile File2035on the UICC card2030. Activation can also be done at the point of sale or OTA network2001remotely by the mobile operator through a remote configuration process. If the (U)SIM application module2090is pre-installed, turning on the phone or ending a call after the first incoming or outgoing call may also activate the (U)SIM application module2090.

InFIG. 5C, the applet activation process through a manual operation by a user is described. When the (U)SIM application module2090executes, User1is prompted to initiate the applet at stage5310by entering the contact information with the following dialog box, for example: “Set up your profile once, and exchange it with friends after phone call” using the STK Display Text Proactive Command3090. At stage5320, User1is asked to enter each contact data in a sequential manner. The standard fields of contact information include fields for a mobile phone number, office phone number, and a home phone number. Other fields of data such as email and Instant Messenger address may be entered after the initial set up process. User1is asked to enter a name for the contact, and a mobile number for the contact. User1is also asked to enter a work number and a home number. The numbers are formatted, and User1is redirected to stage5320for a next entry. The contact data is stored by the STK using a Get Input Proactive Command3140within the User1MyProfile2035.

Referring also toFIG. 5D, the User1application module2090checks if the entered contact phone numbers are in the correct International Format. Each time User1is asked to enter a phone number (Mobile, Work and Home), the (U)SIM application module2090automatically validates whether the entered numbers matches international numbering format (such as +15088368810), stage5410. If the formatting is correct, the process terminates at stage5490. If the formatting is incorrect, the application module2090appends the International Direct Dialing (IDD) and the National Direct Dialing (NDD) code to the numbers. The confirmation is displayed to the user using the Display Text Proactive Command3090. Once the confirmation is displayed, the process is terminated, at stage5490. The numbers input by the user are checked to fit to International formats and stored within the User1MyProfile Data File2035.

Although the processes ofFIGS. 2,3,4and5A-5D are described according to use by User1, the User2UICC card2091executes the same, or substantially similar, processes for the configuration of the phone2050. The User2contact information is stored in the second user MyProfile Data File2085, and the applet configuration is stored in the second application module Configuration file2089.

For demonstration purposes, the standard fields of contact information are Name, Office Phone, and Home Phone. Other fields of data may be entered after the initial set up process, such as “Email” or “Instant Messenger”. The contact data fields can be limited to the standard fields, but may include other fields. The users have the option of changing these designations at any time by accessing the application module2090through the SIM Tool Kit2032and2082menu within the UICC card. The application module updates the MyProfile Data File2035for User1and MyProfile Data File2085for User2(seeFIG. 8and accompanying description, Manual Applet Navigation).

Referring also toFIG. 6A, the User1application module2090communicates, packages the information, and sends the User1contact information to User2. The contact information management system2000can be used over a mobile network. User1places a call with the User1phone2010to the User2phone2050via the mobile operator. The (U)SIM application module2090of the User1UICC card2030is initiated when the “Call Control Event” is triggered within the phone2010.

Referring also toFIG. 6B, the User1application module2090checks the User2operations mode data file2084to see if the application module2090is in “active” mode, stage6100. If the applet module2090is in the “Idle” state, the module does not do anything and remains in the “Idle” state. If the applet is in the “Active” state, the module2090retrieves the phone number of the User2phone2050from the Call Control Event3010. The U(SIM) application module2090detects the number type, stage6120. If the number is a listed national mobile number, then it sets the applet state as a “Call Control Happened”, stage6140. If the dialed number is a “non-mobile” number, then the application module2090sets its state as “Idle”, stage6150. After successfully retrieving the User2Phone Number, the applet completes this process, at stage6190. As shown inFIG. 6, the call connected event3030triggers the application module2090.

Referring toFIG. 6C, after the Call Connected Event3030is triggered, the application module2090checks at stage6210if the applet state is in “Call Controlled Happened” state. If the applet state is different, then the applet terminates itself at stage6290. If the applet is in the correct state, then the application module2090checks if this is an outgoing call, at stage6220. If this is not an outgoing call, then the applet state fails and the applet terminates itself at stage6290. If this is an outgoing call, then at stage6230, the module2090remains in “Call Control Happened” state and continues its function.

When the User1hangs up the phone2010, the call disconnected event3020triggers the User1application module2090. As described inFIG. 6D, at stage6410, the User1application module2090checks if the applet state is still in “Call Control Happened” state. If the application state is different, then it jumps to stage6490and makes no changes. If the application state is the same, the User1application module2090performs a “Send” function which is described in detail inFIG. 6E.

Referring also toFIG. 6E, the User1application module2090sends the User1contact information. At stage6410, the User1application module2090checks if the User1MyProfile Data File2035is complete and valid. If it is not, the application goes to stage6490. If the User1MyProfile Data File2035is complete and valid, the User1application module2090performs a Roaming Detection (seeFIG. 6Gand associated description). At stage6430, if the roaming restriction applies, the application goes to stage6490. If there are no roaming restrictions in place, at stage6440, the User1application module2090accesses the User1LND Counter Data File2037and checks if the Last Number Dialed (LND) threshold value has been reached. At stage6440, if the LND Counter threshold value has not been reached, the application goes to stage6490. If the LND Counter threshold value has been reached, the User1application module2090triggers a question to Display Control Module2017: “Send My Profile”. The User1has four options: “Personal”, “Business”, “Both”, “Do not Send” and “Settings”. If User1selects the “Do not Send” option, the application module2090does not prompt any other questions. If User1selects “Settings”, the User1is directed to the Settings screen to make modifications to MyProfile or to Disable/Enable the Send and Add Features. If the User1selects one of the other options (“Personal”, “Business”, “Both”), then at stage6460, the User1application module2090increments the LND counter value for the dialed phone number and, at stage6470, saves the new value within the User1LND Counter Data File2037. The User1application module2090creates a “Send MyProfile” SMS (seeFIG. 6Fand associated description). In order to let User1be aware that application module2090exchanges contact information using SMS, the first time User1chooses to send his contact information, User1is notified by the following message: “You are going to send SMS, are you sure you want to continue?” This notification is made once, and if User1either accepts or rejects sending SMS the first time this notification is made, this message will not be displayed for subsequent Sends. At stage6490, the User1application module2090goes back to its original listening state.

Referring toFIG. 6F, the User1application module2090sends the User1contact information in a SMS. At stage6510, if User1selects the “Personal” option, a confirmation message is displayed on the User1Display Module2017through Display Text Proactive Command3090: “Sending MyProfile SMS . . . ” and in Step6530an SMS message is sent that contains First Name, Last Name, Mobile and Home data fields specified in MyProfile. If User1selects the “Business” option, then a confirmation message is displayed: “Sending MyProfile SMS . . . ” and the SMS message is sent and contains First Name, Last Name, Mobile, Work data fields specified in MyProfile. If User1selects the “Both” option, then a confirmation message is displayed: “Sending MyProfile SMS . . . ” and the SMS message is sent and contains First Name, Last Name, Mobile, Home, Work data fields specified in the MyProfile Data File2035.

Referring also toFIG. 6G, the roaming detection option6420is described. When the User1application module2090activates the roaming detection at stages6410and6610, the User1application module2090gets a Mobile Country Code (MMC) at stage6610from the phone2010using the Provide Local Information Proactive Command3070from STK. At stage6620, if the current Mobile Country Code (MMC) matches the User1's Mobile Country Code, the roaming restriction does not apply. At stage6620, if the current Mobile Country Code (MMC) does not match User1's Mobile Country Code, then, at stage6630, the User1application module2090checks the number dialed with the International Country Code. If the number was dialed with the international country code, the roaming restriction does not apply. If the International Country Code is not dialed, at stage6630, then roaming restrictions apply, and the application goes to stage6440inFIG. 6E.

Referring also toFIG. 6H, the User1application module2090checks the LND counter value for each user. The LND counter value check feature is an enhancement to the static Event Counter. The number of times User1is prompted to send an update to other users is reduced. The value check process6440is based on the frequency in which each number is called (i.e. some numbers are called 10 times a day, and others are called 10 times in a month) so that User1is asked to resend his contact information after an appropriate number of calls—instead of a fixed number of calls. At stage6710, the User1application module2090locates the new dialed number from the LND Counter Data File2037. If the dialed number is not in the list, the number is added to the list. At stage6720, the User1application module2090extracts the counter value for the number from the User1LND Counter File2037. At stage6730, the User1application module2090gets the Counter Threshold Value from the User1Configuration Data File2039.

Referring also toFIG. 6I, the User1application module2090obtains a Counter Threshold Value. The “last numbers dialed” list is stored in the User1LND Pattern Data file2038. The threshold value for send update question is based on the number of times a given number is represented in the “last number dialed” list. At stage6810, the User1application module2090checks if Call Frequency Patterns Option is enabled by accessing the User1Configuration Data File2039. If the call Frequency Patterns Option is not enabled, the module2090obtains the Standard Threshold Value from the User1Configuration Data File2039. If the call Frequency Patterns Option is not enabled, the User1application module2090dynamically calculates the threshold value based on the number of occurrences in the User1LND pattern Data File2038.

Referring toFIG. 7A, the User2application module2091communicates and receives the User1contact information and inserts the information into the User2SIM phonebook2083. Contact exchange occurs between User1and User2via a network. The User2application module2091communicates, packages and sends User2contact information to User1. At the completion of a call, User1chooses to send his contact information. User2complete activation of the User2application module2091, preferably prior to User1sending User1contact information to User2. InFIG. 2, the User1SMS message travels through the Mobile Operator Over The Air (OTA) Platform2001and the Mobile Operator SMS-C Center2040. User2phone2050receives a SMS message that contains the User1contact information. The SMS PP Data Download Event3050triggers the User2application module2091and it indicates a SMS reception.

InFIG. 7B, the User2application module2091selects the SMS message processor based on PID/DCS values, stage7105. At stage7110, the User2application module2091extracts User1contact data from the SMS message. At stage7115, the User2application module2091applies a check if the SMS message contains a Mobile Operator Report request. If it is a Mobile Operator Report request, the User2application module2091processes the Mobile Operator Report Request, stage7120. If the SMS message is not a Mobile Operator Report request, the User2application module2091triggers the Application Menu in the User2Phone Display2057on the User2Phone2050, stage7125, through the Display Text Proactive Command3090. (SeeFIGS. 8C and 8Dand associated description, below). User2is prompted “SMS message received” (specific message dependent on handset). At stage7125, the User2application module2091displays one of the two messages: “Add User1?” (to SIM phonebook) or “Update User1?” depending on whether User1is already stored in the User2(U)SIM Phonebook2083. At stage7135, If User2selects “Add” or “Update”, then the User1contact entry is stored or updated in the User2(U)SIM phonebook2083. If the new record is created or updates successfully, the User2application module2090displays a message “User1added to SIM phonebook” or “User1contact data updated”.

If the User2application module2091, at stage7140, can not create the new entry within the User2(U)SIM phonebook2083, the User2(U)SIM phonebook2083displays a “SIM Phonebook full” message at stage7150through the Display Text Proactive Command3090. At stage7135, if User2selects “Do not Add” or “Do not Update”, then the User2application module2091will go to stage7150. At stage7150, User2will be prompted to send her contact information back to the User1. This action will be substantially the same Send Profile process described above inFIG. 6Efor User1. The User2contact information stored in the MyProfile Data File2085will be sent to User1.

Upon completion of the “Send Profile” process, the User2application module2091sends the following message to the display control module2057: “Preparing to refresh SIM . . . ”. At this time, at stage7155, the User2application module2091deletes the SMS message from the User2(U)SIM Card2080. At stage7160, the User2phone2050is asked to perform the SIM refresh function through the SIM Refresh Proactive Command3120and a message specific to the handset may be displayed on the screen (e.g. Refreshing SIM). If there is an error with the SIM refresh operation, stage7165, a message will be displayed on the User2phone display2057“Restart Phone to refresh your SIM phonebook”. At stage7175, the User2application module2091will ask the User2phone2050to display “SIM phonebook ready” through the Display Text Proactive Command3090.

Referring toFIG. 8A, a manual application navigation is available to User1and to User2. When User1selects to operate application module2090within the User1phone2010, the Menu Selection Event3040is triggered to activates the User1application module2090.

Referring also toFIG. 8B, a Settings Menu selection process8010is shown. When menu selection Event3040is triggered, the User1application module2090shows the Settings Menu, stage8100(seeFIG. 8Cand associated description). At stage8110, User1selects one of the menu items and the User1application module2090triggers the related action.

Referring also toFIG. 8C, settings is a menu that allows User1to change the User1application module2090defaults. The settings menu can be accessed by User1during the following usage flows: Send MyProfile after a call, Update MyProfile after a call, Add Caller to phonebook, Update Caller in phonebook, manual send to a new user, or Manual navigation to the SIM applications. At stage8110, User1has the following choices within the settings menu: “Turn off Options”, “Edit MyProfile”, “Manual Send”, “Language” and “About”. When User1makes a choice at stage8220, the application triggers the related action and when completed, the application goes back to the settings menu. The Turn off Options Menu provides the ability to disable or enable the Sending and Adding features. The Disable Send feature allows User1to turn on/off the “Send MyProfile?” feature. If this featured is disabled, User1will not be asked to Send his contact information (stored in the User1MyProfile Data File2035) after phone calls. The default value for the Send feature is “enabled”. The Disable Add feature allows User1to turn on/off the “Add [CALLER] to SIM phonebook?” message and feature. If this featured is disabled, User1will not be asked to Add a caller to the SIM phonebook2033if an application module2090SMS is received. The default value for the Add feature is “Enabled”.

Referring toFIG. 8D, the User1application module2090menu page is set to active, and the User1is presented with options. At stage8310, the User1application module2090displays the available options. In order to make sure that the application does not intercept another phone2010activity, the module checks with the terminal by getting terminal response, at stage8320. If the terminal is not busy, at stage8330, the module2090returns to stage8310and continues to show the menu items on the phone2010display module2017. The User1application module2090can issue a Time Proactive Command3130to continue displaying the application menu. If the terminal is not busy, at stage8330, the User1application module2090returns the selected option from the Menu.

Referring toFIG. 8E, a Manual Send option within the Settings Menu is available. If User1selects the Manual Send Option, at stage8410, the User1application module2090checks if the User1MyProfile Data File2035is ready. At stage8420, if the User1MyProfile Data File2035is ready, the User1application module2090asks User1to enter the User2destination phone number by triggering the Get Input Proactive Command3140. The User2phone number is entered. The User1application module2090performs a Send process as, as described inFIG. 6E.

Referring toFIG. 8F, the Edit MyProfile option within the Settings Menu is described. If User1selects the Edit MyProfile Option, at stage8510, the User1application module2090displays the Edit MyProfile menu. The MyProfile menu contains the User1contact information in a sub-menu. The data, as stored in the MyProfile Data File2035, is the information that is sent to other users. The default available options are First name, Last Name, Mobile Number, Home Number, and Work Number. The field of data and options are not limited only to these numbers and can be extended by extending the application module2090code.

The “Language” function allows User1to change the language of the User1application module2090. The number and types of language options are determined by the Mobile Operator, for example. The default language can be set by the operator during implementation, coded into the User1application module2090or changed through an OTA update of the User1Configuration File2039.

The “About” function provides a brief description of the User1application module2090and the version information to User1. The About function also displays the Operation Mode, a metric used to determine in what mode the handset is allowing the User1application module2090to operate.

Referring toFIGS. 2-8, the “Send Update” function allows the User1application module2090to automatically update the User1contact information in the User2phonebook (and other users' phonebooks). The Send Update action can be triggered by an outgoing call or by an incoming User1application module2090SMS communication, for example. The User1application module2090performs the Send process, e.g., inFIG. 6E. The system and the methods used for “Update” is substantially the same as the “Send” process. The frequency of the “Send Update?” query is controlled by the User1LND Counter Data File2037. Each LND Counter Data is tied to the phone call destination number or SMS origination phone number. In order to prevent repetitive send requests for frequent callers, the User1LND Counter Data File2037tracks the number of outgoing calls for each unique destination address. The send query is asked after the User1LND Counter Data, for a given destination address, reaches the Base Threshold Value. User1may change information in the MyProfile Data File2035and the counters reset process is triggered. A change to Personal information (Name, Mobile or Home number) resets the LND counters for all the contacts who have previously received Personal information. A change to Business information (Name, Mobile or Work number) resets the LND counters for the contacts who have previously received Business information. A change to both Personal and Business information resets all the counters. Once the counter for a given contact is reset, a subsequent call to this contact triggers contact information exchange.

The “Receive Update” function is configured to allow the User2application module2091to receive a SMS message that contains the caller's contact information with the updated information. The User2application module2091activates and asks User2to “Update User1?”. User2has three options “Yes”, “No”, “Settings”, according to the “Receive” process described inFIG. 7A-7B. If the User2selects “Yes” the User2contact data entry in the User2UICC Phonebook2083is updated and a message is displayed, such as: “User2updated in SIM phonebook.” If the User2selects “No”, then the User2UICC Phonebook2083is unchanged.

Referring toFIG. 9, a mobile contact information management system9000includes components and their connectivity to several devices within a Network, such as a UMTS Network. A mobile contact management information system9000includes a first user phone9010, a second user phone9050, a remote computer9003, a remote database server9005, switches9007, a Switch Communication Application9004and a Mobile Operator Over The Air (OTA) platform9001, as well as other servers and databases servers.

The Mobile Operator remote computer9003remote database9005and the switches9007are coupled to each other. The first user phone9010and the second user phone9050are configured to communicate over the Mobile Operator OTA Platform9001. The OTA platform connects the first user phone9010and the second user phone9050to the remote computer9003and remote database server9005over the mobile network. InFIG. 9, the first user phone9010contains a UICC card9030and the second user phone9050contains a UICC card9080that enables the first user phone9010and the second user phone9050access to the remote server9003and the remote database9005over the mobile network, OTA Platform9001and the phone operator network. The UICC cards9030,9080can be integrated into the phone and phone operating system software.

The first user UICC card9030contains a (U)SIM application module9090, a Javacard9031, a SIM Tool Kit (STK) framework9032, and a first user UICC card phonebook9033. In addition, the following files are stored in the SIM File System: a first user MyProfile Data File9035, a first User Last Number Dialed (LND) data file9037, a first User LND Pattern data file9038, a first User Operations Mode data file9034, and a first User Configuration File9039. These files can be changed locally or remotely via an OTA update. The first user phone9010further includes a phone operating system9011. The first user phone operating system9011includes a display control module9017, a phonebook module9015, a phone event management communication module9014, and a SMS module9016. Other modules may also be included.

The second user UICC card9080contains a (U)SIM application module9090, a Javacard9081and a SIM Tool Kit (STK) framework9082, a second user UICC card phonebook9083. The following files are stored in the SIM File System: a second user MyProfile Data File9085, a second User Last Number Dialed (LND) data file9087, a second User LND Pattern data file9088, a second User Operations Mode data file9084, and a second User Configuration File9089. These files can be changed locally or remotely via an OTA update. The second user phone9050further includes a phone operating system9051. The second user phone operating system9051includes a display control module9057, a phonebook module9055, a phone event management communication module9054, and a SMS module9056. Other modules may be included.

User1places a call with the first phone9010to the second user phone9050via the Mobile Operator, stages9090and9060. The switch9007informs the Switch Communication Application9004within the remote computer9003regarding the caller's phone numbers. The Switch Communication Application9004creates two SMS messages: The first SMS message is send to the User1phone9010, a second message is send to the User2phone9050. In each instance, the (U)SIM application module9090in the first user UICC card9030and the (U)SIM application module9090in the second user UICC card9080is triggered by the SMS messages. The applet triggering events is replaced within the User1phone9010and the User2phone9050. At the end of each call the (U)SIM application module9090for User1and User2will be activated to query each user to Send contact information.

Alternatively, the User1MyProfile Data File9035, the User1Last Number Dialed (LND) data file9037, the User1LND Pattern data file9038, the User1User Operations Mode data file9034, and the User1Configuration File9039can be replaced with a web interface within the remote computer9003and a logic within the remote database server9005over the mobile network. With continued referece toFIG. 9, User1places a call with the mobile phone9010to the User2phone9050via the Mobile Operator, as shown in stage9090and9060. The switch9007informs the Switch Communication Application9004within the remote computer9003regarding User1's phone numbers. The Switch Communication Application9004creates two SMS messages: The first SMS message is sent to the User1phone9010, and a second message is send to the User2phone9050. The (U)SIM application module9090in the first user UICC card9030and the (U)SIM application module9090in the second user UICC card9080is triggered by the SMS messages. Using this methodology will not only replace the applet triggering events within the User1phone9010and the User2phone9050, but also the location process logic to the remote computer9003and the remote database server9005. The information related to User1and User2, such as MyProfile Data, Last Number Dialed Data, LND Data Pattern, User Operation Mode, and the list of contacts within the Address Book are stored within the remote database server9005. At the end of each call the (U)SIM application module9090,9091for User1and User2will be activated and ask each user to Send contact information.

Referring toFIG. 10, the mobile contact information management system3000illustrates the components of invention and their connectivity to several devices between Networks, such as an UMTS Network and a Fixed Line (Land Line) Network. A mobile contact management information system3000includes a first user phone3010, a second user fixed line phone3050, a second user computer3080, a remote computer3003, a remote database server3005, switches3007, a Switch Communication Application3004and a Mobile Operator Over The Air (OTA) platform3001, a Fixed Line Network3060as well as other servers and databases servers.

The Mobile Operator remote computer3003, the remote database3005and the switches3007are coupled to each other. The first user fixed line phone3050is connected to the Mobile Operator OTA Platform3001. The second user fixed line phone3050is connected to the Fixed Line Network3060. The second user computer3080is connected to the remote computer3003and to the remote database server3005through the Internet or other network. The OTA platform connects the first user phone3010to the remote computer3003and the remote database server3005over the mobile network. The first user phone3010contains an UICC card3030that enables the first user phone3010access to the remote server3003and remote database3005over the mobile network, OTA Platform3001and phone operator network. The UICC card3080can be integrated into the phone and phone operating system software.

The UICC card3030contains a (U)SIM application module3090, a Javacard3031and a SIM Tool Kit (STK) framework3032, a first user UICC card phonebook3033. In addition, the following files are stored in the SIM File System: a first user MyProfile Data File3035, a first User Last Number Dialed (LND) data file3037, a first User LND Pattern data file3038, a first User Operations Mode data file3034, and a first User Configuration File3039. These files can be changed locally or remotely via an OTA update. The first user phone3010further includes a phone operating system3011. The first user phone operating system3011includes a display control module3017, a phonebook module3015, a phone event management communication module3014, and a SMS module3016and other modules. The second user fixed line phone3050can be a standard fixed line phone or a VOIP phone or a next generation digital phone.

The second user contact information is stored in the remote computer3003coupled to the remote database server3005. The second user may have access privileges to the remote computer through the Internet to, for example, change contact information which is stored within remote database server3005.

According toFIG. 10, User1places a call with the mobile phone3010to the User2phone3050via the Mobile Operator, as shown in stage3065, and via the Fixed Line Network as shown in stage3060. The switch3007informs the Switch Communication Application3004within the remote computer3003regarding the User1's phone numbers. The Switch Communication Application3004informs the remote computer3003coupled to the remote database server3005. The remote computer3003retrieves the User2contact data from remote database3005, then packages the User2contact data and inserts the information into an SMS message. The SMS message is sent to the User1phone3010. In this instance, the (U)SIM application module3090in the first user UICC card3030is triggered by the SMS message in “Receive” mode. Using substantially the same application module3090, User1inserts User2contact data in the User1UICC card phonebook3033. The remote computer3003coupled to the remote database server3005stores User1's phone number within a Call List in the User2remote database3003account. User2changes her information within the remote computer3003coupled to the remote database server3005. Remote computer3003retrieves User2's updated contact data from the remote database3005, and packages new User2contact data and inserts the information into an SMS message. The SMS message is sent to the User1phone3010. In this instance, the (U)SIM application module3090in the first user UICC card3030is triggered by the SMS message in “Receive” mode. Using exactly the same application module3090and methodologies, User1will be able to insert User2's updated contact data in the User1UICC card phonebook3033.

A reporting system for the contact management system2000,3000,9000can be included. The (U)SIM application module2090prepares and sends usage reports to a remote computer2003and a remote database2005. The (U)SIM Application2090gathers usage data and sends information periodically to the remote computer2003and a remote server2005. The information collected includes, but is not limited to, total number of incoming calls, total number of contacts in the phonebook, total number of personal contact information updates with in a time period. The information collected in the remote database2005can be used to analyze usage statistics and characteristics.

Embodiments of the invention describe wireless transfer of data from a first mobile user to a second mobile user over a network. Using the methods and systems described herein, data can be transferred via Bluetooth® technology, infrared or other wireless technology that allow communication from one device to another.

The methods and systems of embodiments of the present invention described above allow users to exchange business and personal contact information to other users over a mobile network. In other embodiments, businesses may use contact information systems of the present invention to provide data exchange between the customers, vendors, or others. In other embodiments, mobile operators may use the present invention to provide a mobile yellow pages or white pages directory between the customers, vendors, merchants or others. Further, embodiments of the invention describe the exchange of contact information. Other information can be exchanged between the users, customers, vendors or others. For example, information such as photos, ring tones, other audio or visual information, music files and other information can be exchanged via the apparatus and systems described herein.

Having thus described at least one illustrative embodiment of the invention, various alterations, modifications and improvements will readily occur to those skilled in the art. Such alterations, modifications and improvements are intended to be within the scope and spirit of the invention. Accordingly, the foregoing description is by way of example only and is not intended as limiting.