Abstract:
The present application relates to a method for synchronizing heterogeneous databases using at least one processor, a first user database, a second user registers database, a third location criteria database and a fourth location occupancy database, the inputs of said first user database being likely to match the inputs of the third location criteria database, with the method including:
       a step of modification wherein the inputs of the fourth location occupancy database and the inputs of the second user register database are modified in response to a request;   prior to the modification, the processor processes the request so as to check the matching between the inputs of the third location criteria database and the inputs of the first user database;   depending on the checking, the processor sends a positive acknowledgement to the first location occupancy database and to the second user register database so as to carry out the modification.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
       [0001]    This application is a National Phase Entry of International Application No. PCT/FR2007/001931, filed Nov. 23, 2007, which claims priority to French Patent Application No. 06/10257, filed Nov. 23, 2006, both of which are incorporated herein by reference. 
     
    
     BACKGROUND AND SUMMARY 
       [0002]    The present invention relates to a solution for consulting, editing, updating and synchronizing a set of heterogeneous databases and provides a method and a system for synchronizing databases some information from one or several of said databases are independent of some other information from one or several other databases. 
         [0003]    The general problem is to provide a device able to synchronize and update a set of heterogeneous and independent databases. A set of heterogeneous databases which are not automatically synchronized today is to be found in the sport clubs where it is necessary to manage on the one hand databases of the sports&#39; club members and on the other hand a set of databases relating to the booking and the occupancy of the locations such as sports rooms and fields, tennis courts, teeing grounds on a golf course or strengthening equipment. In addition, club members do not know each other very well and a request from the members is to have the possibility of meeting and playing with new partners. The optional booking of a location and the seeking of partners is a service which must be rendered by the method for synchronizing heterogeneous databases. 
         [0004]    From document EP 16844194 (SAP AG) a central synchronization service is known for applications of the database type. However, the method described does not allow adapting to applications such as the booking of sport fields so as temporarily or definitely put aside a location for a given user. In addition, document WO2005055083 (Thomson Licensing SA) describes a device and a method for retrieving information from a database. This method does not make it possible to take into consideration successive determination parameters such as for example the utilization of a badge or a chip card to authorize access to the location booked. 
         [0005]    In order to remedy these various defects, the invention relates, in its broadest sense, to a method for synchronizing a set of heterogeneous databases and provides a method and a system for the synchronization of databases from which some information from one or several databases depends on some other information from one or several other databases. The invention relates to a method for synchronizing heterogeneous databases using at least one processor, a first user database, a second user register database, a third location criteria database and a fourth location occupancy database, the inputs of the first user database being likely to match the inputs of the third location criteria database, the method including: 
         [0006]    A step of modification during which inputs of the fourth location occupancy database and inputs of the second user register database are modified in answer to a request; wherein, 
         [0007]    prior to said modification, the processor processes the request so as to check the matching between the inputs of the third location criteria database and the inputs of the first user database; 
         [0008]    as a function of the checking, the processor transmits a positive acknowledgement to the fourth location occupancy database and to the second user register database so as to carry out the modification. 
         [0009]    Preferably, the inputs of the first user database include user subscription parameters and the inputs of the third location criteria database include parameters associated with the locations, a step during which the processor processes the request so as to check the matching between the inputs of the third location criteria database and the inputs of the first user database including a step during which the processor checks that the location is accessible to a user as a function of the user subscription parameters and the parameters associated with the location. In addition, advantageously, the inputs of the first user database include at least one user identifier and the subscription parameters include at least tennis court types accessible through the subscription and the inputs of the third location criteria database include at least types of tennis courts. Preferably, the inputs of the fourth location occupancy database include, for each tennis court, at least a time slot for the booking of the tennis court by users, and the inputs of the second user register database include, for each user, at least one tennis court reserved by the user for a time slot. Advantageously, said user database is completed by a user preferences database. 
         [0010]    In a particular embodiment, some data of said location occupancy database are modified by data blocks. Advantageously, some data from said location occupancy database are modified by a user as a function of the parameters of said user database. Advantageously, some data of said location occupancy database are modified by a user as a function of the parameters of said location criteria database. 
         [0011]    In another embodiment, said location occupancy database is synchronized with said user registers database. Advantageously, a user of said user database takes an option “Booked—Partner Wanted” in said location occupancy database. Advantageously, an e-mail is sent to the potential partners&#39; terminals further to said option “Booked—Partner Wanted” in said location occupancy database. Advantageously, an SMS is sent to the potential partners&#39; terminals further to said option “Booked—Partner Wanted” in said location occupancy database. 
         [0012]    In addition, the invention relates to a system for synchronizing heterogeneous databases arranged for the implementation of a method, as previously described. Preferably, this system includes a server for the implementation of the method and at least one local network which a badge reader is connected to. Advantageously, the system further includes at least an acquisition and consulting terminal, connected to said local network. Advantageously, the access to a location is dependent on the reading of a user&#39;s badge, the information of said location occupancy database and information of said location criteria database. 
     
    
     
       BRIEF DESCRIPTION OF DRAWING 
         [0013]    The present invention will be better understood when reading the description of a non limitative exemplary embodiment hereinunder, and referring to the appended drawing as  FIG. 1 , which describes the global architecture of a system for implementing the method according to the invention. 
       
    
    
     DETAILED DESCRIPTION 
       [0014]    In a first example, a user ( 1   i ) wishes to book a location which is a tennis court. Therefore, said user ( 1   i ) conventionally connects, via a terminal ( 2   m ), to the distant server ( 3 ) through a telecommunication network ( 9 ). Said server ( 3 ) contains all the databases corresponding to the personal data of said user ( 1   i ), as well as all the data on all the locations which are, in our example, tennis courts. As soon as the terminal ( 2   m ) is connected to the server ( 3 ), the processor ( 32 ) in said server ( 3 ) displays, via the network interface ( 31 ), and through the telecommunication network ( 9 ) a menu on the terminal screen ( 2   m ) in order to request the user ( 1   i ) of said terminal ( 2   m ) to identify himself or herself for example by entering his or her identifier and his or her password. 
         [0015]    In a particular embodiment, the user identification ( 1   i ) is obtained through a badge reader or a chip card reader on the terminal ( 2   m ). As soon as the user ( 1   i ) is identified, said processor ( 32 ) displays, from the user database ( 34 ), the user&#39;s ( 1   i ) main parameters such as, for example, his or her name, Christian name, address, classification, etc. In a particular embodiment, said processor ( 32 ) displays, from the players booking users register database ( 33 ) all the bookings already made by said user ( 1   i ). In another embodiment, said processor ( 32 ) displays, from the location occupancy database ( 37 ), all the courts available on this server. The location occupancy database ( 37 ) includes, for each court, the occupancy level: occupied, free, option, booked, etc. 
         [0016]    Advantageously, said processor ( 32 ) displays, from the location occupancy database ( 37 ), all the occupied courts. Advantageously, the names and photographs of the players having made a booking for each location are displayed on the terminal ( 2   m ) screen. Advantageously, the number and/or all the names of the players corresponding to each booking are displayed on the terminal ( 2   m ) screen. Advantageously, all the bookings made by said user ( 1   i ) are displayed with a customized color for said user ( 1   i ). 
         [0017]    To book a court, a user ( 1   i ) positions, for example, the terminal ( 2   m ) mouse on the block corresponding to the court, the day and the time he or she has selected. The processor ( 32 ) then checks that the user ( 1   i ) parameters allow him to reserve said court at this time of this day. Therefore, the processor ( 32 ) reads, on the one hand, the location criteria database ( 36 ) which contains, for each court, the locations, the generic availability, such as indoor tennis court, crude earth or grass field, reserved to professionals, reserved to such classification etc., and on the other said user ( 1   i ) parameters from the user database ( 34 ). 
         [0018]    Advantageously, said user database ( 34 ) contains the subscription form as a club member such as for example: 
         [0019]    The period of utilization; 
         [0020]    Summer package; 
         [0021]    School year package; 
         [0022]    Season package; 
         [0023]    Etc.; 
         [0024]    The location, since some packages are valid for certain courts only; 
         [0025]    The type; 
         [0026]    Periodical subscription; 
         [0027]    Pay per play subscription; 
         [0028]    A few hours user plan. 
         [0000]    If the user ( 1   i ) parameters and the court criteria are compatible, the booking of said court is confirmed by the processor ( 32 ) which sends a positive acknowledgement to the players booking user register database ( 33 ) as well as to the location occupancy database ( 37 ). Said processor ( 32 ) then updates and synchronizes said players booking user register database ( 33 ) as well as said location occupancy database ( 37 ) which mentions that this court is booked by said user ( 1   i ) on such day for such time slot. 
         [0029]    In another embodiment, a user calls one manager of said location occupancy database ( 37 ) and requests said manager to reserve a court for him for such day and at such time. In another embodiment, the manager of said location occupancy database ( 37 ) modifies the occupancy condition of a court by blocks, such as for example the court is booked and occupied for a competition at every time slot, for four days. In another example, a manager of said location occupancy database ( 37 ) modifies the occupancy condition of a court for such hour, every day of the week. 
         [0030]    At any time, a user ( 1   i ,  1   j ,  1   k , etc.) can cancel a booking he/she made. In this case, the booking is deleted by the processor ( 32 ) which synchronizes said players&#39; booking user register database ( 33 ) and said location occupancy database ( 37 ). In another embodiment, a user ( 1   o ) uses a terminal ( 7   r ) to make said booking. The terminals ( 4   r ,  7   t , etc.) are connected to the data server ( 3 ) by the local network ( 8 ). In another example, another user ( 1   j ) wishes to have one or several game partners to play tennis. 
         [0031]    Therefore, said user ( 1   j ) conventionally connects via a terminal ( 2   n ) to a distant server ( 3 ). As soon as the terminal ( 2   n ) is connected to the server ( 3 ), the processor ( 32 ) of said server ( 3 ) displays a menu on the terminal screen ( 2   n ), in order to request a user thereof ( 1   j ) to identify himself or herself. Said processor ( 32 ) displays, from the user database ( 34 ), the user ( 1   j ) main parameters, all the bookings he already made or made by said user ( 1   j ), as well as all the courts available on this server from the location occupancy database ( 37 ). To find a partner, said user ( 1   j ) selects the “Partner wanted” option and positions on the block corresponding to the court, the time and the day he wishes or she wishes. Advantageously, said user ( 1   j ) mentions how many partners he wants, if he/she wishes to play against a man or a woman in singles or doubles games, etc. 
         [0032]    The processor ( 32 ) checks that said user ( 1   i ) parameters enable him/her to seek one or several partners for said court, at that time of that day. Therefore, the processor ( 32 ) reads the location criteria database ( 36 ) and said user ( 1   j ) parameters from the user database ( 34 ). If said user ( 1   j ) parameters and the court criteria are compatible, the search for partners is accepted by the processor ( 32 ) and said court is reserved with the option “Partner Wanted” said processor ( 32 ) updates and then synchronizes said player booking user registers database ( 33 ) as well as the location occupancy database ( 37 ). Advantageously, the courts which are occupied with the option “Partner Wanted” are displayed in another color than the occupied or free courts. 
         [0033]    In a particular implementation, the processor ( 32 ) reads the players preference database ( 35 ) which corresponds to each player&#39;s preference such as for example the courts on which he wishes to play, in a preference ordering. Advantageously, said players&#39; preference database ( 35 ) contains the list of the partners with whom he/she would like to play, preferably. Advantageously, said players&#39; preferences database ( 35 ) contains, for each player, the preferred days and time slots. 
         [0034]    From the information of said players&#39; preferences database ( 35 ), the processor ( 32 ) first displays said users ( 2   n ) preferred courts in order to simplify, for said user ( 2   n ), the selection of the courts for the selected day. Advantageously, said user ( 2   n ) selects one or several users among his or her preferred partners. Advantageously, said user ( 2   n ) selects a partner who is not on his or her privileged partners list but in one list of players who have an equivalent playing level. 
         [0035]    In a particular embodiment, as soon as the “Partners Wanted” option is activated, the processor ( 32 ) automatically sends an electronic message of the e-mail type or SMS type to the terminal or terminals of the preferred partners of said user ( 2   n ). For example, if a preferred partner of said user ( 2   n ) has a mobile telephone ( 5   p ), the processor ( 32 ) automatically sends an SMS to said terminal ( 5   p ) indicating that said user ( 2   n ) wishes to play with him or her, on such day at such time on such court. Advantageously, the processor ( 32 ) completes the SMS sent with a request for an answer through a simple action on his or her telephone. The user of said terminal ( 5   p ) accepts or rejects this invitation. 
         [0036]    In another embodiment, if a preferred partner of said user ( 2   n ) has a terminal of the PC type, the processor ( 32 ) automatically sends an email to the terminal of said partner indicating that said user ( 2   n ) wishes to play with him or her on such day at such time on such court. The processor ( 32 ) completes said sent e-mail with one request for an answer through a simple action of his or her PC. The user of said PC accepts or rejects the invitation. If the invitation is accepted, the processor ( 32 ) confirms the booking, updates and synchronizes said players&#39; booking user register database ( 33 ) for the two users ( 2   n ) and ( 5   p ) as well as the location occupancy database ( 37 ) which switches from the “Partners Wanted” option condition to the Booked condition. 
         [0037]    In another embodiment, the interface ( 31 ) is connected to a local network ( 8 ) which is itself connected to terminals ( 7   r ,  7   t , etc.) such as PC or local multimedia terminals. Said terminals ( 7 ) are then used as acquisition and consulting terminals for the server databases ( 3 ). 
         [0038]    In a particular embodiment, the access to the tennis court is checked by a magnetic badge reader or a chip card reader ( 9   u , . . . ,  9   z ) connected to said local network ( 8 ), for example at the entrance door to each court. Only the users ( 1 ) who booked the court can access the court. Said user ( 1   i ) identifies himself or herself thanks to the badge reader ( 9   u ) corresponding to the court he or she booked, and the processor ( 32 ) checks via said location occupancy database ( 37 ) and said users database ( 34 ) whether said user ( 1   i ) can enter said court, checked by the badge reader ( 9   u ). The access to a location depends on the reading on the user&#39;s badge, information from said location occupancy database ( 37 ) and information from said criteria database ( 36 ). Advantageously, the access to said booked court is possible only within a time slot between, for example, 10 nm before and 10 nm after the booked time slot as indicated in said location occupancy database ( 37 ). 
         [0039]    Another example relates to the utilization of said method for booking golf courses teeing grounds. In this case, said user database relates to golf players, said user register database is used for recording the time of beginning, said location criteria database described the set of golf course with the characteristics thereof and said location occupancy database indicates for all the golf course each occupation at each start from each hole.