Abstract:
A system, method, and program for tracking usage and reporting available resource information of a wireless communication device, such as a mobile telephone. A server, wireless device, or both, keeps a record of available resources for the wireless device. In one embodiment, a server receives a request for an application from the wireless device, enables the application, and tracks the time for which the application is enabled. After the application is stopped, the server adjusts the record of available resources to reflect the time consumed by the application and provides the updated available resource information to the wireless handset. The wireless device can assist in such monitoring of available resources, with either data storage, processing, or both.

Description:
BACKGROUND OF THE INVENTION 
   1. Field of the Invention 
   The present invention generally relates to wireless telecommunication. More specifically, the present invention relates to a system and method for providing information regarding the use of a wireless communication device and customization of a services plan for the wireless communication device. 
   2. Description of the Related Art 
   The competition in the wireless telecommunications market has increased as the technology advances and the wireless communications service becomes more affordable. In order to attract new subscribers and increase the market share, wireless service providers offer a variety of service plans that fit different needs. For example, for a salesperson who is on the road most of time, a service plan for a larger fee that offers a large number of free prime time minutes and free long distance may be more desirable. Yet, for a non-working person, a service plan for a lower fee with a small number of free prime time minutes and a larger number of free weekend minutes may be more adequate. 
   When a user signs up for a wireless service provider, he may be offered a service plan with a specific allocation of air time minutes, such as prime time, evening or weekend minutes and, for a fixed price and when the user exceeds these limits, the user will be charged additionally. Though, the user has been informed of these limits, it is difficult for him to remember these limits and it is very difficult for him to know when his use is actively approaching these limits. 
   SUMMARY OF THE INVENTION 
   The invention is a system and method that address the above problems by tracking and informing a user about use of the wireless communications service. In one embodiment, the method is executed on a wireless device for tracking use of an application on the wireless device, wherein the wireless device is capable of communicating with a server through a wireless communication network. The wireless device receives subscription plan information for an application, and, in response to the subscription plan information received, establishes a subscription plan for a user, wherein the subscription plan includes available resource information. The wireless device receives a request for activating the application, and, in response to the request for activation, activates the application. After activating the application, the wireless device adjusts the available resource information to reflect the activation of the application, and displays the available resource information to the user. 
   The application can be a wireless communications application or an interactive game application. Further, the user of an application can have the airtime measured in connection minutes or in a money amount. 
   In an alternative embodiment, the method is executed on a server tracking use of an application on a wireless device, wherein the wireless device is capable of communicating with a server through a wireless communication network. The server receives a subscription request for an application from a user, and, in response to the subscription request, the server establishes a subscription plan for the user, with the subscription plan including available resource information. The server receives a request for use of the application from the wireless device, adjusts the available resource information according to the use of the application, and transmits the available resource information to the wireless device. 
   The system can be implemented as a computing device capable of tracking use of an application and providing notification to a user, wherein the computing device being capable of communicating with a server through a wireless communication network. The computing device has a wireless transmitter module for communicating with the server and receiving the application from the server, a controller for executing the application, an user interface unit for receiving inputs from the user for controlling the application, a display unit for displaying the application to the user, a timing module for tracking the execution of the application, and available resource information registers for storing available resource information, wherein the controller updates the available resource information in the available resource information registers according to the execution of the application. 
   Other objects, advantages, and features of the present invention will become apparent after review of the hereinafter set forth in Brief Description of the Drawings, Detailed Description of the Invention, and the claims. 

   
     BRIEF DESCRIPTION OF THE DRAWINGS 
       FIG. 1  illustrates a known architecture of a wireless network. 
       FIG. 2  is a flow chart for a subscription process executing at a server. 
       FIG. 3  is a flow chart for a usage tracking process executing at a wireless computer device. 
       FIG. 4  is a block diagram for a wireless device platform. 
       FIG. 5  is an archived file retrieval process. 
       FIG. 6  is an illustration of a resource tracking table resident on either a wireless computer device, a server, or both. 
   

   DETAILED DESCRIPTION OF THE INVENTION 
   In this description, the terms “communication device,” “wireless device,” “wireless telephone,” “wireless communications device,” and “wireless handset” are used interchangeably, and the term “application” as used herein is intended to encompass executable and nonexecutable software files, raw data, aggregated data, patches, and other code segments. Further, like numerals refer to like elements throughout the several views. With advent of 3 rd  generation (3G) wireless communication technology, more bandwidth has become available for wireless communications, and handsets and wireless telecommunication devices, such as cellular telephones, pagers, personal digital assistants (PDAs) have increasing wireless capabilities. 
     FIG. 1  depicts a prior art cellular telecommunication network  100 . The communication network  100  includes one or more communication towers  106 , each connected to a base station (BS)  110  and serving users with communication devices  102 . The communication devices  102  can be cellular telephones, pagers, personal digital assistants (PDAs), laptop computers, or other hand-held, stationary, or portable communication devices that use a wireless and cellular telecommunication network. The commands and data input by each user are transmitted as digital data to a communication tower  106 . The communication between a user using a communication device  102  and the communication tower  106  can be based on different technologies, such code division multiplexed access (CDMA), time division multiplexed access (TDMA), frequency division multiplexed access (FDMA), the global system for mobile communications (GSM), or other protocols that may be used in a wireless communications network or a data communications network. The data from each user is sent from the communication tower  106  to a base station (BS)  110 , and forwarded to a mobile switching center (MSC)  114 , which can be connected to a public switched telephone network (PSTN)  118 . 
   The MSC  114  may be connected to a server  116  that supports different applications available to subscribers using the wireless communications devices  102 . Optionally, the server  116  can be part of the MSC  114  or connected to the PSTN  118 . The server  116  can be operated by the wireless service supplier or a third party. The server  116  stores a directory of telephone service subscribers. The wireless subscribers can be identified by mobile identification number (MIN) or the wireless device&#39;s electronic identification number (EIN). 
   When a user subscribes a wireless communications service from a service provider, the user selects a service plan that allocates certain free resources to him and the service provider stores the information about the service plan and the free resource information into the server  116 . The user, when equipped with a wireless handset  102  according to the present invention, may download the service plan and the corresponding free resource information into the wireless handset  102 . The user can also set up few personal settings on the wireless handset  102  that allow him to track use of the wireless handset  102 . 
     FIG. 2  illustrates this subscription process  200 . The user subscribes to an application, step  202 , that may be a wireless communications service or a game application, and a subscription plan is established for the user according to the user&#39;s selection, step  204 . The user may also set up a few personal settings, such as when the user desires to be notified, step  206 . If the user sets up a flag for a notification when the remaining prime time minutes is 10 minutes, the service provider will provide a notification when the prime time minutes left in the subscription plan is 10 minutes. The user may also set up a flag for when a certain individual call exceeds a preset duration. For example, if the user sets a flag for a five minutes call duration, every time a call exceeds five minutes, the user will receive a notification. The user may also set up a flag so he will receive a summary of remaining minutes in his subscription plan at the end of every call. 
   The usage tracking feature can be implemented on the wireless handset  102 . The user enters a setting on the wireless handset  102  and the wireless handset  102  will track the usage. Every time the user receives a call or places a call, the wireless handset  102  records the duration of the call and deducts it from the available resource. If the call is made during the weekend, then the duration of the call is deducted from the weekend minutes. Alternatively, if the subscription plan is created by the service provider and stored in the server  116 , the user can request download a copy of the service plan into his wireless handset  102 , before tracking the use with the wireless handset  102 . 
   In an alternative embodiment, the subscription plan may be established in terms of a money amount. For example, a user may have purchased $100.00 of air time from a service provider who charges a flat rate of five cents per minute. The subscription plan will record that there are $100.00 available of resource for the user. When the user places a call, the wireless handset records the cost of connection by adding five cents for each connection minute, and at the end of the call the cost of connection is deducted from the available resource. 
     FIG. 3  is a flow chart for a usage tracking process  300 . The usage tracking process  300  can be implemented on the wireless device  102  or on the server  116 . When executed on the wireless handset device  102 , the request for an application, step  302 , is received after the user enters a destination telephone number at the wireless handset  102 , and the wireless handset  102  activates the application, step  304 , by sending the destination telephone number to the server  116  and requesting a connection to the destination telephone number. The wireless device  102  receives the available resource information either downloading from the server  116  or entered manually by the user. The flags are also entered by the user and stored in the wireless handset without being transmitted to the server. 
   The wireless device  102  tracks the activation time, step  306 , compares the activation time with a preset limit, step  308 , and notifies the user, step  310 , if the activation time is larger than the preset limit, by displaying a message on a display screen on the wireless device  102 . After checking for the activation time, the wireless handset  102  adjust the available resource information to reflect the duration of the call, i.e., the wireless handset  102  deducts the duration of the call from the available resource information, step  312 . The wireless handset also tracks the accumulate usage time by adding the activation time to the total of accumulated usage time. For example, if the call lasted 10 minutes during the prime time and the user had 190 prime time minutes of the available resource and 34 minutes of accumulated prime time usage, the wireless handset  102  will deduct the 10 minutes from the 190 minutes and add 10 minutes to the 34 minutes. The new available resource will then be 180 prime time minutes and the new accumulated usage prime time would be 44 minutes. 
   The wireless handset  102  will check the adjusted available resource against preset limits, step  314 . If the adjusted available resource consists of 80 prime-time minutes, 150 non-prime time minutes, and 230 weekend minutes, the wireless handset  102  checks these numbers against the corresponding flags (preset limits) set by the user. If an available resource is less or equal than a preset limit, then the wireless handset  102  notifies the user, step  316 . The notification can be a display message or an audio message. 
   The wireless handset  102  also checks whether it is time to reset the available resource to a default value. An example is that the wireless handset  102  will reset the available resource to a default value at the beginning of each billing period. The wireless handset  102  first determines whether the current date is the beginning of a billing period, step  318 , if so, the wireless handset  102  resets the available resource to the default value, step  320 . 
   When it is implemented on the server  116  has steps similar to the ones executed on the server  116 . The server  116  checks whether it has received a request for an application, step  302 , e. g., a request to connect to a destination telephone. If the request is received, the server  116  activates the application, step  304 , by connecting the wireless handset  102  to a destination telephone, which may be another wireless telephone  102  or a wireline telephone  120 . After the connection is established, the server  116  records the activation time, step  36 , i.e., the duration of the call between the user and the destination telephone. 
   After the call is completed, the server  116  compares the activation time with a limit set by the user, step  308 . If the activation time is greater than the preset limit, the server  116  sends a notice to the user, step  310 . The notice can be a message to the wireless device  102  or an audio message played after the end of the connection. The steps  312 – 320  can be substantially the same as described above for when the usage tracking process  300  is executed on the wireless handset  102 . 
     FIG. 4  is a block diagram  400  of the platform of a wireless handset  102 . The wireless handset  102 , besides being capable of supporting wireless communications applications, is capable of tracking use of specific applications and providing notifications to the user when certain user settable parameters have been achieved or surpassed. The wireless handset  102  includes a wireless transceiver  402  connected to an antenna  404 , a controller  406 , a display unit  408 , a timing module  410 , resource and setting registers  412 , and a user interface unit  414 . The wireless handset  102  communicates with a wireless network via radio transmissions through the wireless transceiver  402 . The wireless handset  102  receives user settings through the user interface unit  414 , which may include a keypad, a speaker, a microphone, or other suitable input devices. After the user settings are received, they are saved in the resource and setting registers  412 . The settings are transmitted to the server if the server tracks controls the usage tracking and notification operations. The resource and setting registers  412  may be part of a computer readable memory accessible by the controller  406 . The available resource information is also stored in the resource and setting registers  412 , and the controller  406  may update the resource and setting registers  412  according to the usage information. The timing module  410  is essentially a timer that the controller  406  can set up to track the usage information. The display unit  408  may be a liquid crystal display (LCD) screen or a plasma based display screen. 
   The wireless handset  102  is also capable of archiving, retrieving, and viewing summaries of previous activities at the device. At the beginning of each billing period, before resetting the available resources to their default value, the wireless handset  102  archives the usage information that has been recorded. The usage information, such as number of prime time, non-prime time, and weekend minutes used, is stored and available for later retrieval and review. The archiving can occur at pre-determined intervals, such as every 7 days. Alternatively, the archiving of files can occur after another event, such as the threshold of available minutes being met or like activity. 
     FIG. 5  is a retrieval process  500  of data at the wireless handset  102 . When the user wants to review the usage of an application in a particular month, the user can enter his selection at the wireless handset  102 . The wireless handset  102  receives a selection for an archived usage file, step  502 , and retrieves the archived file, step  504 . After retrieving the archived file, the wireless handset  102  displays it to the user, step  506 . 
   The archiving of usage information can also be done in the server  116 . The user will enter his selection of an archived file on the wireless handset  102 , and the wireless handset  102  sends the requests to the server  116 . The server  116  retrieves the archived file and transmits it to the wireless handset  102 . The wireless handset  102  then displays it to the user. 
     FIG. 6  illustrates a resource tracking table  600  that may be stored in the resource and setting registers  412  or in other accessible media. The resource tracking table  600  stores available resource information  602  for different resources, such as prime time minutes  604 , non-prime time minutes  606 , and weekend minutes  608 . It also stores user settable flags (preset limits)  610  for different resources, including for the call duration  612 . 
   The available resource information  602  for each resource may be updated after each call. For example, if a call lasted 15 minutes, where 9 minutes were made during the prime time hours and 6 minutes were made during non-prime time hours, then 9 minutes is deducted from the prime time minutes  604  and 6 minutes are deducted from the non-prime time minutes  606 . For the table shown in  FIG. 6 , where a flag is set for 10 minutes for the call duration  612 , a notification is provided to the user. 
   It should be noted that the system is not limited to communications applications, and can be applied to any application that runs on a remote wireless device and requires a subscription. The following is a description of a use scenario, where the user requests an interactive game from a server. The user subscribes to the interactive games from the service provider and chooses a subscription plan that affords him 100 prime time minutes, 500 non-prime time minutes, and 700 weekend minutes. After subscribing to the service plan, the user proceeds to set up flags for each individual resource, so he can receive notification when, for example, he plays a game more than 10 minutes continuously or exceeds 10 minutes in each resource category.  FIG. 6  is an example of the user&#39;s subscription plan and settings. The information of  FIG. 6  can be stored on user&#39;s wireless handset  102  or on the service provider&#39;s server  116 . The user can change the settings by using his wireless handset  102  or through an Internet web access. 
   After subscribing to the service and setting up his preferences, the user may use the wireless handset  102  to request an interactive game that he can play against others online users. The user makes a request to the server  116  for a menu of games, and the request is transmitted wirelessly to a communication tower  106 , passes through a base station  110  and a messaging switching center  114 , and delivered to the server  116 . The server  116  sends the menu to the wireless device  102 . 
   After receiving the menu, the user activates the application by selecting an application. The activation request is received by the server  116 , and the server  116  enables the user to become a player in a multi-user interactive game. The server  116  also starts a timer to record the user&#39;s play time. 
   When the user is finished playing the game, the server  116  deducts the playing time from the user&#39;s subscription plan and sends the call duration and the available resource information to the user&#39;s wireless handset  102 . The wireless handset  102  stores the available resource information received from the server  116  in the resource and setting registers  412  and compares the call duration with the flags in the resource and setting registers  412 . If the call duration exceeds any of the flags, the wireless handset  102  displays a corresponding notification to the user. 
   In view of the method being executable on a wireless service provider&#39;s computer device or a wireless communications device, the system can be implemented with a program resident in a computer readable medium, where the program directs a wireless computer device having a computer platform to perform the steps of the method. The computer readable medium can be the memory of the device, or can be in a connective database. Further, the computer readable medium can be in a secondary storage media that is loadable onto a wireless communications device computer platform, such as a magnetic disk or tape, optical disk, hard disk, flash memory, or other storage media as is known in the art. 
   In the context of the invention, the method may be implemented, for example, by operating portion(s) of the wireless network to execute a sequence of machine-readable instructions, such as the wireless communications device or the server. The instructions can reside in various types of signal-bearing or data storage primary, secondary, or tertiary media. The media may comprise, for example, RAM (not shown) accessible by, or residing within, the components of the wireless network. Whether contained in RAM, a diskette, or other secondary storage media, the instructions may be stored on a variety of machine-readable data storage media, such as DASD storage (e.g., a conventional “hard drive” or a RAID array), magnetic tape, electronic read-only memory (e.g., ROM, EPROM, or EEPROM), flash memory cards, an optical storage device (e.g. CD-ROM, WORM, DVD, digital optical tape), paper “punch” cards, or other suitable data storage media including digital and analog transmission media. 
   While the invention has been particularly shown and described with reference to a preferred embodiment thereof, it will be understood by those skilled in the art that various changes in form and detail maybe made without departing from the spirit and scope of the present invention as set for the in the following claims. Furthermore, although elements of the invention may be described or claimed in the singular, the plural is contemplated unless limitation to the singular is explicitly stated.