Program and system
The program addresses user identifier conflicts by managing transfers and registrations, ensuring users can use unique identifiers and resolving conflicts efficiently, enhancing service convenience.
Patent Information
- Application Number
- JP2024048583
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-03-25
- Publication Date
- 2025-10-07
AI Technical Summary
Existing technologies fail to allow users to use a unique character string as a user identifier in online services, leading to conflicts and inconvenience when multiple users share the same identifier.
A program that controls a computer to manage user identifiers by allowing a first user to use a second user's identifier under certain conditions and restricting the second user, using a control means to transfer and register alternative identifiers.
Improves service convenience by enabling users to use unique character strings and efficiently managing identifier conflicts, allowing immediate service access and fair transfer of popular identifiers.
Smart Images

Figure 2025148018000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a program and a system. [Background technology]
[0002] In services (e.g., online games, virtual spaces, and social networking sites) that are used by multiple users via the Internet, the multiple users are uniquely identified by user identifiers. Some of these services allow the use of any character string designated by the user as a user identifier.
[0003] In such services, there are cases where a character string specified by a first user is already being used as a user identifier for a second user. When multiple users' user identifiers conflict, there is a technology to differentiate them by password (see, for example, Patent Document 1). [Prior art documents] [Patent documents]
[0004] [Patent Document 1] Patent No. 6437011 Summary of the Invention [Problem to be solved by the invention]
[0005] However, the technique of Patent Document 1 cannot satisfy the user's desire to use a user identifier as a unique character string that represents the user.
[0006] The present invention has been made in view of the above circumstances, and an object of the present invention is to provide a program that improves the convenience of the service. [Means for solving the problem]
[0007] In order to solve the above problem, the program of the present invention causes a computer to function as a control means that, when a character string designated by a first user as a user identifier that uniquely identifies the user within a service overlaps with the user identifier of a second user, and when certain conditions are met, controls the computer to allow the first user to use the user identifier of the second user and restrict the second user from using it. [Effects of the Invention]
[0008] According to the present invention, it is possible to improve the convenience of the service. [Brief explanation of the drawings]
[0009] [Figure 1] 1 is a diagram illustrating an overview of a system according to an embodiment of the present invention. [Figure 2] FIG. 2 is a hardware configuration diagram of a server. [Figure 3] 1 is a hardware configuration diagram of a user terminal; [Figure 4] 10 is a data example of a user identifier table. [Figure 5] FIG. 2 is a functional block diagram of a server. [Figure 6] 4 is a flowchart of an identifier registration process according to the first embodiment. [Figure 7] 10 is a flowchart of a transfer possibility determination process. [Figure 8] 10A shows an example of an identifier input screen and a transfer permission screen (B). [Figure 9] 10A shows an example of data in a specific character table, and FIG. 10B shows an example of a specific character selection screen. [Figure 10] 10 is a flowchart of an identifier registration process according to the second embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0010] A system 1 according to an embodiment will be described below with reference to the drawings. Note that the embodiment of the present invention described below is an example of how the present invention can be realized, and the scope of the present invention is not limited to the scope of the described embodiment. Therefore, the present invention can be implemented by adding various modifications to the embodiment.
[0011] [First embodiment] [System 1 Overview] FIG. 1 is a diagram illustrating an overview of a system 1 according to this embodiment. As shown in FIG. 1, the system 1 mainly includes a server 10 and user terminals 20A, 20B, 20C, and 20D (hereinafter, these may be collectively referred to as "user terminals 20"). Note that while four user terminals 20 are illustrated in FIG. 1, examples of the user terminals 20 included in the system 1 are not limited to this. The server 10 and the user terminals 20 are connected to each other so as to be able to communicate with each other via a communication network 2. Specific examples of the communication network 2 are not particularly limited, and may include, for example, the Internet, a mobile communication system (e.g., 4G, 5G, etc.), a wireless network such as Wi-Fi (registered trademark), or a combination of these.
[0012] The system 1 according to this embodiment realizes a service that uses the communication network 2. More specifically, the system 1 according to this embodiment realizes a service that is linked (synchronized) among a plurality of user terminals 20A to 20D that are connected by the communication network 2. Examples of services that the system 1 realizes include an online game that progresses in cooperation with a plurality of user terminals 20, a virtual space in which users of a plurality of user terminals 20A to 20D communicate via avatars, and a social networking service (SNS) in which messages and images are published or exchanged.
[0013] [Server 10 configuration] 2 is a hardware configuration diagram of server 10. Server 10 is realized by, for example, a general-purpose computer such as a workstation or a personal computer. As shown in FIG. 2, server 10 mainly includes a processor 11, memory 12, storage 13, an input / output interface 14, and a communication interface 15. Each component of server 10 is connected to a communication bus 19.
[0014] The processor 11 performs the processes described below by executing a series of instructions included in a server program 13P stored in the memory 12 or the storage 13. The processor 11 is realized as, for example, a central processing unit (CPU), a graphics processing unit (GPU), a micro processing unit (MPU), a field-programmable gate array (FPGA), or other devices.
[0015] The memory 12 temporarily stores a server program 13P and data. The server program 13P is loaded from, for example, the storage 13. The data includes data input to the server 10 and data generated by the processor 11. For example, the memory 12 is realized as a RAM (Random Access Memory) or other volatile memory.
[0016] The storage 13 permanently stores the server program 13P and data. The storage 13 is realized, for example, as a ROM (Read-Only Memory), a hard disk drive, a flash memory, or other non-volatile storage device. The storage 13 may also be realized as a removable storage device such as a memory card. As yet another example, the storage 13 may be connected to the server 10 as an external storage device instead of being built into the server 10. With this configuration, for example, in a situation where multiple user terminals 20 are used, such as an amusement facility, it becomes possible to collectively update the server program 13P and data.
[0017] The input / output interface 14 is an interface for connecting external devices such as a monitor, input device (e.g., keyboard, pointing device), external storage device, speaker, camera, microphone, sensor, etc. to the server 10. The processor 11 communicates with the external devices through the input / output interface 14. The input / output interface 14 is realized using, for example, a Universal Serial Bus (USB), a Digital Visual Interface (DVI), a High-Definition Multimedia Interface (HDMI (registered trademark)), or other terminals.
[0018] The communication interface 15 communicates with other devices (e.g., user terminal 20) connected to the communication network 2. The communication interface 15 is realized as, for example, a wired communication interface such as a LAN (Local Area Network), or a wireless communication interface such as Wi-Fi (Wireless Fidelity), Bluetooth (registered trademark), or NFC (Near Field Communication).
[0019] [Configuration of user terminal 20] The user terminal 20 is realized as, for example, an HMD (Head Mounted Display) set, a tablet terminal, a wearable device, smart glasses, a smartphone, a feature phone, a laptop computer, a desktop computer, etc. In this embodiment, an example of the user terminal 20 as a tablet terminal will be described as shown in FIG.
[0020] Fig. 3 is a hardware configuration diagram of the user terminal 20. As shown in Fig. 3, the user terminal 20 mainly includes a processor 21, a memory 22, a storage 23, a communication interface 25, a monitor 31, cameras 33 and 34, a microphone 35, a speaker 36, a motion sensor 41, a position sensor 42, and an operation device 43 (operation unit). Each component of the user terminal 20 is connected to a communication bus 29.
[0021] The processor 21, memory 22, storage 23, and communication IF 25 have the same configuration as the processor 11, memory 12, storage 13, and communication IF 15 of the server 10. The storage 23 also stores a terminal program 23P.
[0022] Monitor 31 is provided on the surface of a flat housing, as shown in Fig. 1, for example. Monitor 31 is a display device (display unit) that displays images or videos. Camera 33 is a so-called in-camera that is attached to the surface of the flat housing and captures an image of the face of a user viewing monitor 31. Camera 34 is a so-called out-camera that is attached to the back surface of the flat housing (the surface opposite to monitor 31) and captures an image of the surroundings.
[0023] The microphone 35 converts the user's speech into an audio signal (electrical signal) and outputs it. The speaker 36 converts the audio signal into sound and outputs it to the user. Note that the user terminal 20 may include earphones instead of the speaker 36.
[0024] The motion sensor 41 detects the motion of the housing (for example, rotation around three mutually orthogonal axes). The motion sensor 41 may be realized by, for example, an angular velocity sensor, a geomagnetic sensor, a vibration sensor, or an acceleration sensor.
[0025] The position sensor 42 detects the current location of the user terminal 20. Since the user terminal 20 is assumed to be carried by a user, the location of the user terminal 20 corresponds to the location of the user who carries the user terminal 20. The position sensor 42, for example, acquires a signal from a GPS (Global Positioning Satellite) and outputs information indicating the current location (hereinafter referred to as "current location information"). Specific examples of the current location information are not particularly limited, and may be, for example, a combination of the latitude and longitude of the current location. The user terminal 20 may calculate the number of steps, movement distance, and movement direction of the user using the detection results of the motion sensor 41 and the position sensor 42. The user terminal 20 may then proceed with an event, described below, triggered by at least one of the calculated number of steps, movement distance, and movement direction. The user's location may be identified using values detected by an external device (sensor). For example, the results of detection by a photographing device or a position sensor (such as an infrared sensor) installed in a building may be used. Furthermore, a user may own multiple terminals (devices) and the location of the user may be identified by sharing the detection results of the sensors of the devices.
[0026] The operation device 43 accepts input (operation) of commands by the user to the user terminal 20. The operation device 43 is, for example, a touch panel that is superimposed on the monitor 31 and accepts various touch operations by the user. In other words, the monitor 31 according to this embodiment is a touch panel display unit. As another example, the user terminal 20 may be provided with a controller equipped with buttons, an operation stick, etc. as the operation device 43.
[0027] [Example of user identifier table data] A user who uses a service is uniquely identified within the service by a user identifier. That is, the user identifier is an identifier that is not allowed to be duplicated within the service. Furthermore, the user identifier according to this embodiment is composed of any character string designated by the user within the scope of predetermined rules (e.g., number of characters, usable characters). The user identifier may be composed of single-byte characters (e.g., half-width alphabets, numbers, symbols, etc.), or may include multi-byte characters (e.g., full-width kanji, hiragana, katakana, hangul, etc.).
[0028] Furthermore, the user identifier is made public to other users within the service as a character string representing the user. As one example, the user identifier may be made public to other users as the name (e.g., nickname) of the user. As another example, the user identifier may be used as a destination when sending a message or an image to the user. That is, the user identifier is used within the service as a unique character string representing the corresponding user. Note that the server 10 may use the user identifier to identify a user who uses the service, or may assign an identifier separate from the service identifier to the user.
[0029] 4 shows an example of data in a user identifier table. The user identifier table is a table for managing user identifiers of users who use a service. The user identifier table is stored, for example, in the storage 13 of the server 10. The user identifier table includes identifier records corresponding to users who use a service. The identifier records include, for example, a terminal identifier, a use identifier, a reservation identifier, a lock flag associated with each of the use identifier and the reservation identifier, and contact information.
[0030] An identifier record is registered in the user identifier table when a user starts using a service (new registration). That is, in the example of FIG. 4, the users of user terminals 20A and 20B have not yet used the service, while the users of user terminals 20C and 20D have already used the service. Hereinafter, users who own user terminals 20A, 20B, 20C, and 20D will be referred to as "user A," "user B," "user C," and "user D." The following description will focus on the identifier record of user C, but the same applies to the other identifier records.
[0031] The terminal identifier "20C" is an identifier that uniquely identifies the user terminal 20C that is connected to the server 10 (i.e., that uses the service provided by the server 10). There are no particular limitations on the specific example of the terminal identifier, and it may be, for example, a MAC (Media Access Control) address assigned to the communication IF 25 of the user terminal 20C.
[0032] The usage identifier "ABC" is the user identifier currently being used by user C within the service. The reservation identifier "DEF" is the user identifier that user C has reserved for use within the service. In other words, at the present time, user C is identified within the service by the usage identifier. On the other hand, user C can switch the user identifier that identifies him or her within the service from the usage identifier "ABC" to the reservation identifier "DEF" at any time. In other words, the reservation identifier "DEF" is a character string that does not currently function as user C's user identifier, but may potentially be used as user C's user identifier in the future. Note that the reservation identifier does not need to be set in the identifier record, for example, or multiple reservation identifiers may be set.
[0033] The lock flag is a flag that indicates whether or not to reject the transfer of the corresponding user identifier (usage identifier, reservation identifier). The lock flag is set to either a first value "ON" that indicates that the transfer of the corresponding user identifier is rejected, or a second value "OFF" that indicates that the decision is to be reserved. The initial value of the lock flag is the second value "OFF". Furthermore, the server 10 can switch the setting value of the lock flag from the second value "OFF" to the first value "ON" when user C consumes a specified item within the service.
[0034] The item for setting the lock flag to the first value "ON" may be provided, for example, by a charge, or may be provided when a predetermined condition is met (for example, when the number of registrations on the friend list or the number of followers reaches a predetermined number). Furthermore, the server 10 may switch the setting value of the lock flag from the first value "ON" back to the second value "OFF" when a predetermined time has elapsed since the lock flag was set to the first value "ON". The period for which the lock flag is maintained at the first value "ON" may vary, for example, depending on the amount of charge or the degree to which the predetermined condition is met.
[0035] The contact "XXX-XXXX-XXXX" is a contact for making an inquiry to User C. It is desirable that the contact be one that allows communication with User C without going through the service (through a channel separate from the service). The contact may be, for example, a phone number or email address set by User C.
[0036] [Server 10 functional block diagram] Fig. 5 is a functional block diagram of server 10. As shown in Fig. 5, server program 13P loaded into memory 12 causes server 10 (computer) to function as first determination means 110, assignment means 120, inquiry means 130, second determination means 140, decision means 150, control means (transfer means) 160, and registration means 170. Note that, although the present embodiment will be described focusing on the functional block that edits the user identifier table, server 10 may further include other control means (for example, control means for providing services).
[0037] The first determination means 110 determines whether a character string designated by the first user as a user identifier overlaps with the user identifier of the second user. The assignment means 120 assigns a temporary user identifier to the first user when the query means 130 executes a query. When the first determination means 110 determines that the character string designated by the first user overlaps with the user identifier of the second user, the query means 130 executes a query as to whether to permit the first user to use the user identifier of the second user (transfer of the user identifier to the second user).
[0038] The second determination means 140 determines whether or not multiple users have specified a character string that overlaps with the user identifier of the second user during the period from when the query means 130 executed the query until a predetermined period has elapsed or until use by the first user is permitted (the second user permits transfer). When the second determination means 140 determines that multiple users have specified a character string that overlaps with the user identifier of the second user, the determination means 150 determines the user to whom use of the user identifier of the second user will be permitted (to transfer the user identifier of the second user).
[0039] When a predetermined condition (described later) is satisfied, the control means (transfer means) 160 controls so as to permit the first user to use the user identifier of the second user and restrict use by the second user. More specifically, the control means (transfer means) 160 registers the user identifier of the second user as the user identifier of the first user (permitting use by the first user) and registers another character string as the user identifier of the second user (restricting use by the second user) in the user identifier table shown in FIG. 4. Hereinafter, this process will be referred to as "transferring the user identifier of the second user to the first user," and the control means 160 will be referred to as "transfer means 160." The registration means 170 registers a character string different from the user identifier of the second user as the user identifier of the first user.
[0040] [Identifier registration process] FIG. 6 is a flowchart of the identifier registration process according to the first embodiment. FIG. 7 is a flowchart of the transferability determination process. FIG. 8 is an example of an identifier input screen (A) and a transferability screen (B). The identifier issuance process is a process of registering a user identifier (identifier record) in a user identifier table in accordance with a request from a user who uses the service. As one example, the identifier issuance process is executed when a user newly starts using the service. As another example, the identifier issuance process may be executed when a user currently using the service changes their user identifier. As yet another example, the identifier issuance process may be executed when multiple servers providing a service are merged or abolished.
[0041] The identifier registration process progresses as the server program 13P causes the server 10 (an example of a computer) to execute the following process, and the terminal program 23P causes the user terminal 20 (another example of a computer) to execute the following process. Hereinafter, the server program 13P (terminal program 23P) causing the server 10 (user terminal 20) to execute a process will be simply expressed as "the server 10 (user terminal 20) executes a process." In this embodiment, users A and B are referred to as first users, and users C and D are referred to as second users.
[0042] First, the user terminal 20A displays the identifier input screen shown in Fig. 8(A) on the monitor 31 (S11). The identifier input screen is a screen for allowing the user A to input (specify) a user identifier that identifies the user A within the service. The user terminal 20A accepts, via the operation device 43, an operation by the user A to input a character string that constitutes the user identifier into a text box and select the [Register] icon.
[0043] Then, when the [Register] icon is selected by user A, user terminal 20A transmits a registration request to server 10 via communication IF 25 (S12). The registration request includes, for example, the terminal identifier “20A” of user terminal 20A, the character string entered in the text box (hereinafter referred to as “input character string”), and user A's contact information “ZZZ-ZZZZ-ZZZZ”.
[0044] When the server 10 (first determination means 110) receives a registration request from the user terminal 20A via the communication IF 15 (S12), it determines whether the input string included in the registration request overlaps with a user identifier registered in the user identifier table (i.e., the user identifier of the second user) (S13).
[0045] Next, if the first determination means 110 determines that the input character string (e.g., "XYZ") is not registered in the user identifier table (i.e., is not a duplicate) (S13: No), the server 10 (registration means 170) registers the input character string "XYZ" as the user identifier (usage identifier) of user A (S14). That is, the server 10 (registration means 170) registers an identifier record including the terminal identifier "20A", the usage identifier "XYZ", the lock flag "OFF", and the contact information "ZZZ-ZZZZ-ZZZZ" in the user identifier table.
[0046] Furthermore, the server 10 (registration means 170) transmits a registration completion notification to the user terminal 20A via the communication IF 15 (S15). The registration completion notification is a notification indicating that the input character string has been registered as a user identifier. Then, when the user terminal 20A receives the registration completion notification from the server 10 via the communication IF 25 (S15), it displays on the monitor 31 a registration completion screen indicating that the input character string "XYZ" has been registered as a user identifier. Thereafter, user A can use the service using the user identifier "XYZ".
[0047] On the other hand, if the first determination means 110 determines that the input character string (e.g., "ABC") is registered in the user identifier table (i.e., is a duplicate) (S13: Yes), the server 10 (assignment means 120) issues and registers an alternative character string (e.g., "PQR") as a temporary user identifier (hereinafter referred to as "temporary identifier") for user A (S16). That is, the server 10 (assignment means 120) registers an identifier record including the terminal identifier "20A", the usage identifier "PQR", the lock flag "OFF", and the contact information "ZZZ-ZZZZ-ZZZZ" in the user identifier table. The alternative character string may be input by user A, for example, or may be randomly determined by the assignment means 120.
[0048] Furthermore, the server 10 (granting means 120) transmits a provisional registration notification to the user terminal 20A via the communication IF 15 (S17). The provisional registration notification is a notification indicating that the alternative character string "PQR" has been registered as a provisional user identifier. Then, when the user terminal 20A receives the provisional registration notification from the server 10 via the communication IF 25 (S17), it displays on the monitor 31 a provisional registration screen indicating that the alternative character string "PQR" has been registered as a provisional identifier. Thereafter, user A can use the service using the provisional identifier "PQR".
[0049] Furthermore, the server 10 (inquiry means 130, second determination means 140, decision means 150) executes the transfer permission determination process shown in FIG. 8 in parallel with the processing of the granting means 120 (S18). In other words, the server 10 (granting means 120) executes the processing of step S16 when the inquiry means 130 executes an inquiry, which will be described later. The transfer permission determination process is a process for determining whether or not the user identifier "ABC" of user C (second user) should be transferred to user A (first user). Details of the transfer permission determination process will be described later with reference to FIG. 8.
[0050] Next, if the transfer of the user identifier "ABC" is rejected in the transfer permission determination process (S19: No), the server 10 (transfer means 160) sends a transfer-prohibited notice to the user terminal 20A via the communication IF 15 (S20). The transfer-prohibited notice is a notice indicating that the user identifier "ABC" of user C cannot be transferred to user A. Then, when the user terminal 20A receives the transfer-prohibited notice from the server 10 via the communication IF 25 (S20), it displays a transfer-prohibited screen on the monitor 31 indicating that the input character string "ABC" cannot be transferred. After this, user A continues to use the service using the temporary identifier "PQR".
[0051] On the other hand, if the transfer of the user identifier "ABC" is permitted in the transfer permission determination process (S19: Yes), the server 10 (transfer means 160) transfers the user identifier "ABC" of user C to user A (S21). That is, the server 10 (transfer means 160) overwrites the temporary identifier "PQR" with the transferred user identifier "ABC" in the identifier record of user A. Also, the server 10 (transfer means 160) replaces the transferred used identifier "ABC" with another user identifier in the identifier record of user C. The user identifier to be replaced may be, for example, a reserved identifier, may be newly specified by user C, or may be randomly determined by the transfer means 160.
[0052] Furthermore, the server 10 (transfer means 160) transmits a transfer completion notification to the user terminal 20A via the communication IF 15 (S22). The transfer completion notification is a notification indicating that the user identifier "ABC" of user C has been transferred to user A (that is, user A's use of the user identifier "ABC" is permitted, and user C's use is restricted). Then, when the user terminal 20A receives the transfer completion notification from the server 10 via the communication IF 25 (S22), it displays on the monitor 31 a transfer completion screen indicating that the input character string "ABC" has been transferred. Thereafter, user A continues to use the service using the user identifier "ABC".
[0053] Furthermore, user terminal 20A may accept input of a thank-you message or selection of an item to be used in the service from user A through a transfer completion screen. Then, user terminal 20A may transmit the thank-you message or the item to user terminal 20C via server 10.
[0054] [Transfer possibility determination process] First, the server 10 (inquiry means 130) determines the setting value of the lock flag corresponding to the user identification (user C's usage identifier) that overlaps with the input character string "ABC" (S31). Then, if the second value "OFF" is set in the lock flag (S31: OFF), the server 10 (inquiry means 130) executes an inquiry to user C as to whether or not to permit the transfer of the user identifier "ABC" (S32). More specifically, the server 10 (inquiry means 130) transmits a transfer permission inquiry to user C's contact address "XXX-XXXX-XXXX" via the communication IF 15.
[0055] The transfer permission inquiry is an inquiry that prompts the user to select whether or not to permit the transfer of user identifier "ABC" to another user A (permit other users to use user identifier "ABC") via, for example, the transfer permission screen shown in FIG. 8(B). The transfer permission inquiry includes, for example, the user identifier "ABC" to be transferred, a predetermined period (for example, one week), and a URL (Uniform Resource Locator) for displaying the transfer permission screen. The transfer permission inquiry can be realized, for example, by email or short message.
[0056] Furthermore, the server 10 (inquiry means 130) waits to execute subsequent processing until a predetermined period (e.g., one week) has elapsed since sending the transfer permission inquiry (S33) or until a transfer permission notice (S37) or a transfer refusal notice (S38) is received from the user terminal 20C. As one example, the predetermined period may be a fixed value. As another example, the server 10 (inquiry means 130) may change the length of the predetermined period depending on whether the input character string overlaps with a usage identifier or a reservation identifier. More specifically, the server 10 (inquiry means 130) may shorten the predetermined period when the input character string overlaps with the reservation identifier "DEF" compared to when the input character string overlaps with the usage identifier "ABC".
[0057] When the transfer permission inquiry URL is selected, the user terminal 20C logs in to the service (S34: Yes) and displays the transfer permission screen shown in FIG. 8(B) on the monitor 31 (S35). Logging in to a service is an example of using the service. The transfer permission screen is a screen that allows user C to select whether to allow the transfer of user identifier "ABC" (use by user A of user identifier "ABC"). The transfer permission screen includes an "Allow" icon indicating that the transfer is permitted, and a "Reject" icon indicating that the transfer is rejected. Furthermore, the user terminal 20C accepts user C's operation of selecting the "Allow" icon or the "Reject" icon via the operation device 43 (S36).
[0058] Then, when the [Allow] icon is selected by user C (S36: Yes), the user terminal 20C transmits a transfer permission notification to the server 10 via the communication IF 25 (S37). The transfer permission notification is a notification indicating that the transfer of the user identifier "ABC" is permitted. After this, user C continues to use the service using the other identifier replaced in step S21. In addition, user C who selected the [Allow] icon may be given a reward within the service by the server 10 or user A.
[0059] On the other hand, if the [Reject] icon is selected by user C (S36: No), the user terminal 20C transmits a transfer rejection notice to the server 10 via the communication IF 25 (S38). The transfer rejection notice is a notice indicating that the transfer of user identifier "ABC" is rejected. After this, user C continues to use the service using user identifier "ABC."
[0060] Next, if the server 10 (second determination means 140) receives a transfer permission notification from the user terminal 20C via the communication IF 15 before the predetermined period has elapsed (S33: No & S37), it determines whether or not multiple users A and B have specified character strings that overlap with the user identifier "ABC" up to this point (in other words, whether multiple registration requests including the input character string "ABC" have been received) (S39). Similarly, the server 10 (second determination means 140) also executes the process of step S39 if the predetermined period has elapsed before receiving the transfer permission notification (S33: Yes).
[0061] Next, if the second determination means 140 determines that multiple users A and B have requested the transfer of the user identifier "ABC" (S39: Yes), the server 10 (determination means 150) determines the user to whom the user identifier "ABC" should be transferred from among users A and B (S40). Then, the server 10 (determination means 150) determines that the transfer is permitted for the user determined in step S40, and terminates the transfer permission determination process.
[0062] As an example, the server 10 (determination means 150) may determine by lottery whether to transfer the user identifier "ABC" to user A or B. In this case, the server 10 (determination means 150) may make users A and B consume compensation (e.g., real currency, items obtainable within the service). Furthermore, the server 10 (determination means 150) may grant part or all of the compensation consumed by users A and B to user C.
[0063] As another example, the server 10 (determination means 150) may determine to which of user A and B the user identifier "ABC" should be transferred by an auction. In this case, the server 10 (determination means 150) may allow users A and B to specify the amount of consideration that they can consume to acquire the user identifier "ABC". Then, the server 10 (determination means 150) may decide to transfer the user identifier "ABC" to the user who has specified the largest amount of consideration. Furthermore, the server 10 (determination means 150) may allow the user who has been determined to transfer the user to consume the consideration. Furthermore, the server 10 (determination means 150) may grant part or all of the consideration consumed by the user to user C.
[0064] On the other hand, if the second judgment means 140 judges that only user A has requested the transfer of user identifier "ABC" (S39: No), the server 10 (decision means 150) skips the processing of step S40, assumes that the transfer has been permitted for user A, and terminates the transfer permission judgment process.
[0065] Furthermore, when the lock flag is set to the first value "ON" (S31: ON), the server 10 (inquiry means 130) skips the processes from step S32 onwards, determines that the transfer of the user identifier "ABC" has been denied, and terminates the transfer permission determination process. Similarly, when the server 10 (inquiry means 130) receives a transfer refusal notification from the user terminal 20C via the communication IF 15 (S38), it determines that the transfer of the user identifier "ABC" has been denied, and terminates the transfer permission determination process.
[0066] Setting the second value "OFF" to the lock flag (S31: OFF) is an example of a predetermined condition being satisfied. Also, the passage of a predetermined period of time since the query was executed (the second user has not used the service for a predetermined period of time) (S33: Yes) is an example of a predetermined condition being satisfied. Furthermore, receiving a transfer permission notification (the second user has permitted the transfer of the user identifier) (S37) is an example of a predetermined condition being satisfied. The predetermined condition includes, for example, at least one of the above conditions. However, the predetermined condition is not limited to the above examples.
[0067] [Effects of the first embodiment] According to the first embodiment, for example, when user C is not using the service or when user C does not care about the user identifier "ABC", the user identifier "ABC" can be transferred to user A. This allows user A to use the user identifier "ABC" as a unique character string that represents himself, thereby improving the convenience of the service.
[0068] Furthermore, according to the first embodiment, when the input character string overlaps with the reservation identifier "DEF," the predetermined period in step S33 is shortened compared to when the input character string overlaps with the use identifier "ABC." This allows reservation identifiers that are not actually being used for service use to be transferred quickly.
[0069] Furthermore, according to the first embodiment, when the lock flag is set to the first value "ON," the transfer of the user identifier is rejected without inquiring whether the transfer is permitted. This prevents the user identifier from being transferred without the user's knowledge by protecting (locking) the user identifier through charges or item consumption, even if the service has not been used for a while.
[0070] Furthermore, according to the first embodiment, while user C is being inquired about whether or not the user identifier "ABC" can be transferred, user A can use the service with the temporary identifier. This allows user A to use the service immediately, further improving the convenience of the service.
[0071] Furthermore, according to the first embodiment, when multiple users A and B request the transfer of user C's user identifier "ABC", the transfer destination is determined by lottery or auction, so that the popular user identifier "ABC" can be transferred fairly.
[0072] It should be noted that the processing of the system 1 is not limited to the examples of Figures 6 and 8. Other examples of the processing of the system 1 will be described below.
[0073] At the time of receiving the registration request (S12), the server 10 (first determination means 110) may determine whether or not a predetermined period has passed since user C last used the service (i.e., last logged in) (another example of a predetermined condition). Then, if the first determination means 110 determines that the predetermined period has not passed since user C last used the service, the server 10 (inquiry means 130) may execute the processes from step S16 onwards. On the other hand, if the first determination means 110 determines that the predetermined period has passed since user C last used the service, the server 10 (transfer means 160) may transfer the user identifier of user C to user A (S21) without executing the processes from step S16 onwards.
[0074] Furthermore, the processes of steps S16 to S17 can be omitted. If the transfer of the user identifier "ABC" is rejected in the transfer permission determination process (S19: No), the server 10 (registration means 170) may register a character string different from the input character string as the user identification of user A. The character string different from the input character string may be input by user A via user terminal 20A, or may be generated randomly by registration means 170.
[0075] Furthermore, when the server 10 (first determination means 110) determines that the input character string overlaps with the user identifier of user C (S13: Yes), the server 10 may allow user A to choose between requesting user C to transfer the user identifier or changing to another user identifier. Furthermore, the server 10 may limit the number of times and frequency that the same user can request transfer of the same user identifier. Furthermore, the server 10 may provide a function to block transfer requests from specific users to users who are already using the service.
[0076] Furthermore, whether or not to permit transfer of a user identifier (or the length of the predetermined period in step S33) may vary depending on, for example, the popularity of the user identifier or its popularity within the service. As one example, a user identifier that has received many transfer requests in the past or that includes a character string that has been frequently searched for on a search site may be more likely to be transferred. As another example, a user identifier that is highly popular within the service may be less likely to be transferred. As yet another example, the server 10 may announce within the service that if a user with a popular user identifier has not used the service for a long period of time, the user is likely to be permitted to transfer.
[0077] [Second embodiment] Fig. 9 shows an example of data in a specific character table (A) and an example of a specific character selection screen (B). Fig. 10 is a flowchart of an identifier registration process according to the second embodiment. Note that a detailed description of the commonalities with the first embodiment will be omitted, and the explanation will focus on the differences.
[0078] The storage 13 of the server 10 according to the second embodiment stores a specific character table shown in FIG. 9(A). The specific character table includes one or more specific character records. The specific character record stores achievement conditions and specific characters in association with each other. An achievement condition indicates a condition that can be achieved while using the service. Examples of achievement conditions include reaching a predetermined number of followers or friends, or achieving a high ranking in an event ranking. A specific character is a character (character string) that can be included in the user identifier only by a user who meets the achievement condition. One or more specific characters may correspond to one condition.
[0079] When the server 10 (first determination means) according to the second embodiment receives a registration request from the user terminal 20A via the communication IF 15 (S12), it determines whether or not the input character string (e.g., "ABC_famous") included in the registration request contains specific characters (S51). When the first determination means determines that the input character string contains the specific characters "famous" (S51: Yes), the server 10 (second determination means) determines whether or not the user A who sent the registration request has satisfied the corresponding achievement condition (e.g., 1,000 followers) (S52).
[0080] Next, when the second determination means determines that user A does not satisfy the achievement condition (S52: No), the server 10 (prohibition means) prohibits user A from using the input character string as a user identifier. More specifically, the server 10 (prohibition means) transmits a registration denial notification to the user terminal 20A via the communication IF 15 (S53). The registration denial notification is a notification prohibiting the input character string "ABC_famous" containing the target character "famous" from being used as a user identifier. When the user terminal 20A receives the registration denial notification from the server 10 via the communication IF 25 (S53), it prompts user A to re-input the character string to be used as a user identifier.
[0081] On the other hand, if the first determination means determines that the input character string does not include the target character (S51: No), and if the second determination means determines that user A has satisfied the achievement condition (S52: Yes), the server 10 (permission means) permits user A to use the input character string as a user identifier. More specifically, the server 10 (permission means) registers the input character string as user A's user identifier in the user identifier table (S54). In addition, the server 10 (permission means) transmits a registration permission notice to the user terminal 20A via the communication IF 15 (S55). The registration permission notice is a notice permitting the input character string "ABC_famous", which includes the target character "famous", to be used as a user identifier. When the user terminal 20A receives the registration permission notice from the server 10 via the communication IF 25 (S55), it allows user A to use the service using the user identifier.
[0082] According to the second embodiment, by setting in advance target characters that can only be used by users who have met the achievement conditions, it is possible to give the user identifier a title function, thereby further improving the convenience of the service.
[0083] 10, a request from user A (S12) is used as a trigger to determine (S52) whether user A has satisfied the achievement condition. As another example, server 10 (second determination means) may repeatedly determine at predetermined time intervals whether each of all users who use the service has satisfied the achievement condition registered in the specific character table. Then, when the second determination means determines that user A has satisfied the achievement condition, server 10 (permission means) may display the specific character selection screen shown in FIG. 9(B) on monitor 31 of user terminal 20A.
[0084] The specific character selection screen is a screen that allows user A to select one of a plurality of specific characters that corresponds to the achievement condition that user A has satisfied. User terminal 20A allows user A to select a specific character that he or she wishes to include in the user identifier from a plurality of specific characters, "famous," "popular," and "star," that correspond to the achievement condition that user A has satisfied, through the specific character selection screen. User terminal 20A may also allow user A to select a position (for example, before or after the user identifier) to add the selected specific character.
[0085] Next, the user terminal 20A adds the specific characters selected by the user A (e.g., "popular") to the current user identifier (e.g., "ABC") and notifies the server 10. Then, the server 10 (permission means) overwrites the current user identifier "ABC" of the user A with the new user identifier (e.g., "ABC_popular") acquired from the user terminal 20A.
[0086] [Other variations] Furthermore, the program according to the present invention is not limited to a single program, but may be a collection of multiple programs. Furthermore, the program according to the present invention is not limited to one executed by a single device, but may be shared and executed by multiple devices. Furthermore, the division of roles between the server 10 and the user terminal 20 is not limited to the example described above. That is, part of the processing of the server 10 may be executed by the user terminal 20, or part of the processing of the user terminal 20 may be executed by the server 10. The embodiments described in this specification may be combined in part or in whole, and some elements may be replaced with other elements, or some elements may be added, deleted, or modified. It is also acceptable to appropriately adopt technical elements known at the time of filing, even if they are not explicitly described in this specification.
[0087] Furthermore, some or all of the means implemented by the program can be implemented by hardware such as an integrated circuit. Furthermore, the program may be provided recorded on a non-transitory recording medium that can be read by a computer. Examples of recording media include hard disks, SD cards, DVDs, and servers on the Internet.
[0088] [Note] Some of the features of the present invention are summarized below. [assignment] For example, an object of the present invention is to improve the convenience of services. [Solution] (1) A program that causes a computer to function as a control means that, when a character string designated by a first user as a user identifier that uniquely identifies the user within a service overlaps with the user identifier of a second user, controls the second user to allow the first user to use the user identifier and restricts the second user from using the user identifier, if certain conditions are met. (2) The predetermined conditions are: The second user has not used the service for a predetermined period of time; The program according to (1) above, including at least one of the following: the second user has authorized the first user to use the program. (3) causing the computer to function as an inquiry unit that, when a character string designated by the first user overlaps with the user identifier of the second user, makes an inquiry to the second user as to whether or not to permit the first user to use the user identifier; The program described in (2) above, wherein the control means controls the user identifier of the second user to allow the first user to use the user identifier and to restrict the second user from using the user identifier if the second user does not use the service even after the specified period has elapsed since the query means executed the query. (4) The computer includes a storage device that stores, as the user identifier of the second user, a usage identifier currently being used by the second user within the service and a reservation identifier that the second user has reserved for use within the service; The program according to (3) above, wherein the querying means shortens the specified period when the character string specified by the first user overlaps with the reservation identifier more than when it overlaps with the use identifier. (5) The program described in (3) above, wherein the query means does not execute the query and denies the first user from using the second user's user identifier if the second user's user identifier is locked. (6) The program described in (3) above, wherein the control means controls the user identifier of the second user to permit use by the first user and restrict use by the second user when the second user permits use by the first user in response to the inquiry from the inquiry means. (7) causing the computer to function as an assigning unit that assigns the temporary user identifier to the first user when the querying unit executes the query; The program described in (6) above, wherein the control means overwrites the temporary user identifier with the user identifier of the second user when the specified period has elapsed or when use by the first user is permitted. (8) The program described in (6) above, which causes the computer to function as a decision means for deciding which user from among the multiple users will be allowed to use the user identifier of the second user when multiple users specify a string that overlaps with the user identifier of the second user between the time the query means executes the query and the time the specified period has elapsed or until use by the first user is permitted. (9) A system comprising a control means for controlling, when a character string designated by a first user as a user identifier that uniquely identifies the user within a service overlaps with the user identifier of a second user, allowing the first user to use the user identifier of the second user and restricting the second user from using the user identifier, if a predetermined condition is met. (10) The computer as a user identifier that uniquely identifies the user within the service. prohibiting means for prohibiting the user who does not satisfy a predetermined achievement condition in the service from using a character string including a predetermined target character; a program that functions as a permission means for permitting the user who has satisfied the achievement condition within the service to use a character string including the target character; The solution constituted by the above program may be appropriately applied to the fields of devices, systems, methods, and media. [Action and effect] According to the above solutions (1) and (9), the convenience of the service is improved. According to the above solution (2), it is possible to balance the disadvantage to the second user with the effective use of unused user identifiers. According to the above solution (3), it is possible to give the second user time to decide whether to transfer the user identifier. According to the above solution (4), the transfer hurdle can be appropriately changed between a user identifier in use and an unused user identifier. According to the above solution (5), it is possible to prevent the user identifier from being transferred without the second user's knowledge. According to the above solution (6), it is possible to suppress the disadvantage to the second user caused by the transfer of the user identifier. According to the above solution (7), the first user can use the service even during the grace period in which it is determined whether the transfer of the user identifier is permitted or not. According to the above solution (8), popular user identifiers can be transferred appropriately. According to the above solution (10), the service can be used by checking the user identifier, which improves the convenience of the service. [Explanation of symbols]
[0089] 1...system, 2...communication network, 10...server, 11,21...processor, 12,22...memory, 13,23...storage, 13P...server program, 14...input / output interface, 15,25...communication interface, 19,29...communication bus, 20...user terminal, 23P...terminal program, 31...monitor, 33,34...camera, 35...microphone, 36...speaker, 41...motion sensor, 42...position sensor, 43...operation device, 110...first determination means, 120...assignment means, 130...inquiry means, 140...second determination means, 150...determination means, 160...control means (transfer means), 170...registration means
Claims
1. A program that causes a computer to function as a control means that, when a character string designated by a first user as a user identifier that uniquely identifies a user within a service overlaps with the user identifier of a second user, controls the user identifier of the second user to allow the first user to use the user identifier and restricts the second user from using the user identifier, if certain conditions are met.
2. The predetermined condition is: The second user has not used the service for a predetermined period of time; The program according to claim 1 , further comprising at least one of: the second user permitting the first user to use the program;
3. causing the computer to function as an inquiry unit that, when a character string designated by the first user overlaps with the user identifier of the second user, makes an inquiry to the second user as to whether or not to permit the first user to use the user identifier; The program of claim 2, wherein the control means controls the user identifier of the second user to allow the first user to use the user identifier and to restrict the second user from using the user identifier if the second user does not use the service even after the predetermined period has elapsed since the query means executed the query.
4. the computer includes a storage that stores, as the user identifier of the second user, a usage identifier currently being used by the second user within the service and a reservation identifier that the second user has reserved for use within the service; 4. The program according to claim 3, wherein the querying means shortens the predetermined period when the character string specified by the first user overlaps with the reservation identifier, compared to when the character string overlaps with the use identifier.
5. 4. The program according to claim 3, wherein the querying means, if the user identifier of the second user is locked, does not execute the query and denies the first user from using the user identifier of the second user.
6. The program described in claim 3, wherein the control means controls the user identifier of the second user to allow the first user to use the user identifier and to restrict the second user from using the user identifier when the second user allows the first user to use the user identifier in response to the inquiry from the inquiry means.
7. causing the computer to function as an assigning unit that assigns the temporary user identifier to the first user when the querying unit executes the query; The program according to claim 6 , wherein the control means overwrites the temporary user identifier with the user identifier of the second user when the predetermined period has elapsed or when use by the first user is permitted.
8. The program described in claim 6, which causes the computer to function as a decision means for determining which user from among the multiple users will be allowed to use the user identifier of the second user when multiple users specify a string that overlaps with the user identifier of the second user between the time the query means executes the query and the time the specified period has elapsed or until use by the first user is permitted.
9. A system comprising a control means for controlling, when a character string designated by a first user as a user identifier that uniquely identifies the user within a service overlaps with the user identifier of a second user, allowing the first user to use the user identifier of the second user and restricting the second user from using the user identifier, if certain conditions are met.
10. The computer as a user identifier that uniquely identifies the user within the service, prohibiting means for prohibiting the user who does not satisfy a predetermined achievement condition in the service from using a character string including a predetermined target character; a program that functions as a permission means for permitting the user who has satisfied the achievement condition within the service to use a character string including the target character;
Citation Information
Patent Citations
Manufacture of semiconductor integrated circuit
JP1989037011A