Abstract:
A method of automatically providing the country code and area of a phone number by selecting the city applying to programmed screen phones, mobile phones, personal digital assistants and communication devices with the dialing function. The disclosed method includes the steps of: establishing a database with the country code and area code of cities of all countries; sorting and numbering the cities to generate a look-up table; entering the city of the phone number to dial and comparing the selected city and the look-up table to generate the corresponding country code and area code of the city; and entering the country code, the area code and the phone number.

Description:
BACKGROUND OF THE INVENTION  
         [0001]    1. Field of Invention  
           [0002]    The present invention relates to a method of automatically providing the country code and area code of a phone number by selecting the city by the user. The method can be applied to programmed screen phones, mobile phones, personal digital assistants (PDAs) or any communication device with the dialing function.  
           [0003]    2. Related Art  
           [0004]    Due to the progress in global communication systems, international communications and businesses become more often. Different dialing codes for various areas in different countries may confuse people and cause difficulty in communications. For example, suppose a business manager has three important clients and their phone numbers are 33933600, 33933601, and 33933602. So the address book in the his mobile phone is stored with the data listed in TABLE 1:  
                       TABLE 1                       NO.   NAME   PHONE NUMBER                   1   AAA   33933600       2   BBB   33933601       3   CCC   33933602                  
 
           [0005]    When the three clients are at home, the business manager can conveniently pull out their phone numbers from the address book and ask the phone to automatically dial out. However, if the clients are away from home and traveling to Paris in France, London in England, and Tokyo in Japan, respectively, those data in the address book become useless. Unless entering new phone data, the business manager has to look up the country code and area code of these cities (the country codes are 33 for France, 44 for England, and 81 for Japan; the area codes are 1 for Paris, 20 for London, and 3 for Tokyo) and to change their respective phone numbers into 0033-1-33933600, 0044-20-33933601, and 0081-3-33933602 (as in TABLE 2) before he can make calls to them.  
                               TABLE 2                                   NO.   NAME   PHONE NUMBER                           1   AAA   0033-1-33933600           2   BBB   0044-20-33933601           3   CCC   0081-3-33933602                      
 
           [0006]    If these clients travel to Finland or Greece, the business manager then has to modify the address book in a similar way or manually dial the numbers. That is, once a client travel to a new city, he has to modify the phone data of the client. This is obviously very inconvenient; but it happens to the conventional mobile phone or screen phone all the time.  
           [0007]    Since the frequency of using a mobile phone to make international phone calls has been increasing, it is therefore rather important to have a method of automatically providing the country code and area code of a phone number by selecting the city so as to save the trouble in modifying phone data repeatedly caused by different dialing codes in different areas of countries.  
         SUMMARY OF THE INVENTION  
         [0008]    The present invention provides a method of automatically providing the country code and area code of a phone number by selecting the city. This method can be applied to programmed screen phones, mobile phones, personal digital assistants (PDAs) or communication devices with the dial function.  
           [0009]    The disclosed method has to be applied in communication devices that have the function to convert “+” into the standard international ID code. The method comprises the steps of: collecting the country codes and area codes of cities in all countries; sorting and numbering these cities to generate a look-up table; and using the look-up table to find and enter the country code and area code of the city selected by a user.  
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0010]    The present invention will become more fully understood from the detailed description given hereinbelow illustration only, and thus are not limitative of the present invention, and wherein:  
         [0011]    [0011]FIG. 1 shows a keypad of a conventional mobile phone;  
         [0012]    [0012]FIG. 2 is a flowchart of the complete data processing procedure of the invention;  
         [0013]    [0013]FIG. 3 is a flowchart of the complete dialing procedure of the invention; and  
         [0014]    [0014]FIGS. 4 through 14 schematically show the complete dialing procedure on a mobile phone of the invention. 
     
    
     DETAILED DESCRIPTION OF THE INVENTION  
       [0015]    The invention discloses a method of automatically providing the country code and area code of a phone number by selecting the city. Before describing how to establish a database of country codes and area codes, we first explain the dialing procedure for international calls. The numbers should be the INTERNATIONAL ID CODE of the caller+the COUNTRY CODE of the receiver +the AREA CODE of the receiver+the PHONE NUMBER of the receiver. One should note that the country codes and area codes are different for different countries. For example, Shanghai in China has 86-21, Paris in France has 33-1, and London in England has 44-20. In the present invention, the phone network support the international ID code “+”. That is, the phone network can convert “+” into the standard international long distance ID code. Normally, domestic long distance calls start with [0], which should be omitted in international calls.  
         [0016]    For example, if one makes an international call from Mainland China to some company in Tokyo, Japan, the country code of Japan is [81], the area code of Tokyo is [3], the company phone number is [3393-3600], and the international long distance ID code for Mainland China is [00], then the long distance phone number should be entered as 00-81-3-33933600. If one wants to dial the same phone number to Vienna in Austria, the number then becomes 0043-1-3-33933600 or +43-1-3-33933600.  
         [0017]    In this invention, the data of country codes and area codes can be arbitrarily expanded and modified in case the collection is not complete or there are incorrect data. So the invention provides the functions of input, modification and expansion. The invention further collects information relevant for some cities (such as the time difference with the Greenwich time, local monthly average temperature, etc) for the user to have some basic knowledge about the city.  
         [0018]    TABLE 3 lists the initial data structure of a single city. TABLE 4 lists the data structure for Vienna.  
                       TABLE 3                                       CITY NAME : //TRADITIONAL CHINESE            //SIMPLIFIED CHINESE            //ENGLISH           STANDARD TIME DIFFERENCE :           MONTHLY AVERAGE TEMPERATURE :           COUNTRY CODE :           CITY CODE :                      
 
         [0019]    [0019]                       TABLE 4                                       CITY NAME :          // TRADITIONAL CHINESE                     // SIMPLIFIED CHINESE            Vienna// ENGLISH           STANDARD TIME DIFFERENCE : +1           MONTHLY AVERAGE TEMPERATURE : 0,1,6,10,15,17,19,19,14,10,4,2           COUNTRY CODE : 43           CITY CODE : 1                        
         [0020]    The initial data structure of a single city is defined as follows:  
                                                                       typedef struct           {                char String[3][20];           float Time;           short Temperature[12];           short TelCode[2];                }WORLDCLOCK;                      
 
         [0021]    Taking into account the fact that every country may have a different translation for the city name, the country and area codes are sorted according to the alphabetic order of their English names. During the whole procedure of data processing, one first has to establish the city long distance codes in the database. Suppose there are 545 cities in the database, then two sets of data will be generated in the processing:  
         [0022]    1. Complete index:  
                                                   const S16 TeleCode_Index[]=       {                360,87,115,470,441,150,471,448,472,2,396,53,52,63,404,89,218,153,371,268,473,3           7,93,64,474,475,71,45,172,334,170,441,86,476,23,124,400,385,142,80,440,364,337,           117,56,477,116,213,155,34,370,259,439,25,41,94,12,478,4,11,74,39,3,479,482,30,4           80,481,5,127,61,165,301,392,450,438,295,133,192,225,163,327,126,346,305,451,9           5,144,483,543,226,342,378,220,96,484,28,485,486,10,358,384,152,97,85,156,341,1           79,6,131,187,386,487,98,99,350,260,416,389,490,314,491,35,344,154,159,221,227,           246,421,242,361,83,492,493,494,363,352,309,331,365,427,433,174,424,423,339,42           6,495,429,437,122,200,113,403,26,269,335,211,177,184,31,129,298,444,322,263,1           14,468,380,100,101,453,216,307,214,196,454,290,425,219,282,141,319,164,145,49           6,204,497,455,498,499,500,501,502,503,90,504,43,505,47,181,245,315,271,203,40           9,328,166,247,134,410,237,288,284,292,206,254,138,157,239,413,176,79,506,0,26           5,456,66,443,507,457,435,442,92,452,508,58,374,55,258,128,408,102,391,509,355,           362,195,261,160,168,387,67,390,139,420,262,397,72,209,223,366,330,91,417,235,           103,304,137,274,266,57,349,215,469,81,510,68,317,458,320,7,511,59,104,351,459,           49,512,17,513,76,183,36,514,236,356,189,329,233,194,460,279,395,354,515,42,10           5,106,516,18,201,234,517,388,65,19,518,161,348,32,461,519,107,520,16,267,418,4           62,238,108,521,38,522,27,523,229,272,372,345,373,369,248,419,324,121,336,175,           182,231,377,207,40,394,13,77,257,524,50,525,109,73,275,230,24,29,340,14,526,11           0,54,188,405,276,244,393,313,321,310,205,299,151,311,119,283,431,178,135,382,           78,167,15,185,171,527,528,75,82,186,353,222,193,529,530,8,531,447,255,463,464,           449,465,544,130,210,466,112,33,44,48,532,118,412,162,1,51,399,169,217,368,20,4           36,88,534,535,533,538,537,60,536,539,21,9,540,343,69,70,111,253,256,402,381,20           2,22,143,281,212,434,415,190,332,228,398,286,297,308,291,401,289,148,146,123,           422,270,280,240,136,383,224,273,191,359,406,173,197,323,62,132,198,252,541,35           7,285,180,243,149,446,445,430,158,241,432,303,306,300,542,333,407,140,467,293,           428,379,250,302,125,414,232,316,318,376,147,264,199,326,277,208,312,278,296,2           49,347,367,84,            };                  
 
         [0023]    2. City name index according to the English alphabetic order:  
         [0024]    const S16 TeleCode_Char[26]= 
                                                   {                0,27,64,99,124,127,138,152,197,207,234,249,283,305,325,327,348,362,370,416,44           6,452,455,472,492,524,            };                  
 
         [0025]    In the option screen, the first displayed city number is TeleCode_Index[0], the second displayed city number is TeleCode_Index[1], . . . and the ith displayed city number is TeleCode_Index[i-1]. After the user enter “ch”, the value of TeleCode_Index[ch-A] gives the index of city names starting with “ch”. The option screen jumps to those city names starting with “ch” for the user to look up quickly.  
         [0026]    The above-mentioned database is the base for automatically providing country and area codes. After selecting the desired city from the worldwide city option list, the invention automatically adds in the front of the phone number the correct country and area codes to form a correct dialing number series. It is very helpful for automatic answering systems on screen phones or mobile phones that can store phone numbers and automatic dial out.  
         [0027]    Referring to FIG. 1, the keypad of a conventional mobile phone contains a function option key  101 , a left function key  102 , a right function key  103 , a direction key  104  and CCITT keys  105 . The CCITT keys  105  are in accordance with the standards set forth by the International Telegraph and Telephone Consultative Committee.  
         [0028]    With reference to FIG. 2, step  201  opens an original data file and a desired output file. Step  202  determines whether the pointer of the original data file has pointed to the end of the file. A set of data is retrieved if the pointer has not pointed to the end of the file and the English names are stored until reaching the end of the data file (step  203 ). The original data file and the output file are then saved. All cities are sorted according to their English name (step  204 ). An index of city names starting with “A”, “B”, “C” . . . “Z” (totally  26  of them) (step  205 ) is output. Afterwards, the city names are sorted according to the next letter and a new index is output (step  206 ) for the convenience of use inquiries.  
         [0029]    With reference to FIG. 3, the invention is further described using a preferred embodiment. First, the user presses “ 0 ” and hold it until “+” appears (step  301 ). A left function key is then pressed to enter a country or city module (step  302 ). The present invention also provides a right function key to press for entering a country or city content module (step  303 ). The left and right function keys are only one design of the invention and should not be used to limit the scope of the invention.  
         [0030]    After selecting the country or city, the correct country code or area code is returned (step  304 ). The user then enters the phone number of the receiver to complete the whole phone number series (step  305 ). The invention further provides a manual method to enter the country and area codes directly (step  306 ). Finally, the system determines whether an OK key is pressed (step  307 ). If the OK key is pressed, then the mobile phone will dial out directly (step  308 ); otherwise, the dialing procedure is ceased.  
         [0031]    The whole procedure of dialing a number according to the disclosed method is demonstrated in FIGS. 4 through 14. The mobile phone is first in the standby state (FIG. 4). If the user wants to call a friend in Brisbane (Australia) with the phone number 45789612, he should press “0” for a period of time. The screen will first display “0” (FIG. 5) and then changes to “+” (FIG. 6). If the user does not know the country and area codes, he can press the left function key to enter the worldwide city selection list (FIG. 7).  
         [0032]    In the city selection screen, the user can press the direction key to browse through them. He can also press the left or right function key to flip through the pages. If he press a number key of “2” through “9”, an English letter will be displayed in the center at the bottom of the screen (FIG. 8) for fast searches.  
         [0033]    If the user press “2” twice, the cursor will stop on a city starting with a “B” (FIG. 9). He can then press the direction key to find Brisbane (FIG. 10). If the user is interested in learning about the city, he can press the left function key to look up the local time, the monthly average temperature, the country code, and the area code of the city (FIG. 11). If he finds out that the local time is in the midnight, he will probably decide not to call. Once he learns the local temperature, he can make a considerate greeting to his friend there.  
         [0034]    After pressing the OK key, the system returns to a dialing screen wherein the country and area codes for Brisbane have been added (FIG. 12). The user finally enters the phone number “45789612” (FIG. 13).  
         [0035]    The disclosed method has to satisfy the “+” standard supported by the local telephone network. That is, “+” replaces the prefix code for international calls. After combining with the country code, the area code, and the local phone number, an international call dialing number is thus formed. The user only needs to press the OK key to make the call (FIG. 14).  
         [0036]    The present invention can also automatically identify the location of an incoming call or a phone number in the address book and provide related information according to the incoming call or the phone number recorded in the address book along with the database of the invention. Such useful information can be time (time difference), date, average temperature and travel information.  
         [0037]    Finally, the invention can arbitrarily expand and modify the database of country codes and area codes. If the country code or area of a city is changed, the user has to modify the contents of this city in the database. The modification procedure is as follows:  
         [0038]    1. Find the city from the city selection list screen and enter the city;  
         [0039]    2. Press the function selection key  101  to switch to the editing mode;  
         [0040]    3. Modify the incorrect data;  
         [0041]    4. Store data and return to the city select list screen.  
         [0042]    On the other hand, taking into account the fact that some country or area codes are not collected in the database, the invention further provides the user appending input mode. The procedure is as follows:  
         [0043]    1. Press the function selection key  101  to switch to the appending mode in the city selection list screen;  
         [0044]    2. Enter contents of all items (items with no values are kept empty, and values in the same item are separated with commas);  
         [0045]    3. Store data and sort the cities according to their names.  
         [0046]    The invention being thus described, it will be obvious that the same may be varied in many ways. Such variations are not to be regarded as a departure from the spirit and scope of the invention, and all such modifications as would be obvious to one skilled in the art are intended to be included within the scope of the following claims.