WO2014027477A1 - 管理装置、サービス提供システム、管理装置の制御方法、及び、コンピュータ読み取り可能な記録媒体 - Google Patents

管理装置、サービス提供システム、管理装置の制御方法、及び、コンピュータ読み取り可能な記録媒体 Download PDF

Info

Publication number
WO2014027477A1
WO2014027477A1 PCT/JP2013/059647 JP2013059647W WO2014027477A1 WO 2014027477 A1 WO2014027477 A1 WO 2014027477A1 JP 2013059647 W JP2013059647 W JP 2013059647W WO 2014027477 A1 WO2014027477 A1 WO 2014027477A1
Authority
WO
WIPO (PCT)
Prior art keywords
user
predetermined
golf
information
facility
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/JP2013/059647
Other languages
English (en)
French (fr)
Inventor
恭行 夏目
卓也 橋本
明 永島
勇二 恒松
諭 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Konami Digital Entertainment Co Ltd
Original Assignee
Konami Digital Entertainment Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Konami Digital Entertainment Co Ltd filed Critical Konami Digital Entertainment Co Ltd
Publication of WO2014027477A1 publication Critical patent/WO2014027477A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/02Reservations, e.g. for tickets, services or events
    • G06Q10/026Reservations, e.g. for tickets, services or events for sport or leisure activities, e.g. booking tennis courts, athletic fields or a bike at a class or gymnasium
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services

Definitions

  • the present invention relates to a management apparatus, a service providing system, a management apparatus control method, and a computer-readable recording medium.
  • Patent Literature 1 discloses a system that sets conditions such as a required time from a home to a golf course and displays a list of golf courses that meet the conditions.
  • a facility such as a golf course may be used simultaneously by a plurality of people. Therefore, the secretary who reserves a facility such as a golf course is required to select a facility considering not only the conditions of the secretary such as the distance from the secretary's home but also the conditions of the members who use the facility at the same time. . However, it took time and effort to select a facility in consideration of the conditions of members who use the facility, and the secretary had a heavy burden.
  • the present invention has been made in view of this point, and an object of the present invention is to provide a service for identifying facility candidates in consideration of the conditions of members who use the facility at the same time.
  • a management apparatus is a management apparatus that provides a service related to a predetermined target to a first user, and the positional information of the reference point of the first user, and Based on the first acquisition unit that acquires the location information of the facility relating to the predetermined target, the location information of the reference point of the first user acquired by the first acquisition unit, and the location information of the facility, the first A first specifying unit that specifies a facility whose distance from the reference point of the user is equal to or less than a predetermined value as a target facility of the first user, a target facility of the predetermined first user, and the predetermined A second facility that identifies a part or all of a facility that is a target facility of another first user different from the first user of the first user as a common facility of the predetermined first user and the other first user Display information including information indicating the specific part and the common facility A display information generation unit to be generated, characterized in that it comprises a.
  • the service related to the predetermined target may be, for example, an application service that provides information about the predetermined target.
  • the predetermined target is “golf”
  • the facility related to the predetermined target corresponds to a golf course or the like.
  • the position information may be an address or information indicating the longitude and latitude of the address.
  • a part of the target facility may be a target facility whose required time from the reference point of the predetermined first user and the reference point of another first user is shorter than the predetermined time. It may be a facility whose fee required for using the target facility is a predetermined amount or less.
  • the management device is a management device capable of communicating with a terminal device of a first user and providing a service related to a predetermined target to the first user, and uniquely identifies the first user.
  • a first acquisition unit that acquires identification information to be identified, position information of a reference point of the first user, and position information of a facility relating to the predetermined target, and the first use acquired by the first acquisition unit
  • a facility whose distance from the reference point of the first user is equal to or less than a predetermined value is determined as a target facility of the first user based on the position information of the reference point of the user and the position information of the facility
  • the predetermined facility is a target facility of the predetermined first user and is selected by the predetermined first user's terminal device Part of the facility that is the target facility for other first users Display information including information indicating the common facility specified by the second specifying unit, and a second specifying unit that specifies all as a common facility of the
  • the terminal device corresponds to, for example, a personal computer, a mobile phone, a smartphone, a tablet terminal, or the like.
  • the service related to the predetermined target may be, for example, an application service that provides information about the predetermined target.
  • the predetermined target is “golf”
  • the facility related to the predetermined target corresponds to a golf course or the like.
  • the reference point of the first user is any place that serves as a reference for the first user, such as the first user's home or the nearest station from the first user's home. May be.
  • the position information may be an address or information indicating the longitude and latitude of the address.
  • a part of the target facility may be a target facility whose required time from the reference point of the predetermined first user and the reference point of another first user is shorter than the predetermined time. It may be a facility whose fee required for using the target facility is a predetermined amount or less.
  • the management device described above moves between the reference point of the first user and the target facility of the first user based on the position information of the reference point of the first user and the position information of the facility.
  • a facility whose required time is equal to or less than the predetermined time is specified as a common facility of the predetermined first user and the other first user.
  • the calculation unit is configured to start from a reference point of the predetermined first user from a target facility of the predetermined first user in response to a request from the terminal device of the predetermined first user. Calculating the time required to move between and the time required to move from the reference point of the other first user to the target facility of the other first user, It is characterized by that.
  • the management device described above is communicable with a first external device that calculates the time required to move between the two points based on two pieces of position information representing the positions of the two points.
  • the position information of the reference point of the first user acquired by the first acquisition unit and the position information of the target facility of the first user are transmitted to the first external device, and based on the transmitted position information
  • the second acquisition for acquiring, from the first external device, the time required for moving between the reference point of the first user and the target facility of the first user, calculated by the first external device.
  • the second specifying unit in response to a request from the terminal device of the predetermined first user, out of the target facilities of the predetermined first user, the reference point of the predetermined first user It is a facility where the required time from In addition, among the target facilities of the other first user, a facility whose required time from the reference point of the other first user is equal to or shorter than the predetermined time is selected as the predetermined first user and the other first user. It is specified as a common facility for one user.
  • the second acquisition unit may receive positional information on the reference point of the predetermined first user, the predetermined first usage in response to a request from the terminal device of the predetermined first user.
  • the position information of the target facility of the user, the position information of the reference point of the other first user, and the position information of the target facility of the other first user are transmitted to the first external device and transmitted.
  • the time required to move from the reference point of the predetermined first user to the target facility of the predetermined first user which is calculated by the first external device based on the obtained position information;
  • the time required to move from the reference point of the other first user to the target facility of the other first user is acquired from the first external device.
  • the display information generation unit includes a time required to move from the predetermined reference point of the first user to the common facility, and a reference point of the other first user.
  • Information representing the common facility on the screen displayed on the display unit provided in the terminal device of the predetermined first user, based on the time required to travel from to the common facility The display position is determined, and display information including information representing the common facility is generated based on the determination result.
  • the management device described above includes a third acquisition unit that acquires specific relationship information representing a specific relationship between the first users, the identification information of the predetermined first user acquired by the first acquisition unit, and the Based on the specific relationship information acquired by the third acquisition unit, the first specific relationship user who is the first user having the specific relationship with the predetermined first user, and the first A user specifying unit that specifies a part or all of the specific related user and the second specific related user who is the first user having the specific relationship as a target user, and the display
  • the information generation unit generates display information including information representing the target user based on the identification result of the user identification unit, and the transmission control unit is configured to generate the target user generated by the display information generation unit.
  • Display information including information representing the predetermined first user The second specifying unit displays a screen based on display information including the transmitted information representing the target user on the display unit of the terminal device of the predetermined first user. In this case, at least a part of the target users selected by the predetermined first user is specified as the other first user on the screen.
  • the user specifying unit may specify the first specific relationship user and the second specific relationship user as target users.
  • the user specifying unit is a first user having the specific relationship with the predetermined first user from the identification information of the predetermined first user based on the specific relationship information.
  • the specific relationship user may be specified, and the specified first specific relationship user and the second specific relationship user may be specified as target users.
  • the user specifying unit specifies the first specific relationship user and the second specific relationship user, and specifies a part of them, for example, the second specific relationship user as the target user. You may do.
  • the specifying unit may specify the first specific relationship user as the target user.
  • the management device described above includes a second external device that manages identification information that uniquely identifies a second user including the first user and specific relationship information that represents a specific relationship between the second users; A third acquisition unit that is communicable and acquires the specific relationship information from the second external device based on the identification information of the first user acquired by the first acquisition unit, and the first acquisition unit Based on the acquired identification information of the predetermined first user and the specific relationship information acquired by the third acquisition unit, the second user having the specific relationship with the predetermined first user.
  • the first specific relationship user corresponding to the first user and the second user corresponding to the first user among the second users having the specific relationship with the first specific relationship user.
  • Particular or all of the two specific related users are special A display unit that generates the display information including information representing the target user based on the identification result of the user identification unit, and the transmission control unit includes: Control is performed to transmit display information including information representing the target user generated by the display information generation unit to the terminal device of the predetermined first user, and the second specifying unit is configured to perform the predetermined first usage.
  • the screen based on the display information including the transmitted information representing the target user is displayed on the display unit of the person's terminal device, the target usage selected by the predetermined first user on the screen is displayed. It is characterized in that at least a part of the user is specified as the other first user.
  • the user specifying unit may specify the first specific relationship user and the second specific relationship user as target users.
  • the user specifying unit specifies the first specific relationship user and the second specific relationship user, and specifies a part of them, for example, the second specific relationship user as the target user. You may do.
  • the specifying unit may specify the first specific relationship user as the target user.
  • a service providing system is a service providing system including a management device that provides a service related to a predetermined target to a first user, and a terminal device of the first user, wherein the terminal device is A display unit capable of displaying a screen based on predetermined display information, and capable of communicating with the management apparatus, wherein the management apparatus uniquely identifies the first user; the first user's reference A location information of a location, a location information of a facility related to the predetermined object, a location information of the facility, and a location information of the location of the facility and the reference location of the first user acquired by the location acquisition portion
  • a first identifying unit that identifies a facility whose distance from the reference point of the first user is a predetermined value or less as a target facility of the first user, and a terminal of the predetermined first user Upon request from equipment A part or all of a facility that is a target facility of the predetermined first user and is a target facility of another first user selected in the terminal device of the
  • the management device control method is capable of communicating with a terminal device of a first user including a display unit capable of displaying a screen based on predetermined display information, and provides a service related to a predetermined target to the first user.
  • Control information providing method for obtaining identification information for uniquely identifying the first user, location information of a reference point of the first user, and location information of a facility relating to the predetermined target Based on the position information of the reference point of the first user and the position information of the facility, a facility whose distance from the reference point of the first user is a predetermined value or less is It is specified as a target facility, and is a target facility of the predetermined first user and selected by the predetermined first user terminal device in response to a request from the terminal device of the predetermined first user.
  • the display information is controlled to be transmitted to the terminal device of the predetermined first user.
  • the computer-readable recording medium can communicate with a terminal device of a first user including a display unit capable of displaying a screen based on predetermined display information, and relates to a predetermined target for the first user.
  • a computer-readable recording medium that records a program of a management device that provides a service and includes a computer, the computer having identification information for uniquely identifying the first user, the first user's
  • the first acquisition process for acquiring the position information of the reference point and the position information of the facility related to the predetermined object, the position information of the reference point of the first user acquired by the first acquisition process, and the position of the facility
  • a first identification process for identifying, as a target facility of the first user, a facility whose distance from the reference point of the first user is a predetermined value or less based on the information;
  • Another first user who is the target facility of the predetermined first user and is selected in the terminal device of the predetermined first user
  • the second identification process that identifies a part or all
  • the program can be installed in the computer.
  • the recording medium storing the program may be a non-transitory recording medium such as a CD-ROM.
  • FIG. It is a sequence diagram which shows the operation
  • FIG. It is a sequence diagram which shows the operation
  • FIG. It is a block diagram showing the structure of the service provision system which concerns on the modification 2. It is a block diagram showing the structure of the service provision system which concerns on the modification 3. It is explanatory drawing which shows an example of the data structure of a golf chum information table. It is explanatory drawing which shows the process which specifies an indirect golf chum. It is a block diagram showing the structure of the service provision system which concerns on the modification 4.
  • FIG. 1 is a block diagram of a service providing system 100 according to an embodiment of the present invention.
  • the service providing system 100 includes a communication network NET such as the Internet, a management server 1 (an example of a management device), a user terminal device 2, a map information server 4 (an example of a first external device), and an external management that provides an SNS site.
  • a server 3 an example of a second external device
  • the management server 1 provides golf information application services such as information services and community services related to golf (an example of a predetermined target) to the golf user U1 (an example of a first user).
  • this embodiment demonstrates and demonstrates a golf information application service as a service which the management server 1 provides, the management server 1 provides application services other than a golf information application service, for example, a hotel reservation, etc.
  • Application information related to providing travel information including sports information, sports facilities, or concert information may be provided.
  • the external management server 3 provides the SNS to the SNS user U2 (an example of the second user).
  • SNS users U2 are provided with tools (for example, bulletin boards, mails, chats, etc.) for SNS users U2 to communicate with each other.
  • the SNS user U2 of the action source makes a friend application, and the SNS user U2 of the action destination approves this, whereby the SNS friendship relationship that is a specific relationship between the SNS users U2 Is built.
  • the external management server 3 manages friend information (an example of specific relationship information) indicating an SNS friend relationship that is a specific relationship between the SNS users U2.
  • the SNS provided by the external management server 3
  • social applications such as games and practical tools can be used.
  • This social application may be provided by a provider other than the provider of the SNS, and whether or not to use the social application or which social application to use is arbitrarily determined by the SNS user U2. It can be decided.
  • the social application accesses the personal information of the SNS user U2 or friend information on the SNS, or the social application is the SNS user U2. Instead, permission may be sought for the function to post on the bulletin board.
  • the SNS user U2 may be a user of the social application with permission for these functions.
  • Such a social application generally displays the screen of the social application in the SNS site, so that the SNS user U2 feels as if using one of the services provided by the SNS.
  • the golf information application service provided by the management server 1 of the present embodiment is a service provided by the social application as described above.
  • a golf information application accesses the personal information of the said SNS user U2, and the friend information on SNS. Approval is made for functions and functions that the golf information service posts on a bulletin board or the like instead of the SNS user U2.
  • the SNS user U2 performs this approval, the SNS user U2 becomes the golf user U1.
  • the management server 1 of embodiment manages the golf friend relationship which is a specific relationship between golf users U1 using the friend information which shows SNS friend relationship.
  • the SNS user U2 having a SNS friend relationship with the predetermined golf user U1a is referred to as a direct SNS friend Uf of the predetermined golf user U1a.
  • prescribed golf user U1a is called the indirect SNS friend Uff of predetermined
  • the indirect SNS friend Uff of the predetermined golf user U1a does not include the predetermined golf user U1a and the direct SNS friend Uf of the predetermined golf user U1a.
  • a person who is a direct SNS friend Uf of a predetermined golf user U1a and is a golf user U1 is referred to as a direct golf chum Ug (first specific relationship user) of the predetermined golf user U1a.
  • the person who is the indirect SNS friend Uff of the golf user U1 and is the golf user U1 is referred to as the indirect golf friend Ugg (second specific relationship user) of the predetermined golf user U1a.
  • the management server 1 is a direct SNS friend Uf of a predetermined golf user U1a among the golf users U1 and is a direct SNS friend Ug of the predetermined golf user U1a.
  • the indirect SNS friend Uff of the predetermined golf user U1a and the one corresponding to the golf user U1 is managed as the indirect golf friend Ugg of the predetermined golf user U1a.
  • “manage” means to manage information about the SNS user U2, information about the golf user U1, SNS friend information indicating the friendship of the SNS user U2, and other friendships of the golf user U1. It is not necessary to store all the information necessary for the storage in its own storage unit. Instead, it is stored in a device such as an external server device, and communicates with the device to request (refer to) the information. ) Means that it is possible to grasp (specify) the friendship of the golf user U1.
  • the management server 1 is the golf user information table TBL11 stored in the management server 1, or the SNS user information table TBL31 or SNS friend information stored in the external management server 3.
  • the direct golf chum Ug and the indirect golf chum Ugg are specified by referring to the table TBL32.
  • “U1” is appended with a subscript such as “a” as in “U1a”. There is.
  • the external management server 3 includes an SNS user information table TBL31 and an SNS friend information table TBL32. Further, the external management server 3 can execute various APIs (Application Program Interface). Upon receiving a request including a parameter from the management server 1, a predetermined value is received from the SNS user information table TBL31 or the SNS friend information table TBL32. Information is extracted and returned to the management server 1.
  • APIs Application Program Interface
  • FIG. 14 shows the data structure of the SNS user information table TBL31.
  • a plurality of records are recorded in the SNS user information table TBL31.
  • One record includes identification information UID (which functions as an account) for uniquely identifying the SNS user U2 and personal information registered in the external management server 3 by the SNS user U2.
  • the personal information includes, for example, the name, gender, work place, mail address, link destination of the profile image, and the like of the SNS user U2.
  • the identification information UID and personal information may be collectively referred to as external user information.
  • FIG. 15 shows the data structure of the SNS friend information table TBL32.
  • a plurality of records are recorded in the SNS friend information table TBL32.
  • One record includes SNS friend information, that is, action source identification information UID, action destination identification information UID, status, and application date and time.
  • the action source (friend application sender) is the SNS user U2 who transmitted the friend application
  • the action destination (friend application receiver) is the SNS user U2 who received the friend application.
  • the status indicates the status of the friend application, and “0” indicates that the application is in progress and “1” indicates acceptance.
  • the SNS user U2 whose identification information UID is “z0000” transmits a friend application to the SNS user U2 whose identification information UID is “z0006” and is approved.
  • the user terminal device 2 includes an input unit 24 including a numeric keypad and a mouse, and a display 25 (an example of a display unit) that displays a screen.
  • the terminal device 2 can communicate via the communication network NET, and corresponds to, for example, a personal computer, a mobile phone, a smartphone, a tablet terminal, or the like.
  • the golf information application service provided by the management server 1 is provided to the golf user U1 via the terminal device 2, and the SNS provided by the external management server 3 is provided to the SNS user U2 via the terminal device 2. .
  • the map information server 4 calculates the route between the two points and the time required to move the route, for example, the Dijkstra's Algorithm (Dijkstra's Algorithm ), A route required time calculation unit 41 (an example of a calculation unit) that can be calculated using a known calculation method such as the A star method.
  • the position information of a certain point is a generic name of address information indicating the address of the certain point and longitude and latitude information indicating the longitude and latitude of the address of the certain point.
  • the position information may be only longitude and latitude information.
  • the map information server 4 is provided with the memory
  • the data necessary for executing the calculation of the route and the required time is, for example, a route for the route required time calculation unit 41 to move from one point to the other between two points using the Dijkstra method. When calculating the time required to move between the two points along the route, it is data about a graph used in the calculation of the Dijkstra method.
  • the data about the graph used in the Dijkstra calculation includes, for example, the adjacent relationship of a plurality of nodes constituting the graph (that is, the combination of two nodes connected by a link among the plurality of nodes), and the adjacent Weight assigned to a link connecting two nodes having a relationship, and the like.
  • each node is a candidate site for an intermediate point that travels between two points (for example, when moving between two points using a car, between the two points) Intersections, interchanges, etc. that may be passed when moving
  • the weight assigned to the link is, for example, a value (for example, between two interchanges) indicating a time required to move between two candidate points of intermediate points represented by two nodes having an adjacent relationship. Time required).
  • the route required time calculation unit 41 performs a route search calculation using the Dijkstra method or the like on such a graph, so that the time required for movement among the routes for moving between two points is calculated. It is possible to calculate the shortest route and the required time when traveling along the route having the shortest required time.
  • the weight assigned to the link may be a value other than the value representing the required time. For example, as a weight assigned to a link, a value indicating a moving distance when moving between two candidate sites for intermediate points, a value indicating a transportation cost, or the like may be assigned.
  • the route required time calculation unit 41 when adopting a movement distance in the case of moving between two intermediate point candidate sites as the weight assigned to the link, the route required time calculation unit 41 firstly selects a route for moving between the two points.
  • a route having the minimum movement distance may be calculated using the Dijkstra method or the like, and then the time required for moving the calculated route may be calculated separately.
  • the map information server 4 can execute various APIs, and when receiving a request including two pieces of position information respectively representing the positions of two points from the management server 1, the map information server 4 is based on the received two pieces of position information. Calculating a route that takes the shortest time required for movement among the routes for moving between the two points, and a required time for moving using the route, and at least the required result of the calculation results A response including a calculation result related to time is returned to the management server 1.
  • Golf course server 5 can execute various APIs, and upon receiving a request including a parameter from management server 1, returns a response including predetermined information to management server 1.
  • the management server 1 includes a storage unit 19 that stores a control program for controlling the management server 1 and various tables.
  • the various tables stored in the storage unit 19 include a golf user information table TBL11, a golf course information table TBL12, a required time information management table TBL13, an event information management table TBL14, and a response information management individual table TBL15.
  • the storage unit 19 stores a table in which setting values and the like for generating various display information are recorded.
  • FIG. 16 shows the data structure of the golf user information table TBL11.
  • a plurality of records are recorded in the golf user information table TBL11.
  • One record includes identification information UID that uniquely identifies the golf user U1, a registration date that represents the date when the golf user U1 was registered in the management server 1, and address information that represents an address such as the home of the golf user U1 ( (Prefectures, municipalities, town names and addresses), longitude / latitude information indicating the longitude and latitude of the home of the golf user U1, etc., and location information update date / time.
  • the record may include items other than these. For example, the postal code may be included as the address information.
  • the home of the golf user U1 is any place as long as it is a place for the golf user U1's behavior or life, such as the home of the golf user U1 or the nearest station from the home. May be.
  • golf user's U1's home etc. may be called golf user's U1 reference
  • address information and longitude / latitude information may be collectively referred to as position information.
  • This position information can be registered or updated by the golf user U1 in the management server 1 himself / herself.
  • the position information update date and time the date and time when the position information of the golf user U1 is registered or updated is recorded.
  • the identification information UID of the golf user U1 matches the identification information UID of the SNS user U2.
  • the identification information UID of the SNS user U2 and the identification information UID of the golf user U1 do not necessarily need to match, and may differ. In this case, what is necessary is just to match and record the identification information of SNS user U2 and the identification information of golf user U1 with the record of golf user information table TBL11.
  • the golf user information table TBL11 may record information other than the information described above. For example, the link destination of the profile image Pg of the golf user U1 may be included. Further, as information to be stored in the golf user information table TBL11, the identification information UID and position information of the golf user U1 are essential, but other information may be omitted. Further, the golf user information table TBL11 may be composed of a plurality of tables linked with key information (for example, identification information UID), and may be a relational database.
  • FIG. 17 shows the data structure of the golf course information table TBL12.
  • a plurality of records are recorded in the golf course information table TBL12.
  • One record is a golf course ID that uniquely identifies a golf course, a registration date and time that represents the date and time when the record was registered in the management server 1, a golf course name that represents the name of the golf course, and position information of each golf course (In other words, address information representing the address of each golf course, and longitude and latitude information representing the longitude and latitude of each golf course address) are recorded.
  • the record may include items other than these. For example, the postal code may be included as the address information.
  • the required time information management table TBL13, event information management table TBL14, and response information management individual table TBL15 will be described later.
  • the management server 1 Based on the location information of the golf user U1 such as the home and the location information of the golf course, the management server 1 designates a golf course whose distance from the home of the golf user U1 is a predetermined value or less as the golf user.
  • a target facility specifying unit 11 (an example of a first specifying unit) that specifies the target golf course of U1 is provided.
  • the distance (required time) from the home to the golf course indicates the one-way distance (required time) from the home or the like to the golf course. (Required time) or a one-way distance (required time) as an average value of the round trip distance (required time) may be used.
  • the management server 1 transmits the position information of the golf user U1 such as the home and the position information of the target golf course of the golf user U1 to the map information server 4, and based on the transmitted position information.
  • the map information server 4 calculates the required time ⁇ T required to move from the golf user U1's home or the like to the target golf course of the golf user U1 from the map information server 4. (An example of a second acquisition unit). Based on the required time ⁇ T acquired by the calculation result acquisition unit 14 in response to a request from the terminal device 2 of the predetermined golf user U1a, the management server 1 selects a predetermined golf course among the target golf courses of the predetermined golf user U1a.
  • a golf course whose required time ⁇ T from the home of the golf user U1a is equal to or less than the predetermined time ⁇ Tth and is a target golf course of another golf user U1b selected in the terminal device 2 of the predetermined golf user U1a
  • a common facility that identifies a golf course whose required time ⁇ T from the home of the other golf user U1b is equal to or less than the predetermined time ⁇ Tth as a common golf course of the predetermined golf user U1a and another golf user U1b
  • the specifying unit 12 (an example of a second specifying unit) is provided.
  • the management server 1 includes a display information generation unit 16 that generates display information including information representing a common golf course of the predetermined golf user U1a and other golf users U1b specified by the common facility specifying unit 12, and a display information generation
  • the transmission control part 18 which performs control which transmits the display information which the part 16 produced
  • FIG. 18 shows the data structure of the required time information management table TBL13.
  • a plurality of records are recorded in the required time information management table TBL13.
  • One record represents the identification information UID that uniquely identifies the golf user U1, the golf course ID of the golf user U1's target golf course, the distance between the golf user U1's home and the target golf course, and the like. It includes distance information and required time information representing a required time ⁇ T required to move between the golf user's U1 home and the target golf course.
  • the record may include items other than these. Further, the distance information may not be included.
  • the display information generation unit 16 moves from the home or the like of a predetermined golf user U1a to the common golf course, and the time required to move from the home or the like of another golf user U1b to the common golf course.
  • the display position of information representing the common golf course on the screen displayed on the display 25 of the terminal device 2 of the predetermined golf user U1a is determined based on the required time ⁇ T required for the Display information including information representing a common golf course is generated.
  • the management server 1 includes a friend information acquisition unit 15 (an example of a third acquisition unit) that can acquire friend information and external user information from the external management server 3 based on the identification information UID of the golf user U1. Moreover, the management server 1 is based on the identification information UID of the predetermined golf user U1a and the friend information acquired by the friend information acquisition unit 15, and the SNS user U2 having a specific relationship with the predetermined golf user U1a.
  • a friend information acquisition unit 15 an example of a third acquisition unit
  • the user identification part 13 which can identify the person who corresponds to the person U1, ie, the indirect golf chum Ugg of the predetermined golf user U1a, as the target user Utg of the predetermined golf user U1a is provided.
  • the display information generation unit 16 generates display information including information representing the target user Utg based on the identification result of the user identification unit 13 and the external user information acquired by the friend information acquisition unit 15.
  • the transmission control part 18 performs control which transmits the display information which the display information generation part 16 produced
  • the display 25 of the terminal device 2 of the predetermined golf user U1a can display a screen based on the display information generated by the display information generation unit 16.
  • FIG. 3 shows the configuration of the management server.
  • the management server 1 includes a CPU (Central Processing Unit) 30 that controls the entire apparatus, a RAM (Random Access Memory) 31 that functions as a work area of the CPU 30, a ROM (Read Only) that stores a boot program and the like. Memory) 32, a hard disk 33 for storing various programs and data, a communication interface 36 for communicating with an external device via a communication network NET, and a reading device 37 for reading an information recording medium such as a compact disk.
  • the hard disk 33 corresponds to the storage unit 19 described above, and stores a control program for controlling the management server 1 and various tables such as the golf user information table TBL11.
  • the management server 1 may include an input unit including a keyboard and a mouse, and a display for displaying an image.
  • the CPU 30 executes a control program, and the CPU 30 Is a functional block realized by functioning according to the control program.
  • the external management server 3 is configured similarly to the management server 1.
  • the SNS user information table TBL31 and the SNS friend information table TBL32 are stored in the hard disk 33.
  • the map information server 4 is configured in the same manner as the management server 1.
  • the hard disk 33 stores a route for moving between the two points and information necessary for calculating the time required for moving between the two points.
  • the golf course server 5 is configured in the same manner as the management server 1. However, the hard disk 33 stores various information for managing the golf course reservation status.
  • FIG. 4 shows the configuration of the terminal device 2.
  • the terminal device 2 includes a CPU 20 that controls the entire device, a RAM 21 that functions as a work area for the CPU 20, a ROM 22 that stores a boot program, a storage device 23 that stores various programs and data, an input unit 24 such as a mouse and a keyboard, A display 25 for displaying an image and a communication interface 26 for communicating with an external device via a communication network NET are provided.
  • the management server 1 provides each of the golf users U1 with a My Page in which information related to various types of golf is collected.
  • my page is a golf chum list screen G0 (friend map), a golf event setting screen G1, a golf chum selection screen G2, a golf event participation availability response screen G3, a golf event management screen G4, and a recommended golf course list. It includes a screen G5, a golf course reservation status confirmation screen G6, a golf course reservation screen G7, and an address registration screen G8.
  • various screens will be described.
  • FIG. 5 is an example of a golf chum list screen G0 (friend map) among my pages displayed on the display 25 of the terminal device 2 of the predetermined golf user U1a.
  • the golf chum list screen G0 is displayed on the display 25 of the terminal device 2 of the predetermined golf user U1a.
  • the details of the “friend map display process” for displaying the golf chum list screen G0 on the display 25 of the terminal device 2 of the predetermined golf user U1a will be described later.
  • a profile image Pg [U1a] of a predetermined golf user U1a, a button B1 for inviting golf, and an event management button B2 are displayed in the area Y0 on the golf chum list screen G0.
  • the profile image Pg (information representing the direct golf chum Ug) of the direct golf chum Ug of the predetermined golf user U1a is displayed in the area Y1, and the predetermined golf usage in the area Y2.
  • a profile image Pg of the indirect golf chum Ugg of the person U1a (information representing the indirect golf chum Ugg) is displayed.
  • the region Y1 and the profile image Pg of the direct golf chum Ug of the predetermined golf user U1a and the profile image Pg of the indirect golf chum Ugg of the predetermined golf user U1a are different. Since it is displayed in Y2, the predetermined golf user U1a can easily grasp the hierarchical friendship. The predetermined golf user U1a can log out from the golf information application service by clicking a logout button (not shown).
  • terminal device 2 requests management server 1 to display golf event setting screen G1.
  • the management server 1 receives a request to display the golf event setting screen G1
  • the CPU 30 of the management server 1 causes the CPU 20 of the terminal device 2 of the predetermined golf user U1a to display the golf event setting screen G1 on the display 25.
  • Information necessary for this that is, display information of the golf event setting screen G1 is generated.
  • the management server 1 transmits a response including the display information to the terminal device 2 of the predetermined golf user U1a.
  • the CPU 20 of the terminal device 2 displays the golf event setting screen G1 illustrated in FIG. Display.
  • the golf event setting screen G1 is displayed in a pop-up, but the golf event setting screen G1 is displayed by switching the golf chum list screen G0 to the golf event setting screen G1. May be.
  • the golf event setting screen G1 includes pull-down PD11 to PD13, calendar buttons B11 to B13, a button B14 for selecting an invitee, a cancel button B15 for closing the golf event setting screen G1, and a close button.
  • Button B16 is included.
  • the predetermined golf user U1a can select a candidate date (first candidate date to third candidate date) to go to golf using the pull-down PD11 to PD13.
  • a calendar (not shown) is displayed on the display 25 of the predetermined golf user U1a.
  • the predetermined golf user U1a can select a candidate date to go to golf using the calendar.
  • the golf event setting screen G1 which concerns on this embodiment is a screen which can select up to three candidate days to go to golf, what is necessary is just a screen which can select at least 1 or more candidate days. .
  • FIG. 6 is an example of the golf event setting screen G1, and the golf event setting screen G1 should just be a screen which can input a schedule.
  • the golf event setting screen G1 may display one of pull-down PD11 to PD13 or calendar buttons B11 to B31.
  • the terminal device 2 of the predetermined golf user U1a A request for displaying the golf chum selection screen G2 is transmitted together with information indicating the selected candidate date.
  • the management server 1 receives a request to display the golf chum selection screen G2
  • the CPU 30 of the management server 1 causes the CPU 20 of the terminal device 2 of the predetermined golf user U1a to display the golf chum selection screen G2 on the display 25.
  • the information required for this, ie, the display information of the golf chum selection screen G2 is generated.
  • the management server 1 transmits a response including the display information to the terminal device 2 of the predetermined golf user U1a.
  • the CPU 20 of the terminal device 2 displays the golf chum selection screen G2 illustrated in FIG.
  • the golf chum selection screen G2 includes a recommended golf course confirmation button B21, a message transmission button B23, a return button B22 for returning to the previous golf event setting screen G1, and golf A cancel button B24 and a close button B25 for closing the friend selection screen G2 are included.
  • information representing the target user Utg of the predetermined golf user U1a is displayed as a list.
  • the information representing the target user Utg is, for example, the profile image Pg and the name of the target user Utg.
  • a check box CB21 for selecting the target user Utg has a one-to-one correspondence with information representing each target user Utg (for example, the profile image Pg of each target user Utg). It is provided to do.
  • FIG. 7 illustrates a state in which three target users Utg, “Yoko Yamada”, “Hiroshi Nakada”, and “Yuko Tanaka” are selected as targets to be invited to golf.
  • the recommended golf course confirmation button B21 is clicked in a state where at least one target user Utg is selected (that is, at least one of the check boxes CB21 is checked). Then, the terminal device 2 of the predetermined golf user U1a gives the management server 1 information about the target user Utg selected by the predetermined golf user U1a (for example, identification information UID of the target user Utg). ) And a request to display the recommended golf course list screen G5.
  • the management server 1 receives a request to display the recommended golf course list screen G5
  • the CPU 30 of the management server 1 causes the CPU 20 of the terminal device 2 of the predetermined golf user U1a to display the recommended golf course list screen on the display 25.
  • the management server 1 transmits a response including the display information to the terminal device 2 of the predetermined golf user U1a.
  • the terminal device 2 of the predetermined golf user U1a receives the display information of the recommended golf course list screen G5
  • the CPU 20 of the terminal device 2 displays the recommended golf course list screen G5 illustrated in FIG. Display.
  • generates the display information of the recommended golf course list screen G5, and the content of the recommended golf course list screen G5 are mentioned later.
  • the message transmission button B23 when the message transmission button B23 is clicked in a state where at least one target user Utg is selected, the selected target user Utg is golfed (golf event). Processing to invite to is executed. Specifically, when the message transmission button B23 is clicked, a request for transmitting a message inviting to a golf event is transmitted from the terminal device 2 of the predetermined golf user U1a to the management server 1.
  • the message invited to the golf event represents that the predetermined golf user U1a invites the target user Utg selected by the predetermined golf user U1a to the golf event on the golf chum selection screen G2. Message.
  • the request to send a message inviting to the golf event is managed to send a message to invite the golf event to the target user Utg selected by the predetermined golf user U1a on the golf chum selection screen G2.
  • This is a request for requesting the server 1.
  • the CPU 30 of the management server 1 displays information necessary for the CPU 20 of the terminal device 2 to display the golf event participation availability response screen G3 on the display 25, that is, a golf event participation availability response screen. Display information of G3 is generated.
  • the management server 1 transmits the generated display information to each terminal device 2 of the target user Utg selected by the predetermined golf user U1a.
  • the CPU 30 of the management server 1 When the management server 1 receives a request to transmit a message for inviting a golf event, the CPU 30 of the management server 1 records a record in the event information management table TBL14 (FIG. 19) based on the information included in the request. And a response information management individual table TBL15 (FIG. 20) corresponding to the golf event represented by the message invited to the golf event included in the request is generated.
  • the response information management individual table TBL15 is a table generated in one-to-one correspondence with the golf event.
  • FIG. 19 shows the data structure of the event information management table TBL14.
  • a plurality of records are recorded in the event information management table TBL14.
  • One record is an event ID that uniquely identifies a golf event, an event registrant UID that represents the identification information UID of the golf user U1 who has transmitted a message inviting to the golf event, an event registration date and time that represents the date and time that the record was added, And the candidate date (1st candidate day, 2nd candidate day, and 3rd candidate day) which the said golf user U1 input in the golf event setting screen G1 is included.
  • the record may include items other than these.
  • the target user Utg invited to the golf event from the predetermined golf user U1a logs in to the golf information application service, and the terminal device 2 of the target user Utg displays the display information of the golf event participation permission / response screen G3. Is received, the CPU 20 of the terminal device 2 of the target user Utg displays the golf event participation approval / response screen G3 illustrated in FIG.
  • the golf event participation permission / response screen G3 indicates that the golf event is invited from a predetermined golf user U1a such as “A golf invitation has arrived from Mr. Kazuo Onami!”
  • radio buttons RB31 and RB32, check boxes CB31 to CB33, a transmission button B31, and a cancel button B32 and a close button B33 for closing the golf event participation availability response screen G3 are included.
  • the target user Utg invited to the golf event from the predetermined golf user U1a selects either the radio button RB31 or RB32 to play golf on the candidate date proposed by the predetermined golf user U1a. You can choose whether you can go.
  • the target user Utg goes to golf on any candidate day among the first to third candidate days proposed by the predetermined golf user U1a by checking the check boxes CB31 to CB33. You can choose whether you can.
  • the message invited to the golf event is notified to the target user Utg via the golf event participation availability response screen G3, but may be configured to be notified by e-mail.
  • the target user Utg who is transmitted from the management server 1 to the external management server 3 and is notified by the external management server 3 and notified of the message for the golf event, logs in as the SNS user U2, the golf information application service A message indicating that the user is invited to a golf event may be displayed.
  • radio button RB31 or RB32 When either radio button RB31 or RB32 is selected (when radio button RB31 is selected, one or more of check boxes CB31 to CB33 are selected), transmission button B31 is clicked. Then, a response including the content selected by the target user Utg invited to the golf event on the golf event participation availability response screen G3 is transmitted from the terminal device 2 of the target user Utg to the management server 1.
  • the management server 1 receives the response, the CPU 30 of the management server 1 updates the response information management individual table TBL15 based on the information included in the response.
  • FIG. 20 shows the data structure of the response information management individual table TBL15.
  • CPU30 of the management server 1 produces
  • the response information management individual table TBL15 one or more records corresponding to the golf user U1 invited to the golf event are recorded one-on-one.
  • One record includes an invitation target UID indicating the identification information UID of the golf user U1 invited to the golf event, a response date and time indicating a date and time when a response from the golf user U1 is received, and the golf user U1
  • the first to third candidate date participation availability information representing the contents input on the golf event participation availability response screen G3 is included.
  • the record may include items other than these. For example, when the golf user U1 invited to the golf event selects the radio button RB31 (participate) on the golf event participation availability response screen G3 and answers the candidate dates for participation by the check boxes CB31 to CB33, Of the first to third candidate date participation availability information, “1” is recorded in the field corresponding to the candidate date on which participation is possible.
  • the terminal device 2 of the predetermined golf user U1a On the other hand, a request for displaying the golf event management screen G4 is transmitted.
  • the management server 1 receives the request, the CPU 30 of the management server 1 is information necessary for the CPU 20 of the terminal device 2 of the predetermined golf user U1a to display the golf event management screen G4 on the display 25. Display information of the event management screen G4 is generated.
  • the CPU 30 of the management server 1 accesses the event information management table TBL14, extracts a record in which the identification information UID of a predetermined golf user U1a is recorded in the event registrant UID, and extracts the extracted record Event ID, event registration date and time, and first to third candidate dates recorded in the above. Further, the CPU 30 of the management server 1 accesses the response information management individual table TBL15 corresponding to the golf event (golf event corresponding to the event ID acquired from the event information management table TBL14), and records it in each record of the table.
  • invitation target UID, response date and time, and first to third candidate date participation availability information are acquired.
  • CPU30 of the management server 1 produces
  • the CPU 20 of the terminal device 2 displays the golf event management screen G4 illustrated in FIG.
  • the golf event management screen G4 includes recommended golf course confirmation buttons B41 to B43, and a cancel button B44 and a close button B45 for closing the golf event management screen G4.
  • the candidate date of the golf event is displayed in the display area A41 of the golf event management screen G4, and the response content from the target user Utg invited to the golf event, that is, each target user is displayed in the display area A42. Information about whether or not Utg can participate in each candidate day is displayed.
  • “ ⁇ ” indicates that participation is possible, and “ ⁇ ” indicates that participation is not possible.
  • “Yoko Yamada” and “Yuko Tanaka” can participate, but “Hiroshi Nakata” cannot participate.
  • the terminal device 2 of the predetermined golf user U1a can participate in the golf event on the candidate date with respect to the management server 1
  • a request for displaying the recommended golf course list screen G5 is transmitted together with information for identifying a target user Utg (for example, identification information UID of the target user Utg).
  • the CPU 30 of the management server 1 executes a “recommended golf course specifying process”. Specifically, the CPU 30 of the management server 1 identifies a common golf course for candidates participating in the golf event. Next, the CPU 30 determines a recommended degree of the specified common golf course. Thereafter, the CPU 30 generates display information of the recommended golf course list screen G5 based on the determined recommended degree, and transmits a response including the display information to the terminal device 2 of the predetermined golf user U1a. Take control. Details of the “recommended golf course specifying process” will be described later.
  • the common golf course is a golf course (target golf course of each participating candidate) whose distance from each participating candidate's home or the like is a predetermined value or less, and from each participating candidate's home etc. Is a golf course whose required time ⁇ T is equal to or shorter than a predetermined time ⁇ Tth.
  • the distance (required time) from the home to the target golf course indicates the one-way distance (required time) from the home or the like to the target golf course.
  • a one-way distance (required time) as an average value of the distance (required time) or the round-trip distance (required time) may be used.
  • the candidate for participation in the golf event is a target user Utg selected by a predetermined golf user U1a on the golf chum selection screen G2 (or a confirmation button for a recommended golf course clicked on the golf event management screen G4)
  • "other golf user U1b" mentioned above is the golf user U1 except the predetermined golf user U1a among the participation candidates to a golf event. More specifically, in the case of the golf chum selection screen G2 (FIG.
  • the target user Utg selected by the check box CB21 on the screen is It is specified as another golf user U1b.
  • the golf event management screen G4 (FIG. 9)
  • any of the recommended golf course confirmation buttons B41 to B43 is clicked, it corresponds to the clicked recommended golf course confirmation buttons B41 to B43.
  • the target user Utg that can participate in the golf event on the candidate day is identified as another golf user U1b.
  • the recommended degree of the golf course is the longest time ⁇ T required to move from the home of the candidate of the golf event to the golf course where the golf event is held. This is a recommended degree corresponding to the longest required time ⁇ Tmax.
  • the recommended degree of the common golf course becomes higher as the longest required time ⁇ Tmax to the common golf course is shorter.
  • the display position of the information showing the common golf course in the said screen is determined based on the recommendation grade.
  • the recommended level of the golf course is determined based on the longest required time ⁇ Tmax that is the longest required time ⁇ T from the candidate's home to the common golf course to the golf event.
  • the present invention is not limited to such an embodiment.
  • the recommended degree of the golf course may be determined based on the total value of the required time ⁇ T from the participation candidate's home or the like to the common golf course. In this case, the recommended degree of the golf course may be higher as the total value of the required time ⁇ T is smaller.
  • the recommended level of the golf course may be determined based on the usage fee of the golf course. In this case, it is preferable to store the usage fee for each golf course in the golf course information table TBL12.
  • the CPU 20 of the terminal device 2 displays the recommended golf course list screen G5 illustrated in FIG.
  • the recommended golf course list screen G5 includes a golf course reservation button B51, a return button B52 for returning to the previous screen (golf friend selection screen G2 or golf event management screen G4), In addition, a cancel button B53 and a close button B54 for closing the recommended golf course list screen G5 are included. Further, in the display area A51 of the recommended golf course list screen G5, information (for example, the name of the common golf course) that is specified in the “recommended golf course specifying process” and that represents the common golf course of the candidate participating in the golf event.
  • Links to websites provided by common golf courses, etc. are listed in the order of recommendation (ie, the shortest longest required time ⁇ Tmax), and from among the displayed common golf courses Radio buttons RB51 for selecting one common golf course are provided so as to correspond to each common golf course on a one-to-one basis. That is, on the recommended golf course list screen G5, the higher the recommended degree (the shorter the longest required time ⁇ Tmax) is, the higher the common golf course is displayed in the upper part of the display area A51.
  • the display area A51 displays the time required ⁇ T required to move from the home of a candidate for a golf event to the common golf course for each common golf course.
  • the terminal device 2 of the predetermined golf user U1a selects the management server 1 A request to display the golf course reservation status confirmation screen G6 is transmitted together with information for identifying the golf course corresponding to the radio button RB51 (for example, the golf course ID of the golf course).
  • the management server 1 receives a request to display the golf course reservation status confirmation screen G6, the management server 1 displays the golf course reservation status confirmation screen G6 on the display 25 by the CPU 20 of the terminal device 2 of the predetermined golf user U1a. Information necessary for display, that is, display information of the golf course reservation status confirmation screen G6 is generated.
  • the management server 1 firstly has a golf course server corresponding to information (for example, a golf course ID) for identifying a golf course transmitted from the terminal device 2 of a predetermined golf user U1a. 5, an inquiry about the reservation status of the golf course (request for transmitting information about the reservation status) is transmitted.
  • the golf course server 5 receives the request, it returns a response including information about the reservation status of the golf course to the management server 1.
  • the management server 1 receives the response from the golf course server 5, the CPU 30 of the management server 1 based on the information about the reservation status of the golf course included in the response, the golf course reservation status confirmation screen G6 (FIG. 11). Generate display information.
  • the management server 1 transmits a response including the display information to the terminal device 2 of the predetermined golf user U1a.
  • the CPU 20 of the terminal device 2 displays the golf course reservation status confirmation screen G6 illustrated in FIG.
  • the golf course reservation status confirmation screen G6 includes a return button B64 for returning to the previous screen (recommended golf course list screen G5) and a cancellation for closing the golf course reservation status confirmation screen G6.
  • a button B65 and a close button B66 are included.
  • the display area A61 of the golf course reservation status confirmation screen G6 the name of the golf course selected by the predetermined golf user U1a on the recommended golf course list screen G5 is displayed.
  • a table A62 representing the reservation status of the golf course is displayed.
  • Table A62 the names of various service plans (plan names) provided by the golf course and the charges of the various service plans are displayed, and the reservation status (congestion) for each date of the various service plans is the shape of the link B61. It is represented by In addition, the date range displayed in the table A62 can be changed by clicking the button B62 or B63.
  • the terminal device 2 of the predetermined golf user U1a displays the golf course reservation screen G7 together with information indicating the date and the plan name corresponding to the clicked link B61 with respect to the management server 1.
  • Send a request to display When receiving a request to display the golf course reservation screen G7, the management server 1 acquires various information to be displayed on the golf course reservation screen G7 from the golf course server 5. Then, based on the information acquired from the golf course server 5, the CPU 30 of the management server 1 causes the CPU 20 of the terminal device 2 of the predetermined golf user U1a to display the golf course reservation screen G7 (FIG. 12) on the display 25. Information necessary for this, that is, display information of the golf course reservation screen G7 is generated. Then, the management server 1 transmits a response including the display information to the terminal device 2 of the predetermined golf user U1a.
  • the CPU 20 of the terminal device 2 causes the display 25 to display the golf course reservation screen G7 illustrated in FIG.
  • the golf course reservation screen G7 has a reservation button B72, a return button B71 for returning to the previous screen (golf course reservation status confirmation screen G6), and a cancel for closing the golf course reservation screen G7.
  • a button B73 and a close button B74 are included.
  • the display area A71 of the golf course reservation screen G7 the name of the golf course selected by the predetermined golf user U1a on the recommended golf course list screen G5 is displayed, and in the display area A72, the predetermined golf user U1a is displayed.
  • the date selected on the golf course reservation status confirmation screen G6 is displayed. Further, a table A73 provided with a plurality of radio buttons RB71 for selecting a play start time and the number of players is displayed at the bottom of the display area A72.
  • the predetermined golf user U1a can input (select) the play start time and the number of players to be reserved by selecting one radio button RB71 from the plurality of radio buttons RB71.
  • a reservation confirmation screen (not shown) provided with a confirmation button is displayed.
  • the reservation details entered on the golf course reservation screen G7 are displayed on this reservation confirmation screen.
  • the terminal device 2 of the predetermined golf user U1a transmits information representing the reservation content displayed on the reservation confirmation screen to the management server 1.
  • the management server 1 receives the information representing the reservation content
  • the management server 1 transmits the information representing the reservation content to the golf course server 5.
  • the golf course server 5 executes a golf course reservation process based on the information representing the reservation content transmitted from the management server 1.
  • the terminal device 2 causes the management server 1 to display the address registration screen G8.
  • the management server 1 receives a request to display the address registration screen G8, the CPU 30 of the management server 1 receives information necessary for the CPU 20 of the terminal device 2 to display the address registration screen G8 on the display 25 (address registration screen G8 display information) is generated, and a response including the display information is transmitted to the terminal device 2 of the predetermined golf user U1a.
  • the CPU 20 of the terminal device 2 causes the display 25 to display the address registration screen G8 illustrated in FIG.
  • the address registration screen G8 is displayed in a pop-up, but may be displayed by switching the golf chum list screen G0 to the address registration screen G8.
  • a display request for the address registration screen G8 is transmitted from the terminal device 2 to the management server 1.
  • a request for displaying the profile information of the predetermined golf user U1a is sent from the terminal device 2 to the management server 1, and the profile information of the predetermined golf user U1a Is displayed on the terminal device 2, and an address registration button (not shown) for displaying the address registration screen G8 may be provided on the profile information display screen (not shown).
  • the address registration button is pressed, a request for displaying the address registration screen G8 is transmitted from the terminal device 2 to the management server 1, and the CPU 30 of the management server 1 generates display information of the address registration screen G8. Then, a response including the display information is transmitted to the terminal device 2.
  • the address registration screen G8 includes pull-down PD81 to PD83, a map display button B81, a determination button B82, and a cancel button B83 and a close button B84 for closing the address registration screen G8.
  • the predetermined golf user U1a can input the home address of the predetermined golf user U1a using the pull-down PD81 to PD83.
  • a screen (not shown) representing a map is displayed on the display 25 of the predetermined golf user U1a.
  • the predetermined golf user U1a can also input the address of the predetermined golf user U1a, such as his home, using the screen representing the map.
  • the terminal device 2 of the predetermined golf user U1a transmits information including the input address to the management server 1.
  • the management server 1 receives information including an address such as the home of the predetermined golf user U1a transmitted from the terminal device 2 of the predetermined golf user U1a
  • the management server 1 sends a request for transmitting longitude and latitude information corresponding to the address. Transmit to the map information server 4.
  • the map information server 4 acquires longitude and latitude information corresponding to the address included in the transmitted request from the storage unit included in the map information server 4 and manages the response including the acquired longitude and latitude information. Send to server 1.
  • the CPU 30 of the management server 1 accesses the golf user information table TBL11 and specifies a record in which the identification information UID of the predetermined golf user U1a is recorded. .
  • the CPU 30 of the management server 1 records the address received from the terminal device 2 of the predetermined golf user U1a in the address information of the specified record, and receives it from the map information server 4 in the longitude and latitude information of the record.
  • the position information update date and time is updated to the current time (the date and time when the address and longitude and latitude information are recorded).
  • the management server 1 specifies the target golf course whose distance from the home or the like of the golf user U1 is equal to or less than the predetermined value, and then targets all the candidates for participation in the golf event.
  • a common golf course that is a golf course is specified.
  • the required time ⁇ T from the candidate's home etc. to the target golf course is calculated, and display information of the recommended golf course list screen G5 is generated based on the calculation result.
  • the predetermined golf user U1a who plans a golf event selects a golf course that can be easily accessed from a home or the like of a candidate for a golf event by viewing the recommended golf course list screen G5. This makes it easy to plan golf events such as golf course selection.
  • the service providing system 100 sends the profile image Pg of the direct golf chum Ug of the golf user U1 and the profile image Pg of the indirect golf chum Ugg of the golf user U1 to the terminal device 2 of the golf user U1.
  • "Friend map display process” for displaying a friend map (golf friend list screen G0) including
  • the service providing system 100 identifies the target golf course whose distance from the golf user U1's home or the like is a predetermined value or less, and then the golf user U1's home and the golf user U1's target golf course. It is possible to perform a “required time calculation process” for calculating a required time ⁇ T required to move between the two.
  • the service providing system 100 identifies a common golf course of candidates who participate in a golf event planned by the golf user U1, and determines a recommended degree of the specified common golf course.
  • the “friend map display process”, “required time calculation process”, and “recommended golf course specifying process” will be described.
  • ⁇ 4-1 friend map display processing> 21 and 22 show an operation sequence of the service providing system 100 related to the friend map display process.
  • the friend map display process is executed every time the golf user U1 logs in to the golf information application service.
  • An SNS user U2 of the terminal device 2 (also a golf user U1.
  • the golf user U1 is referred to as a “predetermined golf user U1a”) operates on a web browser, or the terminal device 2
  • a login screen is displayed on the display 25 of the terminal device 2.
  • an input box for inputting identification information UID and a password and a send button are displayed.
  • the terminal device 2 transmits a login request including the input identification information UID and password to the external management server 3.
  • the external management server 3 executes an authentication process (S300). Specifically, the CPU of the external management server 3 determines whether or not the combination of the identification information UID and the password is stored. If the determination condition is satisfied, the login is permitted and the determination condition is not satisfied. In case it refuses login. Then, the CPU of the external management server 3 causes the terminal device 2 to transmit a login response indicating the determination result. In the example shown in FIG. 21, it is assumed that login is permitted.
  • the combination of the identification information UID and the password once input at the terminal device 2 may be stored in the terminal device 2 for a predetermined period, and login may be omitted within the predetermined period.
  • the terminal device 2 transmits a my page browsing request to the management server 1.
  • the management server 1 receives the my page browsing request, the CPU 30 of the management server 1 acquires the identification information UID of the predetermined golf user U1a included in the my page browsing request, and the identification information UID of the predetermined golf user U1a. Is transmitted to the external management server 3 (S100).
  • the CPU of the external management server 3 accesses the SNS friend information table TBL32, and the identification information UID is recorded as the action source or the action destination.
  • the friend information of SNS is acquired by extracting the record which is. Further, the CPU of the external management server 3 extracts external user information from the SNS user information table TBL31 using the identification information UID recorded as an action source or an action destination in these records as a key (S301). Thereafter, the external management server 3 transmits a friend list including the acquired SNS friend information and external user information to the management server 1.
  • the CPU 30 of the management server 1 acquires SNS friend information and external user information from the received friend list (S101).
  • the external user information acquired in S101 includes external user information of a predetermined golf user U1a and external user information of a direct SNS friend Uf of the predetermined golf user U1a.
  • the CPU 30 of the management server 1 specifies the identification information UID of the direct SNS friend Uf of the predetermined golf user U1a (S102). Specifically, among the identification information UID recorded as the action source or the action destination in the record of friend information, the identification information UID excluding the identification information UID of the predetermined golf user U1a and the overlapping identification information UID is predetermined.
  • the identification information UID of the direct SNS friend Uf of the golf user U1a is specified as the identification information UID of the direct SNS friend Uf of the golf user U1a.
  • the process proceeds to S109. Thereafter, the CPU 30 of the management server 1 performs control to transmit the identification information UID of the direct SNS friend Uf of the predetermined golf user U1a to the external management server 3 (S103).
  • the CPU of the external management server 3 accesses the SNS friend information table TBL32 and the identification information UID is an action source or SNS friend information is acquired by extracting a record recorded as an action destination (S302). Thereafter, the external management server 3 transmits a friend list including the acquired SNS friend information to the management server 1.
  • the CPU 30 of the management server 1 acquires SNS friend information from the received friend list (S104).
  • the CPU 30 of the management server 1 specifies the identification information UID of the indirect SNS friend Uff of the predetermined golf user U1a (S105).
  • the identification information UID excluding the duplicate identification information UID is used as the indirect SNS friend Uff of the predetermined golf user U1a. It is specified as identification information UID.
  • the CPU 30 of the management server 1 performs control to transmit the identification information UID of the indirect SNS friend Uff of the predetermined golf user U1a to the external management server 3 (S106).
  • the CPU of the external management server 3 accesses the SNS user information table TBL31, and the identification information UID is recorded.
  • the existing record is extracted (S303). Thereafter, the external management server 3 transmits the extracted external user information to the management server 1.
  • the CPU 30 of the management server 1 acquires the external user information (S107).
  • the external user information acquired in S107 is the external user information of the indirect SNS friend Uff of the predetermined golf user U1a.
  • the CPU 30 of the management server 1 identifies the identification information UID of the direct SNS friend Uf of the predetermined golf user U1a and the identification information UID of the indirect SNS friend Uff of the predetermined golf user U1a.
  • the direct golf chum Ugg and the indirect golf chum Ugg of the predetermined golf user U1a are identified, and the identified direct golf chum Ug and indirect golf chum Ugg are specified as target user Utg of predetermined golf user U1a (S108).
  • the identification information UID of the direct SNS friend Uf of the predetermined golf user U1a specified in S102 the one that matches the identification information UID of the golf user U1 is directly golfed by the predetermined golf user U1a. It is set as the identification information UID of the friend Ug.
  • identification information UID of the indirect SNS friend Uff of the predetermined golf user U1a specified in S105 a match with the identification information UID of the golf user U1 is the same as that of the indirect golf friend Ugg of the predetermined golf user U1a. It is set as identification information UID.
  • prescribed golf user U1a are specified.
  • the CPU 30 of the management server 1 functions as the user specifying unit 13 by executing S102, S105, and S108. Moreover, CPU30 functions as the friend information acquisition part 15 by performing S100, S101, S103, S104, S106, and S107.
  • the CPU 30 of the management server 1 generates display information for the golf chum list screen G0 based on the external user information acquired in S101 and the external user information acquired in S107 (S109). Specifically, the CPU 30 of the management server 1 first extracts link information indicating the address where the data of the profile image Pg of the target user Utg is stored from the external user information acquired in S101 and S107. In the present embodiment, in order to reduce the amount of transmission data, information that can identify the target user Utg is given as link information indicating the address where the data of the profile image Pg is stored, but is given as the image data itself. Also good.
  • the display information generated in S109 includes information indicating the arrangement position on the screen of the profile image Pg of the target user Utg.
  • the CPU 30 of the management server 1 roughly classifies the target user Utg of the predetermined golf user U1a into a direct golf chum Ug and an indirect golf chum Ugg of the predetermined golf user U1a, and displays them on a virtual screen.
  • the profile images Pg of all direct golf friends Ug and the profile images Pg of indirect golf friends Ugg are arranged.
  • the predetermined golf user U1a has a plurality of direct golf friends Ug
  • CPU30 displays the profile image Pg of the direct golf chum Ug of predetermined
  • Display information may be generated.
  • the size of the virtual screen is larger than the screen displayed on the display 25 of the terminal device 2.
  • a virtual screen is cut out to a displayable size and displayed on the display 25.
  • CPU30 of the management server 1 performs control which transmits the my page browsing response containing display information to the terminal device 2 of predetermined
  • the CPU 20 of the terminal device 2 displays the profile image Pg of the direct golf chum Ug of the predetermined golf user U1a and the indirect golf chum Ugg of the predetermined golf user U1a on the display 25.
  • the golf chum list screen G0 on which the profile image Pg is placed is displayed (S201).
  • “profile image Pg of direct golf chum Ug of predetermined golf user U1a” is “indirect golf chum Ugg of predetermined golf user U1a. Since it is arranged in front of (profile image Pg) (lower side in FIG. 5), the predetermined golf user U1a is a hierarchy of “direct golf chum Ug” and “indirect golf chum Ugg” of the predetermined golf user U1a. The relationship can be easily grasped.
  • ⁇ 4-2 Required time calculation processing>
  • the address such as the home of the golf user U1
  • the target golf course of the golf user U1 may change.
  • the distance and required time from the golf user U1's home to the target golf course change.
  • the required time calculation process is performed when the golf user U1's home address or the like is registered or updated, and when the golf course is newly registered, the distance from the home or the like is a predetermined value for the golf user U1. It is the process which updates the distance and required time from the golf user's U1 home memorize
  • the required time calculation process is a so-called batch process executed at a predetermined cycle.
  • the required time calculation process is executed in a daily cycle, but may be executed in a cycle different from the daily cycle (for example, a weekly cycle).
  • the CPU 30 of the management server 1 first accesses the golf user information table TBL11 (FIG. 16), and in the position information update date and time, the previous execution date and time of the required time calculation process (that is, one day before). The date and time later than the date and time when the required time calculation process was executed) and the record with the date recorded after the previous execution date and time of the required time calculation process is specified on the registration date (S120). Thereby, it is possible to identify the golf user U1 whose address such as home has been changed after the previous required time calculation process and the golf user U1 registered after the previous required time calculation process.
  • CPU30 of the management server 1 accesses golf course information table TBL12 (FIG. 17), and specifies the record in which the date and time after the last execution date and time of a required time calculation process are recorded on a registration date and time ( S121). Thereby, the golf course registered after the last required time calculation process can be specified.
  • the CPU 30 of the management server 1 updates the target golf course of the golf user U1 (S122).
  • the target golf course is a golf course whose distance from the home or the like is a predetermined value or less.
  • the golf user's U1 home address is changed, even if the distance from the home before the address change is less than or equal to the predetermined value, the golf course whose distance from the home after the address change is farther than the predetermined value May exist. That is, even if it is a golf course of golf user U1 before the address change, it may not be the golf course of interest of golf user U1 after the address change.
  • a golf course that was not the target golf course of the golf user U1 before the address change may correspond to the target golf course.
  • the newly registered golf course may correspond to the golf course of the golf user U1.
  • a record is added to the golf user information table TBL11 and the golf user U1 is newly registered, it is necessary to newly specify the target golf course of the golf user U1.
  • the process of S122 is performed between the golf user's U1 home and each golf course, such as when the address of the golf user U1's home is registered or changed, and when a golf course is newly registered. This is a process of re-specifying the target golf course of the golf user U1 in consideration of the relative positional relationship after the change when the relative positional relationship changes.
  • CPU30 is one golf user U1 among the golf users U1 currently recorded on golf user information table TBL11, and one golf course among the golf courses recorded on golf course information table TBL12. And the group including the golf course corresponding to the record specified in S121 and the group including the golf user U1 corresponding to the record specified in S120 are specified.
  • the CPU 30 calculates the distance between the golf user's U1 home and the golf course for each of the identified sets. Specifically, the CPU 30 acquires the latitude and longitude information of the specified set of golf users U1 from the golf user information table TBL11, and from the golf course information table TBL12, the golf course information of the set.
  • the longitude and latitude information is acquired, and the distance from the golf user U1's home or the like to the golf course is calculated based on the acquired two longitude and latitude information.
  • the CPU 30 accesses the required time information management table TBL13 and deletes a record in which the same identification information UID as the identification information UID of the record specified in S120 is recorded. Thereby, when the address of the golf user U1 is updated, the target golf course of the golf user U1 determined based on the old address of the golf user U1 can be deleted from the required time information management table TBL13. it can. Note that an invalid flag field may be provided in advance in the required time information management table TBL13.
  • CPU30 selects the group from which the distance from the golf user's U1 home etc. to a golf course is below a predetermined value from the specified group.
  • the golf course constituting the selected set corresponds to the target golf course of the golf user U1 constituting the selected set.
  • the CPU 30 includes the golf course ID of the golf course constituting the selected set, the identification information UID of the golf user U1 constituting the selected set, the home of the golf user U1, and the like.
  • the distance to the golf course is recorded in the required time information management table TBL13.
  • the above-described processing of S122 includes the registration contents of the golf user information table TBL11 when the required time calculation process is executed and the registration contents of the golf course information table TBL12 when the required time calculation process is executed. Any process may be used as long as it is a process for specifying the target golf course of each golf user U1. For example, at the time when the required time calculation process is executed, the homes of all the golf users U1 registered in the golf user information table TBL11 and all the golfs registered in the golf course information table TBL12 The process of calculating all target golf courses for all golf users U1 may be performed by calculating the distance between each of the places.
  • the CPU 30 functions as the target facility specifying unit 11 by executing the process of S122.
  • the CPU 30 of the management server 1 obtains position information (for example, longitude and latitude information) such as the home of the golf user U1 constituting the set selected in S122 and the position information of the golf course constituting the set. Then, a process of transmitting to the map information server 4 is performed (S123).
  • the map information server 4 receives the position information of the golf user U1 such as the home and the position information of the golf course
  • the CPU of the map information server 4 is based on the received two pieces of position information.
  • the time required for moving between U1's home and the like and the golf course is calculated (S420). As described above, the calculation of the required time is executed by appropriately applying a known route search method.
  • the map information server 4 transmits a response including the calculated required time (the required time required to move between the golf user U1's home and the golf course) to the management server 1.
  • the management server 1 receives the response from the map information server 4, the CPU 30 of the management server 1 calculates the time required to move between the golf user's U1 home and the golf course included in the response. get.
  • the CPU 30 of the management server 1 accesses the required time information management table TBL13, and the identification information UID of the golf user U1 corresponding to the received response and the golf course ID of the golf course corresponding to the received response are The recorded record is specified, and the received required time is recorded in the required time information of the specified record (S124).
  • the CPU 30 of the management server 1 uses the latitude and longitude information of the golf user U1's home recorded in the golf user information table TBL11 and the golf course recorded in the golf course information table TBL12. The distance between the golf user's U1's home and the golf course is calculated based on the longitude and latitude information, and the target golf course of each golf user U1 is specified based on the calculation result.
  • the present invention is not limited to such an embodiment, and the CPU of the map information server 4 may execute part or all of these processes.
  • the service providing system 100 may identify the target golf course of each golf user U1 as follows. That is, first, the CPU 30 of the management server 1 acquires the address information of one golf user U1's home, etc. from the golf user information table TBL11, and the address information of one golf course from the golf course information table TBL12. To get. Secondly, the CPU 30 of the management server 1 performs control to transmit the acquired two pieces of address information to the map information server 4. Third, the CPU of the map information server 4 acquires two longitude and latitude information corresponding to the two pieces of address information transmitted from the management server 1 from the storage unit included in the map information server 4.
  • the CPU of the map information server 4 calculates the distance between two points corresponding to the two longitude and latitude information based on the acquired two longitude and latitude information.
  • the CPU of the map information server 4 performs control to transmit information including distance information indicating the calculated distance and two longitude and latitude information to the management server 1.
  • the CPU 30 of the management server 1 selects the one golf course as the target golf of the one golf user U1. Specify as a place.
  • the management server 1 obtains the longitude and latitude information of the golf user U1's home, the latitude and longitude information of the golf course, the distance between the golf user U1's home and the golf course, and the map information server.
  • golf user information table TBL11 and golf course information table TBL12 may memorize only address information as position information, and may not memorize longitude and latitude information.
  • the service providing system 100 may specify the target golf course of each golf user U1 as follows. That is, first, the CPU 30 of the management server 1 acquires address information such as the home of one golf user U1 from the golf user information table TBL11 and is registered in the table from the golf course information table TBL12. Get address information for all golf courses. 2ndly, CPU30 of the management server 1 transmits the information containing the acquired address information, such as a home of one golf user U1, and the address information of several golf courses with respect to the map information server 4. I do. Thirdly, the CPU of the map information server 4 acquires longitude and latitude information corresponding to the address information included in the information transmitted from the management server 1 from the storage unit provided in the map information server 4.
  • the CPU of the map information server 4 calculates the distance between the home of the one golf user U1 and each of the plurality of golf courses based on the acquired longitude and latitude information. Fifth, the CPU of the map information server 4 specifies the target golf course of the one golf user U1 based on the calculated distance. Sixth, the CPU of the map information server 4 calculates the time required to move between the home of the one golf user U1 and the target golf course of the one golf user U1. Seventh, the CPU of the map information server 4 manages information including information for identifying the specified target golf course (for example, golf course ID) and required time information indicating the calculated required time. Control to transmit to the server 1 is executed.
  • the specified target golf course for example, golf course ID
  • the CPU 30 of the management server 1 updates the required time information management table TBL13 based on the information transmitted from the map information server 4.
  • the management server 1 transmits the address information of the golf user U1 such as the home and the address information of the plurality of golf courses to the map information server 4, and the map information server 4 transmits the transmitted address information.
  • the required time information management table TBL13 includes the identification information UID, the golf course ID, and the required Only time information may be stored, and distance information may not be stored.
  • the golf user information table TBL11 and the golf course information table TBL12 may store only address information as position information, and may not store longitude and latitude information.
  • a golf course in which the distance between the golf user U1's home and the golf course and the golf course is equal to or less than a predetermined value is the target golf course of the golf user U1.
  • a golf course where the distance between the golf user's U1 home and the golf course is equal to or less than a predetermined value and the required time ⁇ T from the golf user U1's home is equal to or less than the predetermined time ⁇ Tth is designated as the golf user U1.
  • the CPU 30 functions as the calculation result acquisition unit 14 by executing the processes of S123 and S124.
  • the service providing system 100 executes the required time calculation process described above, so that when the address of the golf user U1 is registered or updated, and when a golf course is newly registered, The target golf course of the golf user U1 can be updated, and the distance and required time between the golf user U1's home and the target golf course stored in the required time information management table TBL13 can be updated.
  • FIG. 26 shows an example of an operation sequence of the service providing system 100 related to recommended golf course specifying processing.
  • the recommended golf course specifying process is a so-called real-time process that is executed in response to a request from the terminal device 2 of the golf user U1 who is logged in to the golf information application service.
  • the predetermined golf user U1a clicks the recommended golf course confirmation button B21 on the golf chum selection screen G2, or any of the recommended golf course confirmation buttons B41 to B43 on the golf event management screen G4.
  • the terminal device 2 of the predetermined golf user U1a makes a recommended golf course list screen G5 (FIG. 10) to the management server 1 together with information for identifying candidates for participation in the golf event. ) Is displayed.
  • the CPU 30 of the management server 1 specifies the common golf course of the participating candidates (S140). Specifically, the CPU 30 first accesses the required time information management table TBL13 (FIG. 18) and specifies the target golf course of each participating candidate. Next, the CPU 30 selects a target golf course whose required time ⁇ T from the participation candidate's home or the like is equal to or less than the predetermined time ⁇ Tth from the target golf courses of the participating candidates. Next, CPU30 specifies the target golf course which is common to all the participation candidates among the selected target golf courses as a common golf course of a participation candidate.
  • TBL13 required time information management table
  • the CPU 30 functions as the common facility specifying unit 12 by executing the process of S140.
  • the CPU 30 of the management server 1 determines the recommended degree of the candidate candidate's common golf course specified in S140, and generates display information based on the determination result (S141). Specifically, the CPU 30 of the management server 1 accesses the required time information management table TBL13, the identification information UID of the participation candidate is recorded, and the golf course ID of the common golf course of the participation candidate is recorded. To extract records. Next, the CPU 30 sets the longest required time ⁇ T recorded in the required time information of the extracted record as the longest required time ⁇ Tmax of the common golf course, and uses the longest required time ⁇ Tmax as the common time. Determined as the recommended degree of golf course.
  • CPU30 determines the display position in the recommended golf course list screen G5 of the said common golf course based on the recommendation grade of the said common golf course, Based on the said determination result, recommended golf course list Display information necessary for displaying the screen G5 is generated. Then, CPU30 of the management server 1 performs control which transmits the recommended golf course list display response containing the said display information to the terminal device 2 (S142). When the terminal device 2 receives the recommended golf course list display response, the CPU 20 of the terminal device 2 executes a process of displaying the recommended golf course list screen G5 on the display 25 (S241).
  • the CPU 30 of the management server 1 functions as the display information generation unit 16 by executing at least one of S109 and S141.
  • the CPU 30 of the management server 1 functions as the transmission control unit 18 by executing at least one of S110 and S142.
  • the service providing system 100 is generated based on the longest required time ⁇ Tmax, which is the maximum value of the required time ⁇ T from the candidate's home to the target golf course to the golf event.
  • a recommended golf course list screen G5 is provided.
  • the predetermined golf user U1a who plans a golf event selects a golf course that can be easily accessed from a home or the like of a candidate for a golf event by viewing the recommended golf course list screen G5. This makes it easy to plan golf events such as golf course selection.
  • the “required time calculation process” is a so-called batch process executed at a predetermined cycle.
  • the present invention is not limited to such a mode, At least a part of the processing may be so-called real-time processing executed in response to a request from the terminal device 2 of the golf user U1.
  • FIG. 27A and 27B are an example of an operation sequence of the service providing system 100 related to the “recommended golf course specifying process” according to the first modification.
  • S161, S162, and S460 illustrated in FIG. 27A correspond to S123, S124, and S420 in the “required time calculation process” according to the embodiment illustrated in FIG.
  • a recommended golf course confirmation button B21 is clicked on the golf chum selection screen G2 by the predetermined golf user U1a in the terminal device 2, or recommended on the golf event management screen G4.
  • the CPU 20 of the terminal device 2 of the predetermined golf user U1a uses the management server 1 to identify candidates for participation in the golf event.
  • a request for displaying the recommended golf course list screen G5 is transmitted together with information (for example, identification information UID).
  • the management server 1 receives the request, the CPU 30 of the management server 1 specifies a common golf course of the participating candidates (S160).
  • S160 is the same processing as S140 shown in FIG.
  • the CPU 30 of the management server 1 performs a process of transmitting the location information of the participation candidate's home and the like and the location information of the participation candidate's common golf course to the map information server 4 (S161).
  • S161 is a process corresponding to S123 shown in FIG.
  • the CPU of the map information server 4 will participate based on the received information.
  • the time required to move between the home and the like and the common golf course of the participating candidates is calculated (S460).
  • S460 is processing corresponding to S420 shown in FIG.
  • the map information server 4 transmits a response including the calculated required time to the management server 1.
  • the CPU 30 of the management server 1 moves between the participation candidate's home and the like and the participation candidate's common golf course included in the response.
  • the required time is acquired (S162).
  • S162 is a process corresponding to S124 shown in FIG.
  • the CPU 30 of the management server 1 determines the recommended degree of the candidate candidate's common golf course, and generates display information based on the determination result (S163).
  • S163 is the same process as S141 shown in FIG.
  • CPU30 of the management server 1 performs control which transmits the recommended golf course list display response containing the said display information to the terminal device 2 (S164).
  • S164 is a process corresponding to S142 shown in FIG.
  • the CPU 20 of the terminal device 2 executes a process of displaying the recommended golf course list screen G5 on the display 25 (S261).
  • S261 is the same processing as S241 shown in FIG.
  • part of the “required time calculation process” (S123, S124, and S420) is incorporated into the “recommended golf course specifying process” and executed as a real-time process. Is done. Also in the first modification, among the required time calculation processing shown in FIG. 25, S120, S121, and S122 are executed as batch processing executed at a predetermined cycle.
  • the required time ⁇ T is calculated in real time in response to a request from the terminal device 2 of a predetermined golf user U1a.
  • the required time of the route according to the request of a predetermined golf user U1a such as the required time from the participation candidate's home etc. to the common golf course via the way stopway as well as the required time ⁇ T between It can be calculated flexibly.
  • the predetermined golf user U1a passes through the respective homes of other golf users U1b (participation candidates other than the predetermined golf user U1a).
  • the time required to reach the common golf course may be calculated.
  • the recommended level of the common golf course may be determined according to the time required to reach the common golf course from the predetermined golf user U1a's home or the like via the waypoint. In this case, the shorter the required time, the higher the recommended level of the common golf course. Further, in this case, a predetermined golf user U1a may set the waypoint on the way on the golf chum selection screen G2 or the like.
  • the map information server 4 is provided with the required route time calculation unit 41 capable of calculating the required time required to move between two points. Is not limited to such a configuration, and the route required time calculation unit 41 may be provided in the management server 1.
  • FIG. 28 shows a service providing system 100A according to the second modification.
  • the service providing system 100A is the same as the service providing system 100 according to the embodiment except that the map information server 4 is not used and the management server 1A is provided instead of the management server 1.
  • the management server 1A includes a route required time calculation unit 41 that can calculate the required time required to move between two points, and the route required time calculation unit 41 executes calculation of the required time in the storage unit 19.
  • the management server 1 is the same as the management server 1 except that it stores data necessary to perform the operation and does not include the calculation result acquisition unit 14.
  • specification part 12 which concerns on the modification 2 uses predetermined
  • the common golf course of the person U1a and other golf users U1b is specified.
  • FIG. 29 shows a service providing system 100B according to the third modification.
  • the service providing system 100B is the same as the service providing system 100 according to the embodiment except that the external management server 3 is not provided and the management server 1B is provided instead of the management server 1.
  • the management server 1B is different from the management server 1 in that the golf chum information table L16 is stored in the storage unit 19.
  • FIG. 30 shows the data structure of the golf chum information table L16.
  • a plurality of records are recorded in the golf chum information table L16.
  • One record includes golf friend information, that is, action source identification information, action destination identification information, status, and application date and time.
  • the action source is the golf user U1 who made the golf chum application
  • the action destination is the SNS user U2 who has applied for the golf chum.
  • the status indicates the state of the golf chum application, and “0” indicates that the application is in progress, and “1” indicates that the application is approved.
  • the service providing system 100B there is no relationship that the golf user U1 is included in the SNS user U2 as in the above-described embodiments and modifications. That is, as shown in FIG.
  • the management server 1B manages the golf user U1 who has a friendship with the predetermined golf user U1a as “direct golf chum Ug of the predetermined golf user U1a”. Further, the management server 1B manages the direct golf chum Ug who has a friendship with the predetermined golf user U1a and the golf user U1 who has a friendship as “indirect golf chum Ugg of the predetermined golf user U1a”. That is, the management server 1B is directly a golf user U1 who has a friendship with a predetermined golf user U1a based on the friend information stored in the storage unit 19 and the identification information UID of the predetermined golf user U1a.
  • a user specifying unit 13 that can specify the golf chum Ug and the indirect golf chum Ugg that is a golf user U1 who has a friendship with the direct golf chum Ug as the target user Utg is provided.
  • the storage unit 19 preferably stores personal information of the golf user U1 (that is, name, age, storage location of the profile image Pg, etc.).
  • the friend information acquisition part 15 in this modification should just acquire friend information from the memory
  • the management server (management servers 1, 1A, 1B) includes the storage unit 19, but the present invention is not limited to such a configuration. May not include the storage unit 19.
  • FIG. 32 shows a service providing system 100C according to the fourth modification.
  • the service providing system 100 ⁇ / b> C is the same as the service providing system 100 according to the embodiment except that the service providing system 100 ⁇ / b> C includes the database server 6 and the management server 1 ⁇ / b> C instead of the management server 1.
  • the management server 1C is configured in the same manner as the management server 1 except that the storage unit 19 is not provided and the information acquisition unit 17 (an example of a first acquisition unit) is provided.
  • the database server 6 includes a storage unit 19 that stores a golf user information table TBL11, a golf course information table TBL12, a required time information management table TBL13, an event information management table TBL14, a response information management individual table TBL15, and the like.
  • the information acquisition unit 17 can acquire various data stored in various tables stored in the storage unit 19 included in the database server 6.
  • the common facility specifying unit 12 is a golf course whose required time ⁇ T from the home of the predetermined golf user U1a is a predetermined time ⁇ Tth or less among the target golf courses of the predetermined golf user U1a.
  • a golf course whose required time ⁇ T from the home of the other golf user U1b is equal to or less than the predetermined time ⁇ Tth is designated as the predetermined golf user U1a and others.
  • the present invention is not limited to such a configuration, and the common facility specifying unit 12 is a target golf course for a predetermined golf user U1a, and A part or all of a golf course that is a target golf course of another golf user U1b is specially designated as a common golf course of a predetermined golf user U1a and another golf user U1b.
  • the common facility specifying unit 12 is a target golf course of a predetermined golf user U1a and a golf course that is a target golf course of another golf user U1b. It may be specified as a common golf course of the golf user U1b.
  • the common facility specifying unit 12 is a golf course that is a target golf course of a predetermined golf user U1a and is a target golf course of another golf user U1b.
  • a golf course having a fixed amount or less may be specified as a common golf course for a predetermined golf user U1a and another golf user U1b.
  • specification part 12 specifies the golf course whose required time (DELTA) T is below predetermined time (DELTA) Tth among target golf courses as a common golf course
  • the said predetermined time (DELTA) Tth is predetermined value (for example, , A fixed value such as “90 minutes”), or a value that the golf user U1 can input from My Page.
  • the service providing system may calculate the required time ⁇ T when the golf user U1 can select a transportation means on the My Page and travels using the selected transportation means.
  • the route required time calculating unit 41 according to the embodiment and the modification described above moves from one of the two points to the other (between each participant candidate's home or the like and the common golf course in the golf event).
  • the route required time calculation unit 41 may calculate the travel distance between two points, or calculate the transportation cost required to move between the two points. May be.
  • the route required time calculation unit 41 only needs to be able to calculate some evaluation value that quantitatively represents a burden related to movement between two points.
  • the route required time calculation unit 41 calculates the transportation cost required to move between two points
  • the common golf course of the candidate candidates specified by the common facility specifying unit 12 In golf courses where the distance from the participation candidate's home etc. is a predetermined value or less (target golf course of each participation candidate) and the transportation cost from each participation candidate's home etc. is below a predetermined amount There may be.
  • the recommended level of the common golf course determined by the display information generating unit 16 is the transportation cost required to move between the home of the candidate participating in the golf event and the common golf course. It may be determined based on this.
  • the user specifying unit 13 is configured such that the direct golf chum Ug of the predetermined golf user U1a and the indirect golf chum Ugg of the predetermined golf user U1a are the target users of the predetermined golf user U1a.
  • this invention is not limited to this, You may specify golf chum Ug directly as object user Utg. In this case, the user specifying unit 13 may not specify the indirect golf chum Ugg.
  • specification part 13 may identify only the indirect golf chum Ugg as the object user Utg.
  • the user specifying unit 13 may specify only the direct golf chum Ug and the direct golf chum Ug as the target user Utg after specifying the direct golf chum Ug and the indirect golf chum Ugg.
  • the user specifying unit 13 is a target user of the predetermined golf user U1a, part or all of the direct golf chum Ug of the predetermined golf user U1a and the indirect golf chum Ugg of the predetermined golf user U1a. What is specified as Utg is sufficient.
  • the service providing system (service providing system 100, 100A, 100B, or 100C) according to the embodiment and the modification described above includes the golf course server 5, but the present invention is not limited to this, and the service is provided.
  • the providing system may not include the golf course server 5.
  • the My Page provided by the management server may not include the golf course reservation status confirmation screen G6 and the golf course reservation screen G7.
  • a link to a site provided by each golf course may be displayed on the recommended golf course list screen G5 or the like.
  • the management server (management server 1, 1A, 1B, or 1C) according to the embodiment and the modification described above can communicate with the terminal device 2, but the present invention is not limited to this, and management The server may not communicate with the terminal device 2.
  • the management server may be capable of communicating with the Web server.
  • the service providing system provides the golf user U1 with a My Page including the address registration screen G8, and the golf user U1 registers an address such as a home from the address registration screen G8.
  • the present invention is not limited to this.
  • the terminal device 2 of the golf user U1 is, for example, a mobile phone, a smartphone, or the like
  • an address such as a home using the GPS function of the terminal device 2 is used.
  • the longitude and latitude may be registered.
  • the golf information application service has been described as an example of the service provided by the management server (management servers 1, 1A, 1B, 1C, etc.), but the present invention is limited to this.
  • the management server may provide any service as long as it is a service related to a predetermined target.
  • the predetermined object may be related to sports such as swimming, skiing and tennis, or related to hobbies such as movies, music, games and travel, or may be related to business.
  • the target facility specifying unit 11 has a distance from the golf user U1's home or the like that is less than or equal to a predetermined value based on the location information of the golf user U1's home and the location information of the facility related to the predetermined target.
  • the facility can be acquired as a target facility of the golf user U1.
  • the “facility related to a predetermined target” refers to a pool or a beach when the predetermined target is swimming, and a ski resort or the like when the predetermined target is ski.
  • the predetermined target is a movie, a movie theater or the like is applicable.
  • the common facility specifying unit 12 is a target facility of a predetermined golf user U1a and a target facility of another golf user U1b in response to a request from the terminal device 2 of the predetermined golf user U1a. What is necessary is just to specify a part or all of a certain facility as a common facility of a predetermined golf user U1a and another golf user U1b.
  • the display information generation part 16 produces
  • Any device that transmits to the device 2 may be used.
  • the specific relationship is not limited to the friend relationship.
  • a relationship between a boss and a subordinate may be used, or a relationship between a wholesaler and a retailer may be used. In short, any relationship can be used as long as it is established based on a certain rule.
  • the CPU 30 displays the profile image Pg of the direct golf chum Ug and the profile image Pg of the indirect golf chum Ugg separately in different areas Y1 and Y2 on the golf chum list screen G0.
  • This invention is not limited to this, You may display on one area
  • the management server 1 (or 1A, 1B, 1C) and the terminal device 2 have been described as examples of devices that display a specific hierarchical relationship between users. Is not limited to this, but may be an information processing apparatus such as a personal computer. Note that a program for realizing the functions of the present invention may be recorded on a computer-readable recording medium, and the program recorded on the recording medium may be read by a computer system and executed.
  • the “computer system” here includes an OS and hardware such as peripheral devices. Further, the “computer system” may include a plurality of computer devices connected via a network including a communication line such as the Internet, WAN, LAN, and dedicated line.
  • the “computer-readable recording medium” refers to a storage device such as a flexible medium, a magneto-optical disk, a portable medium such as a ROM or a CD-ROM, and a hard disk incorporated in a computer system. Furthermore, the “computer-readable recording medium” holds a program for a certain period of time, such as a volatile memory (RAM) inside a computer system that becomes a server or a client when the program is transmitted via a network. Including things.
  • the program may be for realizing a part of the functions described above. Furthermore, what can implement
  • LSI Large Scale Integration
  • Each function described above may be individually made into a processor, or a part or all of them may be integrated into a processor.
  • the method of circuit integration is not limited to LSI, and may be realized by a dedicated circuit or a general-purpose processor.
  • an integrated circuit based on the technology may be used.
  • a distribution server that distributes a program for realizing the function of the present invention or a part thereof, a storage medium provided in the distribution server, and a distribution server that exists outside the distribution server and distributes the program by the distribution server Therefore, a storage medium stored for this purpose is also included in the scope of the present invention.

Landscapes

  • Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Theoretical Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • General Physics & Mathematics (AREA)
  • Economics (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Primary Health Care (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Development Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

 ゴルフ利用者の端末装置と通信可能でありゴルフ利用者に所定の対象に関するサービスを提供する管理サーバは、ゴルフ利用者の自宅等の位置情報及び所定の対象の施設の位置情報を取得する情報取得部と、ゴルフ利用者の自宅等からの距離が所定値以下の施設を当該ゴルフ利用者の対象施設として特定する対象施設特定部と、所定のゴルフ利用者の端末装置からの要求に応じて所定のゴルフ利用者の対象施設であり且つ所定のゴルフ利用者の端末装置において選択された他のゴルフ利用者の対象施設である施設の一部または全部を共通施設として特定する共通施設特定部と、共通施設を表す情報を含む表示情報を生成する表示情報生成部と、当該表示情報を所定のゴルフ利用者の端末装置に送信する制御を行う送信制御部とを備える。

Description

管理装置、サービス提供システム、管理装置の制御方法、及び、コンピュータ読み取り可能な記録媒体
 本発明は、管理装置、サービス提供システム、管理装置の制御方法、及び、コンピュータ読み取り可能な記録媒体に関する。
 近年、インターネットを用いて、ゴルフ場等の施設を検索するサービスが普及している。例えば、特許文献1には、自宅からゴルフ場までの所要時間等の条件を設定し、条件に適合したゴルフ場を一覧で表示するシステムが開示されている。
特開2005-84797号公報
 ゴルフ場等の施設は、複数人が同時に利用することがある。そのため、ゴルフ場等の施設を予約する幹事は、幹事の自宅からの距離等の幹事本人の条件のみならず、同時に施設を利用するメンバーの条件を勘案して、施設を選択することが求められる。
 しかし、施設を利用するメンバーの条件を勘案して施設を選択する作業は手間がかかり、幹事には大きな負担がかかっていた。
 本発明は、この点に鑑みてなされたものであり、同時に施設を利用するメンバーの条件を勘案して施設候補を特定するサービスを提供することを解決課題とする。
 以上の課題を解決するために本発明が採用する手段を以下に説明する。
 上述した課題を解決するため、本発明に係る管理装置は、第1利用者に所定の対象に関するサービスを提供する管理装置であって、前記第1利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得する第1取得部と、前記第1取得部が取得した前記第1利用者の基準地点の位置情報と前記施設の位置情報とに基づいて、前記第1利用者の基準地点からの距離が所定値以下である施設を、当該第1利用者の対象施設として特定する第1特定部と、所定の第1利用者の対象施設であり、且つ、前記所定の第1利用者とは異なる他の第1利用者の対象施設である施設の一部または全部を、前記所定の第1利用者及び前記他の第1利用者の共通施設として特定する第2特定部と、前記共通施設を表す情報を含む表示情報を生成する表示情報生成部と、を備えることを特徴とする。
 この発明において、所定の対象に関するサービスとは、例えば、所定の対象についての情報を提供するアプリケーションサービスであってもよい。所定の対象に関する施設とは、例えば、所定の対象が「ゴルフ」である場合、ゴルフ場等が該当する。第1利用者の基準地点とは、第1利用者の自宅、または、第1利用者の自宅からの最寄駅等、第1利用者の生活または行動の基準となる場所であればどのようなものであってもよい。位置情報とは、住所であってもよいし、住所の経度及び緯度を表す情報であってもよい。対象施設の一部とは、例えば、対象施設のうち、所定の第1利用者の基準地点及び他の第1利用者の基準地点からの所要時間が所定の時間よりも短い施設であってもよいし、当該対象施設を使用する際に必要な料金が所定の金額以下の施設であってもよい。
 また、本発明に係る管理装置は、第1利用者の端末装置と通信可能であり、前記第1利用者に所定の対象に関するサービスを提供する管理装置であって、前記第1利用者を一意に識別する識別情報、前記第1利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得する第1取得部と、前記第1取得部が取得した前記第1利用者の基準地点の位置情報と前記施設の位置情報とに基づいて、前記第1利用者の基準地点からの距離が所定値以下である施設を、当該第1利用者の対象施設として特定する第1特定部と、所定の第1利用者の端末装置からの要求に応じて、前記所定の第1利用者の対象施設であり、且つ、前記所定の第1利用者の端末装置において選択された他の第1利用者の対象施設である施設の一部または全部を、前記所定の第1利用者及び前記他の第1利用者の共通施設として特定する第2特定部と、前記第2特定部が特定した前記共通施設を表す情報を含む表示情報を生成する表示情報生成部と、前記表示情報生成部が生成した前記表示情報を前記所定の第1利用者の端末装置に送信する制御を行う送信制御部と、を備えることを特徴とする。
 この発明において、端末装置とは、例えば、パーソナルコンピュータ、携帯電話機、スマートフォン、タブレット端末などが該当する。所定の対象に関するサービスとは、例えば、所定の対象についての情報を提供するアプリケーションサービスであってもよい。
所定の対象に関する施設とは、例えば、所定の対象が「ゴルフ」である場合、ゴルフ場等が該当する。第1利用者の基準地点とは、第1利用者の自宅、または、第1利用者の自宅からの最寄駅等、第1利用者の基準となる場所であればどのようなものであってもよい。
位置情報とは、住所であってもよいし、住所の経度及び緯度を表す情報であってもよい。
対象施設の一部とは、例えば、対象施設のうち、所定の第1利用者の基準地点及び他の第1利用者の基準地点からの所要時間が所定の時間よりも短い施設であってもよいし、当該対象施設を使用する際に必要な料金が所定の金額以下の施設であってもよい。
 上述した管理装置は、前記第1利用者の基準地点の位置情報と前記施設の位置情報とに基づいて、前記第1利用者の基準地点から前記第1利用者の対象施設までの間を移動するのに要する所要時間を演算する演算部を備え、前記第2特定部は、所定の第1利用者の端末装置からの要求に応じて、前記所定の第1利用者の対象施設のうち、前記所定の第1利用者の基準地点からの所要時間が所定時間以下の施設であり、且つ、前記他の第1利用者の対象施設のうち、前記他の第1利用者の基準地点からの所要時間が前記所定時間以下の施設を、前記所定の第1利用者及び前記他の第1利用者の共通施設として特定する、ことを特徴とする。
 上述した管理装置において、前記演算部は、前記所定の第1利用者の端末装置からの要求に応じて、前記所定の第1利用者の基準地点から前記所定の第1利用者の対象施設からの間を移動するのに要する所要時間と、前記他の第1利用者の基準地点から前記他の第1利用者の対象施設までの間を移動するのに要する所要時間と、を演算する、ことを特徴とする。
 上述した管理装置は、2つの地点の位置をそれぞれ表す2つの位置情報に基づいて当該2つの地点の間を移動するのに要する所要時間を演算する第1外部装置と通信可能であり、前記第1取得部が取得した前記第1利用者の基準地点の位置情報と前記第1利用者の対象施設の位置情報とを、前記第1外部装置に送信するとともに、送信された位置情報に基づいて前記第1外部装置が演算した、前記第1利用者の基準地点から前記第1利用者の対象施設までの間を移動するのに要する所要時間を、前記第1外部装置から取得する第2取得部を備え、前記第2特定部は、所定の第1利用者の端末装置からの要求に応じて、前記所定の第1利用者の対象施設のうち、前記所定の第1利用者の基準地点からの所要時間が所定時間以下の施設であり、且つ、前記他の第1利用者の対象施設のうち、前記他の第1利用者の基準地点からの所要時間が前記所定時間以下の施設を、前記所定の第1利用者及び前記他の第1利用者の共通施設として特定する、ことを特徴とする。
 上述した管理装置において、前記第2取得部は、前記所定の第1利用者の端末装置からの要求に応じて、前記所定の第1利用者の基準地点の位置情報、前記所定の第1利用者の対象施設の位置情報、前記他の第1利用者の基準地点の位置情報、及び、前記他の第1利用者の対象施設の位置情報を、前記第1外部装置に送信するとともに、送信された位置情報に基づいて前記第1外部装置が演算した、前記所定の第1利用者の基準地点から前記所定の第1利用者の対象施設までの間を移動するのに要する所要時間と、前記他の第1利用者の基準地点から前記他の第1利用者の対象施設までの間を移動するのに要する所要時間とを、前記第1外部装置から取得する、ことを特徴とする。
 上述した管理装置において、前記表示情報生成部は、前記所定の第1利用者の基準地点から前記共通施設までの間を移動するのに要する所要時間と、前記他の第1利用者の基準地点から前記共通施設までの間を移動するのに要する所要時間と、に基づいて、前記所定の第1利用者の端末装置に備えられた表示部に表示される画面における、前記共通施設を表す情報の表示位置を決定し、当該決定結果に基づいて、前記共通施設を表す情報を含む表示情報を生成する、ことを特徴とする。
 上述した管理装置は、前記第1利用者同士の特定の関係を表す特定関係情報を取得する第3取得部と、前記第1取得部が取得した前記所定の第1利用者の識別情報と前記第3取得部が取得した前記特定関係情報とに基づいて、前記所定の第1利用者と前記特定の関係を有する前記第1利用者である第1の特定関係利用者、及び、前記第1の特定関係利用者と前記特定の関係を有する前記第1利用者である第2の特定関係利用者、の一部または全部を対象利用者として特定する利用者特定部と、を備え、前記表示情報生成部は、前記利用者特定部の特定結果に基づいて、前記対象利用者を表す情報を含む表示情報を生成し、前記送信制御部は、前記表示情報生成部が生成した前記対象利用者を表す情報を含む表示情報を前記所定の第1利用者の端末装置に送信する制御を行い、前記第2特定部は、前記所定の第1利用者の端末装置の表示部において、送信された前記対象利用者を表す情報を含む表示情報に基づく画面が表示されたときに、当該画面において、前記所定の第1利用者に選択された対象利用者のうち少なくとも一部を、前記他の第1利用者として特定する、ことを特徴とする。
 この発明において、利用者特定部は、第1の特定関係利用者及び第2の特定関係利用者を対象利用者として特定するものであってもよい。具体的には、利用者特定部は、前記特定関係情報に基づいて、所定の第1利用者の前記識別情報から、前記所定の第1利用者と前記特定の関係を有する第1利用者である第1の特定関係利用者を特定するとともに、前記第1の特定関係利用者の前記識別情報から、前記第1の特定関係利用者と前記特定の関係を有する第1利用者である第2の特定関係利用者を特定し、特定した前記第1の特定関係利用者及び前記第2の特定関係利用者を対象利用者として特定するものであってもよい。また、利用者特定部は、第1の特定関係利用者及び第2の特定関係利用者を特定したうえで、この中の一部、例えば、第2の特定関係利用者を対象利用者として特定するものであってもよい。また、特定部は、第1の特定関係利用者を対象利用者として特定するものであってもよい。
 上述した管理装置は、前記第1利用者を含む第2利用者を一意に識別する識別情報と、前記第2利用者同士の特定の関係を表す特定関係情報とを管理する第2外部装置と通信可能であり、前記第1取得部が取得した前記第1利用者の識別情報に基づいて、前記第2外部装置から前記特定関係情報を取得する第3取得部と、前記第1取得部が取得した前記所定の第1利用者の識別情報と前記第3取得部が取得した前記特定関係情報とに基づいて、前記所定の第1利用者と前記特定の関係を有する前記第2利用者のうち前記第1利用者に該当する第1の特定関係利用者、及び、前記第1の特定関係利用者と前記特定の関係を有する前記第2利用者のうち前記第1利用者に該当する第2の特定関係利用者、の一部または全部を対象利用者として特定する利用者特定部と、を備え、前記表示情報生成部は、前記利用者特定部の特定結果に基づいて、前記対象利用者を表す情報を含む表示情報を生成し、前記送信制御部は、前記表示情報生成部が生成した前記対象利用者を表す情報を含む表示情報を前記所定の第1利用者の端末装置に送信する制御を行い、前記第2特定部は、前記所定の第1利用者の端末装置の表示部において、送信された前記対象利用者を表す情報を含む表示情報に基づく画面が表示されたときに、当該画面において、前記所定の第1利用者に選択された対象利用者のうち少なくとも一部を、前記他の第1利用者として特定する、ことを特徴とする。
 この発明において、利用者特定部は、第1の特定関係利用者及び第2の特定関係利用者を対象利用者として特定するものであってもよい。また、利用者特定部は、第1の特定関係利用者及び第2の特定関係利用者を特定したうえで、この中の一部、例えば、第2の特定関係利用者を対象利用者として特定するものであってもよい。また、特定部は、第1の特定関係利用者を対象利用者として特定するものであってもよい。
 本発明に係るサービス提供システムは、第1利用者に所定の対象に関するサービスを提供する管理装置と、前記第1利用者の端末装置と、を備えるサービス提供システムであって、前記端末装置は、所定の表示情報に基づく画面を表示可能な表示部を備え、前記管理装置と通信可能であり、前記管理装置は、前記第1利用者を一意に識別する識別情報、前記第1利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得する第1取得部と、前記第1取得部が取得した前記第1利用者の基準地点の位置情報と前記施設の位置情報とに基づいて、前記第1利用者の基準地点からの距離が所定値以下である施設を、当該第1利用者の対象施設として特定する第1特定部と、所定の第1利用者の端末装置からの要求に応じて、前記所定の第1利用者の対象施設であり、且つ、前記所定の第1利用者の端末装置において選択された他の第1利用者の対象施設である施設の一部または全部を、前記所定の第1利用者及び前記他の第1利用者の共通施設として特定する第2特定部と、前記第2特定部が特定した前記共通施設を表す情報を含む表示情報を、前記所定の表示情報として生成する表示情報生成部と、前記表示情報生成部が生成した前記表示情報を前記所定の第1利用者の端末装置に送信する制御を行う送信制御部と、を備える、ことを特徴とする。
 本発明に係る管理装置の制御方法は、所定の表示情報に基づく画面を表示可能な表示部を備える第1利用者の端末装置と通信可能であり、前記第1利用者に所定の対象に関するサービスを提供する管理装置の制御方法であって、前記第1利用者を一意に識別する識別情報、前記第1利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得し、前記第1利用者の基準地点の位置情報と前記施設の位置情報とに基づいて、前記第1利用者の基準地点からの距離が所定値以下である施設を、当該第1利用者の対象施設として特定し、所定の第1利用者の端末装置からの要求に応じて、前記所定の第1利用者の対象施設であり、且つ、前記所定の第1利用者の端末装置において選択された他の第1利用者の対象施設である施設の一部または全部を、前記所定の第1利用者及び前記他の第1利用者の共通施設として特定し、前記共通施設を表す情報を含む表示情報を、前記所定の表示情報として生成して、当該表示情報を前記所定の第1利用者の端末装置に送信する制御を行う、ことを特徴とする。
 本発明に係るコンピュータ読み取り可能な記録媒体は、所定の表示情報に基づく画面を表示可能な表示部を備える第1利用者の端末装置と通信可能であり、前記第1利用者に所定の対象に関するサービスを提供し、コンピュータを具備する管理装置のプログラムを記録した、コンピュータ読み取り可能な記録媒体であって、前記コンピュータに、前記第1利用者を一意に識別する識別情報、前記第1利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得する第1取得処理と、前記第1取得処理で取得した前記第1利用者の基準地点の位置情報と前記施設の位置情報とに基づいて、前記第1利用者の基準地点からの距離が所定値以下である施設を、当該第1利用者の対象施設として特定する第1特定処理と、所定の第1利用者の端末装置からの要求に応じて、前記所定の第1利用者の対象施設であり、且つ、前記所定の第1利用者の端末装置において選択された他の第1利用者の対象施設である施設の一部または全部を、前記所定の第1利用者及び前記他の第1利用者の共通施設として特定する第2特定処理と、前記第2特定処理で特定した前記共通施設を表す情報を含む表示情報を、前記所定の表示情報として生成する表示情報生成処理と、前記表示情報生成処理で生成した前記表示情報を前記所定の第1利用者の端末装置に送信する制御を行う送信制御処理と、を実行させる管理装置のプログラムを記録した、ことを特徴とする。
 この記録媒体を用いれば、例えば上記コンピュータに上記プログラムをインストールすることができる。ここで、上記プログラムを記憶した記録媒体は、CD-ROM等の非一過性の記録媒体であっても良い。
本発明の実施形態に係るサービス提供システムの構成を表すブロック図である。 SNS利用者とゴルフ利用者の関係を示す説明図である。 管理サーバの構成を示すブロック図である。 端末装置の構成を示すブロック図である。 端末装置の表示画面の一例を示す説明図である。 端末装置の表示画面の一例を示す説明図である。 端末装置の表示画面の一例を示す説明図である。 端末装置の表示画面の一例を示す説明図である。 端末装置の表示画面の一例を示す説明図である。 端末装置の表示画面の一例を示す説明図である。 端末装置の表示画面の一例を示す説明図である。 端末装置の表示画面の一例を示す説明図である。 端末装置の表示画面の一例を示す説明図である。 SNS利用者情報テーブルのデータ構造の一例を示す説明図である。 SNS友達情報テーブルのデータ構造の一例を示す説明図である。 ゴルフ利用者情報テーブルのデータ構造の一例を示す説明図である。 ゴルフ場情報テーブルのデータ構造の一例を示す説明図である。 所要時間情報管理テーブルのデータ構造の一例を示す説明図である。 イベント情報管理テーブルのデータ構造の一例を示す説明図である。 応答情報管理個別テーブルのデータ構造の一例を示す説明図である。 表示処理に関するサービス提供システムの動作シーケンスを示すシーケンス図である。 表示処理に関するサービス提供システムの動作シーケンスを示すシーケンス図である。 所定のゴルフ利用者と友達関係にあるSNS友達を特定する処理を示す説明図である。 間接SNS友達を特定する処理を示す説明図である。 所要時間算出処理に関するサービス提供システムの動作シーケンスを示すシーケンス図である。 おすすめゴルフ場特定処理に関するサービス提供システムの動作シーケンスを示すシーケンス図である。 変形例1に係るおすすめゴルフ場特定処理に関するサービス提供システムの動作シーケンスを示すシーケンス図である。 変形例1に係るおすすめゴルフ場特定処理に関するサービス提供システムの動作シーケンスを示すシーケンス図である。 変形例2に係るサービス提供システムの構成を表すブロック図である。 変形例3に係るサービス提供システムの構成を表すブロック図である。 ゴルフ友達情報テーブルのデータ構造の一例を示す説明図である。 間接ゴルフ友達を特定する処理を示す説明図である。 変形例4に係るサービス提供システムの構成を表すブロック図である。
 以下、実施形態として、本発明に係る管理サーバを用いたサービス提供システムについて、図面を参照しつつ説明する。
<実施形態>
<1.サービス提供システムの概要>
 図1は、本発明の実施形態に係るサービス提供システム100のブロック図である。
 サービス提供システム100は、インターネット等の通信網NET、管理サーバ1(管理装置の一例)、利用者の端末装置2、地図情報サーバ4(第1外部装置の一例)、SNSサイトを提供する外部管理サーバ3(第2外部装置の一例)、及び、ゴルフ場サーバ5を備える。
 管理サーバ1は、ゴルフ(所定の対象の一例)に関する情報サービスやコミュニティサービス等のゴルフ情報アプリケーションサービスを、ゴルフ利用者U1(第1利用者の一例)に対して提供する。
 なお、本実施形態は、管理サーバ1が提供するサービスとして、ゴルフ情報アプリケーションサービスを例示して説明するが、管理サーバ1は、ゴルフ情報アプリケーションサービス以外のアプリケーションサービスの提供、例えば、ホテルの予約等を含む旅行情報の提供、スポーツ施設等の情報の提供、または、コンサート情報の提供等に係るアプリケーションサービスを提供するものであってもよい。
 外部管理サーバ3は、SNSを、SNS利用者U2(第2利用者の一例)に対して提供する。SNSのウェブサイトでは、SNS利用者U2に対して、SNS利用者U2同士がコミュニケーションを行うためのツール(例えば、掲示板、メール、チャット等)が提供される。また、SNSのウェブサイトにおいて、アクション元のSNS利用者U2が友達申請を行い、これをアクション先のSNS利用者U2が承認することによって、SNS利用者U2同士の特定の関係であるSNS友達関係が構築される。外部管理サーバ3は、SNS利用者U2同士の特定の関係であるSNS友達関係を示す友達情報(特定関係情報の一例)を管理する。
 外部管理サーバ3が提供するSNSにおいては、掲示板、メール、チャット等を利用することができるだけでなく、ゲームや実用的なツール等のソーシャルアプリケーションを利用することができる。このソーシャルアプリケーションは、前記SNSの提供者以外の提供者によっても提供されることがあり、ソーシャルアプリケーションを利用するか否か、あるいは、どのソーシャルアプリケーションを利用するかは、SNS利用者U2が任意に決定できるようになっている。SNS利用者U2がソーシャルアプリケーションの利用を希望する場合には、当該ソーシャルアプリケーションが当該SNS利用者U2の個人情報やSNS上の友達情報にアクセスする機能や、当該ソーシャルアプリケーションが当該SNS利用者U2の代わりに掲示板等に投稿する機能等についての許可を求める場合がある。ソーシャルアプリケーションによっては、SNS利用者U2がこれらの機能について許可したことを以って、当該ソーシャルアプリケーションの利用者になる場合がある。このようなソーシャルアプリケーションは、一般に、SNSサイト内に当該ソーシャルアプリケーションの画面が表示されるため、SNS利用者U2にとっては、あたかもSNSが提供するサービスの一つを利用しているような感覚で、ソーシャルアプリケーションを利用することになる。
 本実施形態の管理サーバ1によって提供されるゴルフ情報アプリケーションサービスは、一例として、上述のようなソーシャルアプリケーションにより提供されるサービスである。本実施形態においては、SNS利用者U2がゴルフ情報アプリケーションの利用者であるゴルフ利用者U1になるためには、ゴルフ情報アプリケーションが当該SNS利用者U2の個人情報やSNS上の友達情報にアクセスする機能や、ゴルフ情報サービスが当該SNS利用者U2の代わりに掲示板等に投稿する機能等についての承認を行うようになっている。SNS利用者U2がこの承認を行うことにより、当該SNS利用者U2はゴルフ利用者U1となる。
 外部管理サーバ3が提供するSNSの利用者であるSNS利用者U2に限って、管理サーバ1からゴルフ情報アプリケーションサービスの提供を受けることができる。すなわち、SNS利用者U2に限って、管理サーバ1にゴルフ利用者U1として登録することが可能である。つまり、ゴルフ利用者U1は常にSNS利用者U2であるが、SNS利用者U2の中にはゴルフ利用者U1でない者も存在する。換言すれば、ゴルフ利用者U1の集合は、図2に示すように、SNS利用者U2の集合に含まれる。このため、実施形態の管理サーバ1は、ゴルフ利用者U1同士の特定の関係であるゴルフ友達関係を、SNS友達関係を示す友達情報を用いて管理する。
 ここで、図2に示すように、所定のゴルフ利用者U1aとSNS友達関係を有するSNS利用者U2を、所定のゴルフ利用者U1aの直接SNS友達Ufと称する。また、所定のゴルフ利用者U1aの直接SNS友達UfとSNS友達関係を有するSNS利用者U2を、所定のゴルフ利用者U1aの間接SNS友達Uffと称する。但し、所定のゴルフ利用者U1aの間接SNS友達Uffには、所定のゴルフ利用者U1aと、所定のゴルフ利用者U1aの直接SNS友達Ufとは含まれないものとする。
 所定のゴルフ利用者U1aの直接SNS友達Ufであってゴルフ利用者U1である者を、所定のゴルフ利用者U1aの直接ゴルフ友達Ug(第1の特定関係利用者)と称する。また、ゴルフ利用者U1の間接SNS友達Uffであってゴルフ利用者U1である者を、所定のゴルフ利用者U1aの間接ゴルフ友達Ugg(第2の特定関係利用者)と称する。
 すなわち、管理サーバ1は、ゴルフ利用者U1のうち所定のゴルフ利用者U1aの直接SNS友達Ufであり、且つ、ゴルフ利用者U1に該当するものを、所定のゴルフ利用者U1aの直接ゴルフ友達Ugとして管理し、また、所定のゴルフ利用者U1aの間接SNS友達Uffであり、且つ、ゴルフ利用者U1に該当するものを、所定のゴルフ利用者U1aの間接ゴルフ友達Uggとして管理する。この場合において、「管理する」とは、SNS利用者U2に関する情報、ゴルフ利用者U1に関する情報、SNS利用者U2の友達関係を示すSNS友達情報その他のゴルフ利用者U1の友達関係を管理するために必要な情報のすべてを、自己の記憶部に保持していることを要せず、代わりに外部のサーバ装置等の装置に記憶させておき、当該装置と通信して上記情報を要求(参照)することによりゴルフ利用者U1の友達関係を把握(特定)可能であることを意味する。後に詳述するが、本実施形態では、管理サーバ1は、管理サーバ1に格納されるゴルフ利用者情報テーブルTBL11、または、外部管理サーバ3に格納されるSNS利用者情報テーブルTBL31若しくはSNS友達情報テーブルTBL32を参照することにより、直接ゴルフ友達Ug及び間接ゴルフ友達Uggを特定する。なお、以下において、ゴルフ利用者U1のうちのある1人のゴルフ利用者U1を表す場合に、「U1a」のように、「U1」に「a」等の添え字を付して表現する場合がある。
 図1に示すように、外部管理サーバ3は、SNS利用者情報テーブルTBL31と、SNS友達情報テーブルTBL32と、を備える。また、外部管理サーバ3は、各種のAPI(Application Program Interface)を実行可能であり、管理サーバ1からのパラメータを含む要求を受信すると、SNS利用者情報テーブルTBL31又はSNS友達情報テーブルTBL32から所定の情報を抽出して管理サーバ1に返信する。
 図14にSNS利用者情報テーブルTBL31のデータ構造を示す。SNS利用者情報テーブルTBL31には複数のレコードが記録されている。1つのレコードは、SNS利用者U2を一意に識別する識別情報UID(アカウントとして機能する)、及び、SNS利用者U2が外部管理サーバ3に登録した個人情報を含む。個人情報は、例えば、SNS利用者U2の氏名、性別、勤務先、メールアドレス、及び、プロフィール画像のリンク先、等を含む。なお、以下において、識別情報UID及び個人情報を外部ユーザ情報と総称する場合がある。
 図15にSNS友達情報テーブルTBL32のデータ構造を示す。SNS友達情報テーブルTBL32には複数のレコードが記録されている。1つのレコードは、SNSの友達情報、すなわち、アクション元の識別情報UID、アクション先の識別情報UID、ステータス、及び、申請日時を含む。アクション元(友達申請送信者)は、友達申請を送信したSNS利用者U2であり、アクション先(友達申請受信者)は、友達申請を受信したSNS利用者U2である。ステータスは、友達申請の状態を示し、申請中が「0」、承諾が「1」で表される。図15に示す例では、識別情報UIDが「z0000」のSNS利用者U2が、識別情報UIDが「z0006」のSNS利用者U2に友達申請を送信し、承諾されている。
 利用者の端末装置2は、テンキーやマウス等を含む入力部24、及び、画面を表示するディスプレイ25(表示部の一例)を含む。端末装置2は、通信網NETを介した通信が可能であり、例えば、パーソナルコンピュータ、携帯電話機、スマートフォン、タブレット端末等が該当する。
 管理サーバ1が提供するゴルフ情報アプリケーションサービスは、端末装置2を介してゴルフ利用者U1に提供され、外部管理サーバ3が提供するSNSは、端末装置2を介してSNS利用者U2に提供される。
 地図情報サーバ4は、2つの地点の位置をそれぞれ表す2つの位置情報に基づいて、当該2つの地点の間の経路及び当該経路を移動するのに要する所要時間を、例えば、ダイクストラ法(Dijkstra's Algorithm)、Aスター法等の、公知の演算方法を用いて演算可能な経路所要時間演算部41(演算部の一例)を備える。
 ここで、ある地点の位置情報とは、当該ある地点の住所を表す住所情報、並びに、当該ある地点の住所の経度及び緯度を表す経緯度情報の総称である。但し、位置情報は、経緯度情報のみであってもよい。
 なお、図示は省略するが、地図情報サーバ4は、住所情報と経緯度情報とを関連付けたデータを記憶する記憶部を備えている。また、地図情報サーバ4は、当該記憶部に、経路所要時間演算部41が、当該経路及び所要時間の演算を実行するために必要なデータを記憶させている。ここで、経路及び所要時間の演算を実行するために必要なデータとは、例えば、経路所要時間演算部41がダイクストラ法を用いて2つの地点の間を一方から他方に移動するための経路及び当該経路により当該2つの地点の間を移動するのに要する所要時間を演算する場合、ダイクストラ法の演算において用いられるグラフについてのデータである。ダイクストラ法の演算において用いられるグラフについてのデータとは、例えば、当該グラフを構成する複数のノードの隣接関係(つまり、複数のノードのうち、リンクによって結ばれる2つのノードの組合せ)、及び、隣接関係を有する2つのノードを結ぶリンクに割り当てられる重み、等である。当該グラフにおいて、各ノードは、2つの地点の間を移動する際に経由する中間地点の候補地(例えば、2つの地点の間を車を使って移動する場合には、当該2つの地点の間を移動する際に経由する可能性がある交差点、インターチェンジ等)を表す。また、リンクに割り当てられる重みとは、例えば、隣接関係を有する2つのノードで表される2つの中間地点の候補地の間を移動するための所要時間を表す値(例えば、2つのインターチェンジ間の所要時間)である。経路所要時間演算部41は、このようなグラフに対して、ダイクストラ法等を用いた経路探索の演算を実行することにより、2つの地点間を移動するための経路のうち移動に係る所要時間が最短となる経路と、当該所要時間が最短となる経路で移動する場合の所要時間と、を算出することができる。なお、ダイクストラ法等の演算において用いられるグラフにおいて、リンクに割り当てられる重みは、所要時間を表す値以外の値であってもよい。例えば、リンクに割り当てられる重みとして、2つの中間地点の候補地の間を移動する場合の移動距離を表す値や、交通費を表す値等を割り当ててもよい。例えば、リンクに割り当てられる重みとして、2つの中間地点の候補地の間を移動する場合の移動距離を採用する場合、経路所要時間演算部41は、まず、2つの地点間を移動するための経路のうち移動距離が最少となる経路を、ダイクストラ法等を用いて算出し、その後、当該算出した経路を移動するための所要時間を別途計算すればよい。
 また、地図情報サーバ4は、各種のAPIを実行可能であり、管理サーバ1から、2つの地点の位置をそれぞれ表す2つの位置情報を含む要求を受信すると、受信した2つの位置情報に基づいて、当該2つの地点の間を移動するための経路のうち移動に要する所要時間が最短となる経路と、当該経路を用いて移動する際の所要時間とを演算し、少なくとも当該演算結果のうち所要時間に関する演算結果を含む応答を、管理サーバ1に返信する。
 ゴルフ場サーバ5は、各種のAPIを実行可能であり、管理サーバ1から、パラメータを含む要求を受信すると、所定の情報を含む応答を、管理サーバ1に返信する。
 管理サーバ1は、管理サーバ1を制御する制御プログラムと各種テーブルとが格納された記憶部19を備える。記憶部19が格納する各種テーブルには、ゴルフ利用者情報テーブルTBL11、ゴルフ場情報テーブルTBL12、所要時間情報管理テーブルTBL13、イベント情報管理テーブルTBL14、及び、応答情報管理個別テーブルTBL15が含まれる。
 なお、記憶部19は、これらテーブル以外に、各種表示情報を生成するための設定値等が記録されたテーブルを格納している。
 図16にゴルフ利用者情報テーブルTBL11のデータ構造を示す。ゴルフ利用者情報テーブルTBL11には複数のレコードが記録されている。1つのレコードは、ゴルフ利用者U1を一意に識別する識別情報UID、ゴルフ利用者U1が管理サーバ1に登録された日付を表す登録日、ゴルフ利用者U1の自宅等の住所を表す住所情報(都道府県、市区町村、町名番地)、ゴルフ利用者U1の自宅等の住所の経度及び緯度を表す経緯度情報、並びに、位置情報更新日時、等を含む。なお、レコードは、これら以外の項目を含んでいるものであってもよい。例えば、住所情報として、郵便番号を含むものであってもよい。
 ここで、ゴルフ利用者U1の自宅等とは、ゴルフ利用者U1の自宅または自宅からの最寄駅等、ゴルフ利用者U1の行動または生活の基準となる場所であればどのような場所であってもよい。以下では、ゴルフ利用者U1の自宅等をゴルフ利用者U1の基準地点と称することがある。また、上述のとおり、住所情報及び経緯度情報を位置情報と総称する場合がある。この位置情報は、ゴルフ利用者U1が自ら管理サーバ1に登録し、または更新することができる。位置情報更新日時には、ゴルフ利用者U1の位置情報が登録または更新された日時が記録されている。
 本実施形態において、ゴルフ利用者U1の識別情報UIDは、SNS利用者U2の識別情報UIDと一致する。但し、SNS利用者U2の識別情報UIDとゴルフ利用者U1の識別情報UIDとは必ずしも一致する必要はなく、相違していてもよい。この場合は、ゴルフ利用者情報テーブルTBL11のレコードにSNS利用者U2の識別情報とゴルフ利用者U1の識別情報とを対応づけて記録すればよい。
 ゴルフ利用者情報テーブルTBL11は、上述した情報以外の情報を記録するものであってもよい。例えば、ゴルフ利用者U1のプロフィール画像Pgのリンク先を含んでいてもよい。また、ゴルフ利用者情報テーブルTBL11に記憶すべき情報として、ゴルフ利用者U1の識別情報UID及び位置情報は必須であるが、その他の情報は省略してもよい。さらに、ゴルフ利用者情報テーブルTBL11をキーとなる情報(例えば、識別情報UID)で紐づけた複数のテーブルで構成し、リレーショナルデータベースとしてもよい。
 図17にゴルフ場情報テーブルTBL12のデータ構造を示す。ゴルフ場情報テーブルTBL12には複数のレコードが記録されている。1つのレコードは、ゴルフ場を一意に識別するゴルフ場ID、当該レコードが管理サーバ1に登録された日時を表す登録日時、ゴルフ場の名称を表すゴルフ場名称、及び、各ゴルフ場の位置情報(つまり、各ゴルフ場の住所を表す住所情報、及び、各ゴルフ場の住所の経度及び緯度を表す経緯度情報)が記録されている。なお、レコードは、これら以外の項目を含んでいるものであってもよい。例えば、住所情報として、郵便番号を含むものであってもよい。
 所要時間情報管理テーブルTBL13、イベント情報管理テーブルTBL14、及び、応答情報管理個別テーブルTBL15については、後述する。
 管理サーバ1は、ゴルフ利用者U1の自宅等の位置情報とゴルフ場の位置情報とに基づいて、ゴルフ利用者U1の自宅等からの距離が所定値以下であるゴルフ場を、当該ゴルフ利用者U1の対象ゴルフ場として特定する対象施設特定部11(第1特定部の一例)を備える。なお、本実施例では、自宅等からのゴルフ場までの距離(所要時間)は、自宅等からゴルフ場までの片道の距離(所要時間)を示すものであるが、代わりに、往復の距離(所要時間)、または往復の距離(所要時間)の平均値としての片道の距離(所要時間)を用いてもよい。
 また、管理サーバ1は、ゴルフ利用者U1の自宅等の位置情報、及び、当該ゴルフ利用者U1の対象ゴルフ場の位置情報を、地図情報サーバ4に送信するとともに、送信された位置情報に基づいて地図情報サーバ4が演算した、当該ゴルフ利用者U1の自宅等から当該ゴルフ利用者U1の対象ゴルフ場に移動するのに要する所要時間ΔTを、地図情報サーバ4から取得する演算結果取得部14(第2取得部の一例)を備える。
 管理サーバ1は、所定のゴルフ利用者U1aの端末装置2からの要求に応じて、演算結果取得部14が取得した所要時間ΔTに基づき、所定のゴルフ利用者U1aの対象ゴルフ場のうち、所定のゴルフ利用者U1aの自宅等からの所要時間ΔTが所定時間ΔTth以下のゴルフ場であり、且つ、所定のゴルフ利用者U1aの端末装置2において選択された他のゴルフ利用者U1bの対象ゴルフ場のうち、当該他のゴルフ利用者U1bの自宅等からの所要時間ΔTが所定時間ΔTth以下のゴルフ場を、所定のゴルフ利用者U1a及び他のゴルフ利用者U1bの共通ゴルフ場として特定する共通施設特定部12(第2特定部の一例)を備える。
 管理サーバ1は、共通施設特定部12が特定した所定のゴルフ利用者U1a及び他のゴルフ利用者U1bの共通ゴルフ場を表す情報を含む表示情報を生成する表示情報生成部16と、表示情報生成部16が生成した表示情報を所定のゴルフ利用者U1aの端末装置2に送信する制御を行う送信制御部18とを備える。
 なお、各ゴルフ利用者U1と、各ゴルフ利用者U1の対象ゴルフ場とは、図18に示す所要時間情報管理テーブルTBL13に関連付けて記憶されている。
 図18に所要時間情報管理テーブルTBL13のデータ構造を示す。所要時間情報管理テーブルTBL13には複数のレコードが記録されている。1つのレコードは、ゴルフ利用者U1を一意に識別する識別情報UID、当該ゴルフ利用者U1の対象ゴルフ場のゴルフ場ID、ゴルフ利用者U1の自宅等と対象ゴルフ場との間の距離を表す距離情報、及び、ゴルフ利用者U1の自宅等と対象ゴルフ場との間を移動するのに要する所要時間ΔTを表す所要時間情報を含む。なお、レコードは、これら以外の項目を含んでいるものであってもよい。また、距離情報は含まれていなくてもよい。
 また、表示情報生成部16は、所定のゴルフ利用者U1aの自宅等から共通ゴルフ場まで移動するのに要する所要時間ΔTと、他のゴルフ利用者U1bの自宅等から共通ゴルフ場まで移動するのに要する所要時間ΔTと、に基づいて、所定のゴルフ利用者U1aの端末装置2のディスプレイ25に表示される画面における、共通ゴルフ場を表す情報の表示位置を決定し、当該決定結果に基づいて、共通ゴルフ場を表す情報を含む表示情報を生成する。
 管理サーバ1は、ゴルフ利用者U1の識別情報UIDに基づいて、外部管理サーバ3から友達情報及び外部ユーザ情報を取得可能な友達情報取得部15(第3取得部の一例)を備える。
 また、管理サーバ1は、所定のゴルフ利用者U1aの識別情報UIDと友達情報取得部15が取得した友達情報とに基づいて、所定のゴルフ利用者U1aと特定の関係を有するSNS利用者U2のうちゴルフ利用者U1に該当する者、すなわち、所定のゴルフ利用者U1aの直接ゴルフ友達Ugと、所定のゴルフ利用者U1aの直接ゴルフ友達Ugと特定の関係を有するSNS利用者U2のうちゴルフ利用者U1に該当する者、すなわち、所定のゴルフ利用者U1aの間接ゴルフ友達Uggとを、所定のゴルフ利用者U1aの対象利用者Utgとして特定可能な利用者特定部13を備える。
 表示情報生成部16は、利用者特定部13の特定結果と友達情報取得部15が取得した外部ユーザ情報とに基づいて、対象利用者Utgを表す情報を含む表示情報を生成する。そして、送信制御部18は、表示情報生成部16が生成した表示情報を所定のゴルフ利用者U1aの端末装置2に送信する制御を行う。
 所定のゴルフ利用者U1aの端末装置2のディスプレイ25は、表示情報生成部16が生成した表示情報に基づく画面を表示することができる。
<2.ハードウェア構成>
 図3に管理サーバの構成を示す。この図に示すように、管理サーバ1は、装置全体を制御するCPU(Central Processing Unit)30、CPU30の作業領域として機能するRAM(Random Access Memory)31、ブートプログラム等を記憶したROM(Read Only Memory)32、各種のプログラムやデータを記憶するハードディスク33、通信網NETを介して外部の装置と通信を行う通信インターフェース36、及び、コンパクトディスク等の情報記録媒体を読み取る読取装置37を備える。
 ハードディスク33は、上述した記憶部19に相当し、管理サーバ1を制御する制御プログラムと、ゴルフ利用者情報テーブルTBL11等の各種テーブルと、を格納する。なお、管理サーバ1は、これら以外に、キーボードやマウス等を含む入力部、画像を表示するディスプレイを備えるものであってもよい。
 上述した対象施設特定部11、共通施設特定部12、利用者特定部13、演算結果取得部14、友達情報取得部15、及び、表示情報生成部16は、CPU30が制御プログラムを実行し、CPU30がその制御プログラムに従って機能することにより実現される機能ブロックである。
 外部管理サーバ3は、管理サーバ1と同様に構成されている。但し、ハードディスク33には、SNS利用者情報テーブルTBL31と、SNS友達情報テーブルTBL32とが格納される。
 地図情報サーバ4は、管理サーバ1と同様に構成されている。但し、ハードディスク33には、2つの地点の間を移動するための経路及び2つの地点の間を移動するのに要する所要時間を演算するために必要な情報を記憶している。
 ゴルフ場サーバ5は、管理サーバ1と同様に構成されている。但し、ハードディスク33には、ゴルフ場の予約状況を管理する各種情報を記憶している。
 図4に端末装置2の構成を示す。端末装置2は、装置全体を制御するCPU20、CPU20の作業領域として機能するRAM21、ブートプログラム等を記憶したROM22、各種のプログラムやデータを記憶する記憶装置23、マウス及びキーボード等の入力部24、画像を表示するディスプレイ25、及び通信網NETを介して外部の装置と通信を行う通信インターフェース26を備える。
<3.ゴルフ情報アプリケーションサービスの概要>
 図5乃至図13を参照しつつ、管理サーバ1が提供するゴルフ情報アプリケーションサービスについて説明する。
 管理サーバ1は、ゴルフ利用者U1の各々に対して、各種ゴルフに関する情報が集約されたマイページを提供する。
 本実施形態において、マイページは、ゴルフ友達一覧画面G0(フレンドマップ)、ゴルフイベント設定画面G1、ゴルフ友達選択画面G2、ゴルフイベント参加可否応答画面G3、ゴルフイベント管理画面G4、お勧めゴルフ場一覧画面G5、ゴルフ場予約状況確認画面G6、ゴルフ場予約画面G7、及び、住所登録画面G8を含む。
 以下、各種画面について説明する。
 図5は、所定のゴルフ利用者U1aの端末装置2のディスプレイ25に表示されるマイページのうち、ゴルフ友達一覧画面G0(フレンドマップ)の一例である。所定のゴルフ利用者U1aがゴルフ情報アプリケーションサービスにログインすると、所定のゴルフ利用者U1aの端末装置2のディスプレイ25には、ゴルフ友達一覧画面G0が表示される。
 なお、所定のゴルフ利用者U1aの端末装置2のディスプレイ25にゴルフ友達一覧画面G0を表示させる「フレンドマップ表示処理」の詳細については後述する。
 図5に示すように、ゴルフ友達一覧画面G0には、領域Y0に、所定のゴルフ利用者U1aのプロフィール画像Pg[U1a]、ゴルフに誘うボタンB1、及び、イベント管理ボタンB2が表示されている。
 また、ゴルフ友達一覧画面G0には、領域Y1に、所定のゴルフ利用者U1aの直接ゴルフ友達Ugのプロフィール画像Pg(直接ゴルフ友達Ugを表す情報)が表示され、領域Y2に、所定のゴルフ利用者U1aの間接ゴルフ友達Uggのプロフィール画像Pg(間接ゴルフ友達Uggを表す情報)が表示されている。
 このように、ゴルフ友達一覧画面G0には、所定のゴルフ利用者U1aの直接ゴルフ友達Ugのプロフィール画像Pgと、所定のゴルフ利用者U1aの間接ゴルフ友達Uggのプロフィール画像Pgとが異なる領域Y1及びY2に表示されるので、所定のゴルフ利用者U1aは、階層的な友達関係を容易に把握することが可能となる。
 なお、所定のゴルフ利用者U1aは、ログアウトボタン(図示省略)をクリックする等して、ゴルフ情報アプリケーションサービスからログアウトすることができる。
 所定のゴルフ利用者U1aのマイページのゴルフ友達一覧画面G0においてゴルフに誘うボタンB1がクリックされた場合、端末装置2は、管理サーバ1に対して、ゴルフイベント設定画面G1を表示させる旨の要求を送信する。
 管理サーバ1がゴルフイベント設定画面G1を表示させる旨の要求を受信すると、管理サーバ1のCPU30は、所定のゴルフ利用者U1aの端末装置2のCPU20がディスプレイ25にゴルフイベント設定画面G1を表示させるために必要な情報、すなわち、ゴルフイベント設定画面G1の表示情報を生成する。そして、管理サーバ1は、当該表示情報を含む応答を、所定のゴルフ利用者U1aの端末装置2に送信する。
 所定のゴルフ利用者U1aの端末装置2が、ゴルフイベント設定画面G1の表示情報を受信すると、端末装置2のCPU20は、ディスプレイ25に、図6に例示するゴルフイベント設定画面G1を、例えばポップアップで表示させる。なお、本実施形態は、ゴルフイベント設定画面G1を、ポップアップで表示するものであるが、ゴルフ友達一覧画面G0をゴルフイベント設定画面G1に切り替えることで、ゴルフイベント設定画面G1を表示するものであってもよい。
 図6に例示するように、ゴルフイベント設定画面G1は、プルダウンPD11~PD13、カレンダーボタンB11~B13、誘う人を選択するボタンB14、並びに、ゴルフイベント設定画面G1を閉じるためのキャンセルボタンB15及び閉じるボタンB16を含む。
 所定のゴルフ利用者U1aは、プルダウンPD11~PD13を用いて、ゴルフに行く候補日(第1候補日~第3候補日)を選択することができる。また、カレンダーボタンB11~B13がクリックされた場合、所定のゴルフ利用者U1aのディスプレイ25には、カレンダー(図示省略)が表示される。所定のゴルフ利用者U1aは、当該カレンダーを用いて、ゴルフに行く候補日を選択することができる。なお、本実施形態に係るゴルフイベント設定画面G1は、ゴルフに行く候補日を3つまで選択することができる画面であるが、少なくとも1以上の候補日を選択することができる画面であればよい。また、図6は、ゴルフイベント設定画面G1の一例であり、ゴルフイベント設定画面G1は、日程を入力することのできる画面であればよい。例えば、ゴルフイベント設定画面G1は、プルダウンPD11~PD13またはカレンダーボタンB11~B31のうち一方が表示されるものであってもよい。
 ゴルフイベント設定画面G1において、少なくとも第1候補日が選択された状態で、誘う人を選択するボタンB14がクリックされると、所定のゴルフ利用者U1aの端末装置2は、管理サーバ1に対して、選択された候補日を表す情報とともに、ゴルフ友達選択画面G2を表示させる旨の要求を送信する。管理サーバ1がゴルフ友達選択画面G2を表示させる旨の要求を受信すると、管理サーバ1のCPU30は、所定のゴルフ利用者U1aの端末装置2のCPU20がディスプレイ25にゴルフ友達選択画面G2を表示させるために必要な情報、すなわち、ゴルフ友達選択画面G2の表示情報を生成する。そして、管理サーバ1は、当該表示情報を含む応答を、所定のゴルフ利用者U1aの端末装置2に送信する。
 所定のゴルフ利用者U1aの端末装置2が、ゴルフ友達選択画面G2の表示情報を受信すると、端末装置2のCPU20は、ディスプレイ25に、図7に例示するゴルフ友達選択画面G2を表示させる。
 図7に例示するように、ゴルフ友達選択画面G2は、お勧めゴルフ場の確認ボタンB21、メッセージ送信ボタンB23、前の画面であるゴルフイベント設定画面G1に戻るための戻るボタンB22、並びに、ゴルフ友達選択画面G2を閉じるためのキャンセルボタンB24及び閉じるボタンB25を含む。
 また、ゴルフ友達選択画面G2の表示エリアA21には、所定のゴルフ利用者U1aの対象利用者Utgを表す情報が一覧表示される。ここで、対象利用者Utgを表す情報とは、例えば、対象利用者Utgのプロフィール画像Pg及び氏名である。また、この表示エリアA21には、対象利用者Utgを選択するためのチェックボックスCB21が、各対象利用者Utgを表す情報(例えば、各対象利用者Utgのプロフィール画像Pg)と1対1に対応するように設けられている。
 図7は、「山田 洋子」、「中田 浩志」、「田中 裕子」の3名の対象利用者Utgが、ゴルフに誘う対象として選択されている状態を例示している。
 ゴルフ友達選択画面G2において、少なくとも1名以上の対象利用者Utgが選択された状態(つまり、チェックボックスCB21のうち少なくとも1つがチェックされた状態)で、お勧めゴルフ場の確認ボタンB21がクリックされると、所定のゴルフ利用者U1aの端末装置2は、管理サーバ1に対して、所定のゴルフ利用者U1aが選択した対象利用者Utgについての情報(例えば、当該対象利用者Utgの識別情報UID)とともに、お勧めゴルフ場一覧画面G5を表示させる旨の要求を送信する。管理サーバ1がお勧めゴルフ場一覧画面G5を表示させる旨の要求を受信すると、管理サーバ1のCPU30は、所定のゴルフ利用者U1aの端末装置2のCPU20がディスプレイ25にお勧めゴルフ場一覧画面G5を表示させるために必要な情報、すなわち、お勧めゴルフ場一覧画面G5の表示情報を生成する。そして、管理サーバ1は、当該表示情報を含む応答を、所定のゴルフ利用者U1aの端末装置2に送信する。
 所定のゴルフ利用者U1aの端末装置2が、お勧めゴルフ場一覧画面G5の表示情報を受信すると、端末装置2のCPU20は、ディスプレイ25に、図10に例示するお勧めゴルフ場一覧画面G5を表示させる。
 なお、お勧めゴルフ場一覧画面G5の表示情報を生成する処理、及び、お勧めゴルフ場一覧画面G5の内容については、後述する。
 図7に示すゴルフ友達選択画面G2において、少なくとも1名以上の対象利用者Utgが選択された状態で、メッセージ送信ボタンB23がクリックされると、選択された対象利用者Utgをゴルフ(ゴルフイベント)に誘う処理が実行される。
 具体的には、メッセージ送信ボタンB23がクリックされると、ゴルフイベントに誘うメッセージを送信する旨の要求が、所定のゴルフ利用者U1aの端末装置2から管理サーバ1に送信される。ここで、ゴルフイベントに誘うメッセージとは、所定のゴルフ利用者U1aが、ゴルフ友達選択画面G2において当該所定のゴルフ利用者U1aが選択した対象利用者Utgを、ゴルフイベントに誘っていることを表すメッセージである。また、ゴルフイベントに誘うメッセージを送信する旨の要求とは、ゴルフ友達選択画面G2において所定のゴルフ利用者U1aが選択した対象利用者Utgに対して、ゴルフイベントに誘うメッセージを送信することを管理サーバ1に対して依頼する旨の要求である。
 管理サーバ1が当該要求を受信すると、管理サーバ1のCPU30は、端末装置2のCPU20がディスプレイ25にゴルフイベント参加可否応答画面G3を表示させるために必要な情報、すなわち、ゴルフイベント参加可否応答画面G3の表示情報を生成する。そして、管理サーバ1は、生成された表示情報を、所定のゴルフ利用者U1aが選択した対象利用者Utgのそれぞれの端末装置2に対して送信する。
 なお、管理サーバ1が、ゴルフイベントに誘うメッセージを送信する旨の要求を受信すると、管理サーバ1のCPU30は、当該要求に含まれる情報に基づいて、イベント情報管理テーブルTBL14(図19)にレコードを追加するともに、当該要求に含まれるゴルフイベントに誘うメッセージの表すゴルフイベントに対応する応答情報管理個別テーブルTBL15(図20)を生成する。詳細は後述するが、応答情報管理個別テーブルTBL15は、ゴルフイベントと1対1に対応して生成されるテーブルである。
 図19にイベント情報管理テーブルTBL14のデータ構造を示す。イベント情報管理テーブルTBL14には複数のレコードが記録されている。1つのレコードは、ゴルフイベントを一意に識別するイベントID、ゴルフイベントに誘うメッセージを送信したゴルフ利用者U1の識別情報UIDを表すイベント登録者UID、レコードの追加された日時を表すイベント登録日時、及び、ゴルフイベント設定画面G1において当該ゴルフ利用者U1が入力した候補日(第1候補日、第2候補日、及び、第3候補日)を含む。なお、レコードは、これら以外の項目を含むものであってもよい。ゴルフイベント設定画面G1において当該ゴルフ利用者U1が第2候補日(または第3候補日)を入力しなかった場合、第2候補日(または第3候補日)は空欄に設定される。
 所定のゴルフ利用者U1aからゴルフイベントに誘われている対象利用者Utgが、ゴルフ情報アプリケーションサービスにログインして、当該対象利用者Utgの端末装置2が、ゴルフイベント参加可否応答画面G3の表示情報を受信すると、当該対象利用者Utgの端末装置2のCPU20は、ディスプレイ25に、図8に例示するゴルフイベント参加可否応答画面G3を表示される。
 図8に例示するように、ゴルフイベント参加可否応答画面G3は、「小波一夫さんからゴルフの誘いが届きました!」等の所定のゴルフ利用者U1aからゴルフイベントに誘われていることを示す表示の他に、ラジオボタンRB31及びRB32、チェックボックスCB31~CB33、送信ボタンB31、並びに、ゴルフイベント参加可否応答画面G3を閉じるためのキャンセルボタンB32及び閉じるボタンB33を含む。
 所定のゴルフ利用者U1aからゴルフイベントに誘われている対象利用者Utgは、ラジオボタンRB31またはRB32のいずれかを選択することで、所定のゴルフ利用者U1aが提案している候補日にゴルフに行くことができるか否かを選択することができる。また、当該対象利用者Utgは、チェックボックスCB31~CB33にチェックを入れることで、所定のゴルフ利用者U1aが提案している第1乃至第3候補日のうちいずれの候補日にゴルフに行くことができるかを選択することができる。
 このように、本実施形態では、ゴルフイベントに誘うメッセージは、ゴルフイベント参加可否応答画面G3を介して対象利用者Utgに通知されるが、Eメールで通知されるように構成してもよいし、管理サーバ1から外部管理サーバ3に送信され、外部管理サーバ3が管理するSNSに、当該ゴルフイベントに誘うメッセージが通知された対象利用者UtgがSNS利用者U2としてログインすると、ゴルフ情報アプリケーションサービスにおいてゴルフイベントに誘われている旨のメッセージが表示されるように構成してもよい。
 ラジオボタンRB31またはRB32のいずれかが選択された状態(ラジオボタンRB31が選択されている場合には、チェックボックスCB31~CB33の1つ以上が選択された状態)で、送信ボタンB31がクリックされると、ゴルフイベントに誘われている対象利用者Utgがゴルフイベント参加可否応答画面G3において選択した内容を含む応答が、当該対象利用者Utgの端末装置2から管理サーバ1に送信される。
 管理サーバ1が当該応答を受信すると、管理サーバ1のCPU30は、当該応答に含まれる情報に基づいて、応答情報管理個別テーブルTBL15を更新する。
 図20に応答情報管理個別テーブルTBL15のデータ構造を示す。管理サーバ1のCPU30は、管理サーバ1がゴルフイベントに誘うメッセージを含む要求を受信した場合に、当該メッセージの表すゴルフイベントに対応して1の応答情報管理個別テーブルTBL15を生成する。すなわち、応答情報管理個別テーブルTBL15は、ゴルフイベント(イベントID)と1対1に対応して、生成される。
 応答情報管理個別テーブルTBL15には、ゴルフイベントに誘われているゴルフ利用者U1と1対1に対応する1以上のレコードが記録されている。1つのレコードは、当該ゴルフイベントに誘われているゴルフ利用者U1の識別情報UIDを表す招待対象UID、当該ゴルフ利用者U1からの応答を受信した日時を示す応答日時、当該ゴルフ利用者U1がゴルフイベント参加可否応答画面G3において入力した内容を表す第1~第3候補日参加可否情報を含む。なお、レコードは、これら以外の項目を含んでいるものであってもよい。
 例えば、ゴルフイベントに誘われたゴルフ利用者U1が、ゴルフイベント参加可否応答画面G3において、ラジオボタンRB31(参加する)を選択して、チェックボックスCB31~CB33により参加できる候補日を回答した場合、第1~第3候補日参加可否情報のうち、参加できる候補日に対応するフィールドに「1」が記録される。また、ラジオボタンRB32(参加しない/参加できない)を選択した場合、第1~第3候補日参加可否情報の全てに「0」が記録される。ゴルフイベントに誘われたゴルフ利用者U1からの回答が無い場合、応答日時及び第1~第3候補日参加可否情報は空欄に設定される。
 所定のゴルフ利用者U1aの端末装置2のディスプレイ25に表示されたゴルフ友達一覧画面G0において、イベント管理ボタンB2がクリックされると、所定のゴルフ利用者U1aの端末装置2は、管理サーバ1に対して、ゴルフイベント管理画面G4を表示させる旨の要求を送信する。
 管理サーバ1が当該要求を受信すると、管理サーバ1のCPU30は、所定のゴルフ利用者U1aの端末装置2のCPU20がディスプレイ25にゴルフイベント管理画面G4を表示させるために必要な情報である、ゴルフイベント管理画面G4の表示情報を生成する。
 具体的には、管理サーバ1のCPU30は、イベント情報管理テーブルTBL14にアクセスして、所定のゴルフ利用者U1aの識別情報UIDがイベント登録者UIDに記録されているレコードを抽出し、抽出したレコードに記録されている、イベントID、イベント登録日時、及び、第1乃至第3候補日を取得する。また、管理サーバ1のCPU30は、当該ゴルフイベント(イベント情報管理テーブルTBL14から取得したイベントIDに対応するゴルフイベント)に対応する応答情報管理個別テーブルTBL15にアクセスして、当該テーブルの各レコードに記録されている招待対象UID、応答日時、第1乃至第3候補日参加可否情報を取得する。次に、管理サーバ1のCPU30は、取得した情報に基づいて、ゴルフイベント管理画面G4の表示情報を生成する。そして、管理サーバ1は、生成された表示情報を含む応答を、所定のゴルフ利用者U1aの端末装置2に対して送信する。
 所定のゴルフ利用者U1aの端末装置2が、ゴルフイベント管理画面G4の表示情報を受信すると、端末装置2のCPU20は、ディスプレイ25に、図9に例示するゴルフイベント管理画面G4を表示させる。
 図9に示すように、ゴルフイベント管理画面G4は、お勧めゴルフ場の確認ボタンB41~B43、並びに、ゴルフイベント管理画面G4を閉じるためのキャンセルボタンB44及び閉じるボタンB45を含む。
 また、ゴルフイベント管理画面G4の表示エリアA41には、ゴルフイベントの候補日が表示され、表示エリアA42には、ゴルフイベントに誘われた対象利用者Utgからの応答内容、つまり、各対象利用者Utgが各候補日に参加できるか否かについての情報が表示されている。この例では、参加可能であることが「〇」で表され、参加不可能であることが「×」で表されている。例えば、第2候補日には、「山田 洋子」及び「田中 裕子」は参加可能であるが、「中田 浩志」は参加できないことを示している。
 各候補日に対応するお勧めゴルフ場の確認ボタンB41~B43がクリックされると、所定のゴルフ利用者U1aの端末装置2は、管理サーバ1に対して、当該候補日にゴルフイベントに参加可能な対象利用者Utgを識別するための情報(例えば、当該対象利用者Utgの識別情報UID)とともに、お勧めゴルフ場一覧画面G5を表示させる旨の要求を送信する。
 管理サーバ1がお勧めゴルフ場一覧画面G5を表示させる旨の要求を受信すると、管理サーバ1のCPU30は、「お勧めゴルフ場特定処理」を実行する。
 具体的には、管理サーバ1のCPU30は、ゴルフイベントへの参加候補者の共通ゴルフ場を特定する。次に、CPU30は、特定した共通ゴルフ場のお勧めの程度を決定する。その後、CPU30は、決定したお勧めの程度に基づいて、お勧めゴルフ場一覧画面G5の表示情報を生成し、当該表示情報を含む応答を、所定のゴルフ利用者U1aの端末装置2に送信する制御を行う。この、「おすすめゴルフ場特定処理」の詳細については後述する。
 上述のとおり、共通ゴルフ場とは、各参加候補者の自宅等からの距離が所定値以下のゴルフ場(各参加候補者の対象ゴルフ場)であり、且つ、各参加候補者の自宅等からの所要時間ΔTが所定時間ΔTth以下のゴルフ場である。なお、本実施例では、自宅等からの対象ゴルフ場までの距離(所要時間)は、自宅等から対象ゴルフ場までの片道の距離(所要時間)を示すものであるが、代わりに、往復の距離(所要時間)、または往復の距離(所要時間)の平均値としての片道の距離(所要時間)を用いてもよい。
 また、ゴルフイベントへの参加候補者とは、ゴルフ友達選択画面G2において所定のゴルフ利用者U1aが選択した対象利用者Utg(または、ゴルフイベント管理画面G4においてクリックされたお勧めゴルフ場の確認ボタンB41~B43に対応する候補日に、ゴルフイベントに参加可能な対象利用者Utg)と、所定のゴルフ利用者U1aとからなる、2名以上のゴルフ利用者U1である。また、上述した「他のゴルフ利用者U1b」とは、ゴルフイベントへの参加候補者のうち、所定のゴルフ利用者U1aを除くゴルフ利用者U1である。より具体的には、ゴルフ友達選択画面G2(図7)の場合には、お勧めゴルフ場の確認ボタンB21がクリックされると、当該画面のチェックボックスCB21で選択された対象利用者Utgが、他のゴルフ利用者U1bとして特定される。また、ゴルフイベント管理画面G4(図9)の場合には、お勧めゴルフ場の確認ボタンB41~B43のいずれかがクリックされると、クリックされたお勧めゴルフ場の確認ボタンB41~B43に対応する候補日にゴルフイベントに参加可能な対象利用者Utgが、他のゴルフ利用者U1bとして特定される。
 また、本実施形態において、ゴルフ場のお勧めの程度とは、ゴルフイベントへの参加候補者の自宅等から当該ゴルフイベントが開催されるゴルフ場まで移動するのに要する所要時間ΔTのうち、最長の時間である最長所要時間ΔTmaxに応じたお勧めの程度である。すなわち、本実施形態では、共通ゴルフ場への最長所要時間ΔTmaxが短い程、当該共通ゴルフ場のお勧めの程度が高くなる。そして、後述するお勧めゴルフ場一覧画面G5では、お勧めの程度に基づいて、当該画面における共通ゴルフ場を表す情報の表示位置が決定される。
 なお、本実施形態では、ゴルフ場のお勧めの程度は、ゴルフイベントへの参加候補者の自宅等から共通ゴルフ場への所要時間ΔTの最長値である最長所要時間ΔTmaxに基づいて定められる程度であるが、本発明はこのような態様に限定されるものではない。
 例えば、ゴルフ場のお勧めの程度は、参加候補者の自宅等から共通ゴルフ場への所要時間ΔTの合計値に基づいて定められるものであってもよい。この場合、所要時間ΔTの合計値が小さくなるほど、ゴルフ場のお勧めの程度が高くなることとしてもよい。
 また、ゴルフ場のお勧めの程度は、当該ゴルフ場の利用料金に基づいて定められるものであってもよい。この場合は、ゴルフ場情報テーブルTBL12に、各ゴルフ場の利用料金を記憶させておくことが好ましい。
 所定のゴルフ利用者U1aの端末装置2がお勧めゴルフ場一覧画面G5の表示情報を受信すると、端末装置2のCPU20は、ディスプレイ25に、図10に例示するお勧めゴルフ場一覧画面G5を表示させる。
 図10に例示するように、お勧めゴルフ場一覧画面G5は、ゴルフ場の予約ボタンB51、前の画面(ゴルフ友達選択画面G2、または、ゴルフイベント管理画面G4)に戻るための戻るボタンB52、並びに、お勧めゴルフ場一覧画面G5を閉じるためのキャンセルボタンB53及び閉じるボタンB54を含む。
 また、お勧めゴルフ場一覧画面G5の表示エリアA51には、「おすすめゴルフ場特定処理」において特定された、ゴルフイベントへの参加候補者の共通ゴルフ場を表す情報(例えば、共通ゴルフ場の名称、共通ゴルフ場が提供するウェブサイトへのリンク等)が、お勧めの程度が高い順番(つまり、最長所要時間ΔTmaxの短い順番)に一覧表示されるとともに、表示された共通ゴルフ場の中から1の共通ゴルフ場を選択するためのラジオボタンRB51が、各共通ゴルフ場と1対1に対応するように設けられている。すなわち、お勧めゴルフ場一覧画面G5では、お勧めの程度が高い(最長所要時間ΔTmaxが短い)共通ゴルフ場ほど、表示エリアA51の上部に表示される。
 また、表示エリアA51には、共通ゴルフ場毎に、ゴルフイベントへの参加候補者の自宅から共通ゴルフ場へ移動するのに要する所要時間ΔTが表示されている。
 お勧めゴルフ場一覧画面G5において、ラジオボタンRB51が選択された状態でゴルフ場の予約ボタンB51がクリックされると、所定のゴルフ利用者U1aの端末装置2は、管理サーバ1に対して、選択されたラジオボタンRB51に対応するゴルフ場を識別するための情報(例えば、当該ゴルフ場のゴルフ場ID)とともに、ゴルフ場予約状況確認画面G6を表示させる旨の要求を送信する。
 管理サーバ1がゴルフ場予約状況確認画面G6を表示させる旨の要求を受信すると、管理サーバ1は、所定のゴルフ利用者U1aの端末装置2のCPU20がディスプレイ25にゴルフ場予約状況確認画面G6を表示させるために必要な情報、すなわち、ゴルフ場予約状況確認画面G6の表示情報を生成する。
 具体的には、管理サーバ1は、まず、所定のゴルフ利用者U1aの端末装置2から送信されたゴルフ場を識別するための情報(例えば、ゴルフ場ID)に対応するゴルフ場のゴルフ場サーバ5に対して、当該ゴルフ場の予約状況についての問い合わせ(予約状況についての情報の送信要求)を送信する。ゴルフ場サーバ5は、当該要求を受信すると、当該ゴルフ場の予約状況についての情報を含む応答を、管理サーバ1に返信する。管理サーバ1がゴルフ場サーバ5からの応答を受信すると、管理サーバ1のCPU30は、当該応答に含まれるゴルフ場の予約状況についての情報に基づいて、ゴルフ場予約状況確認画面G6(図11)の表示情報を生成する。そして、管理サーバ1は、当該表示情報を含む応答を、所定のゴルフ利用者U1aの端末装置2に送信する。
 所定のゴルフ利用者U1aの端末装置2がゴルフ場予約状況確認画面G6の表示情報を受信すると、端末装置2のCPU20は、ディスプレイ25に、図11に例示するゴルフ場予約状況確認画面G6を表示させる。
 図11に示すように、ゴルフ場予約状況確認画面G6は、前の画面(お勧めゴルフ場一覧画面G5)に戻るための戻るボタンB64、並びに、ゴルフ場予約状況確認画面G6を閉じるためのキャンセルボタンB65及び閉じるボタンB66を含む。
 また、ゴルフ場予約状況確認画面G6の表示エリアA61には、所定のゴルフ利用者U1aがお勧めゴルフ場一覧画面G5において選択したゴルフ場の名称が表示され、表示エリアA61の下部には、当該ゴルフ場の予約状況を表す表A62が表示されている。表A62には、当該ゴルフ場が提供する各種サービスプランの名称(プラン名)及び各種サービスプランの料金が表示されるとともに、各種サービスプランの日付毎の予約状況(混み具合)がリンクB61の形状により表されている。また、ボタンB62またはB63をクリックすることにより、表A62が表示する日付の範囲を変更することができる。
 リンクB61がクリックされると、所定のゴルフ利用者U1aの端末装置2は、管理サーバ1に対して、クリックされたリンクB61に対応する日付及びプラン名を示す情報とともに、ゴルフ場予約画面G7を表示させる旨の要求を送信する。
 管理サーバ1は、ゴルフ場予約画面G7を表示させる旨の要求を受信すると、ゴルフ場予約画面G7で表示すべき各種情報をゴルフ場サーバ5から取得する。そして、管理サーバ1のCPU30は、当該ゴルフ場サーバ5から取得した情報に基づいて、所定のゴルフ利用者U1aの端末装置2のCPU20がディスプレイ25にゴルフ場予約画面G7(図12)を表示させるために必要な情報、すなわち、ゴルフ場予約画面G7の表示情報を生成する。そして、管理サーバ1は、当該表示情報を含む応答を、所定のゴルフ利用者U1aの端末装置2に送信する。
 所定のゴルフ利用者U1aの端末装置2がゴルフ場予約画面G7の表示情報を受信すると、端末装置2のCPU20は、ディスプレイ25に、図12に例示するゴルフ場予約画面G7を表示させる。
 図12に示すように、ゴルフ場予約画面G7は、予約ボタンB72、前の画面(ゴルフ場予約状況確認画面G6)に戻るための戻るボタンB71、並びに、ゴルフ場予約画面G7を閉じるためのキャンセルボタンB73及び閉じるボタンB74を含む。
 ゴルフ場予約画面G7の表示エリアA71には、所定のゴルフ利用者U1aがお勧めゴルフ場一覧画面G5で選択したゴルフ場の名称が表示され、表示エリアA72には、所定のゴルフ利用者U1aがゴルフ場予約状況確認画面G6で選択した日付が表示されている。
 また、表示エリアA72の下部には、プレー開始時間及びプレー人数を選択するための複数のラジオボタンRB71が設けられた表A73が表示されている。所定のゴルフ利用者U1aは、複数のラジオボタンRB71から1のラジオボタンRB71を選択することで、予約すべきプレー開始時間及びプレー人数を入力(選択)することができる。
 ラジオボタンRB71が選択された状態で、予約ボタンB72がクリックされると、確認ボタンが設けられた予約確認画面(図示省略)が表示される。この予約確認画面には、ゴルフ場予約画面G7で入力した予約内容が表示される。予約確認画面において、確認ボタンがクリックされると、所定のゴルフ利用者U1aの端末装置2は、当該予約確認画面に表示された予約内容を表す情報を、管理サーバ1に対して送信する。管理サーバ1は、予約内容を表す情報を受信すると、当該予約内容を表す情報をゴルフ場サーバ5に送信する。ゴルフ場サーバ5は、管理サーバ1から送信された予約内容を表す情報に基づいて、ゴルフ場の予約処理を実行する。
 図5に示すゴルフ友達一覧画面G0において所定のゴルフ利用者U1aのプロフィール画像Pg[U1a]がクリックされた場合、端末装置2は、管理サーバ1に対して、住所登録画面G8を表示させる旨の要求を送信する。管理サーバ1が住所登録画面G8を表示させる旨の要求を受信すると、管理サーバ1のCPU30は、端末装置2のCPU20がディスプレイ25に住所登録画面G8を表示させるために必要な情報(住所登録画面G8の表示情報)を生成し、当該表示情報を含む応答を、所定のゴルフ利用者U1aの端末装置2に送信する。
 所定のゴルフ利用者U1aの端末装置2が住所登録画面G8の表示情報を受信すると、端末装置2のCPU20は、ディスプレイ25に、図13に例示する住所登録画面G8を、例えばポップアップで表示させる。なお、本実施形態は、住所登録画面G8を、ポップアップで表示するが、ゴルフ友達一覧画面G0を住所登録画面G8に切り替えることで表示させてもよい。また、本実施形態では所定のゴルフ利用者U1aのプロフィール画像Pg[U1a]がクリックされると、住所登録画面G8の表示要求が端末装置2から管理サーバ1に送信されることとしているが、所定のゴルフ利用者U1aのプロフィール画像Pg[U1a]がクリックされると、所定のゴルフ利用者U1aのプロフィール情報の表示要求を端末装置2から管理サーバ1に行い、所定のゴルフ利用者U1aのプロフィール情報が端末装置2に表示され、そのプロフィール情報表示画面(図示省略)中に住所登録画面G8を表示させるための住所登録ボタン(図示省略)を設けることとしてもよい。この場合、当該住所登録ボタンが押下されると、端末装置2から住所登録画面G8を表示させる旨の要求が管理サーバ1に送信され、管理サーバ1のCPU30は住所登録画面G8の表示情報を生成し、当該表示情報を含む応答を端末装置2に送信する。
 図13に例示するように、住所登録画面G8は、プルダウンPD81~PD83、地図表示ボタンB81、決定ボタンB82、並びに、住所登録画面G8を閉じるためのキャンセルボタンB83及び閉じるボタンB84を含む。
 所定のゴルフ利用者U1aは、プルダウンPD81~PD83を用いて、所定のゴルフ利用者U1aの自宅等の住所を入力することができる。また、地図表示ボタンB81がクリックされた場合、所定のゴルフ利用者U1aのディスプレイ25には、地図を表した画面(図示省略)が表示される。所定のゴルフ利用者U1aは、当該地図を表した画面を用いて、所定のゴルフ利用者U1aの自宅等の住所を入力することもできる。
 自宅等の住所が入力された状態で、決定ボタンB82がクリックされると、所定のゴルフ利用者U1aの端末装置2は、入力された住所を含む情報を、管理サーバ1に送信する。
 管理サーバ1は、所定のゴルフ利用者U1aの端末装置2から送信された所定のゴルフ利用者U1aの自宅等の住所を含む情報を受信すると、当該住所に対応する経緯度情報の送信要求を、地図情報サーバ4に送信する。
 地図情報サーバ4は、当該要求を受信すると、送信された要求に含まれる住所に対応する経緯度情報を、地図情報サーバ4が備える記憶部から取得し、取得した経緯度情報を含む応答を管理サーバ1に送信する。
 管理サーバ1が地図情報サーバ4からの応答を受信すると、管理サーバ1のCPU30は、ゴルフ利用者情報テーブルTBL11にアクセスし、所定のゴルフ利用者U1aの識別情報UIDが記録されたレコードを特定する。
 次に、管理サーバ1のCPU30は、特定したレコードの住所情報に、所定のゴルフ利用者U1aの端末装置2から受信した住所を記録し、当該レコードの経緯度情報に、地図情報サーバ4から受信した経緯度情報を記録するとともに、位置情報更新日時を、現時刻(住所及び経緯度情報を記録した日時)に更新する。
 このように、本実施形態に係る管理サーバ1は、ゴルフ利用者U1の自宅等からの距離が所定値以下である対象ゴルフ場を特定したうえで、ゴルフイベントへの参加候補者の全員の対象ゴルフ場である共通ゴルフ場を特定する。そして、ゴルフイベントへの参加候補者の自宅等から対象ゴルフ場までの所要時間ΔTを算出し、算出結果に基づいてお勧めゴルフ場一覧画面G5の表示情報を生成する。
 このため、ゴルフイベントを企画する所定のゴルフ利用者U1aは、お勧めゴルフ場一覧画面G5を見ることで、ゴルフイベントへの参加候補者の自宅等からのアクセスが容易なゴルフ場を選択することができ、ゴルフ場の選択等のゴルフイベントの計画立案を容易にすることができる。
<4.各種処理の詳細>
 上述のとおり、サービス提供システム100は、ゴルフ利用者U1の端末装置2に、当該ゴルフ利用者U1の直接ゴルフ友達Ugのプロフィール画像Pgと、当該ゴルフ利用者U1の間接ゴルフ友達Uggのプロフィール画像Pgと、を含むフレンドマップ(ゴルフ友達一覧画面G0)を表示させる「フレンドマップ表示処理」を行うことができる。
 また、サービス提供システム100は、ゴルフ利用者U1の自宅等からの距離が所定値以下の対象ゴルフ場を特定したうえで、ゴルフ利用者U1の自宅等と当該ゴルフ利用者U1の対象ゴルフ場との間を移動するのに要する所要時間ΔTを算出する「所要時間算出処理」を行うことができる。
 さらに、サービス提供システム100は、ゴルフ利用者U1が企画するゴルフイベントへの参加候補者の共通ゴルフ場を特定して、特定した共通ゴルフ場のお勧めの程度を決定する「お勧めゴルフ場特定処理」を行うことができる。
 以下、「フレンドマップ表示処理」、「所要時間算出処理」、及び、「お勧めゴルフ場特定処理」について説明する。
<4-1:フレンドマップ表示処理>
 図21及び図22にフレンドマップ表示処理に関するサービス提供システム100の動作シーケンスを示す。フレンドマップ表示処理は、ゴルフ利用者U1がゴルフ情報アプリケーションサービスにログインする度に実行される。
 端末装置2のSNS利用者U2(ゴルフ利用者U1でもある。以下、当該ゴルフ利用者U1を、「所定のゴルフ利用者U1a」と称する)が、ウェブブラウザ上で動作し、または、端末装置2にインストールされて動作するアプリケーションを起動して、SNSサイトにアクセスすると、端末装置2のディスプレイ25には、ログイン画面が表示される。このログイン画面には、識別情報UIDとパスワードとを入力する入力ボックス、及び、送信ボタンが表示される。所定のゴルフ利用者U1aが、入力ボックスに入力して送信ボタンをクリックすると、端末装置2は、入力した識別情報UID及びパスワードを含むログイン要求を外部管理サーバ3に送信する。
 ログイン要求を外部管理サーバ3が受信すると、外部管理サーバ3は認証処理を実行する(S300)。
 具体的には、外部管理サーバ3のCPUは、識別情報UIDとパスワードとの組みが記憶されているか否かを判定し、判定条件を充足する場合にはログインを許可し、判定条件が充足されない場合にはログインを拒絶する。そして、外部管理サーバ3のCPUは判定結果を示すログイン応答を端末装置2に送信させる。なお、図21に示す例では、ログインが許可されたものとする。一度、端末装置2で入力された識別情報UIDとパスワードとの組みは、端末装置2に所定期間記憶されて、当該所定期間内であればログインを省略可能としてもよい。
 この後、所定のゴルフ利用者U1aがメニューの中からゴルフ情報アプリケーションサービスを選択すると(S200)、端末装置2は、マイページ閲覧要求を管理サーバ1に送信する。管理サーバ1はマイページ閲覧要求を受信すると、管理サーバ1のCPU30は、マイページ閲覧要求に含まれる所定のゴルフ利用者U1aの識別情報UIDを取得し、所定のゴルフ利用者U1aの識別情報UIDを外部管理サーバ3に送信する制御を行う(S100)。
 外部管理サーバ3が、所定のゴルフ利用者U1aの識別情報UIDを受信すると、外部管理サーバ3のCPUは、SNS友達情報テーブルTBL32にアクセスし、当該識別情報UIDがアクション元又はアクション先として記録されているレコードを抽出することで、SNSの友達情報を取得する。さらに、外部管理サーバ3のCPUは、これらのレコードにアクション元又はアクション先として記録されている識別情報UIDをキーとしてSNS利用者情報テーブルTBL31から外部ユーザ情報を抽出する(S301)。この後、外部管理サーバ3は、取得したSNSの友達情報及び外部ユーザ情報を含む友達リストを管理サーバ1に送信する。
 管理サーバ1が友達リストを受信すると、管理サーバ1のCPU30は、受信した友達リストから、SNSの友達情報及び外部ユーザ情報を取得する(S101)。なお、S101で取得する外部ユーザ情報には、所定のゴルフ利用者U1aの外部ユーザ情報と、所定のゴルフ利用者U1aの直接SNS友達Ufの外部ユーザ情報とが含まれている。
 次に、管理サーバ1のCPU30は、所定のゴルフ利用者U1aの直接SNS友達Ufの識別情報UIDを特定する(S102)。具体的には、友達情報のレコードにおいてアクション元又はアクション先として記録されている識別情報UIDのうち、所定のゴルフ利用者U1aの識別情報UID及び重複する識別情報UIDを除いた識別情報UIDを所定のゴルフ利用者U1aの直接SNS友達Ufの識別情報UIDとして特定する。この結果、図23に示すように、所定のゴルフ利用者U1aと友達関係にある直接SNS友達Ufを特定することができる。なお、所定のゴルフ利用者U1aの直接SNS友達Ufが存在しない場合には、処理をS109に進める。
 この後、管理サーバ1のCPU30は、所定のゴルフ利用者U1aの直接SNS友達Ufの識別情報UIDを外部管理サーバ3に送信する制御を行う(S103)。
 外部管理サーバ3が、所定のゴルフ利用者U1aの直接SNS友達Ufの識別情報UIDを受信すると、外部管理サーバ3のCPUは、SNS友達情報テーブルTBL32及びアクセスし、当該識別情報UIDがアクション元又はアクション先として記録されているレコードを抽出することで、SNSの友達情報を取得する(S302)。この後、外部管理サーバ3は、取得したSNSの友達情報を含む友達リストを管理サーバ1に送信する。
 管理サーバ1が、友達リストを受信すると、管理サーバ1のCPU30は、受信した友達リストから、SNSの友達情報を取得する(S104)。
 次に、管理サーバ1のCPU30は、所定のゴルフ利用者U1aの間接SNS友達Uffの識別情報UIDを特定する(S105)。具体的には、友達情報のレコードにおいてアクション元又はアクション先として記録されている識別情報UIDのうち、重複する識別情報UIDを除いた識別情報UIDを所定のゴルフ利用者U1aの間接SNS友達Uffの識別情報UIDとして特定する。この結果、図24に示すように所定のゴルフ利用者U1aの直接SNS友達Uf及び間接SNS友達Uffを特定することができる。
 この後、管理サーバ1のCPU30は、所定のゴルフ利用者U1aの間接SNS友達Uffの識別情報UIDを外部管理サーバ3に送信する制御を行う(S106)。
 外部管理サーバ3が、所定のゴルフ利用者U1aの間接SNS友達Uffの識別情報UIDを受信すると、外部管理サーバ3のCPUは、SNS利用者情報テーブルTBL31にアクセスし、当該識別情報UIDが記録されているレコードを抽出する(S303)。この後、外部管理サーバ3は、抽出した外部ユーザ情報を管理サーバ1に送信する。
 管理サーバ1が外部ユーザ情報を受信すると、管理サーバ1のCPU30は当該外部ユーザ情報を取得する(S107)。なお、S107で取得する外部ユーザ情報は、所定のゴルフ利用者U1aの間接SNS友達Uffの外部ユーザ情報である。
 次に、管理サーバ1のCPU30は、図22に示すように、所定のゴルフ利用者U1aの直接SNS友達Ufの識別情報UIDと、所定のゴルフ利用者U1aの間接SNS友達Uffの識別情報UIDと、ゴルフ利用者情報テーブルTBL11に記録されているゴルフ利用者U1の識別情報UIDと、に基づいて所定のゴルフ利用者U1aの直接ゴルフ友達Ug及び間接ゴルフ友達Uggを特定し、特定した直接ゴルフ友達Ug及び間接ゴルフ友達Uggを、所定のゴルフ利用者U1aの対象利用者Utgとして特定する(S108)。具体的には、S102で特定した所定のゴルフ利用者U1aの直接SNS友達Ufの識別情報UIDのうち、ゴルフ利用者U1の識別情報UIDと一致するものを、所定のゴルフ利用者U1aの直接ゴルフ友達Ugの識別情報UIDとする。また、S105で特定した所定のゴルフ利用者U1aの間接SNS友達Uffの識別情報UIDのうち、ゴルフ利用者U1の識別情報UIDと一致するものを、所定のゴルフ利用者U1aの間接ゴルフ友達Uggの識別情報UIDとする。これにより、図2に示すように所定のゴルフ利用者U1aの直接ゴルフ友達Ug及び間接ゴルフ友達Uggが特定される。
 このように、管理サーバ1のCPU30は、S102、S105、及び、S108を実行することにより、利用者特定部13として機能する。
 また、CPU30は、S100、S101、S103、S104、S106、及び、S107を実行することにより、友達情報取得部15として機能する。
 次に、管理サーバ1のCPU30は、S101で取得した外部ユーザ情報、及び、S107で取得した外部ユーザ情報に基づいて、ゴルフ友達一覧画面G0の表示情報を生成する(S109)。
 具体的には、管理サーバ1のCPU30は、まず、S101及びS107で取得した外部ユーザ情報から、対象利用者Utgのプロフィール画像Pgのデータが格納されたアドレスを示すリンク情報を抽出する。本実施形態では、送信データ量を削減するため、対象利用者Utgを特定可能な情報は、プロフィール画像Pgのデータが格納されたアドレスを示すリンク情報として与えられるが、画像データそのものとして与えられてもよい。S109で生成される表示情報には、対象利用者Utgのプロフィール画像Pgの画面上の配置位置を示す情報も含まれる。
 次に、管理サーバ1のCPU30は、所定のゴルフ利用者U1aの対象利用者Utgを、所定のゴルフ利用者U1aの直接ゴルフ友達Ugと間接ゴルフ友達Uggとに大別し、仮想的な画面に全ての直接ゴルフ友達Ugのプロフィール画像Pgと間接ゴルフ友達Uggのプロフィール画像Pgと配置する。ここで、所定のゴルフ利用者U1aに複数の直接ゴルフ友達Ugがいる場合、それらのプロフィール画像Pgをどのように配置するかについては、各種の方法がある。例えば、ランダムに配置してもよい。所定のゴルフ利用者U1aの間接ゴルフ友達Uggの配置についても同様である。また、本実施形態では、CPU30は、所定のゴルフ利用者U1aの直接ゴルフ友達Ugのプロフィール画像Pgを、所定のゴルフ利用者U1aの間接ゴルフ友達Uggのプロフィール画像Pgよりも大きく表示させるように、表示情報を生成してもよい。また、表示すべき人数が多い場合には、仮想的な画面の大きさは端末装置2のディスプレイ25で表示される画面より大きくなる。この場合には、端末装置2において、仮想的な画面を表示可能な大きさに切り出してディスプレイ25に表示することになる。
 そして、管理サーバ1のCPU30は、表示情報を含むマイページ閲覧応答を、所定のゴルフ利用者U1aの端末装置2に送信する制御を行う(S110)。
 端末装置2がマイページ閲覧応答を受信すると、端末装置2のCPU20はディスプレイ25に、所定のゴルフ利用者U1aの直接ゴルフ友達Ugのプロフィール画像Pgと、所定のゴルフ利用者U1aの間接ゴルフ友達Uggのプロフィール画像Pgとを配置したゴルフ友達一覧画面G0を表示する(S201)。
 本実施形態では、図5に示すように、ゴルフ友達一覧画面G0において、「所定のゴルフ利用者U1aの直接ゴルフ友達Ugのプロフィール画像Pg」が「所定のゴルフ利用者U1aの間接ゴルフ友達Uggのプロフィール画像Pg」よりも手前(図5において下側)に配置されるので、所定のゴルフ利用者U1aは、所定のゴルフ利用者U1aの「直接ゴルフ友達Ug」及び「間接ゴルフ友達Ugg」の階層関係を容易に把握することができる。
<4-2:所要時間算出処理>
 ゴルフ利用者U1の自宅等の住所が登録または更新された場合、及び、ゴルフ場が新たに登録された場合、ゴルフ利用者U1の対象ゴルフ場が変化することがある。また、この場合、ゴルフ利用者U1の自宅等から対象ゴルフ場までの距離及び所要時間が変化する。
 所要時間算出処理は、ゴルフ利用者U1の自宅等の住所が登録または更新された場合、及び、ゴルフ場が新たに登録された場合に、ゴルフ利用者U1について、自宅等からの距離が所定値以下である対象ゴルフ場を更新するとともに、所要時間情報管理テーブルTBL13に記憶されているゴルフ利用者U1の自宅から対象ゴルフ場までの距離及び所要時間を更新する処理である。
 図25は、所要時間算出処理に関するサービス提供システム100の動作シーケンスの一例である。所要時間算出処理は、所定の周期で実行される所謂バッチ処理である。本実施形態において、所要時間算出処理は、1日周期で実行されるが、1日周期とは異なる周期(例えば、1週間周期)で実行されるものであってもよい。
 以下、図25を参照しつつ、所要時間算出処理について説明する。
 所要時間算出処理において、管理サーバ1のCPU30は、まず、ゴルフ利用者情報テーブルTBL11(図16)にアクセスし、位置情報更新日時に、所要時間算出処理の前回の実行日時(つまり、1日前の所要時間算出処理が実行された日時)よりも後の日時が記録されているレコードと、登録日に、所要時間算出処理の前回実行日時よりも後の日付が記録されているレコードとを特定する(S120)。これにより、前回の所要時間算出処理よりも後に自宅等の住所を変更したゴルフ利用者U1と、前回の所要時間算出処理よりも後に登録されたゴルフ利用者U1と、を特定することができる。
 また、管理サーバ1のCPU30は、ゴルフ場情報テーブルTBL12(図17)にアクセスし、登録日時に、所要時間算出処理の前回の実行日時よりも後の日時が記録されているレコードを特定する(S121)。これにより、前回の所要時間算出処理よりも後に登録されたゴルフ場を特定することができる。
 次に、管理サーバ1のCPU30は、ゴルフ利用者U1の対象ゴルフ場を更新する(S122)。上述したように、対象ゴルフ場は、自宅等からの距離が所定値以下のゴルフ場である。ゴルフ利用者U1の自宅等の住所が変更された場合、住所変更前の自宅等からの距離が所定値以下であっても、住所変更後の自宅等からの距離が所定値よりも遠いゴルフ場が存在することがある。つまり、住所変更前においてゴルフ利用者U1の対象ゴルフ場であっても、住所変更後において当該ゴルフ利用者U1の対象ゴルフ場ではなくなる場合がある。逆に、ゴルフ利用者U1が住所変更することにより、住所変更前は当該ゴルフ利用者U1の対象ゴルフ場ではなかったゴルフ場が、対象ゴルフ場に該当することとなる場合がある。さらに、ゴルフ場情報テーブルTBL12にレコードが追加され、ゴルフ場が新規登録されると、当該新規登録されたゴルフ場が、ゴルフ利用者U1の対象ゴルフ場に該当することとなる場合がある。また、ゴルフ利用者情報テーブルTBL11にレコードが追加され、ゴルフ利用者U1が新規登録されると、当該ゴルフ利用者U1の対象ゴルフ場を新たに特定する必要がある。
 S122の処理は、ゴルフ利用者U1の自宅等の住所が登録または変更された場合、及び、ゴルフ場が新たに登録された場合等、当該ゴルフ利用者U1の自宅等と各ゴルフ場との間の相対的位置関係に変化が生じた場合に、変化後の相対的位置関係を考慮して、当該ゴルフ利用者U1の対象ゴルフ場を再度特定する処理である。
 当該処理は、例えば、以下のような手順で実行される。
 第1に、CPU30は、ゴルフ利用者情報テーブルTBL11に記録されているゴルフ利用者U1のうち1のゴルフ利用者U1と、ゴルフ場情報テーブルTBL12に記録されているゴルフ場のうち1のゴルフ場との組の中から、S120で特定したレコードに対応するゴルフ利用者U1を含む組、及び、S121で特定したレコードに対応するゴルフ場を含む組、を特定する。
 第2に、CPU30は、特定された組のそれぞれについて、ゴルフ利用者U1の自宅等とゴルフ場との距離を算出する。具体的には、CPU30は、ゴルフ利用者情報テーブルTBL11から、特定された組のゴルフ利用者U1の自宅等の経緯度情報を取得するとともに、ゴルフ場情報テーブルTBL12から、当該組のゴルフ場の経緯度情報を取得し、取得した2つの経緯度情報に基づいて、当該ゴルフ利用者U1の自宅等から当該ゴルフ場までの距離を算出する。
 第3に、CPU30は、所要時間情報管理テーブルTBL13にアクセスし、S120で特定したレコードの識別情報UIDと同一の識別情報UIDが記録されているレコードを削除する。これにより、ゴルフ利用者U1の住所が更新された場合に、ゴルフ利用者U1の古い住所に基づいて定められたゴルフ利用者U1の対象ゴルフ場を、所要時間情報管理テーブルTBL13から削除することができる。なお、この所要時間情報管理テーブルTBL13に、予め無効フラグフィールドを設けておいてもよい。この場合、無効フラグに例えば「1」が記録されることにより、当該レコードを検索対象に含まないようにする。
 第4に、CPU30は、前記特定された組の中から、ゴルフ利用者U1の自宅等からゴルフ場までの距離が所定値以下である組を選択する。当該選択された組を構成するゴルフ場は、当該選択された組を構成するゴルフ利用者U1の対象ゴルフ場に該当する。
 第5に、CPU30は、前記選択された組を構成するゴルフ場のゴルフ場ID、当該選択された組を構成するゴルフ利用者U1の識別情報UID、及び、当該ゴルフ利用者U1の自宅等と当該ゴルフ場との距離を、所要時間情報管理テーブルTBL13に記録する。
 なお、上述したS122の処理は、所要時間算出処理が実行される時点におけるゴルフ利用者情報テーブルTBL11の登録内容と、所要時間算出処理が実行される時点におけるゴルフ場情報テーブルTBL12の登録内容とに基づいて、各ゴルフ利用者U1の対象ゴルフ場を特定する処理であれば、どのような処理であってもよい。例えば、所要時間算出処理が実行される時点において、ゴルフ利用者情報テーブルTBL11に登録されている全てのゴルフ利用者U1のそれぞれの自宅等と、ゴルフ場情報テーブルTBL12に登録されている全てのゴルフ場のそれぞれとの間の距離を算出することで、全てのゴルフ利用者U1について全ての対象ゴルフ場を算出する処理であってもよい。
 CPU30は、S122の処理を実行することにより、対象施設特定部11として機能する。
 次に、管理サーバ1のCPU30は、S122で選択された組を構成するゴルフ利用者U1の自宅等の位置情報(例えば、経緯度情報)と、当該組を構成するゴルフ場の位置情報とを、地図情報サーバ4に送信する処理を行う(S123)。
 地図情報サーバ4が、ゴルフ利用者U1の自宅等の位置情報と、ゴルフ場の位置情報とを受信すると、地図情報サーバ4のCPUは、受信した2つの位置情報に基づいて、当該ゴルフ利用者U1の自宅等と当該ゴルフ場との間を移動するために要する所要時間を算出する(S420)。上述のとおり、所要時間の演算は、公知の経路探索手法を適宜適用して実行される。
 その後、地図情報サーバ4は、算出した所要時間(ゴルフ利用者U1の自宅等とゴルフ場との間を移動するために要する所要時間)を含む応答を、管理サーバ1に送信する。
 管理サーバ1が地図情報サーバ4からの応答を受信すると、管理サーバ1のCPU30は、当該応答に含まれる、ゴルフ利用者U1の自宅等とゴルフ場との間を移動するために要する所要時間を取得する。そして、管理サーバ1のCPU30は、所要時間情報管理テーブルTBL13にアクセスし、受信した応答に対応するゴルフ利用者U1の識別情報UIDと、受信した応答に対応するゴルフ場のゴルフ場IDと、が記録されているレコードを特定し、特定したレコードの所要時間情報に、受信した所要時間を記録する(S124)。
 なお、本実施形態では、管理サーバ1のCPU30が、ゴルフ利用者情報テーブルTBL11に記録されているゴルフ利用者U1の自宅等の経緯度情報と、ゴルフ場情報テーブルTBL12に記録されているゴルフ場の経緯度情報と、に基づいて、ゴルフ利用者U1の自宅等とゴルフ場との間の距離を算出し、当該算出結果に基づいて、各ゴルフ利用者U1の対象ゴルフ場を特定するが、本発明はこのような態様に限定されるものではなく、地図情報サーバ4のCPUが、これらの処理の一部または全部を実行するものであってもよい。
 例えば、サービス提供システム100は、次のようにして、各ゴルフ利用者U1の対象ゴルフ場を特定するものであってもよい。
 すなわち、第1に、管理サーバ1のCPU30は、ゴルフ利用者情報テーブルTBL11から一のゴルフ利用者U1の自宅等の住所情報を取得するとともに、ゴルフ場情報テーブルTBL12から一のゴルフ場の住所情報を取得する。
 第2に、管理サーバ1のCPU30は、取得した2つの住所情報を地図情報サーバ4に対して送信する制御を行う。
 第3に、地図情報サーバ4のCPUは、管理サーバ1から送信された2つの住所情報に対応する2つの経緯度情報を、地図情報サーバ4が備える記憶部から取得する。
 第4に、地図情報サーバ4のCPUは、取得した2つの経緯度情報に基づいて、当該2つの経緯度情報に対応する2つの地点間の距離を演算する。
 第5に、地図情報サーバ4のCPUは、演算した距離を示す距離情報と、2つの経緯度情報とを含む情報を、管理サーバ1に対して送信する制御を行う。
 第6に、管理サーバ1のCPU30は、地図情報サーバ4から送信された距離情報の示す距離が所定値以下である場合に、前記一のゴルフ場を、前記一のゴルフ利用者U1の対象ゴルフ場として特定する。
 このように、管理サーバ1は、ゴルフ利用者U1の自宅等の経緯度情報と、ゴルフ場の経緯度情報と、ゴルフ利用者U1の自宅等及びゴルフ場の間の距離とを、地図情報サーバ4から取得する場合、ゴルフ利用者情報テーブルTBL11及びゴルフ場情報テーブルTBL12は、位置情報として住所情報のみを記憶し、経緯度情報を記憶しないものであってもよい。
 また、例えば、サービス提供システム100は、次のようにして、各ゴルフ利用者U1の対象ゴルフ場を特定するものであってもよい。
 すなわち、第1に、管理サーバ1のCPU30は、ゴルフ利用者情報テーブルTBL11から一のゴルフ利用者U1の自宅等の住所情報を取得するとともに、ゴルフ場情報テーブルTBL12から当該テーブルに登録されている全てのゴルフ場の住所情報を取得する。
 第2に、管理サーバ1のCPU30は、取得した一のゴルフ利用者U1の自宅等の住所情報と、複数のゴルフ場の住所情報とを含む情報を、地図情報サーバ4に対して送信する制御を行う。
 第3に、地図情報サーバ4のCPUは、管理サーバ1から送信された情報に含まれる住所情報に対応する経緯度情報を、地図情報サーバ4が備える記憶部から取得する。
 第4に、地図情報サーバ4のCPUは、取得した経緯度情報に基づいて、前記一のゴルフ利用者U1の自宅等と、複数のゴルフ場の各々との間の距離を算出する。
 第5に、地図情報サーバ4のCPUは、算出した距離に基づいて、前記一のゴルフ利用者U1の対象ゴルフ場を特定する。
 第6に、地図情報サーバ4のCPUは、前記一のゴルフ利用者U1の自宅等と、前記一のゴルフ利用者U1の対象ゴルフ場との間を移動するのに要する所要時間を算出する。
 第7に、地図情報サーバ4のCPUは、特定された対象ゴルフ場を識別するための情報(例えば、ゴルフ場ID)と、算出した所要時間を示す所要時間情報と、を含む情報を、管理サーバ1に対して送信する制御を実行する。
 第8に、管理サーバ1のCPU30は、地図情報サーバ4から送信された情報に基づいて、所要時間情報管理テーブルTBL13を更新する。
 このように、管理サーバ1が、ゴルフ利用者U1の自宅等の住所情報と、複数のゴルフ場の住所情報とを、地図情報サーバ4に送信し、地図情報サーバ4が、送信された住所情報に基づいて、ゴルフ利用者U1の対象ゴルフ場を特定するとともに、当該対象ゴルフ場に対応する所要時間を算出する場合、所要時間情報管理テーブルTBL13は、識別情報UID、ゴルフ場ID、及び、所要時間情報のみを記憶し、距離情報を記憶しないものであってもよい。また、この場合、ゴルフ利用者情報テーブルTBL11及びゴルフ場情報テーブルTBL12は、位置情報として住所情報のみを記憶し、経緯度情報を記憶しないものであってもよい。
 なお、本実施形態に係る所要時間算出処理では、ゴルフ利用者U1の自宅等とゴルフ場との距離が所定値以下となるゴルフ場を、ゴルフ利用者U1の対象ゴルフ場としているが、本発明はこのような態様に限定されるものではない。例えば、ゴルフ利用者U1の自宅等とゴルフ場との距離が所定値以下であり、且つ、ゴルフ利用者U1の自宅等からの所要時間ΔTが所定時間ΔTth以下のゴルフ場を、ゴルフ利用者U1の対象ゴルフ場として特定してもよい。
 CPU30は、S123、及び、S124の処理を実行することにより、演算結果取得部14として機能する。
 サービス提供システム100は、以上で説明した所要時間算出処理を実行することにより、ゴルフ利用者U1の自宅等の住所が登録または更新された場合、及び、ゴルフ場が新たに登録された場合に、ゴルフ利用者U1の対象ゴルフ場を更新し、所要時間情報管理テーブルTBL13に記憶されているゴルフ利用者U1の自宅等と対象ゴルフ場との距離及び所要時間を更新することができる。
<4-3:お勧めゴルフ場特定処理>
 図26にお勧めゴルフ場特定処理に関するサービス提供システム100の動作シーケンスの一例を示す。
 お勧めゴルフ場特定処理は、ゴルフ情報アプリケーションサービスにログインしているゴルフ利用者U1の端末装置2からの要求に応じて実行される、所謂リアルタイム処理である。
 まず、所定のゴルフ利用者U1aが、ゴルフ友達選択画面G2においてお勧めゴルフ場の確認ボタンB21をクリックし、または、ゴルフイベント管理画面G4においてお勧めゴルフ場の確認ボタンB41~B43のいずれかをクリックすると(S240)、所定のゴルフ利用者U1aの端末装置2は、管理サーバ1に対して、ゴルフイベントへの参加候補者を識別するための情報とともに、お勧めゴルフ場一覧画面G5(図10)を表示させる旨の要求を送信する。
 管理サーバ1が当該要求を受信すると、管理サーバ1のCPU30は、参加候補者の共通ゴルフ場を特定する(S140)。
 具体的には、CPU30は、まず、所要時間情報管理テーブルTBL13(図18)にアクセスし、各参加候補者の対象ゴルフ場を特定する。次に、CPU30は、各参加候補者の対象ゴルフ場の中から、当該参加候補者の自宅等からの所要時間ΔTが所定時間ΔTth以下の対象ゴルフ場を選択する。次に、CPU30は、選択した対象ゴルフ場の中で、参加候補者の全員に共通する対象ゴルフ場を、参加候補者の共通ゴルフ場として特定する。
 CPU30は、S140の処理を実行することにより、共通施設特定部12として機能する。
 次に、管理サーバ1のCPU30は、S140で特定した参加候補者の共通ゴルフ場についてのお勧めの程度を決定し、決定結果に基づいて表示情報を生成する(S141)。
 具体的には、管理サーバ1のCPU30は、所要時間情報管理テーブルTBL13にアクセスし、参加候補者の識別情報UIDが記録され、且つ、参加候補者の共通ゴルフ場のゴルフ場IDが記録されているレコードを抽出する。次に、CPU30は、当該抽出されたレコードの所要時間情報に記録されている所要時間ΔTのうち最長の時間を、当該共通ゴルフ場の最長所要時間ΔTmaxとし、この最長所要時間ΔTmaxを、当該共通ゴルフ場のお勧めの程度として決定する。そして、CPU30は、当該共通ゴルフ場のお勧めの程度に基づいて、当該共通ゴルフ場の、お勧めゴルフ場一覧画面G5における表示位置を決定し、当該決定結果に基づいて、お勧めゴルフ場一覧画面G5を表示するために必要な表示情報を生成する。
 その後、管理サーバ1のCPU30は、当該表示情報を含むお勧めゴルフ場一覧表示応答を、端末装置2に送信する制御を行う(S142)。端末装置2がお勧めゴルフ場一覧表示応答を受信すると、端末装置2のCPU20は、ディスプレイ25にお勧めゴルフ場一覧画面G5を表示させる処理を実行する(S241)。
 管理サーバ1のCPU30は、S109及びS141のうち、少なくとも一方の処理を実行することにより、表示情報生成部16として機能する。
 また、管理サーバ1のCPU30は、S110及びS142のうち、少なくとも一方の処理を実行することにより、送信制御部18として機能する。
 このように、本実施形態に係るサービス提供システム100は、ゴルフイベントへの参加候補者の自宅等から対象ゴルフ場までの所要時間ΔTの最大値である最長所要時間ΔTmaxに基づいて生成される、お勧めゴルフ場一覧画面G5を提供する。
 このため、ゴルフイベントを企画する所定のゴルフ利用者U1aは、お勧めゴルフ場一覧画面G5を見ることで、ゴルフイベントへの参加候補者の自宅等からのアクセスが容易なゴルフ場を選択することができ、ゴルフ場の選択等のゴルフイベントの計画立案を容易にすることができる。
<変形例>
 本発明は、上述した各実施形態に限定されるものではなく、以下に述べる各種の変形が可能である。また、各変形例及び各実施形態は、適宜、組み合わせてもよいことは勿論である。
<変形例1>
 上述した実施形態において、「所要時間算出処理」は所定の周期で実行される所謂バッチ処理であるが、本発明はこのような態様に限定されるものではなく、「所要時間算出処理」のうち少なくとも一部の処理は、ゴルフ利用者U1の端末装置2からの要求に応じて実行される所謂リアルタイム処理であってもよい。
 図27A及び図27Bは、変形例1に係る「おすすめゴルフ場特定処理」に関するサービス提供システム100の動作シーケンスの一例である。
 変形例1において、図27Aに示すS161、S162、S460は、図25に示す実施形態に係る「所要時間算出処理」のうち、S123、S124、及び、S420に相当する。
 図27Aに示すように、端末装置2において、所定のゴルフ利用者U1aにより、ゴルフ友達選択画面G2においてお勧めゴルフ場の確認ボタンB21がクリックされると、または、ゴルフイベント管理画面G4においてお勧めゴルフ場の確認ボタンB41~B43がクリックされると(S260)、所定のゴルフ利用者U1aの端末装置2のCPU20は、管理サーバ1に対して、ゴルフイベントへの参加候補者を識別するための情報(例えば、識別情報UID)とともに、お勧めゴルフ場一覧画面G5を表示させる旨の要求を送信する。
 管理サーバ1が当該要求を受信すると、管理サーバ1のCPU30は、参加候補者の共通ゴルフ場を特定する(S160)。S160は、図26に示すS140と同様の処理である。
 次に、管理サーバ1のCPU30は、参加候補者の自宅等の位置情報と、参加候補者の共通ゴルフ場の位置情報とを、地図情報サーバ4に送信する処理を行う(S161)。S161は、図25に示すS123に相当する処理である。
 地図情報サーバ4が、参加候補者の自宅等の位置情報と、参加候補者の共通ゴルフ場の位置情報とを受信すると、地図情報サーバ4のCPUは、受信した情報に基づいて、参加候補者の自宅等と参加候補者の共通ゴルフ場との間を移動するために要する所要時間を算出する(S460)。S460は、図25に示すS420に相当する処理である。その後、地図情報サーバ4は、算出した所要時間を含む応答を、管理サーバ1に送信する。
 管理サーバ1が地図情報サーバ4からの応答を受信すると、管理サーバ1のCPU30は、当該応答に含まれる、参加候補者の自宅等と参加候補者の共通ゴルフ場との間を移動するために要する所要時間を取得する(S162)。S162は、図25に示すS124に相当する処理である。
 次に、図27Bに示すように、管理サーバ1のCPU30は、参加候補者の共通ゴルフ場についてのお勧めの程度を決定し、決定結果に基づいて表示情報を生成する(S163)。S163は、図26に示すS141と同様の処理である。
 その後、管理サーバ1のCPU30は、当該表示情報を含むお勧めゴルフ場一覧表示応答を、端末装置2に送信する制御を行う(S164)。S164は、図26に示すS142に相当する処理である。
 端末装置2がお勧めゴルフ場一覧表示応答を受信すると、端末装置2のCPU20は、ディスプレイ25にお勧めゴルフ場一覧画面G5を表示させる処理を実行する(S261)。S261は、図26に示すS241と同様の処理である。
 このように、変形例1に係るサービス提供システム100では、「所要時間算出処理」の一部(S123、S124、及び、S420)が、「おすすめゴルフ場特定処理」に組み込まれ、リアルタイム処理として実行される。
 なお、変形例1においても、図25に示す所要時間算出処理のうち、S120、S121、及び、S122は、所定の周期で実行されるバッチ処理として実行される。
 変形例1に係るサービス提供システム100では、所定のゴルフ利用者U1aの端末装置2からの要求に応じて、リアルタイムで所要時間ΔTを計算するため、参加候補者の自宅等と共通ゴルフ場との間の所要時間ΔTのみならず、参加候補者の自宅等から途中経由地を経由して共通ゴルフ場に至るまでの所要時間等、所定のゴルフ利用者U1aの要求に応じた経路の所要時間を柔軟に計算することができる。
 例えば、変形例1に係るサービス提供システム100は、所定のゴルフ利用者U1aが、他のゴルフ利用者U1b(所定のゴルフ利用者U1aを除く参加候補者)のそれぞれの自宅等を経由して、共通ゴルフ場に至るまでの所要時間を算出するものであってもよい。この場合、共通ゴルフ場のお勧めの程度は、所定のゴルフ利用者U1aの自宅等から当該経由地を経由して共通ゴルフ場に到達するのに要する所要時間に応じて定めてもよい。この場合、所要時間が短いほど、当該共通ゴルフ場のお勧めの程度が高くなる。また、この場合、途中経由地を、所定のゴルフ利用者U1aが、ゴルフ友達選択画面G2等で設定できるようにしてもよい。
<変形例2>
 上述した実施形態及び変形例係るサービス提供システム100では、2つの地点の間を移動するのに要する所要時間を演算可能な経路所要時間演算部41が、地図情報サーバ4に設けられるが、本発明はこのような構成に限定されるものではなく、経路所要時間演算部41は、管理サーバ1に設けられるものであってもよい。
 図28に、変形例2に係るサービス提供システム100Aを示す。サービス提供システム100Aは、地図情報サーバ4を用いない点、及び、管理サーバ1の代わりに管理サーバ1Aを備える点を除いて、実施形態に係るサービス提供システム100と同様である。
 管理サーバ1Aは、2つの地点の間を移動するのに要する所要時間を演算可能な経路所要時間演算部41を具備する点、記憶部19に経路所要時間演算部41が所要時間の演算を実行するために必要なデータを記憶している点、及び、演算結果取得部14を備えない点、除いて、管理サーバ1と同様である。
 なお、変形例2に係る共通施設特定部12は、演算結果取得部14が取得した所要時間ΔTを用いる代わりに、経路所要時間演算部41が演算した所要時間ΔTを用いて、所定のゴルフ利用者U1a及び他のゴルフ利用者U1bの共通ゴルフ場を特定する。
<変形例3>
 上述した実施形態及び変形例係るサービス提供システム(サービス提供システム100、または、サービス提供システム100A)では、外部管理サーバ3において友達情報を管理し、管理サーバ(管理サーバ1、または、管理サーバ1A)は、友達情報を独自に管理していないが、本発明はこのような態様に限定されるものではなく、管理サーバで友達情報を独自に管理するものであってもよい。
 図29に、変形例3に係るサービス提供システム100Bを示す。サービス提供システム100Bは、外部管理サーバ3を備えない点、及び、管理サーバ1の代わりに管理サーバ1Bを備える点を除いて、実施形態に係るサービス提供システム100と同様である。管理サーバ1Bは、記憶部19にゴルフ友達情報テーブルL16が記憶されている点で、管理サーバ1と相違する。
 図30に、ゴルフ友達情報テーブルL16のデータ構造を示す。ゴルフ友達情報テーブルL16には複数のレコードが記録されている。1つのレコードは、ゴルフの友達情報、すなわち、アクション元の識別情報、アクション先の識別情報、ステータス、及び申請日時を含む。アクション元は、ゴルフ友達申請を行ったゴルフ利用者U1であり、アクション先は、ゴルフ友達申請されたSNS利用者U2である。ステータスは、ゴルフ友達申請の状態を示し、申請中が「0」、承諾が「1」で表される。
 このサービス提供システム100Bでは、上述した実施形態及び変形例のようにゴルフ利用者U1がSNS利用者U2に含まれるといった関係はない。すなわち、図31に示すように、管理サーバ1Bは、所定のゴルフ利用者U1aと友達関係を有するゴルフ利用者U1を「所定のゴルフ利用者U1aの直接ゴルフ友達Ug」として管理する。また、管理サーバ1Bは、所定のゴルフ利用者U1aと友達関係を有する直接ゴルフ友達Ugと更に友達関係を有するゴルフ利用者U1を「所定のゴルフ利用者U1aの間接ゴルフ友達Ugg」として管理する。
 すなわち、管理サーバ1Bは、記憶部19に記憶されている友達情報及び所定のゴルフ利用者U1aの識別情報UIDに基づいて、所定のゴルフ利用者U1aと友達関係を有するゴルフ利用者U1である直接ゴルフ友達Ug、及び、当該直接ゴルフ友達Ugと友達関係を有するゴルフ利用者U1である間接ゴルフ友達Uggを対象利用者Utgとして特定可能な利用者特定部13を備える。
 なお、この場合、記憶部19には、ゴルフ利用者U1の個人情報(つまり、氏名、年齢、プロフィール画像Pgの格納先、等)が記憶されていることが好ましい。また、本変形例における友達情報取得部15は、記憶部19から友達情報を取得するものであればよい。
<変形例4>
 上述した実施形態及び変形例係るサービス提供システムでは、管理サーバ(管理サーバ1、1A、1B)は、記憶部19を備えるが、本発明はこのような構成に限定されるものではなく、管理サーバは記憶部19を備えないものであってもよい。
 図32に、変形例4に係るサービス提供システム100Cを示す。サービス提供システム100Cは、データベースサーバ6を備える点、及び、管理サーバ1の代わりに管理サーバ1Cを備える点を除いて、実施形態に係るサービス提供システム100と同様である。
 管理サーバ1Cは、記憶部19を備えない点、及び、情報取得部17(第1取得部の一例)を備える点を除き、管理サーバ1と同様に構成される。
 データベースサーバ6は、ゴルフ利用者情報テーブルTBL11、ゴルフ場情報テーブルTBL12、所要時間情報管理テーブルTBL13、イベント情報管理テーブルTBL14、及び、応答情報管理個別テーブルTBL15等を格納した記憶部19を備える。
 情報取得部17は、データベースサーバ6が備える記憶部19に格納された各種テーブルに記憶されている各種データを取得可能である。
<変形例5>
 上述した実施形態及び変形例係る共通施設特定部12は、所定のゴルフ利用者U1aの対象ゴルフ場のうち、所定のゴルフ利用者U1aの自宅等からの所要時間ΔTが所定時間ΔTth以下のゴルフ場であり、且つ、他のゴルフ利用者U1bの対象ゴルフ場のうち、他のゴルフ利用者U1bの自宅等からの所要時間ΔTが所定時間ΔTth以下のゴルフ場を、所定のゴルフ利用者U1a及び他のゴルフ利用者U1bの共通ゴルフ場として特定するが、本発明はこのような構成に限定されるものではなく、共通施設特定部12は、所定のゴルフ利用者U1aの対象ゴルフ場であり、且つ、他のゴルフ利用者U1bの対象ゴルフ場であるゴルフ場の一部または全部を、所定のゴルフ利用者U1a及び他のゴルフ利用者U1bの共通ゴルフ場として特定するものであればよい。
 例えば、共通施設特定部12は、所定のゴルフ利用者U1aの対象ゴルフ場であり、且つ、他のゴルフ利用者U1bの対象ゴルフ場であるゴルフ場の全部を、所定のゴルフ利用者U1a及び他のゴルフ利用者U1bの共通ゴルフ場として特定するものであってもよい。
 また、例えば、共通施設特定部12は、所定のゴルフ利用者U1aの対象ゴルフ場であり、且つ、他のゴルフ利用者U1bの対象ゴルフ場であるゴルフ場のうち、ゴルフ場の利用料金が所定額以下のゴルフ場を、所定のゴルフ利用者U1a及び他のゴルフ利用者U1bの共通ゴルフ場として特定するものであってもよい。
 なお、共通施設特定部12が、対象ゴルフ場のうち、所要時間ΔTが所定時間ΔTth以下のゴルフ場を、共通ゴルフ場として特定する場合、当該所定時間ΔTthは、事前に定められた値(例えば、「90分」等の固定値)であってもよいし、ゴルフ利用者U1がマイページから入力できる値であっても構わない。
 また、サービス提供システムは、ゴルフ利用者U1がマイページにおいて交通手段を選択することができ、当該選択された交通手段を用いて移動したときの所要時間ΔTを算出するものであってもよい。
 なお、上述した実施形態及び変形例に係る経路所要時間演算部41は、2つの地点の一方から他方に(ゴルフイベントへの各参加候補者の自宅等と共通ゴルフ場との間)移動するのに要する所要時間を演算するものであるが、例えば、2つの地点間の移動距離を演算するものであってもよいし、2つの地点間を移動するのに要する交通費を演算するものであってもよい。要は、経路所要時間演算部41は、2つの地点間の移動に係る負担を定量的に表す何らかの評価値を算出しうるものであればよい。
 例えば、経路所要時間演算部41が、2つの地点の間を移動するのに要する交通費を演算する場合、共通施設特定部12が特定する参加候補者の共通ゴルフ場は、ゴルフイベントへの各参加候補者の自宅等からの距離が所定値以下のゴルフ場(各参加候補者の対象ゴルフ場)であり、且つ、各参加候補者の自宅等からの交通費が所定額以下のゴルフ場であってもよい。
 また、この場合、表示情報生成部16が決定する共通ゴルフ場のお勧めの程度は、ゴルフイベントへの参加候補者の自宅等と当該共通ゴルフ場との間を移動するのに要する交通費に基づいて定められるものであってもよい。
<変形例6>
 上述した実施形態及び変形例係る利用者特定部13は、所定のゴルフ利用者U1aの直接ゴルフ友達Ug及び所定のゴルフ利用者U1aの間接ゴルフ友達Uggを、所定のゴルフ利用者U1aの対象利用者Utgとして特定するが、本発明はこれに限定されるものではなく、直接ゴルフ友達Ugを対象利用者Utgとして特定するものであってもよい。この場合、利用者特定部13は、間接ゴルフ友達Uggを特定しないものであってもよい。
 また、利用者特定部13は、直接ゴルフ友達Ug及び間接ゴルフ友達Uggを特定したうえで、間接ゴルフ友達Uggのみを対象利用者Utgとして特定するものであってもよい。
 更に、利用者特定部13は、直接ゴルフ友達Ug及び間接ゴルフ友達Uggを特定したうえで、直接ゴルフ友達Ugのみを対象利用者Utgとして特定するものであってもよい。
 要するに、利用者特定部13は、所定のゴルフ利用者U1aの直接ゴルフ友達Ug及び所定のゴルフ利用者U1aの間接ゴルフ友達Uggの、一部または全部を、所定のゴルフ利用者U1aの対象利用者Utgとして特定するものであればよい。
<変形例7>
 上述した実施形態及び変形例に係るサービス提供システム(サービス提供システム100、100A、100B、または、100C)は、ゴルフ場サーバ5を含むものであるが、本発明はこれに限定されるものではなく、サービス提供システムは、ゴルフ場サーバ5を備えないものであってもよい。
 この場合、管理サーバが提供するマイページは、ゴルフ場予約状況確認画面G6及びゴルフ場予約画面G7を含まないものであってもよい。例えば、ゴルフ場予約状況確認画面G6及びゴルフ場予約画面G7の代わりに、各ゴルフ場が提供するサイトへのリンクを、お勧めゴルフ場一覧画面G5等に表示するものであってもよい。
<変形例8>
 上述した実施形態及び変形例に係る管理サーバ(管理サーバ1、1A、1B、または、1C)は、端末装置2と通信が可能であるが、本発明はこれに限定されるものではなく、管理サーバは、端末装置2と通信を行わないものであってもよい。
 例えば、端末装置2と通信を行うことのできるWebサーバが存在する場合、管理サーバは、当該Webサーバとの間で通信を行うことのできるものであってもよい。
<変形例9>
 上述した実施形態及び変形例に係るサービス提供システムは、ゴルフ利用者U1に住所登録画面G8を含むマイページを提供し、ゴルフ利用者U1は当該住所登録画面G8から自宅等の住所を登録することができるが、本発明はこれに限定されるものではなく、ゴルフ利用者U1の端末装置2が例えば、携帯電話機、スマートフォン、等の場合、端末装置2の備えるGPS機能を用いて自宅等の住所または経緯度を登録できるものであってもよい。
<変形例10>
 上述した実施形態及び変形例では、管理サーバ(管理サーバ1、1A、1B、1C等)が提供するサービスとして、ゴルフ情報アプリケーションサービスを例示して説明したが、本発明はこれに限定されるものではなく、管理サーバは、所定の対象に関するサービスであれば、どのようなサービスを提供するものであればよい。
 ここで、所定の対象は、水泳、スキー、テニス等、スポーツに関するもの、または、映画、音楽、ゲーム、旅行等、趣味に関するものでもよいし、ビジネスに関するものでもよい。
 すなわち、対象施設特定部11は、ゴルフ利用者U1の自宅等の位置情報、及び、所定の対象に関する施設の位置情報に基づいて、ゴルフ利用者U1の自宅等からの距離が所定値以下である施設を、ゴルフ利用者U1の対象施設として取得可能である。
 ここで、「所定の対象に関する施設」とは、所定の対象が水泳である場合には、プールや海水浴場等が該当し、所定の対象がスキーである場合には、スキー場等が該当し、所定の対象が映画である場合には、映画館等が該当する。
 また、共通施設特定部12は、所定のゴルフ利用者U1aの端末装置2からの要求に応じて、所定のゴルフ利用者U1aの対象施設であり、且つ、他のゴルフ利用者U1bの対象施設である施設の一部または全部を、所定のゴルフ利用者U1a及び他のゴルフ利用者U1bの共通施設として特定するものであればよい。
 同様に、表示情報生成部16は、所定のゴルフ利用者U1a及び他のゴルフ利用者U1bの共通施設を表す情報を含む表示情報を生成して、当該表示情報を所定のゴルフ利用者U1aの端末装置2に送信するものであればよい。
 なお、特定の関係は、友達関係に限定されない。例えば、上司と部下の関係であってもよいし、問屋と小売の関係であってもよい。要は、一定の規則に基づいて構築される関係であればどのようなものであってもよい。
<変形例11>
 上述した実施形態及び変形例では、CPU30は、直接ゴルフ友達Ugのプロフィール画像Pgと間接ゴルフ友達Uggのプロフィール画像Pgとを、ゴルフ友達一覧画面G0の異なる領域Y1及びY2に区別して表示するが、本発明はこれに限定されるものではなく、直接ゴルフ友達Ug及び間接ゴルフ友達Uggを区別せずに、1つの領域に表示させるものであってもよい。
<変形例12>
 上述した実施形態及び変形例では、利用者同士の階層的な特定の関係を表示させる装置として、管理サーバ1(または、1A、1B、1C)及び端末装置2を一例として説明したが、本発明はこれに限定されるもではなく、パーソナルコンピュータ等の情報処理装置であってもよい。
 なお、本発明における機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することとしてもよい。ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、インターネットやWAN、LAN、専用回線等の通信回線を含むネットワークを介して接続された複数のコンピュータ装置を含んでもよい。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、ネットワークを介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、上述した機能の一部を実現するためのものであってもよい。さらに、上述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
 また、上述した機能の一部または全部を、LSI(Large Scale Integration)等の集積回路として実現してもよい。上述した各機能は個別にプロセッサ化してもよいし、一部、または全部を集積してプロセッサ化してもよい。また、集積回路化の手法はLSIに限らず専用回路、または汎用プロセッサで実現してもよい。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。また、本発明における機能またはその一部を実現するためのプログラムを配信する配信サーバ及び当該配信サーバに備えられた記憶媒体、及び当該配信サーバの外部に存在し、当該プログラムを前記配信サーバにより配信するために記憶している記憶媒体も、本発明の範囲に含むものとする。
 1……管理サーバ、2……端末装置、3……外部管理サーバ、4……地図情報サーバ、11……対象施設特定部、12……共通施設特定部、13……利用者特定部、14……演算結果取得部、15……友達情報取得部、16……表示情報生成部、17……情報取得部、19……記憶部。

Claims (12)

  1.  第1利用者に所定の対象に関するサービスを提供する管理装置であって、
     前記第1利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得する第1取得部と、
     前記第1取得部が取得した前記第1利用者の基準地点の位置情報と前記施設の位置情報とに基づいて、前記第1利用者の基準地点からの距離が所定値以下である施設を、当該第1利用者の対象施設として特定する第1特定部と、
     所定の第1利用者の対象施設であり、且つ、前記所定の第1利用者とは異なる他の第1利用者の対象施設である施設の一部または全部を、前記所定の第1利用者及び前記他の第1利用者の共通施設として特定する第2特定部と、
     前記共通施設を表す情報を含む表示情報を生成する表示情報生成部と、
     を備える管理装置。
  2.  第1利用者の端末装置と通信可能であり、
     前記第1利用者に所定の対象に関するサービスを提供する管理装置であって、
     前記第1利用者を一意に識別する識別情報、前記第1利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得する第1取得部と、
     前記第1取得部が取得した前記第1利用者の基準地点の位置情報と前記施設の位置情報とに基づいて、前記第1利用者の基準地点からの距離が所定値以下である施設を、当該第1利用者の対象施設として特定する第1特定部と、
     所定の第1利用者の端末装置からの要求に応じて、前記所定の第1利用者の対象施設であり、且つ、前記所定の第1利用者の端末装置において選択された他の第1利用者の対象施設である施設の一部または全部を、前記所定の第1利用者及び前記他の第1利用者の共通施設として特定する第2特定部と、
     前記第2特定部が特定した前記共通施設を表す情報を含む表示情報を生成する表示情報生成部と、
     前記表示情報生成部が生成した前記表示情報を前記所定の第1利用者の端末装置に送信する制御を行う送信制御部と、
     を備える管理装置。
  3.  前記第1利用者の基準地点の位置情報と前記施設の位置情報とに基づいて、前記第1利用者の基準地点から前記第1利用者の対象施設まで移動するのに要する所要時間を演算する演算部を備え、
     前記第2特定部は、
     所定の第1利用者の端末装置からの要求に応じて、前記所定の第1利用者の対象施設のうち、前記所定の第1利用者の基準地点からの所要時間が所定時間以下の施設であり、且つ、前記他の第1利用者の対象施設のうち、前記他の第1利用者の基準地点からの所要時間が前記所定時間以下の施設を、前記所定の第1利用者及び前記他の第1利用者の共通施設として特定する、
     ことを特徴とする請求項2に記載の管理装置。
  4.  前記演算部は、
     前記所定の第1利用者の端末装置からの要求に応じて、前記所定の第1利用者の基準地点から前記所定の第1利用者の対象施設まで移動するのに要する所要時間と、前記他の第1利用者の基準地点から前記他の第1利用者の対象施設まで移動するのに要する所要時間と、を演算する、
     ことを特徴とする請求項3に記載の管理装置。
  5.  前記管理装置は、
     2つの地点の位置をそれぞれ表す2つの位置情報に基づいて当該2つの地点の間を移動するのに要する所要時間を演算する第1外部装置と通信可能であり、
     前記第1取得部が取得した前記第1利用者の基準地点の位置情報と前記第1利用者の対象施設の位置情報とを、前記第1外部装置に送信するとともに、
     送信された位置情報に基づいて前記第1外部装置が演算した、前記第1利用者の基準地点から前記第1利用者の対象施設まで移動するのに要する所要時間を、前記第1外部装置から取得する第2取得部を備え、
     前記第2特定部は、
     所定の第1利用者の端末装置からの要求に応じて、前記所定の第1利用者の対象施設のうち、前記所定の第1利用者の基準地点からの所要時間が所定時間以下の施設であり、且つ、前記他の第1利用者の対象施設のうち、前記他の第1利用者の基準地点からの所要時間が前記所定時間以下の施設を、前記所定の第1利用者及び前記他の第1利用者の共通施設として特定する、
     ことを特徴とする請求項2に記載の管理装置。
  6.  前記第2取得部は、
     前記所定の第1利用者の端末装置からの要求に応じて、前記所定の第1利用者の基準地点の位置情報、前記所定の第1利用者の対象施設の位置情報、前記他の第1利用者の基準地点の位置情報、及び、前記他の第1利用者の対象施設の位置情報を、前記第1外部装置に送信するとともに、
     送信された位置情報に基づいて前記第1外部装置が演算した、前記所定の第1利用者の基準地点から前記所定の第1利用者の対象施設まで移動するのに要する所要時間と、前記他の第1利用者の基準地点から前記他の第1利用者の対象施設まで移動するのに要する所要時間とを、前記第1外部装置から取得する、
     ことを特徴とする請求項5に記載の管理装置。
  7.  前記表示情報生成部は、
     前記所定の第1利用者の基準地点から前記共通施設まで移動するのに要する所要時間と、前記他の第1利用者の基準地点から前記共通施設まで移動するのに要する所要時間と、に基づいて、前記所定の第1利用者の端末装置に備えられた表示部に表示される画面における、前記共通施設を表す情報の表示位置を決定し、
     当該決定結果に基づいて、前記共通施設を表す情報を含む表示情報を生成する、
     ことを特徴とする請求項3乃至6のうちいずれか1項に記載の管理装置。
  8.  前記第1利用者同士の特定の関係を表す特定関係情報を取得する第3取得部と、
     前記第1取得部が取得した前記所定の第1利用者の識別情報と前記第3取得部が取得した前記特定関係情報とに基づいて、前記所定の第1利用者と前記特定の関係を有する前記第1利用者である第1の特定関係利用者、及び、前記第1の特定関係利用者と前記特定の関係を有する前記第1利用者である第2の特定関係利用者、の一部または全部を対象利用者として特定する利用者特定部と、
     を備え、
     前記表示情報生成部は、
     前記利用者特定部の特定結果に基づいて、前記対象利用者を表す情報を含む表示情報を生成し、
     前記送信制御部は、
     前記表示情報生成部が生成した前記対象利用者を表す情報を含む表示情報を前記所定の第1利用者の端末装置に送信する制御を行い、
     前記第2特定部は、
     前記所定の第1利用者の端末装置の表示部において、送信された前記対象利用者を表す情報を含む表示情報に基づく画面が表示されたときに、当該画面において、前記所定の第1利用者に選択された対象利用者のうち少なくとも一部を、前記他の第1利用者として特定する、
     ことを特徴とする請求項2乃至6のうちいずれか1項に記載の管理装置。
  9.  前記管理装置は、
     前記第1利用者を含む第2利用者を一意に識別する識別情報と、前記第2利用者同士の特定の関係を表す特定関係情報とを管理する第2外部装置と通信可能であり、
     前記第1取得部が取得した前記第1利用者の識別情報に基づいて、前記第2外部装置から前記特定関係情報を取得する第3取得部と、
     前記第1取得部が取得した前記所定の第1利用者の識別情報と前記第3取得部が取得した前記特定関係情報とに基づいて、前記所定の第1利用者と前記特定の関係を有する前記第2利用者のうち前記第1利用者に該当する第1の特定関係利用者、及び、前記第1の特定関係利用者と前記特定の関係を有する前記第2利用者のうち前記第1利用者に該当する第2の特定関係利用者、の一部または全部を対象利用者として特定する利用者特定部と、
     を備え、
     前記表示情報生成部は、
     前記利用者特定部の特定結果に基づいて、前記対象利用者を表す情報を含む表示情報を生成し、
     前記送信制御部は、
     前記表示情報生成部が生成した前記対象利用者を表す情報を含む表示情報を前記所定の第1利用者の端末装置に送信する制御を行い、
     前記第2特定部は、
     前記所定の第1利用者の端末装置の表示部において、送信された前記対象利用者を表す情報を含む表示情報に基づく画面が表示されたときに、当該画面において、前記所定の第1利用者に選択された対象利用者のうち少なくとも一部を、前記他の第1利用者として特定する、
     ことを特徴とする請求項2乃至6のうちいずれか1項に記載の管理装置。
  10.  第1利用者に所定の対象に関するサービスを提供する管理装置と、
     前記第1利用者の端末装置と、
     を備えるサービス提供システムであって、
     前記端末装置は、
     所定の表示情報に基づく画面を表示可能な表示部を備え、
     前記管理装置と通信可能であり、
     前記管理装置は、
     前記第1利用者を一意に識別する識別情報、前記第1利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得する第1取得部と、
     前記第1取得部が取得した前記第1利用者の基準地点の位置情報と前記施設の位置情報とに基づいて、前記第1利用者の基準地点からの距離が所定値以下である施設を、当該第1利用者の対象施設として特定する第1特定部と、
     所定の第1利用者の端末装置からの要求に応じて、前記所定の第1利用者の対象施設であり、且つ、前記所定の第1利用者の端末装置において選択された他の第1利用者の対象施設である施設の一部または全部を、前記所定の第1利用者及び前記他の第1利用者の共通施設として特定する第2特定部と、
     前記第2特定部が特定した前記共通施設を表す情報を含む表示情報を、前記所定の表示情報として生成する表示情報生成部と、
     前記表示情報生成部が生成した前記表示情報を前記所定の第1利用者の端末装置に送信する制御を行う送信制御部と、
     を備える、
     ことを特徴とする、サービス提供システム。
  11.  所定の表示情報に基づく画面を表示可能な表示部を備える第1利用者の端末装置と通信可能であり、
     前記第1利用者に所定の対象に関するサービスを提供する管理装置の制御方法であって、
     前記第1利用者を一意に識別する識別情報、前記第1利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得し、
     前記第1利用者の基準地点の位置情報と前記施設の位置情報とに基づいて、前記第1利用者の基準地点からの距離が所定値以下である施設を、当該第1利用者の対象施設として特定し、
     所定の第1利用者の端末装置からの要求に応じて、前記所定の第1利用者の対象施設であり、且つ、前記所定の第1利用者の端末装置において選択された他の第1利用者の対象施設である施設の一部または全部を、前記所定の第1利用者及び前記他の第1利用者の共通施設として特定し、
     前記共通施設を表す情報を含む表示情報を、前記所定の表示情報として生成して、当該表示情報を前記所定の第1利用者の端末装置に送信する制御を行う、
     ことを特徴とする、管理装置の制御方法。
  12.  所定の表示情報に基づく画面を表示可能な表示部を備える第1利用者の端末装置と通信可能であり、
     前記第1利用者に所定の対象に関するサービスを提供し、
     コンピュータを具備する管理装置のプログラムを記録した、
     コンピュータ読み取り可能な記録媒体であって、
     前記コンピュータに、
     前記第1利用者を一意に識別する識別情報、前記第1利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得する第1取得処理と、
     前記第1取得処理で取得した前記第1利用者の基準地点の位置情報と前記施設の位置情報とに基づいて、前記第1利用者の基準地点からの距離が所定値以下である施設を、当該第1利用者の対象施設として特定する第1特定処理と、
     所定の第1利用者の端末装置からの要求に応じて、前記所定の第1利用者の対象施設であり、且つ、前記所定の第1利用者の端末装置において選択された他の第1利用者の対象施設である施設の一部または全部を、前記所定の第1利用者及び前記他の第1利用者の共通施設として特定する第2特定処理と、
     前記第2特定処理で特定した前記共通施設を表す情報を含む表示情報を、前記所定の表示情報として生成する表示情報生成処理と、
     前記表示情報生成処理で生成した前記表示情報を前記所定の第1利用者の端末装置に送信する制御を行う送信制御処理と、
     を実行させる管理装置のプログラムを記録した、
     ことを特徴とするコンピュータ読み取り可能な記録媒体。
     
PCT/JP2013/059647 2012-08-17 2013-03-29 管理装置、サービス提供システム、管理装置の制御方法、及び、コンピュータ読み取り可能な記録媒体 Ceased WO2014027477A1 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2012-180892 2012-08-17
JP2012180892 2012-08-17
JP2013-068905 2013-03-28
JP2013068905A JP6124000B2 (ja) 2012-08-17 2013-03-28 管理装置、サービス提供システム、管理装置の制御方法、及び、管理装置のプログラム。

Publications (1)

Publication Number Publication Date
WO2014027477A1 true WO2014027477A1 (ja) 2014-02-20

Family

ID=50613791

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/059647 Ceased WO2014027477A1 (ja) 2012-08-17 2013-03-29 管理装置、サービス提供システム、管理装置の制御方法、及び、コンピュータ読み取り可能な記録媒体

Country Status (2)

Country Link
JP (1) JP6124000B2 (ja)
WO (1) WO2014027477A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6133518B2 (ja) * 2014-11-14 2017-05-24 楽天株式会社 レコメンドシステム、レコメンド方法及びレコメンドプログラム
KR101779503B1 (ko) * 2016-02-15 2017-09-19 충남대학교산학협력단 매칭 서비스 시스템 및 방법
JP7392930B2 (ja) * 2022-02-04 2023-12-06 株式会社球 検索サーバ、検索方法およびプログラム
JP7360514B1 (ja) * 2022-07-28 2023-10-12 楽天グループ株式会社 サーバ装置、予約方法、ならびに、プログラム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010033484A (ja) * 2008-07-31 2010-02-12 Fujitsu Ltd 宴会場所推薦装置および宴会場所推薦プログラム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010033484A (ja) * 2008-07-31 2010-02-12 Fujitsu Ltd 宴会場所推薦装置および宴会場所推薦プログラム

Also Published As

Publication number Publication date
JP6124000B2 (ja) 2017-05-10
JP2014056562A (ja) 2014-03-27

Similar Documents

Publication Publication Date Title
JP6185223B2 (ja) サーバシステム
JP2014112345A (ja) 管理装置、サービス提供システム、管理装置の制御方法、及び、管理装置のプログラム
KR101649749B1 (ko) 온라인 여행 정보 제공 시스템
JP2011095942A (ja) 共用設備利用予約システム
JP6124000B2 (ja) 管理装置、サービス提供システム、管理装置の制御方法、及び、管理装置のプログラム。
JP6023599B2 (ja) 情報提供装置、情報提供システム、情報提供装置の制御方法、及び、情報提供装置のプログラム。
JP6082957B2 (ja) 管理装置、サービス提供システム、管理装置の制御方法、及び、管理装置のプログラム。
KR20150085185A (ko) 위치 기반 소셜 네트워크와 연계된 땅따먹기 게임 수행 방법 및 이를 이용한 시스템
JP6529469B2 (ja) サーバ、その制御方法及びその制御プログラム
WO2008013061A1 (en) Competition facility reservation system, reservation registration device, record information processing method, and record information processing program
JP5831084B2 (ja) スポット情報提供装置、スポット情報提供システム及びスポット情報提供プログラム
JP5161175B2 (ja) グループ予約支援システム
JP6097953B2 (ja) 管理装置、管理装置と通信可能な端末装置、サービス提供システム、管理装置の制御方法、端末装置のプログラム及び管理装置のプログラム
JP5950803B2 (ja) 予約管理装置のプログラム、予約管理装置の制御方法、予約管理装置、及び、入場処理システム
JP2020155127A (ja) 不動産サーバ及び不動産検索システム
JP6145764B2 (ja) 情報提供装置のプログラム、情報提供装置の制御方法、情報提供装置、及び、情報提供システム
JP2014146188A (ja) 情報提供装置のプログラム、情報提供装置の制御方法、情報提供装置、及び、情報提供システム
JP2014021737A (ja) 管理装置、サービス提供システム、管理装置の制御方法、及び、管理装置のプログラム
JP2014119905A (ja) 管理装置、サービス提供システム、管理装置の制御方法、及び、管理装置のプログラム。
JP2002015192A (ja) 取引対象評価方法、取引対象評価システム、取引対象評価装置及び記録媒体、並びにホテル評価方法、ホテル評価装置、ホテル評価システム及び記録媒体、並びにホテル予約受付方法、ホテル予約受付システム、ホテル予約受付装置及び記録媒体
JP2018120493A (ja) 情報処理装置、情報処理方法及びプログラム
KR101946202B1 (ko) 사용자 참여형 건축물정보 서비스 플랫폼 서버
JP2014119835A (ja) 情報提供装置のプログラム、情報提供装置の制御方法、情報提供装置、及び、情報提供システム
JP2014038415A (ja) 催事管理装置の管理方法、催事管理装置、及び、催事管理装置のプログラム
JP2020155126A (ja) 不動産サーバ及び不動産検索システム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13879388

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13879388

Country of ref document: EP

Kind code of ref document: A1