WO2012015196A2 - Sns 상에서 어플리케이션간 이벤트 정보를 송수신하는 방법, 장치, 및 기록매체 - Google Patents

Sns 상에서 어플리케이션간 이벤트 정보를 송수신하는 방법, 장치, 및 기록매체 Download PDF

Info

Publication number
WO2012015196A2
WO2012015196A2 PCT/KR2011/005371 KR2011005371W WO2012015196A2 WO 2012015196 A2 WO2012015196 A2 WO 2012015196A2 KR 2011005371 W KR2011005371 W KR 2011005371W WO 2012015196 A2 WO2012015196 A2 WO 2012015196A2
Authority
WO
WIPO (PCT)
Prior art keywords
information
application
user
client
server
Prior art date
Application number
PCT/KR2011/005371
Other languages
English (en)
French (fr)
Other versions
WO2012015196A3 (ko
Inventor
오민환
신봉건
이영호
Original Assignee
(주)네오위즈게임즈
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
Priority claimed from KR1020100073927A external-priority patent/KR20120012053A/ko
Priority claimed from KR1020100082754A external-priority patent/KR101239096B1/ko
Application filed by (주)네오위즈게임즈 filed Critical (주)네오위즈게임즈
Publication of WO2012015196A2 publication Critical patent/WO2012015196A2/ko
Publication of WO2012015196A3 publication Critical patent/WO2012015196A3/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising

Definitions

  • a social network system or a game system using the same is provided to enable an organic coupling between information in a network system in a user and a computer.
  • the present specification relates to a social network system.
  • the event information of the application is stored, transmitted to another application, and the received event information is received by A method, apparatus, and recording medium are provided.
  • the present disclosure relates to a social network system, and particularly, a method and apparatus for storing usage information of an application in order to transmit and receive the usage information of the application between acquaintances or interested users on an SNS, and transmitting and receiving the application information in a client connection or information request process. , And a recording medium.
  • the present disclosure relates to a game system using an avatar, in particular, a behavior pattern is stored in the process of controlling the avatar by the user, and the avatar automatically changes the external situation or condition without the user's control by using the stored behavior pattern.
  • a behavior pattern is stored in the process of controlling the avatar by the user, and the avatar automatically changes the external situation or condition without the user's control by using the stored behavior pattern.
  • SNS social network systems
  • the conventional game was a method in which a computer and a person, or a person and a person compete and control items in a predetermined game.
  • people and people play games together to control the items or avatars in the game to achieve the same purpose, or reflect various situations that occur in such daily lives by reflecting daily life in the game.
  • Reproducible games are also increasing.
  • the user's avatar control is very finely and precisely, and the tendency of the user's inclination to be reflected in the avatar is increased, and thus, the field of implementing the homogeneity between the user and the avatar in the game is expected to be activated. Accordingly, there is a need for a system and method for allowing a user to set or be notified of various information related to the execution of an application or the use of an application.
  • An embodiment of the present specification is to transmit and receive event information between applications on an SNS, so that various information that may occur in an application may be checked without a separate process.
  • An embodiment of the present specification uses an application in all digital devices that can access an SNS, or an event between applications on an SNS so that event information generated during an application execution process such as acquaintances or interested users can be checked in real time or at regular intervals.
  • a method, apparatus, and recording medium for transmitting and receiving information are provided.
  • Method for transmitting and receiving event information between applications on the SNS is a system consisting of an application server group consisting of one or more application server and a notification server, the first application server of the application server group 1) transmitting an application to a client, wherein the first application server receives event setting information and user information to be notified of the event occurrence from the first client, and the first application server receives the event setting information and the user Transmitting the information to the notification server, the notification server storing the received event setting information and the user information, and the notification server configured the set information from the first application server.
  • Receiving event generation information, and the notification server includes transmitting the event occurrence information to one or more application servers included in the application server group.
  • a method for transmitting and receiving event information between applications on an SNS includes a system including an application server group including one or more application servers, wherein the first application server of the application server group provides an application to a first client. Transmitting, by the first application server, receiving and storing event setting information and user information to be notified of the event generation from the first client, and generating an event by the first application server confirming that the set event has occurred Generating information, and when the client logged in with the user information does not access the first application server, the first application server includes one or more applications included in the application server group. To design a server and a step of transmitting the event information.
  • a method for transmitting and receiving event information between applications on an SNS is an application server that transmits data necessary for executing an application to a client, wherein the application server transmits data necessary for executing the application to the client. And receiving, by the application server, event occurrence information from an external server, and when the user information included in the received event occurrence information is the same as the user information logged into the client, the application server receives the event occurrence information. Generating an event occurrence information message, and the application server transmits the generated event occurrence information message to the client.
  • a system for transmitting and receiving event information between applications on an SNS transmits an application to a first client, and receives and stores event setting information and user information to be notified of the event generation from the first client.
  • a first application server configured to include an application server group including at least one application server, and a notification server configured to store the event setting information and the user information.
  • the notification server is characterized in that for transmitting the event occurrence information to one application server included in the application server group.
  • a system for transmitting and receiving event information between applications on an SNS transmits an application to a first client, and receives and stores event setting information and user information to be notified of the event generation from the first client.
  • an application server group including one or more application servers, wherein when the first application server transmits the event occurrence information to the application server group, the application server included in the application server group. Is characterized in that for transmitting the event occurrence information to the client logged in with the user information.
  • Application server for transmitting and receiving event information between applications on the SNS is an application server for transmitting data required for the execution of the application to the client, the external server or the client and the transceiver for transmitting and receiving information to the network And a message generator for generating event occurrence information as an event occurrence information message, an application storage for storing application execution information to be transmitted to the client, and a central controller for controlling the transceiver, the message generator, and the application storage. And when the transceiver receives event occurrence information including user information logged in to the client from the external server, the central controller outputs event occurrence information using the message generation unit using the event occurrence information. Controls to generate a message, further characterized in that the transmitting and receiving portion for controlling to transmit the event message to the client information.
  • a method of transmitting usage information of an application on an SNS includes receiving first user information from a client and retrieving usage information of an application of a second user using the first user information. And transmitting application usage information of the second user to the client.
  • a method of receiving usage information of an application on an SNS includes transmitting first user information to a server, receiving usage information of an application of at least one second user from the server, and Displaying usage information of the received application of the second user.
  • an apparatus for transmitting usage information of an application on an SNS includes: a database unit storing application usage information for each user, a central controller extracting application usage information for each user by applying a search criterion from the database; Receiving a first user information from a client, and using the first user information in the database unit includes a transceiver for transmitting the application usage information of the second user retrieved by the central control unit to the client.
  • an apparatus for receiving usage information of an application on an SNS includes an application execution unit executing to use an application, transmitting and receiving information from a server, and transmitting logged-in first user information to the server. And a transceiver for receiving application usage information of at least one second user from the server, an application usage information display unit for displaying application usage information of the second user, and the application execution unit, a transceiver, and an application usage information display unit. It includes a central control unit.
  • a recording medium recording a program for receiving usage information of an application on an SNS has a function of executing an application, transmitting and receiving information from a server, and logging the first user information logged into the server. And transmit and receive application usage information of at least one second user from the server, and display application usage information of the second user.
  • an automatic response method using an avatar behavior pattern transmitting first avatar information and first external environment information to a client, and receiving and storing behavior information of the first avatar from the client Combining and storing the stored behavior information and the first external environment information as preference information or behavior pattern information, transmitting second external environment information to the client, and transmitting the second external environment information to the second external environment. And transmitting behavior pattern information to the client, wherein the first avatar responds automatically without external control.
  • an automatic response method using an avatar behavior pattern may include generating N pattern information of external environment information and behavior information of M avatars as behavior pattern information and storing the same in behavior pattern information database. Transmitting, to the client, information in which the first avatar and the second avatar of the M avatars are arranged in the same virtual space, and the behavior information and the characteristic information of the second avatar and the behavior information of the second avatar. Extracting from a pattern information database and transmitting the behavior pattern information to a client controlling the first avatar.
  • receiving the avatar and the external environment information from the server, and checking the automatic response mode, and in the automatic response mode, the behavior pattern information from the server Receives the information, generates the behavior information from the received behavior pattern information, if not in the automatic response mode, generates the behavior information from the control input signal received from an external input device, and transmits the generated behavior information to the server It includes a step.
  • Game server device includes a transceiver for transmitting and receiving information with the client, the game screen, game progress information, external environment information generated in the game progress and game information database unit for storing the game program, avatar An avatar database unit for storing accumulated behavior information or preference information while playing a game, a behavior pattern information database unit storing behavior pattern information of the avatar, behavior information or preference information stored in the avatar database unit, and the first external device; Controlling behavior pattern generation unit that combines the environmental information into the behavior pattern information to store the behavior pattern information database unit, and controls the transceiver, game information database unit, avatar database unit, behavior pattern information database unit and behavior pattern generation unit Including a control unit The controller may control the transmitter to transmit the behavior pattern information to a first client.
  • Game server device is a transmission and reception unit for transmitting and receiving information with the client, a feature information database unit for storing the external environment information and feature data generated during the game progress, the behavior accumulated by the avatar proceeds the game Avatar database unit for storing information or preference information, a behavior pattern information database unit for storing the behavior pattern information of the avatar, N feature data of the external environment information and the behavior information of M avatars for this information is generated as behavior pattern information And a controller for controlling the behavior pattern generation unit for storing the behavior pattern information database in the behavior pattern information database, and controlling the transceiver unit, the feature information database unit, the avatar database unit, the behavior pattern information database unit, and the behavior pattern generation unit.
  • Avatar first and second avatar Sends the information that the avatar places in the same virtual space to the client, and extracts the behavior information of the first avatar and the behavior information and feature information of the second avatar from the behavior pattern information database to control the first avatar.
  • the behavior pattern information is characterized by transmitting.
  • a client device transmits and receives information with a server and receives an avatar and external environment information from the server, a mode setting unit for setting an automatic response mode, and an external input device for generating a control input signal.
  • the mode set by the mode setting unit is an automatic response mode
  • receives behavior pattern information from a server generates behavior information from the received behavior pattern information
  • the external input device and a controller configured to generate behavior information from a control input signal received from the controller, wherein the transceiver transmits the generated behavior information to a server.
  • 1 is an embodiment of a structure of the Internet to which embodiments of the present specification are applied.
  • FIG. 2 is a view showing an event notification process according to an embodiment of the present specification.
  • FIG 3 is a view illustrating an event notification process according to another embodiment of the present specification.
  • FIG. 4 is a diagram illustrating a system configuration of an application server group and a notification server according to an embodiment of the present specification.
  • FIG. 5 is a diagram illustrating a process of receiving occurrence information of an event after registering an event for a game application according to an embodiment of the present specification.
  • FIG. 6 is a diagram illustrating a configuration of event setting information according to an embodiment of the present specification.
  • FIG. 7 is a diagram illustrating a process of transmitting and receiving event information between applications on an SNS according to one embodiment of the present specification.
  • FIG. 8 is a diagram illustrating a process of providing event occurrence information between application servers according to one embodiment of the present specification.
  • FIG. 9 is a diagram illustrating a process of providing event occurrence information by configuring only an application server.
  • FIG. 10 is a diagram illustrating a detailed configuration in which an application server provides event generation information to a client according to one embodiment of the present specification.
  • FIG. 11 is a diagram illustrating a configuration of an application server according to an embodiment of the present specification.
  • FIG. 12 is a diagram illustrating a process of transmitting event occurrence information that is performed in an application server according to one embodiment of the present specification.
  • FIG. 13 is a diagram illustrating an example of event occurrence information of an application displayed on a client according to one embodiment of the present specification
  • FIG. 14 is a diagram illustrating an embodiment in which usage information of an application is shared according to one embodiment of the present specification.
  • 15 is a diagram illustrating a configuration of a database according to an embodiment of the present specification.
  • 16 is a diagram illustrating a process of transmitting and receiving information between a server and a client according to one embodiment of the present specification.
  • 17 is a diagram illustrating a process of providing application usage information according to one embodiment of the present specification.
  • FIG. 18 is a diagram illustrating application usage information according to another embodiment of the present specification.
  • 19 is a diagram illustrating a process of providing application usage information in a server according to one embodiment of the present specification.
  • 20 is a diagram illustrating a process of receiving and displaying application usage information from a server by a client according to one embodiment of the present specification.
  • 21 is a diagram illustrating a configuration of a server according to an embodiment of the present specification.
  • 22 is a diagram illustrating a configuration of a client according to one embodiment of the present specification.
  • FIG. 23 is a diagram illustrating information of a game application according to an embodiment of the present specification.
  • 24 is a diagram illustrating a process of setting preference information of an avatar according to an embodiment of the present specification.
  • FIG. 25 is a diagram illustrating an example of setting preference information of a user through an act of purchasing an item according to an embodiment of the present specification.
  • FIG. 26 is a diagram illustrating an example of setting preference information of a user through uncategorized behavior according to another embodiment of the present specification.
  • FIG. 27 is a diagram illustrating a process of setting preference information of an avatar according to an embodiment of the present specification.
  • FIG. 28 is a diagram illustrating a configuration of a behavior pattern providing module for generating a behavior pattern information DB of an avatar controlled by a user.
  • FIG. 29 is a diagram illustrating a process of providing a behavior pattern by an automatic response of an avatar to a change in an external environment according to one embodiment of the present specification.
  • FIG. 30 is a view illustrating a process and a configuration of generating behavior pattern information according to another embodiment of the present specification.
  • FIG. 31 is a diagram illustrating a server configuration according to an embodiment of the present specification.
  • 32 is a diagram illustrating a process of transmitting external environment information and behavior information and interpreting behavior pattern information in a client according to one embodiment of the present specification.
  • 33 is a diagram illustrating a configuration of a client device according to one embodiment of the present specification.
  • the Internet accesses the Internet 100 and transmits and receives information in various ways.
  • devices such as mobile phone 10 and PDA (Personal Digital Assistant) / smartphone (20) can access the Internet (100) via a base station (50), and the computer or notebook (30) You can connect to the Internet using a wired or wireless LAN (Wireless Local Area Network).
  • the recent smart phone can also be connected using a wireless LAN or the like using the Internet.
  • These devices are all connected to external servers 111 and 112 on the Internet to receive or transmit predetermined information. Such devices are commonly referred to as clients.
  • a device that allows a plurality of clients to access and receive information is referred to as servers 111 and 112.
  • Web which is one of the most active services of the Internet 100, transmits and receives predetermined information using the Hyper Text Transfer Protocol (HTTP).
  • HTTP Hyper Text Transfer Protocol
  • various protocols such as Transmission Control Protocol / Internet Protocol (TCP / IP) and File Transfer Protocol (FTP) may be used.
  • the servers 111 and 112 may provide various functions or specific functions.
  • SNS Social Network Service
  • the game service through the Internet has a feature of running a game program stored in the Internet server, or by downloading and executing the program to the client, it is possible to play the game with other clients over the Internet.
  • the SNS to be described herein includes all messaging services such as messengers, information between members in community services, neighboring services through blogs, or acquaintance services such as Facebook and Twitter.
  • the client described in one embodiment of the present specification is a digital device such as a mobile phone, a PDA, a smart phone, a notebook, a computer, and the like, which is described in FIG. 1, and the Internet, a mobile communication network, an intranet, and various other types of networks. It includes all the devices that perform the connection to the external server using, and receives information from the server.
  • the connection between the client and the server means a state in which information can be exchanged by being directly or indirectly connected through the Internet.
  • the server described in an embodiment of the present specification is a digital device in which the client directly or indirectly connects the Internet, a mobile communication network, an intranet, and various other types of networks. And device that provides usage information for the application.
  • the application in this specification includes both a program that is downloaded and executed, and a program that updates or exchanges information with a server in real time or at regular intervals on the web, and the application may be used for various purposes such as a game, a text editor, a graphic tool, a map, It is possible to have and is not limited to a specific purpose application.
  • the application can be stored once in the client and used permanently, downloaded when the client connects to the server, or implemented in a way that the server and the client exchange data in real time without a separate download.
  • An event in the present specification includes information required by a user in an application or information that may occur in an application execution process.
  • FIG. 2 is a view showing an event notification process according to an embodiment of the present specification.
  • a user In order to notify event information between applications, a user first logs in through a client and configures an application and an event that informs the event information. The information thus set is provided to the server, and the server checks the event occurrence of the application and provides the result to the client. 2 illustrates a case in which a notification server and an application server are configured in connection with an event occurrence of an application.
  • the user logs in through the portal, the Internet homepage, or the like.
  • the client performs a user login (S205).
  • the user identification information and the password may be transmitted to the login server, and user information may be received from the login server.
  • the client 201 performs the connection of the application server 1 (203) and the application 1 (S210).
  • the application server 1 203 provides the application 1 to execute the application 1 in the client 201 (S215). According to the type of application, the client 201 may download the application 1.
  • the client 201 sets an event for the application 1 (S220).
  • the event that can be set may be a user-centered event regarding whether a user logged in in Application 1 acquires a specific state or a specific level.
  • the event may be a changed state of a logged in user and another user who is acquaintance or buddy in an SNS system, or acquisition of a specific level or item.
  • the event may be information generated in the application irrespective of the specific user information.
  • the event may be related to a specific keyword, a specific score, a specific item released, or an upgrade of the application. Includes all of them.
  • a settable event may be provided as a list, and the user may set an event by inputting information step by step.
  • the application 1 server 203 sets the corresponding event (S222).
  • the event setting fact is then provided to the notification server 202 (S224).
  • the client 201 performs the connection of the application 2 to stop execution of the application 1 and execute the application 2 (S230).
  • the application 2 server 204 provides an application 2 to the client 201 (S235). Thereafter, an event occurs in the application 1 server 203 in the process of performing the application 2 (S240).
  • the application 1 server 203 checks whether the user is connected (S242), and confirms that the user is not connected, and provides the notification server 202 with the event occurrence.
  • the notification server 202 provides the fact that an event occurs to other application servers (S246, S248).
  • S248 means providing an event occurrence fact to other application servers not shown in the figure.
  • the application 2 server 204 checks whether the user is connected (S250), and when the user is connected, provides an event occurrence fact to the client 201 (S252). In this process, the notification server 202 may be notified that the user has connected to notify the fact that the event occurs (S254). After that, the client 201 outputs an event occurrence notification window (S260).
  • FIG. 3 is a view illustrating an event notification process according to another embodiment of the present specification.
  • 3 is a diagram illustrating a case where a user does not access any application, unlike FIG. 2.
  • Processes S305, S310, S315, S320, S322, and S324 of FIG. 3 are the same as those of S205, S210, S215, S220, S222, and S224 of FIG. 2, and will be replaced by the description of FIG.
  • the event setting process S320, S322, S324 proceeds or proceeds, the user logs out (S330).
  • the application 1 server 303 generates an event (S340).
  • the application 1 server 303 checks whether the user is connected (S342) and, if the user is not connected, provides the notification server with the fact that the event occurs (S344).
  • the notification server provides the fact that the event occurs to other application servers (S346, S348).
  • the application 2 server 304 checks whether the user is connected (S350) and notifies the notification server 302 that the user is not connected (S352).
  • Notification server 302 confirms that the user is not connected from all the application server stores the fact that the event occurs (S354).
  • the application servers may be configured not to notify whether or not the application server is connected. In this case, if there is no application server for notifying the user connection for a predetermined time, the notification server 302 determines that the user is not connected and notifies the fact that the event has occurred so that the user can log in later. Can be stored.
  • the client 301 connects to the application 2 (S362), and the application 2 server 304 provides the application 2 (S364).
  • the application 2 server 304 checks whether an event has been generated and stored in the notification server 302 (S366).
  • the event occurrence fact is received from the notification server 302 (S368), and the application 2 server 304 provides the event occurrence fact to the client 301 (S370).
  • the client 301 outputs an event occurrence notification window (S380).
  • the client when it logs in, it may always be connected to the notification server 302 to check whether an event has occurred since the time of logging out.
  • a user can log in to a different client rather than the same client. That is, after logging in through the notebook client and proceeding with S305, S310, S315, S320, and S330, and logging out, the S362, S364, S370, and S380 processes may be performed by logging in as S360 through the desktop client.
  • FIG. 4 is a diagram illustrating a system configuration of an application server group and a notification server according to an embodiment of the present specification.
  • the notification server 410 and the application servers 421, 422, 429 may be located in the same location and connected through the internal network 450, and may be located in separate, i.e., different, Internet (100) locations. ) May be connected.
  • the internal network 450 or the Internet 100 may be configured at any place.
  • the application server group includes one or more application servers.
  • the application server transmits an application to a specific client, and receives and stores event setting information and user information to be notified of the event generation from the client.
  • the transmission of the application transmits the information necessary for the execution of the application, and may transmit the application program itself, or the application may transmit the information required to run the application from a client that has already been downloaded and installed.
  • the event setting information may be set for various events such as identification information or a specific search keyword for a specific event, reaching a specific grade in a game, and uploading specific information.
  • User information to be notified when an event occurs may be the corresponding user who set the event.
  • the user may be an acquaintance or a friend through SNS.
  • the first user may log out of the game, and then set an event to check whether the game being constructed by the first user is progressed or achieve a specific level.
  • the first user may set an event for the second user to check whether the second user who is a friend logged in to the construction game on the SNS, or whether the second user has achieved a certain level.
  • the information about the second user may be provided separately from the logged-in first user information.
  • the notification server 410 stores the event setting information and the user information. As described above, since the client may execute various applications, the client may execute another application instead of an application that sets an event.
  • the notification server transmits the event occurrence information to one application server included in the application server group. Meanwhile, a user logged in to the client can log out at any time. Therefore, it may be difficult to deliver the event occurred in the application in real time.
  • the notification server 410 when the notification server 410 receives the fact that an event has occurred from the application server, the notification server 410 confirms that the client logged in with the user information does not exist in all the application servers included in the application server group. Can be stored. The event occurrence information thus stored is transmitted to the client logged in as user information to be notified of the event occurrence information. That is, the notification server or the application server confirming that the user has logged in may transmit the stored event occurrence information to the client.
  • the notification server 410 also provides a function for controlling the user's login, it can check which event is stored when the user logs in.
  • the application server may provide user information logged in to the notification server 410 and check whether there is event occurrence information to notify a notification.
  • the application server may transmit the event occurrence information to the client 431. Can be.
  • the user owning the account of the portal proceeds in an application registered.
  • the event occurrence status of the application on the network attributable to the user's selection and stored in the account, and if the stored event occurs, it is determined whether the user is connected, if the user is running other applications of the portal, Provides a system that facilitates movement and management by outputting event occurrence information on the progress of other applications through the notification window, and stores the event occurrence information when the user is not connected to the portal. It provides a system that provides information by determining whether an event occurs through an account when accessing a corresponding application or another application of the portal.
  • FIG. 5 is a diagram illustrating a process of receiving occurrence information of an event after registering an event for a game application according to an embodiment of the present specification.
  • User 1 (User_1) has logged in to the first client 501
  • User 2 (User_2) has logged in to the second client (502).
  • the user 1 accesses the game application server 521 from the logged-in client 501 and performs a game
  • the user 1 sets an event and transmits it to the game application server 521 (S530).
  • the event to be set is the first event that the game progress state of the user 1 is changed
  • the second event is that user 2 (User_2), who is acquaintance on the SNS, accesses the game application.
  • the game application server 521 which has received the event setting information stores it (S532).
  • the received event setting information is transmitted to the notification server 510 (S534).
  • the notification server stores the received event setting information (S536). Thereafter, the user 1 accesses the application 1 server (S540). The connection with the game application server is terminated. In this process, the event set in S530 occurs before the game application server 521 (S550). That is, the game progress state of user 1 is changed, or the related user 2 (User_2) is connected to the game application. As a result, the game application server 521 confirms that a stored event has occurred. Since the user 1 (User_1) to receive the current event occurrence information is not connected to the game application server 521, the event generation information is transmitted to the notification server 510 (S555).
  • the notification server 510 transmits event occurrence information to other application servers (S560), and among the plurality of application servers that have received the notification server 510, the application 1 server 522 connected to the current user 1 (User_1) is a user 1.
  • the notification server 510 is notified that the connection is made, and event occurrence information is transmitted (S565).
  • the first client executing the application 1 displays the received event occurrence information using an interface such as a pop-up window (S570).
  • an event may be a notification of a change in a game progress state of user 1 User_1 or a game connection of another user User_2 from among game events.
  • this can be variously set according to the characteristics of the application.
  • various situations occurring through the community application for example, opening a chat room, opening a flea market, and generating a comment on a post written in a community, etc., are all set as an event. You may be notified.
  • a search keyword may be set so that acquaintances in an SNS relationship upload information using a specific keyword, or acquaintances in an SNS relationship may perform a specific action (such as uploading a picture or starting a chat). In this case, it is possible to recognize that such an event occurred more quickly.
  • FIG. 6 is a diagram illustrating a configuration of event setting information according to an embodiment of the present specification.
  • the event setting information may consist of user information to be notified when an event occurs, and corresponding user information when setting an event for another user, type of application and type of event, and information necessary for event setting. have.
  • FIG. 6 is a diagram illustrating a data structure required for event setting and notification according to an embodiment of the present specification.
  • the data structure 610 for event setting first includes a NotiUID on which user the notification information goes to, an ActUID which is information on a user where an event occurs, an AppNo which is information for identifying an application, and an event which event is used.
  • EventID is an identifier that informs the user, and finally, it is a parameter that sets parameter information necessary for event setup.
  • 620 is a data structure indicating which event each event is.
  • the application may have a plurality of events, and the user may select and set an event provided by an application used by the user.
  • the data structure related to the event is composed of the event identifier EventID, the application information AppNo, the Apptype indicating the type of the application, and finally the EventType providing detailed information about the event.
  • NotiUID is both A. That is, it means that A is informed of the event that occurred to the user A.
  • the one-person event can be checked through 620.
  • EventType is 'LevelUp'.
  • Combining 612 and 620 indicates that the user A is configured to notify A of the occurrence of an event when 'LevelUp' occurs in the game application called G1.
  • EventType can be provided in various ways according to the type of application. For example, in the case of a 'farming' simulation game, the growth of crops grown by oneself may be set as an event to receive a notification. In the case of a strategy simulation game, you can set the completion level of the castle you are building as an event. Therefore, even when the application is not executed separately, various situations, that is, events occurring in the application server can be checked, and thus, there is no need to provide a background process separately in a smartphone, a computer, a notebook, and the like.
  • events can be set. For example, if 'Mt planning' is set as a parameter among the posts uploaded to a specific community application such as 616, the application server named C1 sends an event when the post containing 'Mt planning' is uploaded to B. Can be provided as a notification. Parameters allow you to set additional information needed to set up an event. ActUID is not set at 616, not to be limited to a specific user's behavior, but to receive an event notification when all users post a message including 'MT planning'. When identification information is set for a particular user, the user may check only for an action of the user.
  • 618 illustrates a case in which a result of inputting a specific search word (iPad) is frequently updated.
  • the database structure for event setting of FIG. 6 enables event setting among various users.
  • FIG. 7 is a diagram illustrating a process of transmitting and receiving event information between applications on an SNS according to one embodiment of the present specification.
  • the sequence of FIG. 7 may be operated in a system composed of an application server group and a notification server composed of one or more application servers.
  • the first application server of the application server group transmits the application to the first client (S710). As described above, this corresponds to a process in which the application server proceeds for client access and download of the application.
  • the first application server receives event setting information and user information to be notified of the event occurrence from the first client.
  • One embodiment of this process includes receiving the 610 data discussed in FIG.
  • the first application server transmits the event setting information and the user information to the notification server (S730).
  • the notification server may store the received event setting information and the user information (S740).
  • the notification server may store the event configuration information to notify another application server where the user is logged in when an event occurs, or to notify the user of an event when the user logs off or logs in later.
  • the notification server receives the set event occurrence information from the first application server (S750).
  • the notification server transmits the event occurrence information to one or more application servers included in the application server group to inform the client of the received event of the received event (S760).
  • the transmitted event occurrence information is provided by the application server to which the client of the logged-in user is connected among the plurality of application servers.
  • the second application server may transmit the event occurrence information to the second client.
  • the second client may be the same device as the first client and vice versa. You can connect to an application server differently, or log in with the same user information through a completely different client device.
  • the process may proceed as follows.
  • the notification server may confirm that there is no client logged in with the user information in all the application servers included in the application server group, and store the event occurrence information. Subsequently, when the notification server or the application server requesting access by the second client transmits the stored event occurrence information to the second client logged in with the user information, the user who is not logged in may be notified of the event occurrence. .
  • One embodiment of the present specification as described above allows the notification server to notify the occurrence of an event when the user logs out. That is, the applications inserted into the SNS are stored according to the user's selection in the storage device on the network, whether or not the event occurs between applications, regardless of the other process provided by the corresponding portal, and whether or not the stored event occurs Its purpose is to increase the life cycle by maintaining the continuity of the application while allowing the user who owns the portal account to manage the application more efficiently.
  • the configuration of the application server except the notification server can be examined.
  • FIG. 8 is a diagram illustrating a process of providing event occurrence information between application servers according to one embodiment of the present specification.
  • FIG. 8 unlike FIG. 5, there is no notification server.
  • the client 810 connects to the application 1 server 821, sets an event, and transmits the set event information (S830). In this process, user information to be notified of the event may also be transmitted.
  • the application 1 server 821 stores event setting information (S832). In this process, the client 810 accesses the application 3 server 823 (S835). Thereafter, an event occurs in the application 1 server 821 (S840).
  • the application 1 server 821 confirms that the client 810 is no longer connected to the application 1 server 821, and transmits event occurrence information to other application servers 822 and 823 included in the application server group ( S850, S860).
  • the application 3 server 823 confirms the fact that the client 801 logs in, and transmits event occurrence information (S870).
  • the client 801 which is executing the application 3 server and the application execution, receives the event occurrence information and displays it (S880).
  • FIG. 9 is a diagram illustrating a process of providing event occurrence information by configuring only an application server. Looking at the process of notifying the event occurrence in the system according to the configuration of Figure 8 as follows.
  • the first application server of the application server group transmits the application to the first client (S910).
  • the first application server receives and stores event setting information and user information to be notified of the event generation from the first client (S920).
  • the client logs into the first application server with the user information.
  • Check whether is connected S940).
  • the client accesses the first application server, the corresponding event occurrence information is transmitted to the client (S945).
  • the first application server transmits the event occurrence information to one or more application servers included in the application server group (S950).
  • the second application server generates the event to the second client.
  • Information is transmitted (S960).
  • event occurrence information may be provided between application servers to provide an event occurrence fact only to a logged in user. This can be applied when notification of event occurrence is required in real time.
  • FIG. 10 is a diagram illustrating a detailed configuration in which an application server provides event generation information to a client according to one embodiment of the present specification.
  • the application server 1020 when the application server 1020 receives the event occurrence information from another application server or the notification server, the application server 1020 converts the event occurrence information into an event occurrence information message and provides it to the client 1010.
  • NotiType is set to Event_Noti indicating that the message is an event.
  • related application information (Application_info) is set in the RelatedApp item so that it can be easily moved from the client to the corresponding application.
  • Application_info is set in the RelatedApp item so that it can be easily moved from the client to the corresponding application.
  • MessageContent a message to be notified is generated and stored as text (MessageContent).
  • the screen may be displayed as a pop-up window or a toss window.
  • FIG. 11 is a diagram illustrating a configuration of an application server according to an embodiment of the present specification.
  • the overall configuration includes a message generator 1110, an application storage unit 1120, a transceiver 1130, and a central controller 1140.
  • the application server of FIG. 11 corresponds to an application server that transmits data necessary for executing an application to a client and provides event generation information to the client as described above.
  • the transceiver 1130 transmits and receives information with an external server or a client through a network.
  • the Internet or predefined network protocols can be used.
  • the message generator 1110 generates the event occurrence information as an event occurrence information message. Provides a function for converting the event occurrence information described above with reference to FIG. 10 into a MessageType.
  • the application storage unit 1120 stores application execution information to be transmitted to the client.
  • the application storage unit 1120 may store predetermined application execution data and provide an executable file or metadata required for execution to a client who wants to execute the application.
  • the central controller 1140 controls the message generator 1110, the application storage unit 1120, and the transceiver 1130.
  • the transceiver 1130 receives event occurrence information including user information logged into the client from the external server.
  • the central controller 1140 controls the message generator 1110 to generate an event occurrence information message using the event occurrence information, and controls the transceiver 1130 to transmit the event occurrence information message to the client.
  • the external server may be an application server or a notification server where the event occurs.
  • the transmitter 1130 may transmit information logged into the client as the user information to the external server.
  • FIG. 12 is a diagram illustrating a process of transmitting event occurrence information that is performed in an application server according to one embodiment of the present specification.
  • FIG. 7 is a diagram illustrating a process of receiving event occurrence information from another application server or an application server receiving event occurrence information from a notification server and transmitting the event occurrence information to a client.
  • the application server transmits the data necessary for the execution of the application to the client (S1210).
  • an application's executable file, metadata, and the like may be provided.
  • the application server receives event occurrence information from an external server (S1220).
  • the external server may be an application server or a notification server where the event occurs.
  • the application server generates an event occurrence information message using the event occurrence information (S1230). Generation of the event occurrence information message has been described in detail with reference to FIG. 10.
  • the application server transmits the generated event occurrence information message to the client so that the event occurrence information message is displayed on the client.
  • the application server may transmit information logged into the client with the user information to the external server, and notify the client that event occurrence information has been delivered to the client (S1250).
  • FIG. 13 is a diagram illustrating an example of event occurrence information of an application displayed on a client according to one embodiment of the present specification
  • 1300 means a display device of the client. 1310 is an execution screen of the currently running application, and an application called App2 is running in FIG. 13.
  • App2 is provided, and the currently connected application server (App2 server) receives event occurrence information from the App1 server or notification server and generates an event as shown in 1320. Provides information converted to inform message.
  • App2 server receives event occurrence information from the App1 server or notification server and generates an event as shown in 1320.
  • the application event occurrence state of App1 can be checked.
  • the application usage information is shared among acquaintances who have the same interest or intimacy to enable the spread of the application usage.
  • the ROI of the user may be analyzed to provide usage information of an application having a high possibility of use.
  • An embodiment of the present disclosure uses a method in all the digital devices that can access the SNS, or a method for transmitting and receiving the usage information of the application on the SNS to check the application usage information, such as acquaintances or interested users in real time or at regular intervals , A device, and a recording medium.
  • FIG. 14 is a diagram illustrating an embodiment in which usage information of an application is shared according to one embodiment of the present specification.
  • 14 is a diagram illustrating a state of use of an application among acquaintances.
  • one embodiment of the client, 1410 and 1420 is connected by wire or wirelessly through the Internet 100.
  • the server 1400 is also connected to the Internet. PDAs and smartphones, such as the 1410, may be connected via a base station and may be connected to the Internet via WIFI.
  • server 1400 retrieves application usage information of user A's friend from the database using identification information of user A and provides it as 1411. do.
  • the A user's friend refers to users who have allowed to share information with each other, such as friends and buddies.
  • a friend (or acquaintance) who shares information with user A who has logged in to the client 1410 has B, C, and D, and presents application usage information of B, C, and D as shown in 1411.
  • the usage information of game B of user B is level 7 (Lev 7)
  • the usage information of game C of user C is level 3 (Lev 3).
  • the lesson 5 of Education 3 which is the education application of User D, is currently being progressed.
  • the name of the application (Game 1, Game 2, Education 3) is underlined with a hyperlink so that the user A can participate in another application so that the user can immediately execute the application or proceed with URL access.
  • Friends (or acquaintances, buddies, etc.) sharing information with user B who has logged in to the client 1420 have A and E.
  • application usage information of users A and E is presented. Looking at an example in which user information about a game application is presented, it is shown that user A has completed level 3 of game 1.
  • FIG. User E shows that he completed lesson 2 of training 3.
  • a user B provides a shortcut button 'Participation' to participate in another application. Therefore, after logging in, user B checks the application usage information of acquaintances so that he or she can execute the application or access the server providing the application to use the application.
  • the usage information of the application includes a variety of information such as the number of times of use, recently used time, score, ranking, etc. Among these, only the information preset by the user may be presented, and only predetermined information may be selectively displayed according to the preset criteria. Can be. In addition, information such as whether the application is of interest, a newly released application, or a popular application may be presented together with the usage information or as independent usage information. For example, when an acquaintance registers a specific application as an application of interest, such an item may be displayed in the application usage information of the acquaintance.
  • 15 is a diagram illustrating a configuration of a database according to an embodiment of the present specification.
  • FIG. 15 illustrates the structure of a database according to an embodiment of the present specification.
  • the UID 1510 is a database storing application usage information reflecting the embodiment of FIG. 14.
  • the UID is identification information of a user, and information that can identify a user as having unique values such that a login ID, an e-mail address, or an identification number generated in a database are not duplicated.
  • the UID may be generated and stored by combining the platform and the user information.
  • AppNo is identification information of the application.
  • identification information such as G and E is added according to a game, education, and the like.
  • AppInfo is the information used by the user for the application, which shows what steps have been completed (complete), which steps have been started (Entrance), or what steps are being taken (processing).
  • the usage information may be divided in more detail, and may be variously provided according to characteristics of the application. For example, ranking information may be provided. Date means the date of last use.
  • the 1520 stores relationship information between users, such as allowing sharing of information among users or receiving application usage information.
  • the UID1 may check application usage information of the user matched with the UID2.
  • user A could check application usage information of B, C, and D users
  • user B could check application usage information of A, E users.
  • acquaintance information of user A and user B is provided.
  • users may share information with each other, and may share or confirm information in one direction. That is, in FIG. 14 and FIG. 15, A may check application usage information of users B, C, and D. However, user C and D may not want to confirm application usage information of user A, or may not be set to check. That is, when users C and D log in, application usage information of user A may not be exposed.
  • 16 is a diagram illustrating a process of transmitting and receiving information between a server and a client according to one embodiment of the present specification.
  • the server stores or manages acquaintance information and application usage information. After the server receives the information of a specific user logged in to the client immediately after the client's connection or at the request of the client, the server provides the application usage information of the users who are in a relationship with the specific user. It shows the process of providing all or using application information.
  • the client 1601 and the server 1602 are connected through the Internet. As described above with reference to FIG. 1, the client 1601 may access the Internet in various ways.
  • the first user logs in at the client 1601 (S1610).
  • the first user's login method may be provided in various ways.
  • the first user's identification information may be pre-embedded or stored in a file form in the client 1601, and the first user's identification information and a password may be input to the server ( 1602 may further proceed to the verification process.
  • the client 1601 transmits the first user information (S1615).
  • the first user information can be transmitted in a predetermined promised protocol manner.
  • information requesting application usage information of an acquaintance may be included together. This is necessary when information is required such as displaying application usage information of acquaintances immediately after the first user logs in, and requesting application usage information of acquaintances after performing various tasks after the first user logs in. Since the information may vary, the client 1601 may transmit a message to the server 1602 requesting to separately transmit the application usage information.
  • the server 1602 searches for acquaintance information based on the received first user information to retrieve application usage information of at least one second user corresponding to the acquaintance (S1620).
  • the number of second users may be plural, and the number of applications used by each second user may also be plural.
  • the server 1602 may additionally select a user information corresponding to the second user among the acquaintances or select a suitable application from among a plurality of applications.
  • an acquaintance database may search for an acquaintance with a high degree of familiarity with the first user.
  • a friend with high intimacy can be used as a 2nd user. This is because application usage information of a more intimate acquaintance can be meaningful information to the first user.
  • the first user may analyze a usage pattern of an application previously or recently used and search based on the result.
  • the user who used the game side application among the acquaintances may be the second user.
  • a user who used the education-side application among acquaintances may be the second user.
  • the second user may be a user who uses a similar or the same application based on the corresponding application.
  • the search may be performed based on a result of analyzing the content usage pattern of the first user. For example, when the first user uploads a lot of pictures, acquaintances who mainly use the application related to the picture may be the second user, and acquaintances who have generated a lot of content related to the picture may be the second user. In addition, the second user may be acquaintances using an application that is not currently used or executed on the client. Of course, when using a plurality of applications, acquaintance use information for the corresponding application may be provided according to a predetermined search criterion, or acquaintance information may provide use information of an application corresponding to the search criterion.
  • the server 1602 transmits application usage information of the second user to the client 1601 using the above various information (S1625).
  • the application usage information of the second user may be one or more user information and one or more application information, may provide one application for each user, and may provide two or more applications for each user.
  • the client 1601 displays the received application usage information in operation S1630.
  • the application usage information received by the client 1601 may be arranged in a predetermined order or may be selectively organized and displayed.
  • the client 1601 may sort the usage information of the plurality of applications of the plurality of second users based on the similarity by using the usage information of the recently used application after the login.
  • the client 1601 may check the intimacy between the users, the client 1601 may arrange the application usage information of a specific user among the plurality of second users based on the intimacy with the first user. It is also possible to display usage information of an application that is not currently being executed by the client 1601.
  • the client 1601 may use a specific application, and generates an application usage notification message to inform the server 1602 of the application (S1640).
  • the application usage notification message may be configured in various ways. As shown in 1411 of FIG. 14, when the application usage information of the second user B, C, and D is displayed, the client 1601 selects a specific application. It is possible to inform the server of the second user information and the application information provided with the usage information of the. On the other hand, when the application is downloaded from the server 1602 or other servers, or if a new Internet connection to proceed, it may also be included with a message requesting the use to enable the application. The client 1601 transmits an application usage notification message to the server 1602 (S1645).
  • the server 1602 checks the received application usage notification message, and generates an application usage related message (S1650).
  • the client 1601 may download an application notifying the use of information, or may include information to be used through an Internet connection in the application use-related message.
  • the server 1602 transmits an application usage related message to the client 1601 (S1655). It is also possible to proceed with the benefit provision process for the second user who has activated the use of the application.
  • the benefit provision process further includes storing benefit provision information. For example, the second user may proceed to accumulate points or to raise the level. This may be achieved by newly storing information related to the use of the second user's application or changing previously stored information.
  • a server 1602 storing application usage information may be different from a server providing an application. That is, usage information may be stored separately from a server providing an application, and the plurality of servers may configure one server group such as a portal and a game site.
  • 17 is a diagram illustrating a process of providing application usage information according to one embodiment of the present specification.
  • FIG. 17 is a diagram illustrating application usage information last used among acquaintances.
  • screen information for displaying login or application usage information is displayed.
  • Each of the clients and server are connected via a network such as the Internet 100.
  • a network such as the Internet 100.
  • UID_1, UID_2, and UID_3 based on 17017.
  • the UID_2 and UID_3 users access the clients, or correspond to a state in which the user has recently terminated the connection. It also corresponds to a state in which the UID_1 user is connected to the client.
  • the server 1700 stores application usage information of the UID_1, UID_2, and UID_3 users for each application as shown in 1705.
  • the AppNo, AppInfo, Date portion of the 17017 database may be stored as various values.
  • how many days ago the date is based on the current date, but when it is stored in the actual database, it can be implemented by storing the relative time reference from the absolute time reference or a specific reference date.
  • the application may be stored in a separate application server 1701, and may be accessed by a user's request to use the application in real time, or may download and use the application.
  • the usage information of the application is stored in the server 1700.
  • the client may receive such usage information, and in another embodiment, the usage information may be received from the application server.
  • 1710 is information that the UID_1 user can check on the logged-in client when the UID_1 user requests an application usage information of an acquaintance or logs in.
  • UID_2 and UID_3 users Under the name of the application status of friends, UID_2 and UID_3 users have the most recent or current application usage status. UID_2 users are currently using App_3 at level 9, and UID_3 users are using App_2 at level 5 a day ago. Able to know. As an additional embodiment, when the UID_1 user executes App_5, the recent or current application usage status of acquaintances who use the application other than App_5 may be checked.
  • the UID_2 user is currently running level 9 of App_3, such as 1720.
  • a button for quick launching an application used by the UID_2 user may be presented in a specific area of the UID_2 user's screen.
  • the UID_2 user may present application usage status information of acquaintances, that is, friends, such as 1710 on the screen on which the App_3 is executed.
  • the user UID_3 has terminated the connection.
  • the connection may not be terminated but the application may not be used.
  • the usage information of the application may be stored in 1705, and the UID_3 user may resume the use of the specific application.
  • the execution status of the applications of acquaintances can be checked as shown in 1710.
  • the UID_2 user may terminate App_3 and use App_1.
  • the screen 1710 of the UID_1 user may be displayed by updating the application usage information of the UID_2 user as shown in 1712.
  • App_1 may be executed to the UID_2 user, and the application usage status of friends may be displayed on a specific area of the screen.
  • FIG. 18 is a diagram illustrating application usage information according to another embodiment of the present specification.
  • the first user may access the client and transmit the first user information to the server, and may download and execute the application 4 (App 4) in real time from the application server as in 1810, or may execute the previously stored application 4.
  • the execution information of the application 4 is transmitted to the server so that the first user is running the application 4, and can inform the other friends of the application usage information.
  • the application usage information of acquaintances may be displayed as 1830.
  • 1830 the application usage status of the U2, U3, U4, U5, and U6 users is displayed.
  • each user may have an ID such as a separate English letter, number, or Korean.
  • identification information of acquaintances such as U2 and U3 will be displayed.
  • the display When displaying as shown in 1830, if the number of acquaintances of the first user is large, or if it is difficult to display all of the application usage on the screen, the display may be displayed according to a predetermined criterion and may be further displayed using an interface such as a button such as 1821 or 1822. You can check the application usage information of many acquaintances.
  • the order arranged in 1830 of FIG. 18 or which user's application usage information is displayed among a plurality of users may be determined based on various criteria. This criterion may be applied when the server retrieves information from the database, and may also apply when the client receives information from the server and displays it.
  • priority may be given based on the intimacy of the first user and acquaintances. Since an application used by a close acquaintance may have more interest, a method of searching for and providing application usage information among acquaintances based on intimacy may be considered. As a criterion for determining intimacy, various criteria such as the level of disclosure of information, the number of times information in the form of a message such as an e-mail or a message are exchanged, and the number of times of viewing personal information of each person may be applied.
  • a method of analyzing usage patterns of the first user to provide usage information of a highly relevant application or a less relevant application may be analyzed.
  • a highly relevant application if a user mainly uses a specific field, for example, a game application, or prefers a game application of a certain genre (sports, arcade, shooting, puzzle, etc.), In order to be able to compete with friends, etc., it is possible to preferentially provide information on the use of acquaintances using the application of the genre or the corresponding field.
  • An application related to travel may include a map application, and an application related to world travel may be included in the game.
  • the server may expose an application of a specific acquaintance and store information (a kind of history) used by another user and use the same.
  • the user may benefit from the U2 user.
  • the U2 user may provide benefits such as improving scores or points in App3, adding U2 user's cyber money, or improving the ranking of the U2 user.
  • the user who clicks the same may provide a benefit that is the same as or similar to that provided to the U2 user.
  • the information displayed in 1830 may be updated in real time. For example, if the current U3 user has acquired 12532 points of App2, and the score is raised as a result of the U3 user's continuous use of App2, the change in the score may be reflected in 1830 in real time or at regular intervals. have. This is because the application usage of the user is stored in the server, the server can notify other users when the stored information changes.
  • the server when determining and adjusting the exposure of the specific information in the client, even if the client receives the changed information may not immediately reflect or display it.
  • the client may transmit the identification information of a specific user to request only the application usage information of the user
  • the server may provide only the application usage information of the requested user without a separate user search process. For example, only the application usage information of the U4 user may be requested again from the information displayed in 1830. In this case, the server may retrieve and provide only the application usage information of the U4 user.
  • the second user in FIG. 19 may include a plurality of users corresponding to acquaintances of a specific user. For example, when the UID_1 user of FIG. 17 is the first user, the second user includes UID_2 and UID_3. Meanwhile, in FIG. 18, the second user includes U2, U3, U4, U5, and U6. That is, the second user of FIG. 19 does not mean a specific single user but may include one or more user information.
  • the server of FIG. 19 may be the server 1700 described with reference to FIG. 17, and may mean that the application server 1701 and the server 1700 of FIG. 17 are combined.
  • the server receives information of the first user from the client (S1910).
  • the first user information includes identification information of the user logged into the client. It may be a predetermined cookie or encrypted information on the web, and in the case of mobile, an identification number fixed to the client (eg, a phone number, a MAC address, etc.) may be used.
  • an identification number fixed to the client eg, a phone number, a MAC address, etc.
  • a user may input a password and a password to receive predetermined identification information and use the same as first user information.
  • the server retrieves application usage information of the second user and the second user from among the users who have allowed to disclose the relationship or information of acquaintances, friends, buddies, etc. using the received first user information (S1920).
  • An embodiment of the second user may be a user who has shared information with the first user, and the second user is the same as the application used by the first user in consideration of the relevance of the aforementioned application. Or it could be a user with a similar application.
  • information of a user having high intimacy may be searched and confirmed as a second user.
  • the second user may be selected by analyzing the association of the application or the preference of the application.
  • operation S1910 may be further subdivided.
  • the application usage pattern information of the first user may be generated using the first user information to generate the application.
  • the second user may be searched using the pattern information.
  • the content generation information of the first user may be searched using the first user information, and application usage information of a second user using an application having a high similarity with the searched content generation information may be retrieved.
  • the second user with high intimacy may be searched for the application usage information of the corresponding user by using the first user information, based on the number of visits of the mail, the message, and the blog.
  • Disclosure of information may include not only the direct disclosure of information, but also the case of not actively choosing to disclose the information.
  • the application usage information of the second user is transmitted to the client (S1930).
  • the usage information transmitted to the client may be transmitted once, or may be transmitted in real time if the usage information is changed for a predetermined time.
  • the first user may request application use information such as acquaintances, friends, and buddies, and in this case, all or part of steps S1910, S1920, and S1930. You can proceed.
  • the client may transmit identification information of a specific user and request only application usage information of the corresponding user.
  • the server may provide only application usage information of the requested user without a separate user search process.
  • the server may receive a predetermined message (S1940).
  • This message may be a client to which the first user has logged in, or may be a client to which the second user has logged in.
  • the application server exists independently, it is possible to receive a message from the application server.
  • two message receptions are presented as one embodiment, but embodiments are not limited thereto.
  • the received message may be a message indicating that the first user uses the application of the second user.
  • the first user notifies that the first user uses an application of a specific second user, or sends a message requesting the use of the application, and the server receives the message. It includes.
  • the server may transmit a message for enabling the use of the application of the second user to the client (S1950).
  • the process of S1950 may be optionally performed. For example, when a specific URL that can use an application can be generated and transmitted by the server, and the corresponding application can be used, the message transmitted in S1950 may include URL information enabling execution of the application.
  • the method since the application of the second user is selected, the method may further include providing a predetermined benefit to the second user. As described above, the method may include increasing a predetermined point or rank.
  • the received message may be a message indicating that the usage information of the application of the second user is changed.
  • the message indicating that the usage information has been changed from the client of the second user may be included, and the message indicating that the application usage information of the second user has changed from the application server may be included.
  • the server transmits the change to the client logged in to the first user so that the first user can confirm the change of the application usage information of the second user (S1960).
  • the client logged in by the first user may update and display the change.
  • the client logged in by the first user selectively displays the application usage information of the acquaintance, even if the usage information of the second user is changed, it may not be immediately displayed.
  • the server of FIG. 19 includes friend or acquaintance setting information between users required for SNS. This information can be managed separately from the usage information of the application.
  • the setting information of the friend or acquaintance may include the association or intimacy of the specific user with another user or the detailed setting information of information disclosure using the user identification information.
  • 20 is a diagram illustrating a process of receiving and displaying application usage information from a server by a client according to one embodiment of the present specification.
  • the client in the process of Figure 20 includes a variety of digital devices, such as notebooks, computers, PDAs, mobile phones, smart phones.
  • the first user information is transmitted to the server (S2010).
  • the first user information may be a cookie or encrypted predetermined information.
  • usage information of at least one second user's application is received from the server. Since the second user has more than one application use information, even when the acquaintance has a single acquaintance, when the acquaintance uses a plurality of applications, the plurality of application use information may be received. In addition, the usage information of one acquaintance may be received for each application, and the usage information of multiple acquaintances may be received for the same application.
  • the server may selectively provide information, and the server may provide information, and a method of selecting information from the client and displaying the information may be used.
  • the usage information of the application of the second user provided by the server may be selected by searching the server based on various criteria.
  • the second user may be a user who allows information sharing with the first user or who does not choose to keep the information private. If the second user has a large number, the second user may be selected based on intimacy with the first user.
  • it may be selected based on the application, the corresponding application usage information of the acquaintances using the same or similar applications used by the first user among the acquaintances may be selected, the application usage pattern information of the first user or Based on the content generation information, the first user may be selected based on usage information of an application that may be of more interest to the first user.
  • the first user may be selectively provided based on usage information of another application other than the corresponding application.
  • the client may transmit a predetermined message to the server (S2040).
  • the message that can be transmitted may vary.
  • 20 illustrates two message transmissions as an embodiment, but is not limited thereto.
  • the message is a message indicating that the first user uses the application of the second user
  • a message enabling the use of the application of the second user may be received from the server (S2050).
  • the use of the application is made through a connection through a specific URL, the information of the access URL may be included in the message.
  • the server may provide a predetermined benefit to the second user by using the message of S2040.
  • step S2060 may be selectively performed.
  • 21 is a diagram illustrating a configuration of a server according to an embodiment of the present specification.
  • the overall configuration of the server 2100 is composed of a database unit 2110, a central controller 2120, and a transceiver 2130.
  • the database unit 2110 stores application usage information for each user.
  • the central controller 2120 extracts application usage information for each user by applying search criteria from the database.
  • the search criteria may be variously applied, and may be configured to search application usage information between users who are allowed to share information, for example, acquaintances, friends, or users who do not set the information private.
  • intimacy may be set as a search criterion. For example, a user with high intimacy may be searched by using user information of a client requesting application usage information of an acquaintance.
  • the method of checking the intimacy may be searched in a separate database where relationship information between users is stored. Alternatively, the method may be searched based on interactions such as mail and message exchange between users.
  • the separate database where the relationship information between users is stored is a database that can be implemented in a server that provides SNS, and stores identification information of two or more users together, and stores intimacy of the two users or an allowable range of information sharing. Can be.
  • the central controller 2120 may apply the same or similar application to the application used by a specific user as a search criterion. In another embodiment, the central controller 2120 may apply, as a search criterion, an application that is not currently running in a client that requests application usage information of an acquaintance.
  • the usage pattern information of the application may be generated. For example, when a user requesting application usage information of an acquaintance is a first user, application use pattern information of the first user is generated using the first user information, and the generated pattern information is used to generate the application use pattern information.
  • the database unit 2110 may search for application usage information of related friends.
  • the transceiver 2130 receives first user information requesting application usage information of an acquaintance from a client, and uses the application of a second user searched by the central controller by using the first user information in the database unit 2110. Send information to the client.
  • the transceiver 2130 receives this message. In response to the received message, the transceiver 2130 may transmit a URL including the URL for enabling the application to the client. In addition, when the application is previously stored in the client or when the client can access the application in a different manner, the transceiver 2130 may not transmit or receive a separate message.
  • the process of providing a predetermined reward or benefit to the acquaintance can proceed. That is, the central controller 2120 may further store benefit providing information in the application usage information of the acquaintance. As described above, the method may include increasing a predetermined point or rank.
  • the transceiver 2130 may receive the usage information of the application from the application or the client in real time or at a predetermined interval, which allows the client to update the application usage information of acquaintances. For sake. Therefore, when the changed usage information exists, the central controller 2120 may control the transceiver 2130 to transmit to the client of an acquaintance.
  • the server of FIG. 21 since the server of FIG. 21 enables SNS service, it includes friend or acquaintance setting information between users required for SNS. This information can be managed separately from the usage information of the application.
  • the setting information of the friend or acquaintance may include the association or intimacy of the specific user with another user or the detailed setting information of information disclosure using the user identification information.
  • the transceiver 2130 of FIG. 21 provides a function of allowing a server to transmit and receive information with a client using the Internet or other communication media. This includes both wired and wireless, and is not limited to the structure of any particular Internet or mobile communication network.
  • 22 is a diagram illustrating a configuration of a client according to one embodiment of the present specification.
  • the client 2200 is largely comprised of an application execution unit 2210, an application usage information display unit 2220, a transceiver 2230, and a central controller 2240. Looking in more detail as follows.
  • the application executing unit 2210 executes the application for use.
  • the application can be configured in various ways. It can be composed of a predetermined HTML document on the web, a flash file, and also ActiveX, Silverlight, and Flex. This can be an application created using Java.
  • the application in the present specification may be downloaded and executed, or may have a structure for transmitting and receiving data with the application server in real time or at a predetermined interval.
  • the transceiver 2230 transmits and receives information from a server, transmits logged-in first user information to the server, and receives application usage information of at least one second user from the server.
  • the application usage information display unit 2220 displays the application usage information of the second user.
  • the application usage information display unit 2220 may display information by using predetermined display criteria.
  • the server may provide application usage information of the second user by applying a predetermined search criterion.
  • the application usage information of the second user transmitted by applying the search criteria from the application usage information display unit 2220 or the server may be variously configured.
  • the second user may be a user who uses the same or similar application as the application used by the first user.
  • the second user may be a user who has shared information with the first user, and the second user may be a user who is familiar with the first user.
  • the usage information of the application it may be searched or selected and displayed from the viewpoint of the application. For example, the usage information of the same or similar application as the currently running or recently performed application may be displayed or received. Conversely, usage information of applications not currently running may be displayed or received.
  • the application use pattern information or the content generation information of the first user may be selected application information based on a predetermined search criterion.
  • the client 2200 may transmit application usage pattern information or content generation information to the server.
  • the application usage pattern information or the content generation information may be stored or analyzed in advance in the server to select and provide an application suitable for the first user.
  • the central controller 2240 controls the application execution unit 2210, the transceiver 2230, and the application usage information display unit 2220.
  • the central controller 2240 may generate a message indicating the use of the first user information and the application of the second user, and the transceiver 2230 may transmit the message to a server. This may inform the server that the application is in use or request the use of the application when the first user clicks or presses a specific button to use the application displayed on the application usage information display unit 2220. Thereafter, the transceiver 2230 may receive a message enabling the use of an application from a server.
  • FIG. 23 is a diagram illustrating information of a game application according to an embodiment of the present specification.
  • 2310 is an area for executing an application. It shows a screen in which the above-described first user logs in and executes an application.
  • 2320 displays application usage information of second users who are acquaintances of the first user.
  • Four usage information (2322, 2324, 2326, 2328) is presented.
  • Usage information may be presented one for each user, one for each application, or may be repeatedly provided for each user / application.
  • the 2320 presents usage information of a number of acquaintances for the same application, and rank and score information for each user is presented.
  • the application usage information 2232, 2324, 2326, and 2328 present application usage information of current or recent acquaintances, respectively.
  • the application usage information may be updated in real time or at predetermined intervals.
  • the 2330 is an interface for adding an acquaintance, that is, a friend, to add and use application information.
  • a behavior pattern reflecting a user's inclination or taste may be reflected to provide a sense of homogeneity to a user who controls the avatar.
  • the user's behavior pattern allows the avatar to automatically respond to external changes even when the user does not control the avatar, thereby enabling continuous game play even when there is no continuous participation of the user.
  • An embodiment of the present disclosure is a method, apparatus for storing a behavior pattern in a process of controlling a avatar by a user and automatically reacting to a change in an external situation or condition without the user's control by using the stored behavior pattern, and Suggest a recording medium.
  • the game service visually represents an avatar (or character) selected by the user or randomly assigned to the user in the virtual world provided to the Internet service users.
  • the control of the avatar may be controlled by the user using an input device or the like for a predetermined behavioral mode preprogrammed with respect to the avatar.
  • a process of setting preference information of the avatar in the process of controlling the avatar will be described.
  • the preference information of the avatar in the game may occur for various fields and various items. In order to calculate the preference information, it may be divided into a case of determining an action of an avatar as information falling into a predetermined category, and a case of storing and reanalyzing an action of an avatar.
  • the client device connects to the game server via the network medium (S2410).
  • the client device is a device that provides an interface and a processing function so that the user can control the avatar.
  • the client device includes a mobile phone, a PDA, a smart phone, a computer, a notebook, and the like, which are illustrated in FIG. 1.
  • the client device may provide predetermined information in the connection process, and may provide user identification information as information necessary for the user to participate in the game.
  • User identification information includes an ID, a password, and the like.
  • the server transmits avatar information to the connected client (S2420).
  • the avatar information is necessary information for displaying and controlling the avatar in the client device, and when a predetermined change occurs in the avatar, the avatar information may be transmitted back to the client.
  • the avatar display processing unit is installed to display the avatar on the client device for a predetermined period of time, and to display the changed information on the avatar on the client instead of the server, and to move the avatar between the server and the client. For example, it may be implemented not to transmit or receive information whenever a motion occurs.
  • the client proceeds to play the game using the received avatar information, and receives the external environment information in the process of proceeding the game (S2430).
  • the external environment information includes information related to the change of the surroundings as the avatar moves, and the non-playable character (NPC), item, etc. may also be included in the external environment information according to the type of game.
  • NPC non-playable character
  • an avatar controlled by another user may be included in the external environment information.
  • information on objects, spaces, other players' avatars, NPCs, and the like, which are encountered while the avatar moves or performs a predetermined mission may be external environment information, and the avatar moves or performs a predetermined mission.
  • An object, a space, an avatar of another player, an NPC, or the like, which are encountered in the process of displaying the information, information on characteristics, and information on changed matters may all be examples of external environment information.
  • the client device controls the avatar to generate predetermined behavior information, and the server receives the behavior information of the avatar from the client (S2440).
  • embodiments of the external environment information or behavior information corresponding to the case where it is difficult to categorize into a predefined range include a case having quantitative characteristics such as speed and time. For example, if one of the spaces of the forest and the city is selected, it can be regarded as being included in the predetermined category. However, in a situation where the external environment information of the forest is presented, it is difficult to categorize the time the avatar stays in the forest, the moving path, and the like in advance, and thus, the preference information for the avatar is not determined through the category.
  • the behavior information is analyzed using the external environment information as one analysis decision value (S2470). As a result, the analyzed information may be set as the preferred information (S2480). For example, when the time required to move the forest is long, or when the movement path covers the entire forest, the preference information of the avatar may be set as a favorite of the forest.
  • FIG. 24 stores preference information
  • non-preferred information may also be stored. For example, when not repeatedly selected, or when the opposite behavior is performed, it may be stored as unfavorable information.
  • FIG. 25 is a diagram illustrating an example of setting preference information of a user through an act of purchasing an item according to an embodiment of the present specification.
  • Items that the avatar can select are displayed on the screen 2500 displayed through the display unit of the client device.
  • 2550 is also a screen displayed through the display unit so that the avatar can perform a predetermined action. This corresponds to a process of transmitting external environment information in FIG. 24 (S2430).
  • the user selects the costume item 252520 or the travel item 252530 by controlling a mouse, a keyboard, a touch screen, and the like, the corresponding menus 252522 and 253252 are displayed, and the user can select a specific item from these items.
  • This is an embodiment of the process of receiving the behavior information of FIG. 24 (S2440).
  • the 2500 shows a red blouse as a costume and a forest as a destination.
  • Information in which the user selects a specific item by controlling the avatar may be one action information, and the action information is stored as 2524 and 2534.
  • 2524 and 2534 are exemplary embodiments of the structure of the behavior information database.
  • the behavior information of the user A selected red, purple, and red for clothes, house, and car is stored.
  • C selects white for a house.
  • a user A selects a mountain, a forest, and a forest as a travel destination at different times, and B stores information on an action of selecting a city and a mountain at different times. Since the behavior information of 2524 and 2534 of FIG. 25 has a category for color or region, preference information of the corresponding avatar may be set using the category information according to S2460 of FIG. 24. Therefore, as a result, preferences for color and region are set as in 2526 and 2536.
  • A can use red as the preferred color because the behavior information for the three colors is red, purple and red.
  • B although there is information on the behavior of selecting red and blue, it is difficult to find the relevance of the two colors. This may then be reset according to the color selection behavior information of B. In the case of C, since white is selected, the preferred color is set to white.
  • the preference information is set as forest because 2 out of 3 is based on 2534 in case of A, and in case of B, information about opposite spaces such as city and mountain is calculated. You may not.
  • the preference information or behavior information accumulated in FIG. 25 may be a behavior pattern of the user's avatar. That is, when a question requiring selection is presented to the game as illustrated in 2522 of FIG. 25, and the user selects and selects a specific item, the content of the selected answer sheet may be user behavior pattern data. In this case, the selected answer may be recorded as a preferred behavior pattern, and the unanswered answer may be recorded as a non-preferred behavior pattern, and as shown in 2524, priority may be given to a recent occurrence based on the number of times or the current. It can be broken down by numerically ranging whether it is unfavorable.
  • the selection item includes a selection with different categories such as clothes and colors, such as 2522
  • a plurality of behavior information may be stored and patterned. For example, in 2522, you chose red and at the same time you chose a blouse, so you can store your preferences as you prefer a blouse. Subsequently, when the avatar automatically reacts to an external environment, the red and the blouse may become a predetermined behavior pattern. That is, behavior patterns such as automatically selecting a blouse or selecting a red object are possible. Therefore, when answering a question that requires selection of category A and the corresponding answer, if category A includes elements of category B in addition to category A, categories A and B can be used as behavior pattern data, respectively.
  • FIG. 25 shows an example of storing a selection through text and behavior information according to the text, but is not limited to the text and may be displayed in the form of an image, an image, audio data, or the like.
  • all the actions taken by the avatar during the game may be stored in the action information, and preference information may be calculated and stored accordingly.
  • the avatar By generating a behavior pattern based on this, the avatar can act or act according to a predetermined behavior pattern for a change in a specific external environment.
  • 2532 is displayed to be selected as a specific space is presented as an item, as shown in 2550
  • the direction in which the user wants to move on the game screen can be selected by clicking a location on the graphic interface. That is, when the user controls the moving behavior of moving the avatar to the forest as shown in the 2550 screen, if the behavior accumulates, it may act as a behavior pattern. If the forest is continuously selected and moved in this process, the forest may be stored as one piece of preference information, and the city may be stored as non-preferred information, or the city may not store additional information.
  • FIG. 25 illustrates a case in which preference information of a user is set when a category is clear, such as purchase of clothes and selection of a destination.
  • the preference information of the user is not necessarily selected from external environment information of a specific category or is set by predefined behavior information, and preference information is accumulated through accumulation of behavior information of an avatar controlled by the user. Can be set. This will be described in FIG. 26.
  • FIG. 26 is a diagram illustrating an example of setting preference information of a user through uncategorized behavior according to another embodiment of the present specification.
  • FIG. 25 illustrates a case where a user selects a specific item or a specific situation in a process of controlling an avatar.
  • FIG. 26 may accumulate behavior information that is not categorized in advance and analyze the same to set preference information of the avatar.
  • the process of FIG. 26 is related to S2470 and S2480 of FIG. 24 described above, but is not necessarily included therein.
  • the server transmits external environment information to the client (S2610).
  • Action information of the avatar of the client is generated with respect to the transmitted external environment information, and the action information is received from the client (S2620).
  • the received behavior information is stored in a database (S2630). In this case, identification information of the corresponding avatar may be stored together to identify which avatar's behavior information.
  • the behavior characteristic information is calculated from the received behavior information (S2650). For example, when there is a lot of information indicating that the behavior information walks in a specific area, for example, a library, a school, etc. in a virtual space, the library and the school may be characterized as a place. In addition, walking can be a feature of the preferred method of movement.
  • the feature information is calculated and preference information is calculated using the feature information (S2660).
  • the preference information may be set as an educational institution.
  • reading may be included as preference information indicating a preferred leisure activity.
  • the feature information is shopping and chatting through the activity information of shopping in the virtual space or chatting with other avatars, it may be extroverted as preference information about the personality.
  • the relationship between the behavior information, the feature information, and the preference information can continuously improve the accuracy of the analysis tool by using the analysis result as a feedback.
  • the calculated preference information is set as preference information of the corresponding avatar (S2670). As a result, preference information of the corresponding avatar may be set through a predetermined cumulative action.
  • Another embodiment in which the analysis tool operates may be interaction with other avatars in the virtual space. For example, when dating with an avatar of another user, information about a frequently visited space may be set as a preferred space of the corresponding avatar. In addition, the color of the costume of the opponent avatar, the type of the costume, or the contents of the conversation through the opponent avatar may be stored as the action information, and analyzed and set as the preference information.
  • FIG. 27 is a diagram illustrating a process of setting preference information of an avatar according to an embodiment of the present specification.
  • the preference information of the avatar in the game may occur according to the behavior of the avatar controlled by other gamers or players.
  • S2710 and S2720 are the same as the steps S2410 and S2420 of FIG. 24, the description of the steps S2410 and S2420 will be replaced.
  • the steps S2710 and S2720 are not always necessary and may occur once or several times in the game process.
  • the server transmits the information of the opponent avatar to the client (S2730).
  • the relative avatar refers to the avatar of the current client and the avatar of another user included in one space.
  • information on a plurality of avatars may also be transmitted.
  • the avatar information of the corresponding client is received from the client with respect to the transmitted counterpart avatar.
  • the action information varies depending on the type of game. In the case of a battle game, the battle information may be performed depending on whether the opponent avatar is an enemy or an ally. In the case of a role playing game, a predetermined mission can be performed with the opponent avatar.
  • the interaction with the opponent avatar is necessarily included in the action information of the present specification, but the action such as moving to the vicinity of the opponent avatar or moving in the opposite direction may also be the action information.
  • the received behavior information is included in a predetermined category (S2750). If included as a result of the check, it is set as the preference information of the avatar of the client using the behavior information (S2760).
  • preference information may be set using a separate analysis tool.
  • the behavior information of the opponent avatar may be stored together.
  • the behavior information is stored and the process of analyzing the behavior information is performed.
  • the received behavior information is stored in the database (S2770).
  • the information of the opponent avatar and the behavior information of the opponent avatar may be stored together.
  • the behavior characteristic information is calculated from the received behavior information (S2782).
  • the behavior feature information can be calculated also from the behavior information of the opponent avatar.
  • the preference information may be calculated from the calculated behavior feature information (S2784), and the calculated preference information may be set as the preference information of the corresponding avatar (S2786).
  • the action of the opponent avatar, the action information and the preference information thereof may be differently implemented.
  • the detailed feature of the opponent avatar may be the preference information.
  • the collaborative content may be behavior information.
  • the actions of carrying the luggage together or going along the road with the other avatar are stored as the action information.
  • how to defend or attack according to the weapon of the opponent avatar is also stored as the behavior information.
  • behaviors that vary depending on which outfit the opponent avatar wears, what looks, and which conversations are used may also be behavior information.
  • the 24, 25, 26, and 27 store preference information of an avatar generated according to a change in an external environment including a partner avatar.
  • the stored preference information is used to generate the behavioral pattern of the avatar. Therefore, even if the avatar is not separately controlled, the avatar may automatically perform an action according to an external environment change. For example, if your preferred partner talks to you, you can have a pre-patterned conversation with that avatar. If your favorite avatar talks to you, you can automatically disconnect or move to another location. You can do that.
  • preference information of the avatars learned and stored through FIGS. 24, 25, 26, and 27 allows the corresponding avatar to automatically react to the external environment to perform a predetermined action or action.
  • information about repeated behaviors may be stored and stored as preference patterns and behavior patterns.
  • the preference information may be an information factor for generating a behavior pattern.
  • the behavior pattern may be generated through the preference information, or the behavior pattern may be generated through the accumulation of the behavior information.
  • the behavior pattern may be an action or may mean a higher concept of multiple actions. It can also be a behavioral pattern that occurs through preference information. For example, disco dancing or waltzing activity information may be gathered on music in a specific category to generate a behavior pattern of 'dance' for a specific category of music.
  • the behavior pattern information provided for the automatic response of a specific avatar by the server may be individual behavior information, or may be a behavior pattern inferred through the individual behavior information.
  • the avatar may receive an individual action and apply an action pattern according to a given environment.
  • FIG. 28 is a diagram illustrating a configuration of a behavior pattern providing module for generating a behavior pattern information DB of an avatar controlled by a user. It receives the behavior information of the avatar from the client, such as 2805, through the network means.
  • the behavior information includes various behaviors such as movement of an avatar, action, item acquisition, or battle, dialogue, and companionship with an opponent avatar, and also includes behavior for a specific external environment.
  • Received behavior information is classified and stored in the behavior information DB. For example, as listed in 2815, the behavior information is divided into specific music, colors, characters, age, food, movies, places, animals, or preferences for non-preferred behaviors.
  • the information may be stored in the DB 2810.
  • Preferred or non-preferred can be stored as preferred or non-preferred by choosing whether or not to select music, people, animals, or places. In addition, it may be stored as a preference or non-preferred behavior through whether or not it continuously exists or moves in the changed external environment. In addition, the result of selection may be stored by accumulating as 2524 and 2534 described above with reference to FIG. 25.
  • the user in order to accumulate the behavior information, it may be determined whether there is existing behavior information accumulated. For example, the user continuously receives the user's behavior information (or behavior pattern manipulation information) for the duration of the game, and records a record of the behavior information of the user and the database for recording the entire behavior information from the received behavior information. If all of the information is recorded and the recorded behavior information, the corresponding behavior information is recorded. If the recorded behavior information, the number of times of the relevant behavior information can be recorded and the data can be stored. In this case, when the number of behavior information is large, the behavior pattern manipulation, which is the behavior information, may be a behavior pattern manipulation more suitable for the automatic response of the avatar.
  • the information is stored in the behavior information DB 2810, this allows the preference information to be stored in the preference information DB 2820 through the preference information analysis tool 2840.
  • the information stored may be preferred or unfavorable music such as 2825, color, person, age, food, movie, place, or animal.
  • the information of the preference information DB 2820 and the behavior information DB 2810 stored as described above are used by the behavior pattern generator 2850 to generate the behavior pattern. As a result, the information is stored in the behavior pattern information DB 2830.
  • the behavior pattern generator 2850 generates behavior patterns by collecting behavior information of the behavior information DB 2810 or preference information of the preference information DB 2820. For example, when a preference or non-preferred behavior for a specific external environment is accumulated and stored in the behavior information DB, behavior pattern information that can be automatically reacted to perform the accumulated stored behavior for the external environment is stored. For example, when the act of dancing information about a specific music is accumulated in the behavior information DB 2810, the preference information about the music is stored in the preference information DB 2820, and the act of dancing on the music is also performed. The pattern may also be stored in the behavior pattern information DB 2830.
  • the behavior pattern generator 2850 detects the behavior pattern to avoid the external environment in the behavior pattern information DB 2830. Can be stored in
  • FIG. 29 is a diagram illustrating a process of providing a behavior pattern by an automatic response of an avatar to a change in an external environment according to one embodiment of the present specification.
  • the opponent avatar may appear to provide an interaction with the opponent avatar.
  • the server transmits information of the avatar of the second client to the first client (S2910).
  • the avatar of the second client becomes a counterpart avatar and a second avatar.
  • the user of the second client controls the second avatar in a virtual space where the first avatar, which is the avatar of the first client, is moved to one virtual space. It exists within the same virtual space.
  • a user of the first client moves the first avatar to the virtual space, and there may be a second avatar controlled by the user of the second client in the space.
  • avatar information of the second client is transmitted to the first client.
  • the server may also transmit the first avatar information of the first client to the second client.
  • the first client will be described, and since the information exchange with the second client is also the same as the information exchange with the first client, information exchange with the second client will be omitted.
  • Behavior information, preference information, or behavior pattern information of the counterpart avatar is transmitted to the first client (S2920).
  • the first client determines whether the first client is in an automatic response mode. If the user is not in the automatic response mode, that is, if the user of the first client is continuously controlling the first avatar, the user of the first client controls the first avatar with respect to the counterpart avatar, and thus the predetermined behavior information. Will be sent to the server.
  • the server receives and stores behavior information on the counterpart avatar from the first client (S2970).
  • the preference information is stored as the behavior information of the first avatar, and the behavior pattern information may be generated and stored through the configuration of FIG. 6.
  • the behavior pattern information of the first client related to the characteristics, behavior information, preference information, behavior pattern information, etc. of the counterpart avatar avatar is searched for (S2930). For example, if the opponent avatar prefers a specific color and wears the corresponding color, there may be behavior information, preference information, or behavior pattern information of the first avatar associated with the color. If there is a preferred or non-preferred behavioral pattern for the given color, the preferred or non-preferred behavioral pattern information related to the first client is transmitted (S2960). As a result, the first client can automatically react according to the behavior pattern. On the other hand, if the related behavior pattern is difficult to distinguish from preference or non-favorite, the stored behavior pattern information is transmitted to the first client (S2950).
  • Non-preferred information is set in which the first avatar hates "hip-hop style clothes".
  • the server transmits non-preferred behavior pattern information to the first client according to the non-preferred information.
  • the first avatar may move a little further away or attempt an automatic chat to see him next time.
  • behavior information for moving the first avatar to a virtual space called a coffee shop is set.
  • behavior information for moving the first avatar to a virtual space for fitness is set.
  • the server may transmit the behavior pattern information indicating to 'move to the virtual space to perform health', which is stored behavior pattern information, to the first client.
  • 29 illustrates an avatar reaction process between the user and the avatar of the counterpart user.
  • the user may be matched with another user's avatar, and may interact with the user's avatar such as dialogue, cooperation, and confrontation, and perform an operation manipulation necessary for the interaction.
  • the behavior pattern data of the counterpart user it is determined whether the behavior pattern data of the counterpart user exists according to the behavior pattern category of the behavior manipulation, and when the behavior pattern data does not exist, the counterpart user avatar does not show a general preference for the behavior manipulation. Is displayed. If there is behavior pattern data of the counterpart user, it is determined whether the preference value for the corresponding behavior pattern is high, and if the preference value is high, a response to the behavior manipulation is indicated. On the other hand, if the non-preferred value is high, it may indicate an unfavorable response to the behavior manipulation.
  • the feature information includes feature information of all external environments represented in the space where the avatar exists. For example, if the external environment is an object such as a car, a location, music, or the like, all values that the object, location, music, etc. may have are classified and stored in a category. That is, when a space is represented in a game including an avatar, a non-playable character (NPC) existing in the space, or an avatar controlled by another user, the value is included in a category of feature information. Is displayed.
  • NPC non-playable character
  • the 3010's feature information database shows stored examples by categorizing colors, music, age, food, movies, hair styles, costumes, and spaces.
  • the range of values that each feature can have is categorized and stored. In the case of color, RGB (Red, Green, Blue) values can be represented to represent various colors. However, since the range of this value is very wide, when the RGB value is divided into predetermined units and behavior information is stored, it can be stored as a representative color belonging to the corresponding unit.
  • the action information included in the category may be stored in the action information database 3020 as it is.
  • the behavior information stores behavior information that the avatar reacts to under the user's control of the external environment including the characteristic information of the 3010. For example, the user selects a specific color of a car and clothes, or dances in a specific music. The act of turning off the music may be the action information.
  • the UID becomes identification information of the avatar.
  • the behavior information and the characteristic information are stored in the database 3030 as behavior pattern information instructing the behavior pattern generator 3050 to perform preferences or preferences for specific categories of the characteristic information or to repeatedly perform the accumulated behavior.
  • Preferred or unfavorable refers to a case in which a case where a selection or rejection is accumulated and such information is determined and stored as preference information or non-preferred information is stored in the 3030 avatar A prefers red color.
  • the feature information of the external environment information provided to the avatar A includes a red color
  • the avatar A may have a preferred behavior pattern. For example, when the red umbrella is included in the external environment information provided to the A avatar, the A avatar may select the red umbrella as a preferred behavior pattern.
  • the avatar D may start a conversation with the avatar D as a preferred behavior pattern.
  • the behavior pattern information may indicate a specific behavior but may also provide information for performing a specific behavior.
  • the client may interpret the received behavior pattern information to control to perform an action in response to an external environment given to the avatar.
  • the server may transmit the instruction information to the client that interprets the behavior pattern information and reacts to the external environment given to the avatar. This means that the avatar can be controlled by interpreting the behavior pattern information in both the server and the client in the implementation process.
  • a avatar is difficult to determine whether the number of times he rejected the avatar wearing hip hop clothes was one, and the number of times he or she preferred hip hop clothes or not.
  • the behavior pattern information may be stored to perform a neutral action with the avatar wearing the hip hop clothes.
  • the A, B, and C avatars may be displayed in one virtual space while the behavior information and the behavior pattern information of the A, B, and C avatars are stored. This is possible through a process in which the server provides a common virtual space to each client controlling A, B, and C.
  • the clients controlling the A, B, and C avatars set the A, B, and C avatars in the auto response mode, the feature information, the behavior information, and the behavior pattern information of the A, B, and C avatars can be used. have.
  • the avatar A prefers red color. Therefore, when the color of the clothes or belongings of the avatars B and C is red or close to red, the avatar A may approach the avatar. have. This means that since the behavior pattern information is preferred, the approaching behavior, which is an embodiment of the preferred behavior pattern, is performed. Conversation, shaking hands, and the like can also be examples of preferred behavior patterns.
  • a avatar wears hip hop clothes and C avatar wears a suit
  • a avatar has a behavior pattern set to maintain a conversation with a suit avatar, so that the client of A avatar approaches C avatar and proceeds with the conversation. Can react automatically.
  • the server provides an online game and provides behavior pattern information that can automatically react to an external environment to a client controlling the avatar.
  • the overall configuration includes a transceiver 3110, a controller 3120, an avatar database unit 3130, a game information database unit 3140, a behavior pattern information database unit 3150, and a behavior pattern generation unit 3160. Looking in more detail as follows.
  • the transceiver 3110 transmits and receives information with the client. Provides communication functions including network modules. Internet communication, network communication using a socket (socket) as described above.
  • the game information database unit 3140 stores a game screen, game progress information, external environment information generated in game progress, and a game program.
  • the server In an online game, the server must send game data to the client in real time or at regular intervals, and can receive such game progress results from the client.
  • the game information database unit 3140 stores information related to game progress and external environment information and provides the same to the client.
  • the avatar database unit 3130 stores the behavior information or preference information accumulated by the avatar as the game progresses. Behavior information and preference information described with reference to FIGS. 25, 28, and 30 may be stored for each avatar.
  • the behavior pattern information database unit 3150 stores behavior pattern information of the avatar.
  • Behavior pattern information refers to information that enables the avatar to automatically react in the specific external environment described above. Specific behavior information may be included, or the preference information and the external environment may be combined to instruct preferred or non-preferred behavior, and may be interpreted by the server or the client to be a specific behavior.
  • the behavior pattern generator 3160 combines the behavior information or preference information stored in the avatar database unit with the external environment information to generate behavior pattern information and stores the behavior pattern information in the behavior pattern information database unit. As described above with reference to the embodiments of FIGS. 24, 26, 27, 29, and 28 and 30, behavior pattern information is generated using behavior information, preference information, and external environment information.
  • the controller 3120 controls the transceiver 3110, the game information database 3140, the avatar database 3130, the behavior pattern information database 3150, and the behavior pattern generator 3160, and controls the specific client.
  • behavior patterns for automatically responding to the avatar may be transmitted to the client in consideration of an external environment.
  • the behavior pattern information is not a specific behavior, a task of interpreting the behavior as an additional behavior may be additionally performed.
  • the behavior pattern information may be transmitted to the client, and the client may interpret it as a specific behavior.
  • the feature information database unit may be implemented as described with reference to FIG. 30.
  • the role of the game information database unit 3140 which provides game information may be somewhat reduced, and the controller 3120 may transmit a game program.
  • the feature information database unit may store external environment information and feature data generated in the course of the game, and the behavior pattern generator 3160 may use the N feature data of the external environment information and the behavior information of M avatars of the feature information. Can be created and stored in the behavior pattern information database.
  • the controller 3120 transmits, to the client, information that the first avatar and the second avatar of the M avatars are arranged in the same virtual space to automatically respond to the avatar, and the behavior information of the first avatar and the second avatar.
  • the transmission and reception unit 3110 may be controlled to extract behavior information and feature information of an avatar from the behavior pattern information database 3150 and transmit the behavior pattern information to a client controlling the first avatar.
  • the server may send the behavior pattern information to a specific client and receive the behavior information therefor.
  • the received behavior information may be transmitted to the counterpart avatar of the other client to receive new behavior information corresponding to the counterpart avatar of the other client.
  • 32 is a diagram illustrating a process of transmitting external environment information and behavior information and interpreting behavior pattern information in a client according to one embodiment of the present specification.
  • the client receives the avatar and external environment information from the server (S3210).
  • the external environment information includes information about a space, information about a counterpart avatar, and the like.
  • the controller determines whether the automatic response mode is selected, and when the automatic response mode is selected, receives behavior pattern information from the server (S3230), and generates behavior information from the received behavior pattern information (S3240).
  • the behavior pattern information may indicate a specific behavior or may indicate behavior pattern information that is a higher concept of the specific behavior. That is, when the behavior information for selecting the red clothes is included in the behavior pattern information as it is, the avatar may be operated by generating the behavior information for selecting the red clothes.
  • Action information may be generated to allow an action such as requesting a conversation. This can identify what the external environment information is in the process of interpreting the behavior pattern information, and can generate behavior information from the behavior pattern.
  • behavior information is generated from the control input signal received from the external input device (S3250).
  • a control input signal is generated so that a user moves an avatar or selects a specific item through an external input device such as a mouse, a keyboard, or a touch screen.
  • the behavior information is generated from the control input signal.
  • the behavior information generated in S3240 or S3250 is transmitted to the server.
  • the server may reflect the received behavior information in the game, and if the opponent avatar exists, transmit the screen information indicating the result or the result of the behavior information to the client controlling the corresponding avatar.
  • the external environment information may be transmitted together. For example, the external environment information may also be transmitted to inform the server that information on dancing is generated when a specific music is selected or a specific music is played. have.
  • the overall configuration includes a transceiver 3310, a controller 3320, a mode setting unit 3330, and an external input device 3340.
  • the transmission / reception unit 3310 transmits and receives information with the server, receives the avatar and external environment information from the server, and the mode setting unit 3330 sets the automatic response mode.
  • the automatic response mode can be set by the user using an external input device of the client.
  • the controller 3320 receives behavior pattern information from the server, and generates behavior information from the received behavior pattern information.
  • the controller 3320 When the automatic response mode is not set, the controller 3320 generates behavior information from the control input signal received from the external input device 3340.
  • the generated action information is transmitted to the server through the transceiver unit 3330.
  • the external environment information may be transmitted together.
  • the external environment information may also be transmitted to inform the server that information on dancing is generated when a specific music is selected or a specific music is played. have.
  • 31 and 33 are configurations of a server and a client for enabling avatar auto-response according to one embodiment of the present specification, and may further include a plurality of components for executing a game.
  • Both servers and clients can include common computing system environments.
  • the computing system environment is merely one example of a suitable computing environment and does not impose any limitation on the scope of the functions or uses herein.
  • the server or client herein may be operated by a number of other general purpose or special purpose computing system environments or configurations.
  • personal computers, server computers, portable terminals, notebook computers, multiprocessor systems, microprocessor based systems, set top boxes, programmable appliances, network computers, mini computers, mainframe computers, any of the systems or devices described above. May be implemented in any system or device in which the functionality of a server may be implemented in distributed computing via a network.
  • an avatar system that can represent a user representatively, it is composed of an area such as an avatar's name, appearance (appearance, clothes, etc.), language, comment, and action expression, and the user directly sets
  • the other user grasps the counterpart user through the counterpart user avatar there is a problem in that the information other than the set information and function cannot be grasped.
  • the information of the avatar set by the user plays a fragmentary role of expressing the information directly, and there is a limit in extending the expression or response of the avatar through the information set by the user.
  • embodiments of the present disclosure may accumulate data for avatar response based on a user's behavior pattern in an online game environment, and provide an avatar response system according to interaction of other users.
  • an automatic avatar response system based on behavior pattern data is set, and behavior pattern data of an avatar controlled by a user is collected and stored.
  • the user may match the avatar, perform a selection operation required for interaction between the avatars, and according to the selection operation, the avatar automatic response system. You can output a response that matches.
  • the avatar behavior response by reflecting the user's behavior pattern without the hassle of the user directly setting or real-time operation of the avatar's behavior response Can be executed automatically and provide a more human interaction to other users who interact with the user's avatar.

Landscapes

  • Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Economics (AREA)
  • Game Theory and Decision Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Marketing (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 명세서는 SNS 상에서 어플리케이션간 이벤트 정보를 송수신하는 방법, 장치, 및 기록매체에 관한 것이다. 본 명세서의 일 실시예에 의한 SNS 상에서 어플리케이션간 이벤트 정보를 송수신하는 방법은 하나 이상의 어플리케이션 서버로 구성된 어플리케이션 서버군 및 노티피케이션 서버로 구성된 시스템에 있어서, 상기 어플리케이션 서버군의 제 1 어플리케이션 서버가 제 1 클라이언트에 어플리케이션을 송신하는 단계, 상기 제 1 어플리케이션 서버가 상기 제 1 클라이언트로부터 이벤트 설정 정보 및 상기 이벤트 발생을 통보받을 사용자 정보를 수신하는 단계, 상기 제 1 어플리케이션 서버는 상기 이벤트 설정 정보 및 상기 사용자 정보를 상기 노티피케이션 서버에 송신하는 단계, 상기 노티피케이션 서버는 수신한 상기 이벤트 설정 정보 및 상기 사용자 정보를 저장하는 단계, 상기 노티피케이션 서버가 상기 제 1 어플리케이션 서버로부터 상기 설정한 이벤트 발생 정보를 수신하는 단계, 및 상기 노티피케이션 서버는 상기 어플리케이션 서버군에 포함된 하나 이상의 어플리케이션 서버에게 상기 이벤트 발생 정보를 송신하는 단계를 포함한다.

Description

SNS 상에서 어플리케이션간 이벤트 정보를 송수신하는 방법, 장치, 및 기록매체
본 명세서에서는 사용자와 컴퓨터 내의 네트워크 시스템 내의 정보들 간의 유기적인 결합을 가능하게 하도록 소셜 네트워크 시스템 또는 이를 이용한 게임 시스템을 제공하는 것을 특징으로 한다.
본 명세서는 소셜 네트워크 시스템에 관한 것으로서, 특히 SNS 상에서 특정 어플리케이션에서 발생한 이벤트 정보를 어플리케이션 간에 송수신할 수 있도록 하기 위해 어플리케이션의 이벤트 정보를 저장하고, 이를 다른 어플리케이션에게 송신하며, 송신된 이벤트 정보를 수신하여 처리하는 방법, 장치, 및 기록매체를 제공하는 것이다.
또한, 본 명세서는 소셜 네트워크 시스템에 관한 것으로서, 특히 SNS 상에서 지인간 혹은 관심 사용자 간에 어플리케이션의 사용 정보를 송수신하기 위하여 어플리케이션의 사용 정보를 저장하고 이를 클라이언트의 접속 혹은 정보 요청 과정에서 송수신하는 방법, 장치, 및 기록매체를 제공하는 것이다.
또한, 본 명세서는 아바타를 이용한 게임 시스템에 관한 것으로서, 특히 사용자가 아바타를 제어하는 과정에서 행동 패턴을 저장하고, 저장된 행동 패턴을 이용하여 아바타가 사용자의 제어 없이 자동으로 외부의 상황 또는 조건의 변화에 반응하는 방법, 장치, 및 기록매체를 제공하는 것이다.
종래의 인터넷 서비스는 단순한 정보를 제공하는 수준에서 발전하여, 많은 경제, 문화적 생활을 인터넷 상에서 구현하는 수준에 이르렀다. 그 결과, 인터넷을 통해 친목을 교류하고, 정보를 교환하여 왔다. 이는 최근 소셜 네트워크 시스템(Social Network System, 이하 SNS라 한다)의 등장을 가져왔다.
그러나 SNS에 어떤 시스템을 접목할 것인지는 현재 명확하게 규정되어 있지 않아. SNS에 대한 다양한 시스템의 접목이 기대되고 있다. 특히, 스마트폰, 휴대폰, PDA, 컴퓨터, 노트북 등이 다양한 통신 기능과 결합하여 여러 어플리케이션의 실행을 제공하고, SNS 서비스에 이러한 어플리케이션의 실행을 결합하는 기술이 제시되고 있다.
또한, 종래의 게임은 컴퓨터와 사람, 또는 사람과 사람이 소정의 게임 내의 아이템을 제어하여 경쟁하는 방식이었다. 그러나, 인터넷의 확산과 함께, 사람과 사람이 게임 내의 아이템 또는 아바타를 제어하여 동일한 목적을 이루기 위해 공동으로 게임을 진행하거나, 일상 생활을 그대로 반영하여 그러한 일상 생활에서 발생하는 여러가지 상황을 게임 내에서 재현하는 방식의 게임도 증가하고 있다. 이러한 게임에서 사용자의 아바타 제어는 매우 세밀하고 정교하게 이루어지며, 사용자의 성향이 아바타에 그대로 반영될 가능성이 높아지고 있어, 사용자와 아바타 간의 동질성을 게임 내에서 구현하는 분야의 활성화가 기대되고 있다. 따라서, 어플리케이션의 실행 또는 어플리케이션의 사용과 관련하여 사용자가 다양한 정보를 설정하거나, 이를 통지받을 수 있도록 하는 시스템 및 방법이 요구되고 있다.
본 명세서의 일 실시예는 SNS 상에서 어플리케이션간 이벤트 정보를 송수신하는 것으로, 어플리케이션에서 발생할 수 있는 다양한 정보를 별도의 프로세스 없이 확인할 수 있도록 한다.
또한, SNS 상에서 어플리케이션간 이벤트 정보를 제공함에 있어서, 어플리케이션 서버들간의 정보 교환을 가능하도록 하여, 클라이언트에서는 최소한의 컴퓨팅 파워를 사용하도록 하여, 클라이언트의 부하를 줄이고자 한다.
본 명세서의 일 실시예는 SNS에 접속할 수 있는 모든 디지털 기기에서 어플리케이션을 사용하거나, 지인 또는 관심 사용자 등의 어플리케이션 실행 과정에서 발생하는 이벤트 정보를 실시간 혹은 일정 간격을 두고 확인할 수 있도록 SNS 상에서 어플리케이션간 이벤트 정보를 송수신하는 방법, 장치, 및 기록매체를 제안한다.
본 명세서의 일 실시예에 의한 SNS 상에서 어플리케이션간 이벤트 정보를 송수신하는 방법은 하나 이상의 어플리케이션 서버로 구성된 어플리케이션 서버군 및 노티피케이션 서버로 구성된 시스템에 있어서, 상기 어플리케이션 서버군의 제 1 어플리케이션 서버가 제 1 클라이언트에 어플리케이션을 송신하는 단계, 상기 제 1 어플리케이션 서버가 상기 제 1 클라이언트로부터 이벤트 설정 정보 및 상기 이벤트 발생을 통보받을 사용자 정보를 수신하는 단계, 상기 제 1 어플리케이션 서버는 상기 이벤트 설정 정보 및 상기 사용자 정보를 상기 노티피케이션 서버에 송신하는 단계, 상기 노티피케이션 서버는 수신한 상기 이벤트 설정 정보 및 상기 사용자 정보를 저장하는 단계, 상기 노티피케이션 서버가 상기 제 1 어플리케이션 서버로부터 상기 설정한 이벤트 발생 정보를 수신하는 단계, 및 상기 노티피케이션 서버는 상기 어플리케이션 서버군에 포함된 하나 이상의 어플리케이션 서버에게 상기 이벤트 발생 정보를 송신하는 단계를 포함한다.
본 명세서의 다른 실시예에 의한 SNS 상에서 어플리케이션간 이벤트 정보를 송수신하는 방법은 하나 이상의 어플리케이션 서버로 구성된 어플리케이션 서버군으로 구성된 시스템에 있어서, 상기 어플리케이션 서버군의 제 1 어플리케이션 서버가 제 1 클라이언트에 어플리케이션을 송신하는 단계, 상기 제 1 어플리케이션 서버가 상기 제 1 클라이언트로부터 이벤트 설정 정보 및 상기 이벤트 발생을 통보받을 사용자 정보를 수신하여 저장하는 단계, 상기 제 1 어플리케이션 서버가 상기 설정된 이벤트가 발생한 것을 확인하여 이벤트 발생 정보를 생성하는 단계, 및 상기 제 1 어플리케이션 서버에 상기 사용자 정보로 로그인한 클라이언트가 접속하지 않은 경우, 상기 제 1 어플리케이션 서버는 상기 어플리케이션 서버군에 포함된 하나 이상의 어플리케이션 서버에게 상기 이벤트 발생 정보를 송신하는 단계를 포함한다.
본 명세서의 또다른 실시예에 의한 SNS 상에서 어플리케이션간 이벤트 정보를 송수신하는 방법은 클라이언트에 어플리케이션의 실행에 필요한 데이터를 송신하는 어플리케이션 서버에 있어서, 상기 어플리케이션 서버가 클라이언트에 어플리케이션의 실행에 필요한 데이터를 송신하는 단계, 외부 서버로부터 상기 어플리케이션 서버가 이벤트 발생 정보를 수신하는 단계, 상기 수신한 이벤트 발생 정보에 포함된 사용자 정보가 상기 클라이언트에 로그인한 사용자 정보와 동일한 경우, 상기 어플리케이션 서버가 상기 이벤트 발생 정보를 이용하여 이벤트 발생 정보 메시지를 생성하는 단계, 및 상기 어플리케이션 서버가 상기 생성한 이벤트 발생 정보 메시지를 상기 클라이언트에 송신한다.
본 명세서의 또다른 실시예에 의한 SNS 상에서 어플리케이션간 이벤트 정보를 송수신하는 시스템은 제 1 클라이언트에게 어플리케이션을 송신하며, 상기 제 1 클라이언트로부터 이벤트 설정 정보 및 상기 이벤트 발생을 통보받을 사용자 정보를 수신하여 저장하는 제 1 어플리케이션 서버를 포함하며, 하나 이상의 어플리케이션 서버로 이루어진 어플리케이션 서버군, 및 상기 이벤트 설정 정보 및 상기 사용자 정보를 저장하는 노티피케이션 서버를 포함하며, 상기 제 1 어플리케이션 서버에서 상기 이벤트 발생 정보를 상기 노티피케이션 서버에 송신하는 경우, 상기 노티피케이션 서버는 상기 어플리케이션 서버군에 포함된 하나 어플리케이션 서버에게 상기 이벤트 발생 정보를 송신하는 것을 특징으로 한다.
본 명세서의 또다른 실시예에 의한 SNS 상에서 어플리케이션간 이벤트 정보를 송수신하는 시스템은 제 1 클라이언트에게 어플리케이션을 송신하며, 상기 제 1 클라이언트로부터 이벤트 설정 정보 및 상기 이벤트 발생을 통보받을 사용자 정보를 수신하여 저장하는 제 1 어플리케이션 서버를 포함하며, 하나 이상의 어플리케이션 서버로 이루어진 어플리케이션 서버군에 있어서, 상기 제 1 어플리케이션 서버에서 상기 이벤트 발생 정보를 상기 어플리케이션 서버군에 송신하는 경우, 상기 어플리케이션 서버군에 포함된 어플리케이션 서버는 상기 사용자 정보로 로그인한 클라이언트에게 상기 이벤트 발생 정보를 송신하는 것을 특징으로 한다.
본 명세서의 또다른 실시예에 의한 SNS 상에서 어플리케이션간 이벤트 정보를 송수신하는 어플리케이션 서버는 클라이언트에 어플리케이션의 실행에 필요한 데이터를 송신하는 어플리케이션 서버에 있어서, 외부 서버 또는 클라이언트와 네트워크로 정보를 송수신하는 송수신부, 이벤트 발생 정보를 이벤트 발생 정보 메시지로 생성하는 메시지 생성부, 상기 클라이언트에 송신할 어플리케이션 실행 정보를 저장하는 어플리케이션 저장부, 및 상기 송수신부, 메시지 생성부, 어플리케이션 저장부를 제어하는 중앙제어부를 포함하며, 상기 송수신부가 상기 외부 서버로부터 상기 클라이언트에 로그인한 사용자 정보를 포함하는 이벤트 발생 정보를 수신한 경우, 상기 중앙제어부는 메시지 생성부가 상기 이벤트 발생 정보를 이용하여 이벤트 발생 정보 메시지를 생성하도록 제어하며, 상기 송수신부가 상기 이벤트 발생 정보 메시지를 상기 클라이언트에 송신하도록 제어하는 것을 특징으로 한다.
본 명세서의 일 실시예에 의한 SNS 상에서 어플리케이션의 사용 정보를 송신하는 방법은 클라이언트로부터 제 1 사용자 정보를 수신하는 단계, 상기 제 1 사용자 정보를 사용하여 제 2 사용자의 어플리케이션의 사용 정보를 검색하는 단계, 및 상기 제 2 사용자의 어플리케이션 사용 정보를 상기 클라이언트에 송신하는 단계를 포함한다.
본 명세서의 다른 실시예에 의한 SNS 상에서 어플리케이션의 사용 정보를 수신하는 방법은 서버에 제 1 사용자 정보를 송신하는 단계, 상기 서버로부터 하나 이상의 제 2 사용자의 어플리케이션의 사용 정보를 수신하는 단계, 및 상기 수신한 제 2 사용자의 어플리케이션의 사용 정보를 표시하는 단계를 포함한다.
본 명세서의 또다른 실시예에 의한 SNS 상에서 어플리케이션의 사용 정보를 송신하는 장치는 사용자별 어플리케이션 사용 정보를 저장하는 데이터베이스부, 상기 데이터베이스에서 검색 기준을 적용하여 사용자별 어플리케이션 사용 정보를 추출하는 중앙제어부, 클라이언트로부터 제 1 사용자 정보를 수신하고, 상기 데이터베이스부에서 상기 제 1 사용자 정보를 이용하여 상기 중앙제어부가 검색한 제 2 사용자의 어플리케이션 사용 정보를 상기 클라이언트로 송신하는 송수신부를 포함한다.
본 명세서의 또다른 실시예에 의한 SNS 상에서 어플리케이션의 사용 정보를 수신하는 장치는 어플리케이션을 사용할 수 있도록 실행하는 어플리케이션 실행부, 서버로부터 정보를 송수신하며, 로그인한 제 1 사용자 정보를 상기 서버에 송신하고, 상기 서버로부터 하나 이상의 제 2 사용자의 어플리케이션 사용 정보를 수신하는 송수신부, 상기 제 2 사용자의 어플리케이션 사용 정보를 표시하는 어플리케이션 사용 정보 표시부, 및 상기 어플리케이션 실행부, 송수신부, 어플리케이션 사용 정보 표시부를 제어하는 중앙제어부를 포함한다.
본 명세서의 또다른 실시예에 의한 SNS 상에서 어플리케이션의 사용 정보를 수신하는 프로그램을 기록한 기록 매체는 어플리케이션을 사용할 수 있도록 실행하는 기능, 서버로부터 정보를 송수신하며, 로그인한 제 1 사용자 정보를 상기 서버에 송신하고, 상기 서버로부터 하나 이상의 제 2 사용자의 어플리케이션 사용 정보를 수신하는 기능, 및 상기 제 2 사용자의 어플리케이션 사용 정보를 표시하는 기능을 구현한다.
본 명세서의 일 실시예에 의한 아바타 행동 패턴을 이용한 자동 반응 방법은 클라이언트에게 제 1 아바타 정보 및 제 1 외부 환경 정보를 송신하는 단계, 상기 클라이언트로부터 상기 제 1 아바타의 행위 정보를 수신하여 저장하는 단계, 상기 저장한 행위 정보 및 상기 제 1 외부 환경 정보를 결합하여 선호 정보 또는 행동 패턴 정보로 생성하여 저장하는 단계, 상기 클라이언트에게 제 2 외부 환경 정보를 송신하는 단계, 및 상기 제 2 외부 환경에 대한 행동 패턴 정보를 상기 클라이언트에 송신하는 단계를 포함하며, 상기 제 1 아바타는 외부의 제어 없이 자동으로 반응하는 것을 특징으로 한다.
본 명세서의 다른 실시예에 의한 아바타 행동 패턴을 이용한 자동 반응 방법은 외부 환경 정보의 N개의 특징 정보와 이에 대한 M개의 아바타의 행위 정보를 행동 패턴 정보로 생성하여 이를 행동 패턴 정보 데이터베이스에 저장하는 단계, 상기 M개의 아바타 중 제 1 아바타와 제 2 아바타가 동일 가상 공간에 배치하는 정보를 클라이언트에 송신하는 단계, 및 상기 제 1 아바타의 행위 정보 및 상기 제 2 아바타의 행위 정보 및 특징 정보를 상기 행동 패턴 정보 데이터베이스에서 추출하여 상기 제 1 아바타를 제어하는 클라이언트에 상기 행동 패턴 정보를 송신하는 단계를 포함한다.
본 명세서의 또다른 실시예에 의한 아바타 행동 패턴을 이용한 자동 반응 방법은 서버로부터 아바타 및 외부 환경 정보를 수신하는 단계, 및 자동 반응 모드인지 확인하여, 자동 반응 모드인 경우, 상기 서버로부터 행동 패턴 정보를 수신하고, 상기 수신한 행동 패턴 정보에서 행위 정보를 생성하며, 자동 반응 모드가 아닌 경우, 외부 입력 장치로부터 수신한 제어 입력 신호에서 행위 정보를 생성하며, 상기 생성된 행위 정보를 상기 서버에 송신하는 단계를 포함한다.
본 명세서의 또다른 실시예에 의한 게임 서버 장치는 클라이언트와 정보를 송수신하는 송수신부, 게임 화면, 게임 진행 정보, 게임 진행에서 발생하는 외부 환경 정보 및 게임 프로그램을 저장하는 게임 정보 데이터베이스부, 아바타가 게임을 진행하며 누적된 행위 정보 또는 선호 정보를 저장하는 아바타 데이터베이스부, 상기 아바타의 행동 패턴 정보를 저장한 행동패턴 정보 데이터베이스부, 상기 아바타 데이터베이스부에 저장된 행위 정보 또는 선호 정보와 상기 상기 제 1 외부 환경 정보를 결합하여 행동 패턴 정보로 생성하여 상기 행동패턴 정보 데이터베이스부에 저장하는 행동패턴 생성부, 및 상기 송수신부, 게임 정보 데이터베이스부, 아바타 데이터베이스부, 행동패턴 정보 데이터베이스부 및 행동패턴 생성부를 제어하는 제어부를 포함하며, 상기 제어부는 제 1 클라이언트에 상기 행동 패턴 정보를 송신하도록 상기 송신부를 제어하는 것을 특징으로 한다.
본 명세서의 또다른 실시예에 의한 게임 서버 장치는 클라이언트와 정보를 송수신하는 송수신부, 게임 진행에서 발생하는 외부 환경 정보 및 특징 데이터를 저장하는 특징 정보 데이터베이스부, 아바타가 게임을 진행하며 누적된 행위 정보 또는 선호 정보를 저장하는 아바타 데이터베이스부, 상기 아바타의 행동 패턴 정보를 저장한 행동패턴 정보 데이터베이스부, 상기 외부 환경 정보의 N개의 특징 데이터와 이에 대한 M개의 아바타의 행위 정보를 행동 패턴 정보로 생성하여 이를 행동 패턴 정보 데이터베이스에 저장하는 행동패턴 생성부, 및 상기 송수신부, 특징 정보 데이터베이스부, 아바타 데이터베이스부, 행동패턴 정보 데이터베이스부 및 행동패턴 생성부를 제어하는 제어부를 포함하며 상기 제어부는 상기 M개의 아바타 중 제 1 아바타와 제 2 아바타가 동일 가상 공간에 배치하는 정보를 클라이언트에 송신하며 상기 제 1 아바타의 행위 정보 및 상기 제 2 아바타의 행위 정보 및 특징 정보를 상기 행동 패턴 정보 데이터베이스에서 추출하여 상기 제 1 아바타를 제어하는 클라이언트에 상기 행동 패턴 정보를 송신하는 것을 특징으로 한다.
본 명세서의 또다른 실시예에 의한 클라이언트 장치는 서버와 정보를 송수신하며 서버로부터 아바타 및 외부 환경 정보를 수신하는 송수신부, 자동 반응 모드를 설정하는 모드 설정부, 제어 입력 신호를 생성하는 외부 입력 장치, 상기 모드 설정부에서 설정된 모드가 자동 반응 모드인 경우, 서버로부터 행동 패턴 정보를 수신하고, 상기 수신한 행동 패턴 정보에서 행위 정보를 생성하며, 상기 설정된 자동 반응 모드가 아닌 경우, 상기 외부 입력 장치로부터 수신한 제어 입력 신호에서 행위 정보를 생성하는 제어부를 포함하며, 상기 송수신부는 상기 생성된 행위 정보를 서버에 송신한다.
도 1은 본 명세서의 실시예들이 적용되는 인터넷의 구조에 대한 일 실시예이다.
도 2는 본 명세서의 일 실시예에 의한 이벤트 노티피케이션 과정을 보여주는 도면이다.
도 3은 본 명세서의 다른 실시예에 의한 이벤트 노티피케이션 과정을 보여주는 도면이다.
도 4는 본 명세서의 일 실시예에 의한 어플리케이션 서버군 및 노티피케이션 서버로 구성된 시스템 구성을 보여주는 도면이다.
도 5는 본 명세서의 일 실시예에 의한 게임 어플리케이션에 대한 이벤트를 등록한 후, 그 이벤트의 발생 정보를 수신하는 과정을 보여주는 도면이다.
도 6은 본 명세서의 일 실시예에 의한 이벤트 설정 정보의 구성을 보여주는 도면이다.
도 7은 본 명세서의 일 실시예에 의한 SNS 상에서 어플리케이션간 이벤트 정보를 송수신하는 과정을 보여주는 도면이다.
도 8은 본 명세서의 일 실시예에 의한 어플리케이션 서버들 간에 이벤트 발생 정보를 제공하는 과정을 보여주는 도면이다.
도 9는 어플리케이션 서버만으로 구성되어 이벤트 발생 정보를 제공하는 과정을 보여주는 도면이다.
도 10은 본 명세서의 일 실시예에 의한 어플리케이션 서버가 이벤트 발생 정보를 클라이언트에게 제공하는 상세 구성을 보여주는 도면이다.
도 11은 본 명세서의 일 실시예에 의한 어플리케이션 서버의 구성을 보여주는 도면이다.
도 12는 본 명세서의 일 실시예에 의한 어플리케이션 서버에서 진행되는 이벤트 발생 정보가 송신되는 과정을 보여주는 도면이다.
도 13은 본 명세서의 일 실시예에 의한 어플리케이션의 이벤트 발생 정보가 클라이언트에서 표시되는 예를 보여주는 도면이다.
도 14는 본 명세서의 일 실시예에 의한 어플리케이션의 사용 정보가 공유되는 일 실시예를 보여주는 도면이다.
도 15는 본 명세서의 일 실시예에 의한 데이터베이스의 구성을 보여주는 도면이다.
도 16은 본 명세서의 일 실시예에 의한 서버와 클라이언트의 정보 송수신의 과정을 보여주는 도면이다.
도 17은 본 명세서의 일 실시예에 의한 어플리케이션 사용 정보가 제공되는 과정을 보여주는 도면이다.
도 18은 본 명세서의 다른 실시예에 의한 어플리케이션 사용 정보가 디스플레이된 도면이다.
도 19는 본 명세서의 일 실시예에 의한 서버에서 어플리케이션 사용 정보를 제공하는 과정을 보여주는 도면이다.
도 20은 본 명세서의 일 실시예에 의한 클라이언트가 서버로부터 어플리케이션 사용 정보를 수신하여 이를 표시하는 과정을 보여주는 도면이다.
도 21은 본 명세서의 일 실시예에 의한 서버의 구성을 보여주는 도면이다.
도 22는 본 명세서의 일 실시예에 의한 클라이언트의 구성을 보여주는 도면이다.
도 23은 본 명세서의 일 실시예에 의한 게임 어플리케이션의 정보를 표시한 도면이다.
도 24는 본 명세서의 일 실시예에 의한 아바타의 선호 정보를 설정하는 과정을 보여주는 도면이다.
도 25는 본 명세서의 일 실시예에 의한 아이템을 구매하는 행위를 통해 사용자의 선호 정보를 설정하는 예를 보여주는 도면이다.
도 26은 본 명세서의 다른 실시예에 의한 카테고리화 되지 않은 행위를 통해 사용자의 선호 정보를 설정하는 예를 보여주는 도면이다.
도 27은 본 명세서의 일 실시예에 의한 아바타의 선호 정보를 설정하는 과정을 보여주는 도면이다.
도 28은 사용자가 제어하는 아바타의 행동 패턴 정보 DB를 생성하기 위한 행동패턴제공모듈의 구성도를 보여주는 도면이다.
도 29는 본 명세서의 일 실시예에 의한 외부 환경의 변화에 대한 아바타의 자동 반응에 의한 행동 패턴을 제공하는 과정을 보여주는 도면이다.
도 30은 본 명세서의 다른 실시예에 의한 행동 패턴 정보를 생성하는 과정 및 구성을 보여주는 도면이다.
도 31은 본 명세서의 일 실시예에 의한 서버 구성을 보여주는 도면이다.
도 32는 본 명세서의 일 실시예에 의한 클라이언트에서 외부 환경 정보와 행위 정보를 송신하고, 행동 패턴 정보를 해석하는 과정을 보여주는 도면이다.
도 33은 본 명세서의 일 실시예에 의한 클라이언트 장치의 구성을 보여주는 도면이다.
이하, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.
도 1은 본 명세서의 실시예들이 적용되는 인터넷의 구조에 대한 일 실시예이다. 인터넷은 도 1에 나타난 바와 같이, 인터넷(100)에 접속하여 정보를 송수신하는 과정은 매우 다양하다. 예를 들어, 휴대폰(10)과 PDA(Personal Digital Assistant)/스마트폰(smartphone)(20)과 같은 기기들은 기지국(50)을 통해 인터넷(100)에 접속할 수 있고, 컴퓨터 또는 노트북(30)은 유선 또는 무선 랜(Wire/Wireless Local Area Network)을 이용하여 인터넷에 접속할 수 있다. 물론, 최근 스마트폰 역시 인터넷을 이용하는 방법으로 무선 랜 등을 이용하여 접속할 수 있다. 이러한 기기들은 모두 인터넷 상에서 외부의 서버(111, 112)에 접속하여 소정의 정보를 수신하거나 송신하는 역할을 한다. 이러한 기기들을 통상 클라이언트라고 한다. 그리고, 다수의 클라이언트들이 접속하여 정보를 수신할 수 있도록 하는 기기를 서버(111, 112)라 한다. 인터넷(100)의 가장 활발한 서비스 중 하나인 웹(Web)에서는 HTTP(Hyper Text Transfer Protocol)을 이용하여 소정의 정보를 송수신하고 있다. 물론, HTTP 프로토콜 이외에도 TCP/IP(Transmission Control Protocol/Internet Protocol), FTP(File Transfer Protocol) 등의 다양한 프로토콜을 이용할 수 있다. 서버(111, 112)는 다양한 기능을 제공하거나, 특정 기능을 제공할 수 있다.
인터넷 서비스에 접목되는 다양한 서비스들 중에서 SNS(Social Network Service)는 인터넷 서비스 사용자들간에 채팅과 메일과 같은 커뮤니케이션 기능을 제공하는 서비스이다. 한편, 인터넷을 통한 게임 서비스는 인터넷 서버에 저장된 게임 프로그램을 실행하거나, 혹은 클라이언트로 해당 프로그램을 다운받아 실행하는 특징을 가지고 있으며, 인터넷을 통해 다른 클라이언트와 게임을 진행할 수 있다.
본 명세서에서 설명하고자 하는 SNS는 메신저와 같은 메시징 서비스, 커뮤니티 서비스에서의 회원간의 정보, 블로그를 통한 이웃 서비스, 또는 페이스북, 트위터 등과 같은 지인 서비스 등을 모두 포함한다.
이하, 본 명세서의 일 실시예에서 설명하게 되는 클라이언트는 도 1에서 살펴본 휴대폰, PDA, 스마트폰, 노트북, 컴퓨터 등의 디지털 장치로, 인터넷, 이동통신망, 또는 인트라넷, 그리고 이외의 다양한 형태의 네트워크 등을 이용하여 외부의 서버에 접속을 수행하고, 서버로부터 정보를 수신하는 장치를 모두 포함한다. 그리고, 클라이언트와 서버가 접속하였다는 것은 인터넷을 통해 직접 또는 간접으로 연결되어 정보를 교환할 수 있는 상태를 의미한다.
한편, 본 명세서의 일 실시예에서 설명하게 되는 서버는 상기 클라이언트가 인터넷, 이동통신망, 또는 인트라넷, 그리고 이외의 다양한 형태의 네트워크를 직접 또는 간접으로 접속하게 되는 디지털 장치로, 상기 클라이언트에게 소정의 사용자와 어플리케이션의 사용 정보를 제공하는 장치이다. 한편, 본 명세서에서의 어플리케이션은 다운로드되어 실행되는 프로그램, 웹상에서 서버와 실시간 혹은 일정 간격으로 업데이트되거나 정보를 교환하는 프로그램을 모두 포함하며, 어플리케이션은 게임, 문서편집기, 그래픽 툴, 지도 등 다양한 목적을 가질 수 있으며 특정 목적의 어플리케이션에 한정되지 않는다. 또한 어플리케이션은 한번 클라이언트에 저장되어 영구적으로 사용될 수 있고, 클라이언트가 서버에 접속할 경우 다운로드될 수 있으며, 별도의 다운 없이 서버와 클라이언트가 실시간으로 데이터를 교환하는 방식으로도 구현될 수 있다.
이하, SNS 시스템 내에서 어플리케이션 간 상호 이벤트 정보를 제공하는 크로스 노티피케이션 시스템을 구현하기 위해 서버 및 클라이언트 간에 진행되는 프로세스를 살펴보고자 한다. 본 명세서에서의 이벤트는 어플리케이션에서 사용자가 필요로 하는 정보 또는 어플리케이션 실행과정에서 발생할 수 있는 정보를 포함한다.
도 2는 본 명세서의 일 실시예에 의한 이벤트 노티피케이션 과정을 보여주는 도면이다. 어플리케이션 간에 이벤트 정보를 알리기 위해서는 먼저, 사용자가 클라이언트를 통해 로그인하고, 이벤트 정보를 알리는 어플리케이션과 이벤트를 설정한다. 그리고 이렇게 설정된 정보가 서버에 제공되고, 서버는 어플리케이션의 이벤트 발생을 체크하여 그 결과를 클라이언트에게 제공하게 된다. 도 2에서는 어플리케이션의 이벤트 발생과 관련하여 노티피케이션 서버(Notification server)와 어플리케이션 서버(Application Server)로 구성된 경우를 살펴본다.
사용자는 포털, 인터넷 홈페이지 등을 통해 사용자 로그인한다. 클라이언트는 사용자 로그인(S205)을 수행한다. 이 과정에서 도면에 미도시되었으나 로그인 서버에 사용자 식별 정보 및 비밀번호를 송신하고, 로그인 서버로부터 사용자 정보를 수신할 수 있다.
클라이언트(201)는 어플리케이션 서버1(203)과 어플리케이션 1의 접속을 수행한다(S210). 어플리케이션 서버1(203)은 클라이언트(201)에서 어플리케이션 1을 실행할 수 있도록 어플리케이션 1을 제공한다(S215). 어플리케이션의 종류에 따라, 클라이언트(201)는 어플리케이션 1을 다운로드받을 수 있다.
그리고 클라이언트(201)는 어플리케이션 1에 대하여 이벤트를 설정한다(S220). 설정할 수 있는 이벤트로는 어플리케이션 1에서 로그인한 사용자가 특정한 상태 혹은 특정한 레벨을 획득하는지 등에 대한 '사용자 중심 이벤트'가 될 수 있다. 또한, 다른 실시예로, 이벤트는 로그인한 사용자와 SNS 시스템 내에서 지인 혹은 친구(buddy) 관계인 다른 사용자의 변화된 상태, 혹은 특정 레벨, 아이템의 획득이 될 수 있다. 또다른 실시예로, 이벤트는 특정 사용자 정보와는 무관하게 해당 어플리케이션 내에서 발생한 정보가 될 수 있는데, 특정 키워드와 관련되거나, 특정 점수, 특정 아이템이 출시되거나, 혹은 어플리케이션의 버전 업이 이루어지는 경우 등을 모두 포함한다.
이벤트를 설정하는 어플리케이션에서는 설정 가능한 이벤트를 리스트로 제공할 수 있고, 사용자가 단계별로 정보를 입력하여 이벤트를 설정할 수 있다. 이벤트 설정을 S220과 같이 어플리케이션 1 서버(203)에 제공하면, 어플리케이션 1 서버(203)는 해당 이벤트를 설정한다(S222). 이후 이벤트 설정 사실을 노티피케이션 서버(202)에 제공한다(S224). 클라이언트(201)는 어플리케이션 1과 관련된 이벤트를 설정한 후, 어플리케이션 1의 실행을 중단하고 어플리케이션 2를 실행하기 위해, 어플리케이션 2의 접속을 수행한다(S230). 어플리케이션 2 서버(204)는 클라이언트(201)에게 어플리케이션 2를 제공한다(S235). 이후 어플리케이션 2를 수행하는 과정에서 어플리케이션 1 서버(203)에서 이벤트가 발생한다(S240). 어플리케이션 1 서버(203)는 사용자가 접속하였는지 여부를 확인하고(S242), 접속하지 않은 것을 확인하여 이벤트 발생 사실을 노티피케이션 서버(202)에 제공한다. 노티피케이션 서버(202)는 다른 어플리케이션 서버들에게 이벤트 발생 사실을 제공한다(S246, S248). S248은 도면에 미도시된 다른 어플리케이션 서버들에게 이벤트 발생 사실을 제공하는 것을 의미한다. 이벤트 발생 사실을 수신한 어플리케이션 2 서버(204)는 사용자 접속 유무를 확인하고(S250) 사용자가 접속한 경우, 클라이언트(201)에게 이벤트 발생 사실을 제공한다(S252). 이 과정에서, 노티피케이션 서버(202)에 사용자가 접속하여 이벤트 발생 사실을 통지하였음을 알릴 수 있다(S254). 이후 클라이언트(201)는 이벤트 발생 알림창을 출력한다(S260).
도 3은 본 명세서의 다른 실시예에 의한 이벤트 노티피케이션 과정을 보여주는 도면이다. 도 3은 도 2와 달리, 사용자가 어떤 어플리케이션에도 접속하지 않은 경우를 보여주는 도면이다. 도 3의 S305, S310, S315, S320, S322, S324 과정은 도 2의 S205, S210, S215, S220, S222, S224 과정과 동일하므로, 도 2의 설명으로 대신하고자 한다. 이벤트 설정 과정(S320, S322, S324)가 진행되는 과정 혹은 진행한 후, 사용자가 로그아웃을 한다(S330). 그리고 어플리케이션 1 서버(303)에서는 이벤트가 발생한다(S340).
어플리케이션 1 서버(303)는 사용자 접속 유무를 확인한 후(S342), 사용자가 접속하지 않은 경우, 이벤트 발생 사실을 노티피케이션 서버에 제공한다(S344). 노티피케이션 서버는 이벤트 발생 사실을 다른 어플리케이션 서버들에게 제공한다(S346, S348). 어플리케이션 2 서버(304)는 사용자가 접속하였는지 확인하고(S350) 사용자가 접속하지 않음을 노티피케이션 서버(302)에 알린다(S352). 모든 어플리케이션 서버들로부터 사용자가 접속하지 않은 것을 확인한 노티피케이션 서버(302)는 해당 이벤트 발생 사실을 저장한다(S354). 한편, 본 명세서의 다른 실시예에 의할 경우, 사용자가 접속하지 않은 경우, 어플리케이션 서버들이 접속 여부를 알리지 않도록 설정할 수 있다. 이 경우, 노티피케이션 서버(302)는 일정 시간동안 사용자 접속 사실을 알리는 어플리케이션 서버가 없는 경우, 사용자가 접속하지 않은 것으로 판단하여 사용자가 차후 로그인할 경우 이벤트 발생 사실을 알릴 수 있도록 이벤트 발생 사실을 저장할 수 있다.
이후, 사용자가 로그인하며, 클라이언트(301)은 사용자 로그인 과정을 진행한다(S360). 클라이언트(301)는 어플리케이션 2에 접속하며(S362), 어플리케이션 2 서버(304)는 어플리케이션 2를 제공한다(S364). 이 과정에서 어플리케이션 2 서버(304)는 노티피케이션 서버(302)에 이벤트가 발생하여 저장되었는지 여부를 확인한다(S366). 노티피케이션 서버(302)로부터 이벤트 발생 사실을 제공받게 되며(S368), 어플리케이션 2 서버(304)는 이벤트 발생 사실을 클라이언트(301)에게 제공한다(S370). 그 결과, 클라이언트(301)는 이벤트 발생 알림창을 출력한다(S380).
도 3에 미도시되었으나, 클라이언트가 로그인할 경우 항상 노티피케이션 서버(302)에 접속하여 로그아웃한 시점 이후 이벤트가 발생하였는지를 확인할 수 있다. 또한, 사용자는 동일한 클라이언트가 아니라 상이한 클라이언트에 로그인할 수 있다. 즉, 노트북 클라이언트를 통해 로그인하여 S305, S310, S315, S320, S330 과정을 진행하고 로그아웃 한 후, 데스크탑 클라이언트를 통해 S360과 같이 로그인하여 S362, S364, S370 및 S380 과정을 진행할 수 있다.
도 4는 본 명세서의 일 실시예에 의한 어플리케이션 서버군 및 노티피케이션 서버로 구성된 시스템 구성을 보여주는 도면이다.
도 4는 하나의 노티피케이션 서버(410)와 다수의 어플리케이션 서버(421, 422, 429)로 구성된 시스템이며, 인터넷(100)을 통해 클라이언트(430)와 연결되어 있다. 시스템내에 노티피케이션 서버(410)와 어플리케이션 서버들(421, 422, 429)은 동일한 장소 내에 위치하여 내부 네트워크(450)을 통해 연결될 수 있고, 별도의, 즉 서로 다른 장소에 위치하여 인터넷(100)으로 연결될 수도 있다. 물론, 장소를 불문하고 내부 네트워크(450)를 구성하거나 인터넷(100)을 구성할 수 있다.
앞서 살펴본 바와 같이 사용자는 다양한 클라이언트(430, 431)를 통해 로그인할 수 있다. 먼저, 어플리케이션 서버군은 하나 이상의 어플리케이션 서버를 포함한다. 이들 어플리케이션 서버는 특정 클라이언트에게 어플리케이션을 송신하며, 상기 클라이언트로부터 이벤트 설정 정보 및 상기 이벤트 발생을 통보받을 사용자 정보를 수신하여 저장한다. 어플리케이션의 송신은 어플리케이션의 실행에 필요한 정보를 송신한 것으로, 어플리케이션 프로그램 그 자체를 송신할 수도 있고, 어플리케이션은 이미 다운로드되어 설치된 클라이언트에서 어플리케이션을 구동하는데 필요한 정보를 송신할 수도 있다. 이벤트 설정 정보는 특정 이벤트에 대한 식별 정보 또는 특정 검색 키워드, 게임에서 특정 등급에의 도달, 특정 정보가 업로드 되는 경우 등 다양한 이벤트에 대해 설정할 수 있다. 이벤트가 발생하면 통보받을 사용자 정보는 이벤트를 설정한 해당 사용자일 수 있다. 또한, 이벤트를 설정한 사용자와 SNS를 통한 지인 혹은 친구 관계의 사용자가 될 수도 있다. 예를 들어, 도시를 건설하는 게임을 수행할 경우, 제 1 사용자는 해당 게임에서 로그아웃 한 후, 제 1 사용자가 건설중인 게임의 진행 여부 혹은 특정 레벨 성취를 확인하기 위해 이벤트를 설정할 수 있다. 또한, 제 1 사용자는 SNS 상에서 친구인 제 2 사용자가 해당 건설 게임에 로그인을 하였는지, 혹은 제 2 사용자가 특정 레벨을 성취하였는지를 확인하기 위해 제 2 사용자에 대한 이벤트를 설정할 수 있다. 이 경우, 제 2 사용자에 대한 정보는 로그인한 제 1 사용자 정보와 별도로 제공될 수 있다.
노티피케이션 서버(410)는 상기 이벤트 설정 정보 및 상기 사용자 정보를 저장한다. 앞서 살펴본 바와 같이, 클라이언트는 다양한 어플리케이션을 수행할 수 있으므로, 이벤트를 설정한 어플리케이션이 아니라, 다른 어플리케이션을 수행할 수 있다.
상기 어플리케이션 서버에서 상기 이벤트 발생 정보를 상기 노티피케이션 서버(410)에 송신하는 경우, 상기 노티피케이션 서버는 상기 어플리케이션 서버군에 포함된 하나 어플리케이션 서버에게 상기 이벤트 발생 정보를 송신하게 된다. 한편, 클라이언트에 로그인한 사용자는 언제든지 로그아웃할 수 있다. 따라서, 어플리케이션에서 발생한 이벤트를 실시간으로 전달하기 어려울 수 있다.
따라서, 이벤트가 발생한 사실을 어플리케이션 서버로부터 수신한 상기 노티피케이션 서버(410)는 어플리케이션 서버군에 포함된 모든 어플리케이션 서버에 상기 사용자 정보로 로그인한 클라이언트가 존재하지 않는 것을 확인할 경우, 상기 이벤트 발생 정보를 저장할 수 있다. 이렇게 저장된 이벤트 발생 정보는 이를 통지받을 사용자 정보로 로그인한 클라이언트에게 송신한다. 즉, 사용자가 로그인하였다는 사실을 확인한 노티피케이션 서버 또는 어플리케이션 서버는 상기 저장된 이벤트 발생 정보를 클라이언트에게 송신할 수 있다.
만약, 노티피케이션 서버(410)가 사용자의 로그인을 제어하는 기능도 함께 제공할 경우, 사용자가 로그인할 때, 어떤 이벤트가 저장되었는지 확인할 수 있다. 한편, 어플리케이션 서버에 바로 사용자 로그인을 수행할 경우, 해당 어플리케이션 서버는 노티피케이션 서버(410)에 로그인한 사용자 정보를 제공하고 알림을 통지할 이벤트 발생 정보가 있는지 확인할 수 있다.
한편, 상기 어플리케이션 서버군에 포함된 또다른 어플리케이션 서버에 상기 사용자 정보로 로그인한 430과 구별되는 클라이언트(431)가 접속한 경우, 상기 어플리케이션 서버는 상기 클라이언트(431)에게 상기 이벤트 발생 정보를 송신할 수 있다.
본 명세서의 실시예에 의할 경우, SNS내에 삽입되는 어플리케이션을 사용자가 플레이하고 있을 때 다른 어플리케이션의 계정에 귀속된 이벤트의 발생여부를 전달하여, 해당 포털의 계정을 소유한 사용자가 등록한 어플리케이션 내에 진행상황에 대한 관리가 용이하도록 하는 시스템을 제공한다.
또한, 네트워크상에 어플리케이션의 이벤트 발생상황들을 사용자의 선택에 의해 해당 계정에 귀속하여 저장하고, 저장된 이벤트가 발생하면, 사용자의 접속여부를 판단하고, 사용자가 해당 포털의 다른 어플리케이션을 진행 중일 경우, 다른 어플리케이션의 진행상황에 대한 이벤트 발생 정보를 알림창을 통해 출력하여, 이동 및 관리가 용이하도록 하는 시스템을 제공하며, 사용자가 해당 포털에 접속 중이지 않을 경우, 해당 이벤트 발생 정보를 저장하여, 사용자가 포털의 해당 어플리케이션 또는, 다른 어플리케이션에 접속 시 계정을 통한 이벤트 발생 여부를 판단하여 해당 정보를 제공하는 시스템을 제공한다.
본 명세서의 실시예에 어플리케이션의 계정에 귀속된 이벤트에 관한 정보를 다른 어플리케이션 진행 중에 전달받을 수 있도록 하여 해당 포털에 계정을 소유한 사용자가 등록한 어플리케이션을 보다 효율적으로 관리할 수 있게 하고, 어플리케이션의 연속성을 유지하여 라이프사이클을 증가시키는 효과가 있다.
도 5는 본 명세서의 일 실시예에 의한 게임 어플리케이션에 대한 이벤트를 등록한 후, 그 이벤트의 발생 정보를 수신하는 과정을 보여주는 도면이다.
제 1 클라이언트(501)에는 사용자 1(User_1)이 로그인을 한 상태이며, 제 2 클라이언트(502)에는 사용자 2(User_2)가 로그인을 한 상태이다. 사용자 1은 로그인한 클라이언트(501)에서 게임 어플리케이션 서버(521)에 접속하여 게임을 수행하는 도중, 이벤트를 설정하고 이를 게임 어플리케이션 서버(521)에 송신한다(S530). 이때 설정할 이벤트는 사용자 1의 게임 진행 상태가 변경되는 것을 첫번째 이벤트로 하고, 또한 SNS 상에서 지인 관계인 사용자 2(User_2)가 게임 어플리케이션에 접속하는 것을 두번째 이벤트로 한다. 이벤트 설정 정보를 수신한 게임 어플리케이션 서버(521)는 이를 저장한다(S532). 그리고 수신한 이벤트 설정 정보는 노티피케이션 서버(510)에 송신한다(S534). 노티피케이션 서버는 수신한 이벤트 설정 정보를 저장한다(S536). 이후, 사용자 1은 어플리케이션 1 서버에 접속을 진행한다(S540). 게임 어플리케이션 서버와는 접속을 종료하게 된다. 이 과정에서 게임 어플리케이션 서버(521)에 앞서 S530에서 설정한 이벤트가 발생한다(S550). 즉, 사용자 1의 게임 진행 상태가 변경되거나, 혹은 관계인 사용자 2(User_2)가 게임 어플리케이션에 접속하게 된다. 그 결과, 게임 어플리케이션 서버(521)는 저장된 이벤트가 발생하였음을 확인한다. 현재 이벤트 발생 정보를 수신할 사용자 1(User_1)은 게임 어플리케이션 서버(521)에 접속하지 않은 상태이므로, 이벤트 발생 정보를 노티피케이션 서버(510)에 송신한다(S555). 노티피케이션 서버(510)는 이벤트 발생 정보를 다른 어플리케이션 서버들에게 송신하고(S560), 이를 수신한 다수의 어플리케이션 서버들 중에서 현재 사용자 1(User_1)이 접속한 어플리케이션 1 서버(522)는 사용자 1이 접속하였음을 노티피케이션 서버(510)에 알리고, 이벤트 발생 정보를 송신한다(S565). 어플리케이션 1을 수행중인 제 1 클라이언트는 수신한 이벤트 발생 정보를 팝업창 등의 인터페이스 등을 이용하여 표시한다(S570).
도 5에서 이벤트의 특징으로 게임 이벤트 중에서 사용자 1(User_1)의 게임 진행 상태의 변경을 알리거나, 혹은 다른 사용자(User_2)의 게임 접속을 알리는 것을 이벤트로 할 수 있다. 그러나, 이는 어플리케이션의 특성에 따라 다양하게 설정할 수 있다. 본 명세서의 일 실시예에 의하여 커뮤니티 어플리케이션에 있어서는 커뮤니티 어플리케이션을 통해 일어나는 다양한 상황들, 예를 들어 채팅방 개설, 벼룩 시장 오픈, 커뮤니티에 작성한 글에 대한 댓글의 발생 여부 등을 모두 이벤트로 설정하여, 이를 통지받을 수 있다.
또한 SNS에 기반을 두어 검색을 진행하는 경우, 검색 키워드를 설정하여, SNS 관계 내의 지인들이 특정 키워드로 정보를 업로드 하는 경우, 혹은 SNS 관계 내의 지인들이 특정 액션(사진 업로드, 채팅 시작 등)을 할 경우 이러한 이벤트가 발생한 것을 보다 빨리 인지하도록 할 수 있다.
도 6은 본 명세서의 일 실시예에 의한 이벤트 설정 정보의 구성을 보여주는 도면이다.
이벤트 설정 정보는 이벤트가 발생할 경우, 이를 알림받을 사용자 정보, 그리고 다른 사용자에 대한 이벤트를 설정하는 경우, 해당 사용자 정보, 그리고 어플리케이션의 종류 및 이벤트의 종류, 그리고 이벤트 설정에 필요한 정보 등으로 구성될 수 있다.
도 6은 본 명세서의 일 실시예에 의한 이벤트 설정 및 알림에 필요한 데이터 구조를 보여주는 도면이다.
이벤트 설정을 위한 데이터 구조(610)는 먼저 어떤 사용자에게 알림 정보가 갈 것인지에 대한 NotiUID, 그리고 이벤트가 발생하는 사용자에 대한 정보인 ActUID, 어플리케이션이 무엇인지 식별하기 위한 정보인 AppNo, 그리고 이벤트가 어떤 이벤트인지 알려주는 식별자인 EventID, 마지막으로 이벤트 설정시 필요한 파라메터 정보가 설정되는 Parameter로 이루어진다. 620은 각각의 이벤트가 어떤 이벤트인지를 알려주는 데이터 구조이다. 통상, 어플리케이션 별로 다수의 이벤트를 가질 수 있고, 사용자는 자신이 사용하는 어플리케이션에서 제공하는 이벤트를 선택하여 설정할 수 있다. 이벤트와 관련된 데이터 구조는 이벤트 식별자인 EventID, 어플리케이션 정보인 AppNo, 그리고 어플리케이션이 어떤 타입인지 알려주는 Apptype, 마지막으로 이벤트에 대한 상세한 정보를 제공하는 EventType으로 구성된다.
610의 첫번째 데이터(612)를 살펴보면, NotiUID, ActUID 모두 A 이다. 즉 A라는 사용자에게 발생한 이벤트를 A에게 알리는 것을 의미한다. 어플리케이션은 G1(AppNo)이고 1이 식별정보인 이벤트가 발생할 경우, 알림을 받게 되는 것을 의미한다. 1인 이벤트에 대해서는 620을 통해 확인할 수 있다. EventID 1은 AppNo가 G1이며, 어플리케이션이 게임(Apptype=Game)인 것을 확인할 수 있다. EventType은 'LevelUp'이다. 612, 620을 조합하면, A라는 사용자가 G1이라는 게임 어플리케이션에서 'LevelUp'이 발생할 경우, A에게 이벤트 발생을 알려줄 것을 설정한 것을 나타낸다. 앞서, 게임을 수행하다가 다른 어플리케이션을 수행할 경우, 게임에서 변화가 발생할 때 알림 설정하는 경우에 적용될 수 있다. EventType은 어플리케이션의 종류에 따라 다양하게 제공될 수 있다. 예를 들어, '농사짓기' 시뮬레이션 게임인 경우에는, 자신이 재배하는 작물의 성장을 이벤트로 설정하여 알림을 받을 수 있다. 전략 시뮬레이션 게임인 경우에는 자신이 축조중인 성의 완성 정도를 이벤트로 설정할 수 있다. 따라서, 별도로 어플리케이션을 실행시키지 않는 경우에도 어플리케이션 서버에서 발생하는 여러가지 상황, 즉 이벤트를 확인할 수 있으므로, 스마트폰, 컴퓨터, 노트북 등에서 별도로 백그라운드 프로세스를 제공할 필요가 없다.
다른 사용자에게 발생한 이벤트를 확인할 수 있다. SNS 시스템에서 지인간에 정보를 공개하는 수준에 따라, 지인의 어플리케이션 사용 상황을 이벤트로 설정하여, 지인간에 게임, 커뮤니티 어플리케이션의 사용을 활성화 시킬 수 있다. 예를 들어, 614와 같이, NotiUID는 A이고, ActUID는 B인 경우, G1이라는 어플리케이션에서 발생한 EventID 2가 B에게 발생한 경우, A에게 이벤트 발생 사실을 알려줄 것을 설정할 수 있다. EventID 2는 게임에 로그인하는 것을 620에서 확인할 수 있다. 이는 지인간에 함께 게임을 진행하기 위해, 특정 사용자의 로그인을 대기하면서, 다른 어플리케이션을 진행할 수 있다. 즉, A와 B가 G1 게임 어플리케이션을 함께 실행할 것을 약속하고, A가 로그인하였으나, B가 아직 로그인 하지 않은 경우, 614와 같이 이벤트를 설정하고 다른 어플리케이션을 수행할 수 있다. 이 경우, B가 로그인하게 되면 B의 로그인 사실을 다른 어플리케이션 서버가 알려주고, 다시 A가 G1 어플리케이션에 접속하여 지인인 B와 G1 게임을 수행할 수 있도록 할 수 있다.
게임 어플리케이션 이외에도 이벤트 설정이 가능하다. 예를 들어, 616과 같이 특정 커뮤니티 어플리케이션에 업로드되는 글 중에서 파라미터(parameter)로 '엠티 기획'이 설정된 경우, C1 이라는 어플리케이션 서버는 B에게 '엠티 기획'이 포함된 게시물이 업로드 될 경우, 이를 이벤트 알림으로 제공할 수 있다. 파라미터는 이벤트를 설정하기 위해 필요한 부가적인 정보를 설정할 수 있도록 한다. 616에서 ActUID가 설정되지 않은 것은, 특정한 사용자의 행위에 국한시키지 않고, 모든 사용자들이 '엠티기획'이 포함된 게시물을 올릴 경우, 이벤트 알림을 받기 위한 경우이다. 특정 사용자이 식별 정보가 설정된 경우, 해당 사용자의 행위에 대해서만 체크할 수 있다.
618은 특정 검색어(아이패드)를 입력한 결과를 수시로 업데이트하는 경우를 보여준다.
도 6의 이벤트 설정을 위한 데이터베이스 구조는 다양한 사용자들 간의 이벤트 설정이 가능하다.
도 7은 본 명세서의 일 실시예에 의한 SNS 상에서 어플리케이션간 이벤트 정보를 송수신하는 과정을 보여주는 도면이다.
도 7의 순서는 하나 이상의 어플리케이션 서버로 구성된 어플리케이션 서버군 및 노티피케이션 서버로 구성된 시스템에서 동작될 수 있다.
상기 어플리케이션 서버군의 제 1 어플리케이션 서버가 제 1 클라이언트에 어플리케이션을 송신한다(S710). 앞서 살펴본 바와 같이 어플리케이션 서버가 클라이언트의 어플리케이션 접속 및 다운로드를 위해 진행하는 과정에 해당한다. 그리고 상기 제 1 어플리케이션 서버가 상기 제 1 클라이언트로부터 이벤트 설정 정보 및 상기 이벤트 발생을 통보받을 사용자 정보를 수신한다(S720). 이 과정의 일 실시예는 도 6에서 살펴본 610 데이터를 수신하는 것을 포함한다. 상기 제 1 어플리케이션 서버는 상기 이벤트 설정 정보 및 상기 사용자 정보를 상기 노티피케이션 서버에 송신한다(S730). 그리고 상기 노티피케이션 서버는 수신한 상기 이벤트 설정 정보 및 상기 사용자 정보를 저장할 수 있다(S740). 노티피케이션 서버는 이벤트가 발생하여 해당 사용자가 로그인한 다른 어플리케이션 서버에 알려주기 위해, 혹은 사용자가 로그오프한 경우, 차후 로그인할 경우 이벤트 발생 사실을 알려주기 위해 이벤트 설정 정보를 저장할 수 있다. 그리고 이벤트가 발생한 경우, 상기 노티피케이션 서버가 상기 제 1 어플리케이션 서버로부터 상기 설정한 이벤트 발생 정보를 수신한다(S750). 수신한 이벤트를 해당 사용자가 로그인한 클라이언트에 알려주기 위해 상기 노티피케이션 서버는 상기 어플리케이션 서버군에 포함된 하나 이상의 어플리케이션 서버에게 상기 이벤트 발생 정보를 송신한다(S760). 송신한 이벤트 발생 정보는 다수의 어플리케이션 서버 중에서 로그인한 사용자의 클라이언트가 접속한 어플리케이션 서버가 이벤트 발생 정보를 해당 클라이언트에게 제공한다.
즉, 상기 어플리케이션 서버군에 포함된 제 2 어플리케이션 서버에 상기 사용자 정보로 로그인한 제 2 클라이언트가 접속한 경우, 상기 제 2 어플리케이션 서버는 상기 제 2 클라이언트에게 상기 이벤트 발생 정보를 송신할 수 있다. 물론, 제 2 클라이언트는 제 1 클라이언트와 동일한 장치일 수 있고, 반대로, 상이한 장치일 수 있다. 어플리케이션 서버에 달리 접속할 수도 있고, 전혀 다른 클라이언트 장치를 통해 동일한 사용자 정보로 로그인할 수도 있기 때문이다.
또한, 사용자가 로그인하지 않은 경우에는 다음과 같이 진행할 수 있다. 상기 노티피케이션 서버는 상기 어플리케이션 서버군에 포함된 모든 어플리케이션 서버에 상기 사용자 정보로 로그인한 클라이언트가 존재하지 않는 것을 확인하고, 상기 이벤트 발생 정보를 저장할 수 있다. 이후, 상기 사용자 정보로 로그인한 제 2 클라이언트에 상기 저장된 이벤트 발생 정보를 상기 노티피케이션 서버 또는 상기 제 2 클라이언트가 접속을 요청한 어플리케이션 서버가 송신하면, 로그인하지 않은 사용자에게도 이벤트 발생 사실을 알려줄 수 있다.
앞서 살펴본 본 명세서의 일 실시예는 노티피케이션 서버를 중심으로, 로그아웃 한 경우에 이벤트 발생을 알려줄 수 있도록 한다. 즉, SNS내에 삽입되는 어플리케이션들에서 해당 포털에서 제공하는 다른 프로세스의 의존없이, 어플리케이션들간의 이벤트 발생여부를 네트워크 상의 저정 장치에 사용자의 선택에 따라 저장하고, 저장된 이벤트의 발생여부를 다른 어플리케이션 사용도 중 노출시켜서 해당 포털의 계정을 소유한 사용자가 어플리케이션을 보다 효율적으로 관리 할 수 있게 하는 한편, 어플리케이션의 연속성을 유지하여 라이프사이클을 증가시키는 것을 목적으로 한다.
한편, 본 명세서의 다른 실시예에 의하여, 사용자의 이벤트 발생 정보가 실시간 알림에 중점을 둘 경우, 노티피케이션 서버를 제외한 어플리케이션 서버들의 구성을 살펴볼 수 있다.
도 8은 본 명세서의 일 실시예에 의한 어플리케이션 서버들 간에 이벤트 발생 정보를 제공하는 과정을 보여주는 도면이다. 도 8에서는 도 5와 달리 노티피케이션 서버가 존재하지 않는다.
클라이언트(810)는 어플리케이션 1 서버(821)에 접속하여, 이벤트를 설정하고 설정한 이벤트 정보를 송신한다(S830). 이 과정에서 상기 이벤트 발생을 통보받을 사용자 정보 역시 송신할 수 있다. 어플리케이션 1 서버(821)는 이벤트 설정 정보를 저장한다(S832). 이 과정에서 클라이언트(810)는 어플리케이션 3 서버(823)에 접속한다(S835). 이후 어플리케이션 1 서버(821)에서 이벤트가 발생한다(S840). 어플리케이션 1 서버(821)는 클라이언트(810)가 더 이상 어플리케이션 1 서버(821)에 접속하지 않은 것을 확인하고 어플리케이션 서버군에 포함된 다른 어플리케이션 서버들(822, 823)에게 이벤트 발생 정보를 송신한다(S850, S860). 어플리케이션 서버군에 포함된 어플리케이션 서버들 중, 어플리케이션 3 서버(823)는 클라이언트(801)가 로그인 한 사실을 확인하게 되어, 이벤트 발생 정보를 송신한다(S870). 어플리케이션 3 서버와 어플리케이션 실행을 진행하던 클라이언트(801)는 이벤트 발생 정보를 수신하여 이를 표시한다(S880).
도 9는 어플리케이션 서버만으로 구성되어 이벤트 발생 정보를 제공하는 과정을 보여주는 도면이다. 도 8의 구성에 따른 시스템에서 이벤트 발생을 알리는 과정을 살펴보면 다음과 같다. 하나 이상의 어플리케이션 서버로 구성된 어플리케이션 서버군으로 구성된 시스템에 있어서, 상기 어플리케이션 서버군의 제 1 어플리케이션 서버가 제 1 클라이언트에 어플리케이션을 송신한다(S910). 그리고 상기 제 1 어플리케이션 서버가 상기 제 1 클라이언트로부터 이벤트 설정 정보 및 상기 이벤트 발생을 통보받을 사용자 정보를 수신하여 저장하게 된다(S920). 그리고, 일정 시간이 지난 후, 이벤트가 발생하면, 상기 제 1 어플리케이션 서버가 상기 설정된 이벤트가 발생한 것을 확인하여 이벤트 발생 정보를 생성하면(S930), 상기 제 1 어플리케이션 서버에 상기 사용자 정보로 로그인한 클라이언트가 접속하였는지 확인한다(S940). S940에서 확인한 결과 클라이언트가 제 1 어플리케이션 서버에 접속한 경우, 해당 이벤트 발생 정보를 클라이언트에게 송신한다(S945). 한편, 클라이언트가 접속하지 않은 경우, 상기 제 1 어플리케이션 서버는 상기 어플리케이션 서버군에 포함된 하나 이상의 어플리케이션 서버에게 상기 이벤트 발생 정보를 송신한다(S950). 이후, 이벤트 발생 정보를 수신한 상기 어플리케이션 서버군에 포함된 제 2 어플리케이션 서버에 상기 사용자 정보로 로그인한 제 2 클라이언트가 접속한 상태인 경우, 상기 제 2 어플리케이션 서버는 상기 제 2 클라이언트에게 상기 이벤트 발생 정보를 송신한다(S960).
도 8, 9의 실시예에 의할 경우, 어플리케이션 서버들 간에 이벤트 발생 정보를 제공하여, 로그인한 사용자에 한하여 이벤트 발생 사실을 제공할 수 있다. 이는 실시간으로 이벤트 발생의 알림이 필요한 경우에 적용할 수 있다.
도 10은 본 명세서의 일 실시예에 의한 어플리케이션 서버가 이벤트 발생 정보를 클라이언트에게 제공하는 상세 구성을 보여주는 도면이다.
어플리케이션 서버(1020)가 앞서 살펴본 바와 같이 다른 어플리케이션 서버 또는 노티피케이션 서버로부터 이벤트 발생 정보를 수신하면, 이를 1030과 같이 이벤트 발생 정보 메시지로 변환하여 클라이언트(1010)에게 제공한다.
메시지 구성의 일 실시예로는 해당 메시지가 이벤트임을 알리는 Event_Noti로 NotiType을 설정한다. 그리고 관련된 어플리케이션 정보(Application_info)를 RelatedApp 항목에 설정하여, 클라이언트에서 해당 어플리케이션으로 쉽게 이동할 수 있도록 한다. Message 필드에는 알려줄 메시지를 텍스트로 생성하여 저장한다(MessageContent). 1015와 같이 화면에 팝업창 또는 토스창으로 표시될 수 있다.
도 11은 본 명세서의 일 실시예에 의한 어플리케이션 서버의 구성을 보여주는 도면이다.
전체 구성은 메시지 생성부(1110), 어플리케이션 저장부(1120), 송수신부(1130), 중앙제어부(1140)으로 구성된다. 도 11의 어플리케이션 서버는 클라이언트에 어플리케이션의 실행에 필요한 데이터를 송신하고, 앞서 살펴본 바와 같이 이벤트 발생 정보를 클라이언트에게 제공하는 어플리케이션 서버에 해당한다.
송수신부(1130)는 외부 서버 또는 클라이언트와 네트워크로 정보를 송수신한다. 인터넷 또는 미리 정의된 네트워크 프로토콜을 이용할 수 있다.
메시지 생성부(1110)는 이벤트 발생 정보를 이벤트 발생 정보 메시지로 생성한다. 앞서 도 10에서 살펴본 이벤트 발생 정보를 MessageType으로 변환하는 기능을 제공한다.
어플리케이션 저장부(1120)는 상기 클라이언트에 송신할 어플리케이션 실행 정보를 저장한다. 어플리케이션 저장부(1120)는 소정의 어플리케이션 실행 데이터를 저장하여, 어플리케이션을 실행하고자 하는 클라이언트에게 실행 파일, 혹은 실행에 필요한 메타 데이터 등을 제공할 수 있다.
중앙제어부(1140)는 메시지 생성부(1110), 어플리케이션 저장부(1120), 송수신부(1130)를 제어한다.
어플리케이션에서 발생하는 이벤트 정보를 제공하기 위하여, 상기 송수신부(1130)가 상기 외부 서버로부터 상기 클라이언트에 로그인한 사용자 정보를 포함하는 이벤트 발생 정보를 수신하게 된다. 상기 중앙제어부(1140)는 메시지 생성부(1110)가 상기 이벤트 발생 정보를 이용하여 이벤트 발생 정보 메시지를 생성하도록 제어하며, 상기 송수신부(1130)가 상기 이벤트 발생 정보 메시지를 상기 클라이언트에 송신하도록 제어한다. 상기 외부 서버는 상기 이벤트가 발생한 어플리케이션 서버 또는 노티피케이션 서버가 될 수 있다.
또한, 이벤트가 발생한 어플리케이션에게 이벤트 발생 정보를 송신하였다는 사실을 알리기 위하여, 상기 송신부(1130)는 상기 외부 서버에게 상기 클라이언트에 상기 사용자 정보로 로그인한 정보를 송신할 수 있다.
도 12는 본 명세서의 일 실시예에 의한 어플리케이션 서버에서 진행되는 이벤트 발생 정보가 송신되는 과정을 보여주는 도면이다. 다른 어플리케이션 서버로부터, 또는 노티피케이션 서버로부터 이벤트 발생 정보를 수신하는 어플리케이션 서버에서 이벤트 발생 정보를 수신하여 이를 클라이언트에 송신하는 과정을 보여주는 도면이다. 클라이언트에 어플리케이션의 실행에 필요한 데이터를 송신하는 어플리케이션 서버에 있어서, 상기 어플리케이션 서버가 클라이언트에 어플리케이션의 실행에 필요한 데이터를 송신한다(S1210). 앞서 살펴본 바와 같이 어플리케이션의 실행 파일, 메타 데이터 등을 제공할 수 있다. 그리고 외부 서버로부터 상기 어플리케이션 서버가 이벤트 발생 정보를 수신한다(S1220). 상기 외부 서버는 상기 이벤트가 발생한 어플리케이션 서버 또는 노티피케이션 서버가 될 수 있다. 이후 상기 수신한 이벤트 발생 정보에 포함된 사용자 정보가 상기 클라이언트에 로그인한 사용자 정보와 동일한지 확인하여 동일한 경우, 상기 어플리케이션 서버가 상기 이벤트 발생 정보를 이용하여 이벤트 발생 정보 메시지를 생성한다(S1230). 이벤트 발생 정보 메시지의 생성은 도 10에서 자세히 살펴보았다. 그리고 상기 어플리케이션 서버는 상기 생성한 이벤트 발생 정보 메시지를 상기 클라이언트에 송신하여, 클라이언트에서 상기 이벤트 발생 정보 메시지가 표시되도록 한다.
또한, 상기 어플리케이션 서버는 상기 외부 서버에게 상기 클라이언트에 상기 사용자 정보로 로그인한 정보를 송신하여, 이벤트 발생 정보가 클라이언트에게 전달되었음을 통지할 수 있다(S1250).
도 13은 본 명세서의 일 실시예에 의한 어플리케이션의 이벤트 발생 정보가 클라이언트에서 표시되는 예를 보여주는 도면이다.
1300은 클라이언트의 디스플레이 장치를 의미한다. 1310은 현재 실행중인 어플리케이션의 실행 화면으로 도 13에는 App2라는 어플리케이션이 실행중이다. 이 과정에서 이전에 설정한 App1의 이벤트 1이 발생한 경우, App2를 제공하며, 현재 접속중인 어플리케이션 서버(App2 서버)는 App1 서버 또는 노티피케이션 서버로부터 이벤트 발생 정보를 수신하여, 1320과 같이 이벤트 발생 정보를 알리는 메시지로 변환하여 제공한다. 그 결과 App2를 실행중이며 별도의 App1 프로세스를 실행하지 않는 클라이언트에서도 App1의 어플리케이션 이벤트 발생 상황을 확인할 수 있다.
본 명세서에서는 SNS내에 삽입되는 어플리케이션을 사용자가 플레이하고 있을 때 다른 어플리케이션의 계정에 귀속된 이벤트의 발생여부를 전달하여, 해당 포털의 계정을 소유한 사용자가 등록한 어플리케이션 내에 진행상황에 대한 관리가 용이하도록 하는 시스템을 제공한다.
SNS의 어플리케이션의 특정 이벤트 발생에 관한 정보를 해당 어플리케이션에 대한 접속 없이도 노출할 수 있도록 한다.
아이폰(iPhone)과 같은 스마트폰의 경우, 멀티프로세스는 많은 연산 능력을 필요로 한다. 따라서, 다양한 어플리케이션에서 발생하는 이벤트를 확인함에 있어서, 본 명세서의 실시예를 적용할 경우, 별도의 어플리케이션을 실행시킬 필요 없이 현재 실행중인 어플리케이션을 통해 이벤트 발생 정보를 확인할 수 있다.
다음으로, SNS 상에서 어플리케이션의 사용 정보를 송수신하는 방법, 장치, 및 기록매체에 대해 살펴본다.
이하의 실시예에서는 SNS 환경에서 어플리케이션의 사용 정보가 공유될 수 있도록 정보를 송수신하는 것으로, 동일 관심을 가지거나 친밀도를 가지는 지인 간의 어플리케이션 사용 정보가 공유되어 어플리케이션 사용의 확산을 가능하도록 한다.
또한, 어플리케이션 사용 정보를 제공함에 있어서, 사용자의 관심 영역을 분석하여, 사용 가능성이 높은 어플리케이션의 사용 정보를 제공한다.
본 명세서의 일 실시예는 SNS에 접속할 수 있는 모든 디지털 기기에서 어플리케이션을 사용하거나, 지인 또는 관심 사용자 등의 어플리케이션 사용 정보를 실시간 혹은 일정 간격을 두고 확인할 수 있도록 SNS 상에서 어플리케이션의 사용 정보를 송수신하는 방법, 장치, 및 기록매체를 제안한다.
도 14는 본 명세서의 일 실시예에 의한 어플리케이션의 사용 정보가 공유되는 일 실시예를 보여주는 도면이다. 도 14에서는 지인들간의 어플리케이션의 사용 현황을 보여주는 도면이다. 도 14에서 인터넷(100)을 통해 클라이언트의 일 실시예인 1410, 1420이 유선 또는 무선의 방식으로 연결되어 있다. 서버(1400) 역시 인터넷에 연결된 상태이다. 1410과 같은 PDA, 스마트폰은 기지국을 통해 연결될 수 있고, WIFI를 통해 인터넷에 연결될 수 있다. 클라이언트(1410)에 A 사용자가 로그인 한 상태인데, A 사용자가 로그인을 하게 되면 서버(1400)에서는 A 사용자의 식별 정보를 이용하여 데이터베이스에서 A 사용자의 친구의 어플리케이션 사용 정보를 검색하여 1411과 같이 제공한다. 이 때, A 사용자의 친구라는 것은 지인, 버디 등과 같이 상호 정보를 공유하는 것을 허락한 사용자들을 의미한다.
클라이언트(1410)에 로그인한 A 사용자와 정보를 공유하는 친구(또는 지인)는 B, C, D가 있으며 1411과 같이 B, C, D의 어플리케이션 사용 정보를 제시하고 있다. 게임 어플리케이션에 대한 사용 정보가 제시된 예를 살펴보면, 사용자 B의 게임 1의 사용 정보는 레벨 7(Lev 7)이며, 사용자 C의 게임 2의 사용 정보는 레벨 3(Lev 3)이다. 한편, 사용자 D의 교육 어플리케이션인 교육 3의 5과를 현재 진행하고 있음을 알 수 있다.
또한 1411에서는 사용자 A가 다른 어플리케이션에 참여할 수 있도록 어플리케이션의 명칭(게임 1, 게임 2, 교육 3)에 하이퍼링크로 밑줄이 표시되어 해당 어플리케이션을 바로 실행시키거나 URL 접속을 진행할 수 있도록 한다.
클라이언트(1420)에 로그인한 B 사용자와 정보를 공유하는 친구(또는 지인, 버디 등)는 A, E가 있으며, 1421과 같이 사용자 A, E의 어플리케이션 사용 정보를 제시하고 있다. 게임 어플리케이션에 대한 사용자 정보가 제시된 예를 살펴보면, 사용자 A는 게임 1의 레벨 3을 완료하였음을 보여주고 있다. 한편 사용자 E는 교육 3의 2과를 완료하였음을 보여준다.
1421에서는 사용자 B가 다른 어플리케이션에 참여할 수 있도록 '참여'라는 바로가기 버튼을 제공하고 있다. 따라서 사용자 B는 로그인 후, 지인들의 어플리케이션 사용 정보를 확인하여 자신도 해당 어플리케이션을 실행하거나 해당 어플리케이션을 제공하는 서버에 접속하여 어플리케이션을 사용할 수 있도록 한다. 어플리케이션의 사용 정보는 사용 횟수, 최근 사용한 시간, 점수, 순위 등 다양한 정보를 포함하며, 이 중에서 사용자가 미리 설정한 정보만을 제시할 수 있고, 기 설정된 기준에 따라 소정의 정보들만 선별적으로 표시될 수 있다. 이외에도 관심 어플리케이션인지 여부, 새로이 출시된 어플리케이션인지, 혹은 인기 어플리케이션인지 등의 정보도 사용 정보와 함께, 혹은 독립적인 사용 정보로 제시될 수 있다. 예를 들어, 지인이 특정 어플리케이션을 관심 어플리케이션으로 등록한 경우, 지인의 어플리케이션 사용 정보에 이러한 사항이 표시될 수 있다.
도 15은 본 명세서의 일 실시예에 의한 데이터베이스의 구성을 보여주는 도면이다.
도 14의 일 실시예와 같이 사용자들간의 지인 정보 및 지인들의 어플리케이션 사용 정보를 저장하기 위해서는 서버의 데이터베이스에 지인 및 어플리케이션 사용 정보를 저장하는 것이 필요하다. 따라서 도 15에서는 본 명세서의 일 실시예에 의한 데이터베이스의 구조를 보여주고자 한다.
1510은 도 14의 실시예를 반영한 어플리케이션 사용 정보를 저장한 데이터베이스이다. UID는 사용자의 식별 정보이며, 통상 로그인 아이디, 메일 주소, 혹은 데이터베이스에서 생성하는 식별 번호 등 전체 사용자들이 중복되지 않는 고유한 값을 가지는 것으로 사용자를 식별할 수 있는 정보이다. 또한, 다수의 플랫폼에서 어플리케이션을 사용하는 경우, 해당 플랫폼과 사용자 정보를 결합하여 UID를 생성하여 저장할 수 있다.
한편, AppNo는 어플리케이션의 식별 정보이다. 도 15에서는 게임, 교육 등에 따라 G, E와 같은 식별 정보가 부가되어 있으나, 이는 일 실시예에 불과하며, 게임, 교육 등에 대하여 구별없이 일련의 숫자 또는 알파벳으로 식별 정보를 할당할 수 있다. AppInfo는 해당 사용자가 해당 어플리케이션에 대해 사용한 정보로, 어떤 단계를 완성했는지(complete), 혹은 어떤 단계를 시작했는지(Entrance) 혹은 어떤 단계를 진행하고 있는 중인지(processing)을 보여주고 있다. 사용 정보는 보다 상세하게 나뉘어질 수 있고, 어플리케이션의 특성에 따라 다양하게 분화하여 제공될 수 있다. 예를 들어, 순위 정보를 제공할 수 있다. Date는 최종 사용 일자를 의미한다.
한편 1520은 사용자들간에 정보를 공유하는 것을 허락하거나, 혹은 어플리케이션 사용 정보를 제공받고자 하는 등의 사용자들간의 관계 정보를 저장하고 있다. UID1은 UID2에 매칭된 사용자의 어플리케이션 사용 정보를 확인할 수 있다. 도 14에서 사용자 A는 B, C, D 사용자의 어플리케이션 사용 정보를 확인할 수 있었고 사용자 B는 A, E 사용자의 어플리케이션 사용 정보를 확인할 수 있었다. 도 15의 1520에서는 사용자 A와 사용자 B의 지인 정보를 제공하고 있다. 본 명세서에서는 사용자들이 서로 정보를 공유할 수도 있고, 일방향으로 정보를 공유하거나 확인할 수 있다. 즉, 도 14와 도 15에서 A는 사용자 B, C, D의 어플리케이션 사용 정보를 확인할 수 있으나, 사용자 C, D는 사용자 A의 어플리케이션 사용 정보를 확인하고 싶지 않거나, 확인하도록 설정하지 않을 수 있다. 즉, 사용자 C, D가 로그인할 경우, 사용자 A의 어플리케이션 사용 정보가 노출되지 않을 수 있다.
도 16은 본 명세서의 일 실시예에 의한 서버와 클라이언트의 정보 송수신의 과정을 보여주는 도면이다.
도 16의 실시예에서는 서버에서 지인 정보 및 어플리케이션 사용 정보를 저장 혹은 관리한다. 서버에서 클라이언트의 접속 이후 바로, 혹은 클라이언트의 요청에 의하여 클라이언트에 로그인한 특정 사용자의 정보를 수신한 후, 특정 사용자와 지인 관계의 사용자들의 어플리케이션 사용 정보를 제공하며, 이 과정에서 지인 관계의 사용자들의 어플리케이션 사용 정보를 모두 제공하거나 혹은 선별하여 제공하는 과정을 보여준다.
클라이언트(1601)와 서버(1602)는 인터넷을 통해 연결되어 있다. 앞서 도 1에서 살펴본 바와 같이 클라이언트(1601)는 다양한 방식으로 인터넷에 접속할 수 있다.
클라이언트(1601)에서 제 1 사용자가 로그인을 진행한다(S1610). 제 1 사용자의 로그인 방식은 다양하게 제공될 수 있는데, 클라이언트(1601) 내에 제 1 사용자의 식별 정보가 미리 내장되거나 파일 형태로 저장될 수 있으며, 제 1 사용자의 식별 정보와 패스워드가 입력되어 서버(1602)를 통해 검증 받는 과정을 더 진행할 수 있다. 이후 로그인이 완료하면 클라이언트(1601)에서는 제 1 사용자 정보를 송신한다(S1615). 제 1 사용자 정보를 소정의 약속된 프로토콜 방식으로 송신할 수 있다. 그리고 제 1 사용자 정보 이외에 지인의 어플리케이션 사용 정보를 요청하는 정보가 함께 포함될 수 있다. 이는, 제 1 사용자가 로그인한 직후 지인들의 어플리케이션 사용 정보를 표시하는 경우와 제 1 사용자가 로그인한 후, 여러 작업을 수행한 후, 지인들의 어플리케이션 사용 정보를 별도로 요청하는 경우 등 정보가 필요한 경우가 다양할 수 있으므로, 별도로 어플리케이션 사용 정보를 송신해 줄 것을 요청하는 메시지를 클라이언트(1601)가 서버(1602)에 송신할 수 있다.
서버(1602)는 수신한 제 1 사용자 정보를 바탕으로 지인 정보를 검색하여 지인에 해당하는 하나 이상의 제 2 사용자의 어플리케이션 사용 정보를 검색한다(S1620). 이 때, 제 2 사용자가 다수가 될 수 있고, 또한 각각의 제 2 사용자들이 사용한 어플리케이션 또한 다수가 될 수 있다. 이 경우, 지인들 중에서 제 2 사용자에 해당하는 사용자 정보를 선별하거나, 다수의 어플리케이션 중에서 적합한 어플리케이션을 선별하는 과정을 부가적으로 서버(1602)에서 진행할 수 있다.
예를 들어, 지인 관계 데이터베이스에서 제 1 사용자와 친밀도가 높은 지인을 검색할 수 있다. 그리고 친밀도가 높은 지인을 제 2 사용자로 할 수 있다. 이는 보다 친밀한 지인의 어플리케이션 사용 정보가 제 1 사용자에게 의미있는 정보가 될 수 있기 때문이다.
한편, 제 1 사용자가 이전에 또는 최근에 사용한 어플리케이션의 사용 패턴을 분석하여 그 결과를 기반으로 하여 검색할 수 있다. 예를 들어, 제 1 사용자가 게임 쪽 어플리케이션을 주로 사용하는 경우, 지인들 중에서 게임 쪽 어플리케이션을 사용한 사용자를 제 2 사용자로 할 수 있다. 물론, 교육 쪽 어플리케이션을 주로 사용하는 경우, 지인들 중에서 교육 쪽 어플리케이션을 사용한 사용자를 제 2 사용자로 할 수 있다. 물론, 제 1 사용자가 주요 어플리케이션 혹은 관심 어플리케이션을 등록한 경우, 해당 어플리케이션을 기반으로 하여 유사하거나 동일한 어플리케이션을 사용한 사용자를 제 2 사용자로 하는 경우도 가능하다.
뿐만 아니라, 제 1 사용자의 컨텐츠 사용 패턴을 분석한 결과를 기반으로 검색할 수 있다. 예를 들어, 제 1 사용자가 사진 업로드를 많이 한 경우, 사진과 관련된 어플리케이션을 주로 사용한 지인들을 제 2 사용자로 할 수 있으며, 사진과 관련된 컨텐츠를 많이 생성한 지인들을 제 2 사용자로 할 수 있다. 또한, 현재 클라이언트에서 사용 혹은 실행하지 않는 어플리케이션을 사용한 지인들을 제 2 사용자로 할 수 있다. 물론, 다수의 어플리케이션을 사용하는 경우, 소정의 검색 기준에 따라 해당하는 어플리케이션에 대한 지인의 사용 정보를 제공하거나, 지인 정보에서 해당 검색 기준에 해당하는 어플리케이션의 사용 정보를 제공할 수 있다.
서버(1602)는 상기의 다양한 정보를 사용하여 제 2 사용자의 어플리케이션 사용 정보를 클라이언트(1601)에게 송신한다(S1625). 제 2 사용자의 어플리케이션 사용 정보는 하나 이상의 사용자 정보와 하나 이상의 어플리케이션 정보가 될 수 있으며, 사용자별로 하나의 어플리케이션을 제공할 수 있으며, 사용자 별로 둘 이상의 어플리케이션을 제공할 수도 있다.
클라이언트(1601)는 수신한 어플리케이션 사용 정보를 디스플레이한다(S1630). 이때, 클라이언트(1601)에서 수신한 어플리케이션 사용 정보를 소정의 순서로 정렬하거나, 혹은 선별적으로 정리하여 표시할 수 있다. 예를 들어, 클라이언트(1601)에서 로그인 이후, 혹은 최근에 사용한 어플리케이션의 사용 정보를 이용하여, 유사성을 기준으로 다수의 제 2 사용자의 다수의 어플리케이션의 사용 정보를 정렬할 수 있다. 또는, 클라이언트(1601)에서 사용자간의 친밀도를 확인할 수 있는 경우, 제 1 사용자와의 친밀도를 기반으로 다수의 제 2 사용자 중 특정한 사용자의 어플리케이션 사용 정보가 표시되도록 정렬할 수 있다. 또한, 현재 클라이언트(1601)가 실행하고 있지 않는 어플리케이션의 사용 정보를 디스플레이 할 수도 있다.
이렇게 표시된 어플리케이션에서 클라이언트(1601)가 특정 어플리케이션을 사용할 수 있고, 이를 서버(1602)에 알리기 위해 어플리케이션 사용 알림 메시지를 생성한다(S1640). 어플리케이션 사용 알림 메시지는 다양하게 구성될 수 있는데, 도 14의 1411에서와 같이 제 2 사용자인 B, C, D의 어플리케이션 사용 정보가 표시된 상태에서, 클라이언트(1601)가 특정 어플리케이션을 선택할 경우, 해당 어플리케이션의 사용 정보를 제공한 제 2 사용자 정보와 어플리케이션 정보를 서버에 알릴 수 있다. 한편, 어플리케이션이 서버(1602) 또는 다른 서버들로부터 다운로드 받거나, 혹은 인터넷 접속을 새로이 진행해야 하는 경우, 해당 어플리케이션의 사용이 가능하도록 사용을 요청하는 메시지도 함께 포함될 수 있다. 클라이언트(1601)는 서버(1602)에 어플리케이션 사용 알림 메시지를 송신한다(S1645).
서버(1602)는 수신한 어플리케이션 사용 알림 메시지를 확인하여, 어플리케이션 사용 관련 메시지를 생성한다(S1650). 보다 상세하게, 클라이언트(1601)가 사용을 알린 어플리케이션을 다운로드 하거나, 인터넷 접속을 통해 사용할 수 있도록 하는 정보를 상기 어플리케이션 사용 관련 메시지에 포함시킬 수 있다. 서버(1602)는 클라이언트(1601)에게 어플리케이션 사용 관련 메시지를 송신한다(S1655). 또한, 상기 어플리케이션의 사용을 활성화시킨 제 2 사용자에게 이익 제공 프로세스를 진행할 수 있다. 이익 제공 프로세스는 이익 제공 정보를 추가로 저장하는 것을 포함한다. 예를 들어, 상기 제 2 사용자에게 포인트를 적립하거나, 레벨을 상향조정하는 등의 과정을 진행할 수 있다. 이는 제 2 사용자의 어플리케이션 사용과 관련한 정보를 새로이 저장하거나 기 저장된 정보를 변경하는 것을 통해 달성될 수 있다.
또한, 제 2 사용자의 어플리케이션 사용 정보는 실시간으로 변경될 수 있으므로, 서버(1602)는 이러한 변경된 정보를 다시 클라이언트(1601)로 송신할 수 있다. 도 16에서 어플리케이션 사용 정보가 저장된 서버(1602)와 어플리케이션을 제공하는 서버는 상이할 수 있다. 즉, 어플리케이션을 제공하는 서버와 별도로 사용 정보를 저장할 수 있으며, 이러한 다수의 서버들이 포털, 게임 사이트 등과 같이 하나의 서버군을 구성할 수 있다.
도 17는 본 명세서의 일 실시예에 의한 어플리케이션 사용 정보가 제공되는 과정을 보여주는 도면이다.
도 17에서는 지인들 중에서 최종 사용한 어플리케이션 사용 정보를 제공하는 도면이다. 도 17에서는 로그인 또는 어플리케이션 사용 정보가 출력되는 화면 정보를 표시하고자 한다. 각각의 클라이언트들과 서버는 인터넷(100)과 같은 네트워크를 통해 연결되어 있다. 사용자들을 구분하기 위하여 17017를 기준으로 UID_1, UID_2, UID_3으로 나누고자 한다.
도 17에서 UID_2, UID_3 사용자가 클라이언트들에 각각 접속하였거나 최근에 접속을 종료한 상태에 해당한다. 또한, UID_1 사용자가 클라이언트에 접속하여 있는 상태에 해당한다. 서버(1700)에는 1705와 같이 UID_1, UID_2, UID_3 사용자의 어플리케이션 사용 정보를 사용자별로 어플리케이션별로 저장하고 있다. 물론, 17017의 데이터베이스의 AppNo, AppInfo, Date 부분은 다양한 값으로 저장될 수 있다. 1705에서는 현재를 기준으로 Date가 몇일 전인지 제시되어 있으나, 실제 데이터베이스에 저장될 경우, 절대적 시간 기준 혹은 특정 기준일자에서 상대적 사간 기준을 저장하여 구현할 수 있다.
상기 어플리케이션은 별도의 어플리케이션 서버(1701)에 저장되어, 사용자의 요청에 의하여 접속하여 실시간으로 어플리케이션을 사용하거나, 혹은 다운로드 하여 어플리케이션을 사용할 수 있다. 물론, 어플리케이션의 사용 정보는 서버(1700)에 저장되는데, 본 명세서의 일 실시예에 의하면 클라이언트에서 이러한 사용 정보를 수신할 수 있고, 다른 실시예에 의하면 어플리케이션 서버로부터 사용 정보를 수신할 수 있다.
1710은 UID_1 사용자가 지인의 어플리케이션 사용 정보를 요청하거나, 로그인 한 경우에 UID_1 사용자가 로그인한 클라이언트에서 확인할 수 있는 정보이다.
친구들의 어플 상황이라는 명칭 하에 UID_2 사용자와 UID_3 사용자가 가장 최근 혹은 현재 어플리케이션 사용 현황이 제시되어 있는데, UID_2 사용자는 현재 App_3을 레벨 9로 사용중이며, UID_3 사용자는 App_2를 레벨 5로 하루전에 사용하였음을 알 수 있다. 추가적인 실시예로, UID_1 사용자가 App_5를 실행하는 경우, App_5가 아닌 어플리케이션을 사용하는 지인들의 최근 또는 현재 어플리케이션 사용 현황을 확인할 수도 있다.
UID_2 사용자의 경우 1720과 같이 현재 App_3의 레벨 9를 현재 실행중이다. 물론, UID_2 사용자의 화면의 특정 영역에 UID_2 사용자가 사용하는 어플리케이션을 퀵런치하는 버튼이 제시될 수 있다. 또한, UID_2 사용자가 App_3을 실행하는 화면에 1710과 같이 지인들, 즉 친구들의 어플리케이션 사용 상황 정보를 제시할 수도 있다.
UID_3 사용자는 접속을 종료한 상태이다. 또는 접속은 종료하지 않은 상태이지만 어플리케이션을 사용하지 않는 상황이 될 수 있다. 이 경우, 어플리케이션의 사용 정보는 1705에 저장되어 있을 수 있으며, 이후 UID_3 사용자가 특정 어플리케이션의 사용을 재개할 수 있다. 물론, 지인들의 어플리케이션의 실행 상황을 1710과 같이 확인할 수 있다.
도 17의 구성에서 UID_2 사용자가 App_3을 종료하고 App_1을 사용할 수 있다. 이 경우, UID_1 사용자의 화면(1710)은 1712와 같이 UID_2 사용자의 어플리케이션 사용 정보가 업데이트되어 표시될 수 있다. 또한, UID_2 사용자에게도 App_1이 실행되며, 동시에 화면의 특정 영역에 친구들의 어플리케이션 사용 상황이 표시될 수 있다.
도 18은 본 명세서의 다른 실시예에 의한 어플리케이션 사용 정보가 디스플레이된 도면이다.
1800은 전체 화면을 의미한다. 제 1 사용자는 클라이언트에 접속하여 서버에 제 1 사용자 정보를 송신하고, 1810과 같이 어플리케이션 서버로부터 실시간으로 어플리케이션 4(App 4)를 다운받아서 실행하거나, 혹은 기존에 저장된 어플리케이션 4을 실행할 수 있다. 어플리케이션 4의 실행 정보는 서버에 전송되어 제 1 사용자가 어플리케이션 4를 실행중이며, 다른 친구들에게 이러한 어플리케이션 사용 정보를 알려줄 수 있다.
또한, 앞서 살펴본 바와 같이, 지인들의 어플리케이션 사용 정보는 1830과 같이 디스플레이될 수 있다. 1830에는 U2, U3, U4, U5, U6 사용자의 어플리케이션 사용 상황이 표시되어 있다. 본 명세서의 일 실시예에서는 1830와 달리 각각의 사용자들을 별도의 영문자, 숫자 혹은 한글 등의 아이디를 가질 수 있다. 다만 도 18에서는 설명의 편의를 위하여, U2, U3와 같이 지인들의 식별 정보를 표시하고자 한다.
1830과 같이 디스플레이할 경우, 제 1 사용자의 지인들의 숫자가 많거나, 화면에 어플리케이션 사용 상황을 모두 표시하기 어려운 경우, 소정의 기준에 따라 표시하고 1821, 1822와 같은 버튼과 같은 인터페이스를 사용하여 더 많은 지인들의 어플리케이션 사용 정보를 확인할 수 있다.
도 18의 1830에 배열된 순서 또는 다수의 사용자들 중에서 어떤 사용자의 어플리케이션 사용 정보를 디스플레이 할 것인지는 다양한 기준에 의하여 정해질 수 있다. 이러한 기준은 서버에서 정보를 데이터베이스에서 검색하는 경우 적용될 수 있고, 클라이언트가 서버로부터 정보를 수신하여 이를 디스플레이 하는 경우에도 적용될 수 있다.
먼저, 제 1 사용자와 지인들의 친밀도를 기반으로 우선 순위를 둘 수 있다. 친한 지인이 사용하는 어플리케이션이 보다 많은 관심을 가질 수 있으므로, 친밀도를 기준으로 지인들 중에서 어플리케이션 사용 정보를 검색하여, 이를 제공하는 방식을 고려할 수 있다. 친밀도를 판단하는 기준은 정보의 공개 수준, 메일, 쪽지 등의 메시지 형태의 정보가 교류된 횟수, 각자의 개인 정보를 열람한 횟수 등의 다양한 기준을 적용할 수 있다.
다음으로, 제 1 사용자의 어플리케이션 사용 패턴을 분석하여 관련성 높은 어플리케이션 혹은 관련성이 낮은 어플리케이션의 사용 정보를 제공하는 방안이 있을 수 있다. 먼저 관련성이 높은 어플리케이션을 제공하는 경우를 살펴보면, 특정 분야, 예를 들어, 게임 어플리케이션을 주로 사용하거나, 혹은 게임 어플리케이션에서도 특정 장르(스포츠, 아케이드, 슈팅, 퍼즐 등)의 게임 어플리케이션을 선호하는 경우, 지인들과의 점수 경쟁 등이 될 수 있도록 해당 장르 또는 해당 분야의 어플리케이션을 사용한 지인들의 사용 정보를 우선적으로 제공할 수 있다. 한편, 이와 반대로, 관련성이 낮은 어플리케이션의 정보를 제공하여, 다양한 어플리케이션을 노출시킬 수 있도록 할 수 있다. 예를 들어, 현재 사용하지 않는 어플리케이션을 중심으로 지인들의 사용 정보를 검색하거나, 지금까지 어플리케이션을 사용하지 않은 장르 또는 분야의 어플리케이션을 중심으로 지인들의 사용 정보를 검색하여 제공할 수 있다.
또한, 보다 넓게 사용자의 컨텐츠 사용 패턴을 분석하여 이를 기반으로 하여 관련성 높은 어플리케이션을 제공할 수 있다. 예를 들어, 사진을 업로드를 자주하거나, 사진을 보정하는 작업을 자주하는 경우, 그래픽적 요소가 뛰어난 어플리케이션을 관심 어플리케이션으로 판단하여, 해당 어플리케이션을 사용하는 지인들의 해당 어플리케이션 사용 정보를 제공할 수 있다. 또한, 블로그와 미니홈피와 같은 공간에 작성되거나 스크랩된 문서를 분석하여 해당 사용자의 관심 정보를 확인하여 이와 관련된 어플리케이션의 사용 정보를 제공할 수 있다. 예를 들어, 블로그와 미니홈피 등에 작성된 문서를 분석한 결과 여행과 관련된 내용이 많은 경우, 해당 사용자의 관심 정보를 여행으로 판단하여, 지인들의 어플리케이션 중에서 여행과 관련된 어플리케이션의 사용 정보를 제공할 수 있다. 여행과 관련된 어플리케이션으로는 지도 어플리케이션이 있을 수 있고, 게임 중에서는 세계여행과 관련된 어플리케이션이 있을 수 있다.
한편, 도 18과 같은 인터페이스에서, 사용자가 1830에 표시된 특정 어플리케이션을 사용하고자 클릭할 경우, 서버에서는 특정 지인의 어플리케이션을 노출시켜 다른 사용자가 이를 사용한 정보(일종의 히스토리)를 저장하고, 이를 이용할 수 있다. 예를 들어, 도 6에서 사용자가 U2 사용자의 App3을 선택하여 사용할 경우, U2 사용자에게 이익을 제공할 수 있다. 이익의 일 실시예로, U2 사용자의 App3에서의 점수 또는 포인트를 향상시키거나, U2 사용자의 사이버머니를 추가하거나, 혹은, U2 사용자의 순위를 향상시키는 등의 이익을 제공할 수 있다. 또한, 이를 클릭한 사용자 역시 앞서 U2 사용자에게 제공하였던 이익과 같거나 유사한 형태의 이익을 제공할 수 있다.
또한, 1830에 표시된 정보는 실시간으로 업데이트 될 수 있다. 예를 들어, 현재 U3 사용자가 App2를 12532점 획득한 상태에서, U3 사용자가 지속적으로 App2를 사용한 결과 점수가 상향 조정된 경우, 해당 점수의 변화를 실시간으로 또는 일정 간격을 두고 1830에 반영될 수 있다. 이는 사용자들의 어플리케이션 사용상황이 서버에 저장되므로, 서버는 저장된 정보가 변경될 경우, 이를 다른 사용자들에게 알릴 수 있다. 한편, 본 명세서의 다른 실시예에 의하여, 클라이언트에서 특정 정보의 노출 여부를 판단하여 조정하는 경우에는, 클라이언트가 변경된 정보를 수신하여도 이를 바로 반영하지 않거나, 표시하지 않을 수도 있다.
한편, 클라이언트는 특정 사용자의 식별정보를 송신하여 해당 사용자의 어플리케이션 사용 정보만을 요청할 수 있고, 이 경우, 서버는 별도의 사용자 검색 과정 없이, 요청된 사용자의 어플리케이션 사용 정보만을 제공할 수 있다. 예를 들어, 1830에 표시된 정보 중에서 U4 사용자의 어플리케이션 사용 정보만을 다시 요청할 수 있고, 이 경우, 서버는 U4 사용자의 어플리케이션 사용 정보만을 검색하여 제공할 수 있다.
도 19은 본 명세서의 일 실시예에 의한 서버에서 어플리케이션 사용 정보를 제공하는 과정을 보여주는 도면이다. 도 19에서의 제 2 사용자는 특정 사용자의 지인에 해당하는 사용자를 포괄하는 것으로 다수가 될 수 있다. 예를 들어, 도 17의 UID_1 사용자가 제 1 사용자인 경우, 제 2 사용자는 UID_2, UID_3를 포함하게 된다. 한편 도 18에서는 제 2 사용자가 U2, U3, U4, U5, U6를 포함하게 된다. 즉, 도 19의 제 2 사용자는 특정 1인의 사용자를 의미하는 것이 아니라, 하나 또는 다수의 사용자 정보를 포함할 수 있다.
도 19의 서버는 도 17에서 살펴본 서버(1700)가 될 수 있으며, 도 17의 어플리케이션 서버(1701)과 서버(1700)가 결합된 것을 의미할 수 있다. 서버는 클라이언트로부터 제 1 사용자의 정보를 수신한다(S1910). 제 1 사용자 정보는 상기 클라이언트에 로그인한 사용자의 식별 정보를 포함한다. 웹상에서는 소정의 쿠키(cookie) 또는 암호화된 정보가 될 수 있으며, 모바일의 경우에는 클라이언트에 고정된 식별 번호(예를 들어 전화번호, MAC 주소 등)를 사용할 수 있다. 또한, 모바일의 경우에도 사용자가 암호 및 패스워드를 입력하여 소정의 식별 정보를 할당받아 이를 제 1 사용자 정보로 사용할 수 있다.
서버는 수신한 제 1 사용자 정보를 사용하여 지인, 친구, 버디 등의 관계 혹은 정보를 공개할 것을 허락한 사용자들 중에서 제 2 사용자 및 제 2 사용자의 어플리케이션 사용정보를 검색한다(S1920). 제 2 사용자의 일 실시예로는 상기 제 1 사용자와 정보 공유를 수행한 사용자가 될 수 있으며, 또한, 앞서 살펴본 어플리케이션의 연관성을 고려하여 상기 제 2 사용자는 상기 제 1 사용자가 사용하는 어플리케이션과 동일 또는 유사한 어플리케이션을 사용한 사용자가 될 수도 있다. 또한, 친밀도가 높은 사용자의 정보를 검색하여 제 2 사용자로 확인할 수 있다. 뿐만 아니라, 제 1 사용자와 제 2 사용자와의 관계 보다도, 어플리케이션의 연관성, 또는 어플리케이션의 선호도를 분석하여 제 2 사용자를 선택할 수 있다. 어플리케이션의 선호도 또는 유사도, 혹은 사용자간의 친밀도를 확인하기 위하여 S1910 단계는 보다 세분화될 수 있는데, 예를 들어, 상기 제 1 사용자 정보를 사용하여 상기 제 1 사용자의 어플리케이션 사용 패턴 정보를 생성하여, 상기 생성된 패턴 정보를 사용하여 상기 제 2 사용자를 검색할 수 있다.
또한, 상기 제 1 사용자 정보를 사용하여 상기 제 1 사용자의 컨텐츠 생성 정보를 검색하고, 상기 검색된 컨텐츠 생성 정보와 유사성이 높은 어플리케이션을 사용한 제 2 사용자의 어플리케이션 사용 정보를 검색할 수 있다. 뿐만 아니라, 상기 제 1 사용자 정보를 사용하여 메일, 쪽지, 블로그 방문 횟수 등을 토대로 친밀도가 높은 제 2 사용자를 검색하여 해당 사용자의 어플리케이션 사용 정보를 검색할 수 있다.
물론, 이 과정에서도 제 2 사용자는 최소한 정보의 공개를 허락한 사용자의 범위내에서 확인할 수 있다. 정보의 공개는 직접 정보의 공개를 허락한 경우뿐만 아니라, 정보의 비공개를 적극적으로 선택하지 않은 경우도 포함할 수 있다.
이후, 제 2 사용자의 범위 또는 어플리케이션의 범위를 우선적으로 선택한 후, 제 2 사용자의 어플리케이션 사용 정보를 클라이언트에 송신한다(S1930). 클라이언트에 송신되는 사용 정보는 1회적으로 송신될 수 있고, 소정 시간을 두고, 혹은 사용 정보가 변경되는 경우, 실시간으로 송신할 수도 있다. 물론, 제 1 사용자가 소정의 웹사이트 변경 등을 수행하거나, 특정 어플리케이션을 사용하는 과정에서 지인, 친구, 버디 등의 어플리케이션 사용 정보를 다시 요청할 수 있으며 이 경우 S1910, S1920, S1930 단계의 전부 혹은 일부를 진행할 수 있다. 또한, 클라이언트는 특정 사용자의 식별정보를 송신하여 해당 사용자의 어플리케이션 사용 정보만을 요청할 수 있고, 이 경우, 서버는 별도의 사용자 검색 과정 없이, 요청된 사용자의 어플리케이션 사용 정보만을 제공할 수 있다. 이후 서버는 소정의 메시지를 수신할 수 있다(S1940). 이 메시지는 제 1 사용자가 로그인한 클라이언트가 될 수도 있고, 제 2 사용자가 로그인한 클라이언트가 될 수 있다. 또한, 어플리케이션 서버가 독립하여 존재할 경우, 상기 어플리케이션 서버로부터 메시지를 수신할 수 있다. 또한, 도 19에서는 일 실시예로 두 가지의 메시지 수신을 제시하고 있으나, 이에 한정되는 것은 아니다.
수신한 메시지가 제 1 사용자가 제 2 사용자의 어플리케이션을 사용하는 것을 알리는 메시지일 수 있다. 예를 들어, 제 1 사용자가 로그인한 클라이언트에서 제 1 사용자가 제 2 사용자 중 특정 제 2 사용자의 어플리케이션을 사용할 것을 알리거나, 해당 어플리케이션의 사용을 요청하는 메시지를 송신하고, 이를 서버가 수신한 경우를 포함한다. 이 경우, 서버는 클라이언트에 제 2 사용자의 어플리케이션의 사용을 가능하게 하는 메시지를 송신할 수 있다(S1950). S1950 과정은 선택적으로 진행될 수 있다. 예를 들어, 서버에서 어플리케이션을 사용할 수 있는 특정 URL을 생성하여 송신하여야만 해당 어플리케이션을 사용할 수 있는 경우, S1950에서 송신하게 되는 메시지에는 어플리케이션의 실행을 가능하게 하는 URL 정보가 포함될 수 있다. 또한, 제 2 사용자의 어플리케이션을 선택하였으므로, 해당 제 2 사용자에게 소정의 이익을 제공하는 단계를 더 포함할 수 있다. 앞서 살펴본 바와 같이, 소정의 포인트 또는 순위를 상향 조정하는 과정을 포함할 수 있다.
한편, 수신한 메시지가 제 2 사용자의 어플리케이션의 사용 정보가 변경된 것을 알리는 메시지일 수 있다. 제 2 사용자의 클라이언트로부터 사용 정보가 변경된 것을 알리는 메시지가 포함될 수 있고, 어플리케이션 서버로부터 제 2 사용자의 어플리케이션 사용 정보가 변경된 것을 알리는 메시지가 될 수 있다. 서버는 제 2 사용자의 어플리케이션 사용 정보의 변경 사실을 제 1 사용자가 확인할 수 있도록 변경 사실을 제 1 사용자가 로그인한 클라이언트에 송신한다(S1960). 제 1 사용자가 로그인한 클라이언트는 상기 변경 사실을 업데이트하여 표시할 수 있다. 한편, 제 1 사용자가 로그인한 클라이언트가 지인의 어플리케이션 사용 정보를 선별적으로 표시하는 경우, 비록 제 2 사용자의 사용 정보가 변경될 경우에도 이를 즉시 표시하지 않을 수 있다.
도 19의 서버는 SNS 서비스를 가능하도록 하므로, SNS에 필요한 사용자 간의 친구 혹은 지인 설정 정보를 포함한다. 이러한 정보는 어플리케이션의 사용 정보와 별개로 관리할 수 있다. 친구 혹은 지인의 설정 정보는 사용자 식별 정보를 사용하여 특정 사용자와 또다른 사용자의 연관성 내지 친밀도, 또는 정보 공개의 세부 설정 정보 등이 포함될 수 있다.
도 20은 본 명세서의 일 실시예에 의한 클라이언트가 서버로부터 어플리케이션 사용 정보를 수신하여 이를 표시하는 과정을 보여주는 도면이다.
도 20의 과정에서의 클라이언트는 노트북, 컴퓨터, PDA, 휴대폰, 스마트폰 등 다양한 디지털 기기를 포함한다. 먼저 클라이언트에 제 1 사용자의 로그인 과정이 진행된 후, 서버에 제 1 사용자 정보를 송신한다(S2010). 제 1 사용자 정보는 앞서 살펴본 바와 같이, 쿠키 또는 암호화된 소정의 정보가 될 수 있다. 그리고 서버로부터 하나 이상의 제 2 사용자의 어플리케이션의 사용 정보를 수신한다(S2020). 제 2 사용자의 어플리케이션 사용 정보가 하나 이상이므로, 한 명의 지인을 가진 경우라 하여도, 해당 지인이 다수의 어플리케이션을 사용할 경우, 다수의 어플리케이션 사용 정보를 수신할 수 있다. 또한, 어플리케이션 별로 한 명의 지인의 사용 정보를 수신할 수 있고, 동일한 어플리케이션에 대하 다수의 지인의 사용 정보를 수신할 수도 있다. 이는 지인들의 어플리케이션 사용 정보를 어떤 방식으로 검색하는지, 혹은 어떤 어플리케이션의 사용 정보를 필요로 하는지, 혹은 어떤 지인의 어플리케이션의 사용 정보를 필요로 하는지에 따라 다양하게 선택될 수 있다. 또한, 서버에서 선별적으로 정보를 제공할 수 있으며, 서버가 정보를 제공하고, 클라이언트에서 선별하여 정보를 표시하는 방법을 사용할 수 있다.
서버에서 제공하는 제 2 사용자의 어플리케이션의 사용 정보는 서버에서 다양한 기준으로 검색하여 선별된 것일 수 있다. 예를 들어, 제 1 사용자와 정보 공유를 허용하거나, 또는 정보의 비공개를 선택하지 않은 사용자가 제 2 사용자가 될 수 있다. 제 2 사용자가 많은 수인경우, 제 1 사용자와의 친밀도를 기준으로 선별될 수 있다. 또한, 어플리케이션을 기준으로 선별될 수 있는데, 지인들 중에서 제 1 사용자가 사용하는 어플리케이션과 동일 또는 유사한 어플리케이션을 사용하는 지인의 해당 어플리케이션 사용 정보가 선별될 수 있고, 제 1 사용자의 어플리케이션 사용 패턴 정보 또는 컨텐츠 생성 정보를 기준으로 제 1 사용자가 보다 관심을 가질 수 있는 어플리케이션의 사용 정보를 기준으로 선별될 수 있다. 또한, 현재 제 1 사용자가 소정의 어플리케이션을 사용하는 경우, 해당 어플리케이션이 아닌 다른 어플리케이션의 사용 정보를 기준으로 선별하여 제공될 수 있다.
클라이언트는 서버에 소정의 메시지를 송신할 수 있다(S2040). 이때, 송신할 수 있는 메시지는 다양할 수 있다. 도 20에서는 일 실시예로 두 가지의 메시지 송신을 제시하고 있으나, 이에 한정되는 것은 아니다. 먼저, 메시지가 제 1 사용자가 제 2 사용자의 어플리케이션을 사용하는 것을 알리는 메시지인 경우, 제 2 사용자의 어플리케이션의 사용을 가능하게 하는 메시지를 서버로부터 수신할 수 있다(S2050). 어플리케이션의 사용이 특정 URL을 통한 접속으로 이루어지는 경우, 해당 접속 URL의 정보가 상기 메시지에 포함될 수 있다.
또한, 서버는 S2040의 메시지를 이용하여 제 2 사용자에게 소정의 이익을 제공할 수 있음은 도 19에서 살펴보았다.
한편, 클라이언트가 송신한 메시지가 상기 제 1 사용자의 어플리케이션의 사용의 변경 정보를 알리는 메시지인 경우 서버로부터 상기 메시지 송신에 대한 수신 확인 메시지를 수신할 수 있다(S2060). 물론, 서버에 메시지를 송신한 후, 반드시 수신 확인 메시지를 수신하는 것은 아니므로, S2060 단계는 선택적으로 진행될 수 있다.
도 21는 본 명세서의 일 실시예에 의한 서버의 구성을 보여주는 도면이다.
서버(2100)의 전체 구성은 데이터베이스부(2110), 중앙제어부(2120), 그리고 송수신부(2130)으로 이루어져있다.
데이터베이스부(2110)는 사용자별 어플리케이션 사용 정보를 저장한다. 중앙제어부(2120)는 상기 데이터베이스에서 검색 기준을 적용하여 사용자별 어플리케이션 사용 정보를 추출한다. 검색 기준은 다양하게 적용될 수 있는데, 정보 공유가 허용된 사용자 간, 예를 들어 지인, 친구이거나, 정보를 비공개로 설정하지 않은 사용자들의 어플리케이션 사용 정보를 검색하도록 설정될 수 있다. 또한, 지인, 친구와 같은 정보 이외에도 친밀도를 검색 기준으로 설정할 수 있는데, 예를 들어, 지인의 어플리케이션 사용 정보를 요청한 클라이언트의 사용자 정보를 이용하여 친밀도가 높은 사용자를 검색할 수 있다. 친밀도를 확인하는 방법은 사용자 간의 관계 정보가 저장되는 별도의 데이터베이스에서 검색할 수 있고, 또 다른 방법으로 사용자 간의 메일, 쪽지 교환 등의 상호 작용을 기준으로 검색할 수 있다. 앞서 사용자간의 관계 정보가 저장되는 별도의 데이터베이스는 SNS를 제공하는 서버에 구현될 수 있는 데이터베이스로, 둘 이상의 사용자의 식별 정보를 함께 저장하고, 해당 두 사용자의 친밀도 내지 정보 공유의 허용 범위가 저장될 수 있다.
또한, 중앙제어부(2120)는 특정 사용자가 사용하는 어플리케이션과 동일 또는 유사한 어플리케이션을 사용하는 것을 검색 기준으로 적용할 수 있다. 다른 실시예로 중앙제어부(2120)는 지인의 어플리케이션 사용 정보를 요청한 클라이언트에서 현재 실행중이지 않은 어플리케이션을 검색 기준으로 적용할 수 있다.
한편, 어플리케이션의 보다 상세한 검색을 위하여, 어플리케이션의 사용 패턴 정보를 생성할 수 있다. 예를 들어, 지인의 어플리케이션 사용 정보를 요청한 사용자를 제 1 사용자라 할 경우, 상기 제 1 사용자 정보를 사용하여 상기 제 1 사용자의 어플리케이션 사용 패턴 정보를 생성하고, 상기 생성된 패턴 정보를 사용하여 상기 데이터베이스부(2110)에서 관련된 지인들의 어플리케이션 사용 정보를 검색할 수 있다.
또한, 어플리케이션의 보다 상세한 검색을 위한 다른 실시예로, 지인의 어플리케이션 사용 정보를 요청한 사용자를 제 1 사용자라 할 경우, 상기 제 1 사용자 정보를 사용하여 상기 제 1 사용자의 컨텐츠 생성 정보를 검색하고, 상기 검색된 컨텐츠 생성 정보와 유사성이 높은 어플리케이션을 사용한 지인들의 어플리케이션 사용 정보를 검색할 수 있다.
송수신부(2130)는 클라이언트로부터 지인의 어플리케이션 사용 정보를 요청한 제 1 사용자 정보를 수신하고, 상기 데이터베이스부(2110)에서 상기 제 1 사용자 정보를 이용하여 상기 중앙제어부가 검색한 제 2 사용자의 어플리케이션 사용 정보를 상기 클라이언트로 송신한다.
한편, 지인의 어플리케이션 사용 정보를 수신한 클라이언트가 지인의 어플리케이션을 사용하는 경우, 클라이언트는 어플리케이션의 사용을 알리는 메시지를 송신하게 되며, 송수신부(2130)는 이 메시지를 수신하게 된다. 수신한 메시지에 대한 선택적인 응답으로, 상기 송수신부(2130)는 상기 클라이언트에 상기 어플리케이션의 사용을 가능하게 하는 URL을 포함하여 송신할 수 있다. 또한, 상기 어플리케이션이 미리 상기 클라이언트에 저장되었거나, 상기 클라이언트가 다른 방식으로 상기 어플리케이션에 접속가능할 경우, 상기 송수신부(2130)는 별도의 메시지를 송수신하지 않을 수 있다.
한편, 상기 어플리케이션의 사용 요청 또는 사용을 알리는 메시지를 수신한 경우, 상기 지인에 대해 소정의 보상 내지 이익을 제공하는 프로세스를 진행할 수 있다. 즉, 중앙제어부(2120)는 상기 지인의 어플리케이션 사용 정보에 이익 제공 정보를 추가로 저장할 수 있다. 앞서 살펴본 바와 같이, 소정의 포인트 또는 순위를 상향 조정하는 과정을 포함할 수 있다.
또한, 상기 송수신부(2130)는 어플리케이션 또는 클라이언트로부터 실시간 혹은 소정 간격을 두고 어플리케이션의 사용 정보를 수신할 수 있는데, 이는 실시간 혹은 소정 간격을 두고, 클라이언트에게 지인의 어플리케이션 사용 정보를 업데이트 할 수 있도록 하기 위함이다. 따라서, 변경된 사용 정보가 존재할 경우, 중앙제어부(2120)는 송수신부(2130)가 관련된 지인의 클라이언트에게 송신하도록 제어할 수 있다.
도 21의 서버는 SNS 서비스를 가능하도록 하므로, SNS에 필요한 사용자 간의 친구 혹은 지인 설정 정보를 포함한다. 이러한 정보는 어플리케이션의 사용 정보와 별개로 관리할 수 있다. 친구 혹은 지인의 설정 정보는 사용자 식별 정보를 사용하여 특정 사용자와 또다른 사용자의 연관성 내지 친밀도, 또는 정보 공개의 세부 설정 정보 등이 포함될 수 있다.
도 21의 송수신부(2130)는 인터넷 혹은 기타 통신 매체를 이용하여 서버가 클라이언트와 정보를 송수신할 수 있는 기능을 제공한다. 이는 유선, 무선을 모두 포함하며, 어느 특수한 인터넷의 구조 혹은 이동 통신망의 구조에 한정되지 않는다.
도 22는 본 명세서의 일 실시예에 의한 클라이언트의 구성을 보여주는 도면이다.
클라이언트(2200)는 크게 어플리케이션 실행부(2210), 어플리케이션 사용 정보 표시부(2220), 송수신부(2230), 그리고 중앙제어부(2240)으로 구성된다. 보다 상세히 살펴보면 다음과 같다.
어플리케이션 실행부(2210)는 어플리케이션을 사용할 수 있도록 실행한다. 어플리케이션은 다양하게 구성될 수 있는데, 웹 상에서 소정의 HTML 문서로 구성될 수도 있고, 플래쉬(flash) 파일로 구성될 수 있으며, 그 이외에 액티브 엑스(ActiveX), 실버라이트(Silverlight), 플렉스(Flex), 자바(java)를 이용하여 생성된 어플리케이션이 될 수 있다. 본 명세서에서의 어플리케이션은 다운로드되어 실행되거나, 혹은 어플리케이션 서버와 실시간, 혹은 소정 간격을 두고 데이터를 송수신하는 구조가 될 수 있다.
송수신부(2230)는 서버로부터 정보를 송수신하며, 로그인한 제 1 사용자 정보를 상기 서버에 송신하고, 상기 서버로부터 하나 이상의 제 2 사용자의 어플리케이션 사용 정보를 수신하게 된다.
그리고, 어플리케이션 사용 정보 표시부(2220)는 상기 제 2 사용자의 어플리케이션 사용 정보를 표시하게 된다. 어플리케이션 사용 정보 표시부(2220)는 소정의 표시 기준을 사용하여 정보를 표시할 수 있다. 물론, 앞서 살펴본 바와 같이 서버에서 소정의 검색 기준을 적용하여 상기 제 2 사용자의 어플리케이션 사용 정보를 제공할 수도 있다.
어플리케이션 사용 정보 표시부(2220) 또는 서버에서 검색 기준을 적용하여 송신된 제 2 사용자의 어플리케이션 사용 정보는 다양하게 구성될 수 있다. 예를 들어, 상기 제 2 사용자는 상기 제 1 사용자가 사용하는 어플리케이션과 동일 또는 유사한 어플리케이션을 사용한 사용자일 수 있다. 또한, 상기 제 2 사용자는 상기 제 1 사용자와 정보 공유를 수행한 사용자가 될 수도 있으며, 상기 제 2 사용자는 상기 제 1 사용자와 친밀도가 높은 사용자가 될 수도 있다. 한편 어플리케이션의 사용 정보이므로 어플리케이션의 관점에서 검색되거나 또는 선별되어 표시될 수 있는데, 예를 들어, 현재 수행중이거나 최근에 수행한 어플리케이션과 동일 또는 유사한 어플리케이션의 사용 정보가 표시되거나 수신될 수 있다. 반대로, 현재 실행중이지 않은 어플리케이션들의 사용 정보가 표시되거나 수신될 수 있다. 뿐만 아니라, 어플리케이션에 대한 관심도를 높이기 위하여, 제 1 사용자의 어플리케이션 사용 패턴 정보 또는 컨텐츠 생성 정보가 소정의 검색 기준이 되어 선별된 어플리케이션 정보가 될 수 있다. 이를 위하여 클라이언트(2200)가 어플리케이션 사용 패턴 정보 또는 컨텐츠 생성 정보를 서버에 송신할 수 있다. 물론, 서버에서 어플리케이션 사용 패턴 정보 또는 컨텐츠 생성 정보를 미리 저장하거나 분석하여 제 1 사용자에 적합한 어플리케이션을 선별하여 제공할 수도 있다.
중앙제어부(2240)는 상기 어플리케이션 실행부(2210), 송수신부(2230), 어플리케이션 사용 정보 표시부(2220)를 제어한다. 또한, 상기 중앙제어부(2240)는 상기 제 1 사용자 정보 및 상기 제 2 사용자의 어플리케이션의 사용을 알리는 메시지를 생성하고, 상기 송수신부(2230)는 서버에 상기 메시지를 송신할 수 있다. 이는 제 1 사용자가 어플리케이션 사용 정보 표시부(2220)에 표시된 어플리케이션을 사용하기 위해 클릭하거나 혹은 특정 버튼을 누를 경우 서버에 어플리케이션의 사용 사실을 알리거나, 어플리케이션의 사용을 요청할 수 있다. 이후, 서버로부터 어플리케이션의 사용을 가능하게 하는 메시지를 상기 송수신부(2230)가 수신할 수 있다.
도 23은 본 명세서의 일 실시예에 의한 게임 어플리케이션의 정보를 표시한 도면이다.
2310은 어플리케이션을 실행하는 영역이다. 앞서 살펴본 제 1 사용자가 로그인하여 어플리케이션을 실행시킨 화면을 보여주고 있다.
한편 2320은 제 1 사용자의 지인들인 제 2 사용자들의 어플리케이션 사용 정보를 표시하고 있다. 4 개의 사용 정보(2322, 2324, 2326, 2328)가 제시되어 있다. 사용 정보는 사용자별로 하나씩 제시될 수도 있고, 어플리케이션별로 하나씩 제시될 수 있으며, 사용자/어플리케이션별로 중복하여 제시될 수도 있다. 2320에서는 동일한 어플리케이션에 대한 다수 지인들의 사용 정보를 제시하고 있으며, 각각 사용자별로 등수와 점수 정보가 제시되어 있다.
어플리케이션 사용 정보(2322, 2324, 2326, 2328)은 각각 현재 또는 최근 지인들의 어플리케이션 사용 정보를 제시하고 있다. 어플리케이션 사용 정보는 실시간으로 또는 소정 간격을 두고 업데이트 될 수 있다. 2330은 어플리케이션 사용 정보를 추가하여 확인할 수 있도록 지인, 즉 친구를 추가할 수 있도록 하는 인터페이스이다.
다음으로, 사용자와 네트워크 상의 정보를 유기적으로 반영할 수 있도록 아바타 행동 패턴을 이용한 자동 반응 방법, 장치, 및 기록매체에 관하여 살펴보고자 한다.
본 명세서의 일 실시예는 게임 내에서 아바타를 제어함에 있어서, 사용자의 성향 또는 취향이 반영된 행동 패턴이 반영되도록 하여, 아바타를 제어하는 사용자에게 동질감을 제공할 수 있도록 한다.
또한, 사용자의 행동 패턴은 사용자가 아바타를 제어하지 않는 경우에도 아바타가 자동으로 외부의 변화에 반응할 수 있도록 하여, 사용자의 지속적인 참여가 없는 경우에도 연속적인 게임이 가능하도록 한다.
본 명세서의 일 실시예는 사용자가 아바타를 제어하는 과정에서 행동 패턴을 저장하고, 저장된 행동 패턴을 이용하여 아바타가 사용자의 제어 없이 자동으로 외부의 상황 또는 조건의 변화에 반응하는 방법, 장치, 및 기록매체를 제안한다.
인터넷 서비스에 접목되는 다양한 서비스들 중에서 게임 서비스는 인터넷 서비스 사용자들에게 제공되는 가상 세계에서 사용자들이 선택하거나 사용자에게 랜덤하게 할당된 아바타(avatar, 또는 캐릭터)가 시각적으로 표현되며, 사용자는 마우스, 키보드, 태블릿, 또는 스마트폰의 터치스크린 등 다양한 입력 장치를 이용하여 아바타를 제어하고 움직인다. 상기 아바타의 제어는 상기 아바타에 대해 미리 프로그램된 소정의 행동 방식에 대해 사용자가 입력 장치 등을 이용하여 제어할 수 있다. 이를 위해 사용자가 아바타를 제어하는 과정에서 발생하는 정보를 저장하고 이를 아바타의 행위에 대한 판단 기준이 되도록 하는 과정이 필요하다. 이하, 사용자가 아바타를 제어하는 과정에서 아바타의 선호 정보를 설정하는 과정을 살펴보고자 한다.
도 24는 본 명세서의 일 실시예에 의한 아바타의 선호 정보를 설정하는 과정을 보여주는 도면이다. 게임에서 아바타의 선호 정보는 다양한 분야와 다양한 아이템에 대해 발생할 수 있다. 선호 정보를 산출하기 위해서는 아바타의 행위를 소정의 카테고리 내에 들어가는 정보로 판단하는 경우와, 아바타의 행위를 저장하여 이를 재분석하는 경우로 나뉘어질 수 있다.
게임 서버에 클라이언트 장치가 네트워크 매체를 통하여 접속을 진행한다(S2410). 클라이언트 장치는 사용자가 아바타를 제어할 수 있도록 인터페이스와 프로세싱 기능을 제공하는 장치로, 도 1에서 살펴본 휴대폰, PDA, 스마트폰, 컴퓨터, 노트북 등이 클라이언트 장치에 해당한다. 물론, 서버에 접속하기 위하여 클라이언트 장치는 소정의 정보를 접속 과정에서 제공할 수 있는데, 사용자가 게임에 참여하기 위해 필요한 정보로 사용자 식별 정보를 제공할 수 있다. 사용자 식별 정보로는 아이디, 패스워드 등을 포함한다. 서버는 접속한 클라이언트에 아바타 정보를 송신한다(S2420). 아바타 정보는 아바타를 클라이언트 장치에서 표시하고 제어하는데 있어 필요한 정보가 되며, 아바타에게 소정의 변화가 발생할 경우, 서버에서 변경된 사항을 다시 클라이언트에 송신할 수 있다. 본 명세서의 다른 실시예에 의할 경우, 클라이언트 장치에 아바타를 일정 기간동안 표시하고 아바타에 변경된 사항을 서버가 아닌 클라이언트에서 연산하여 표시할 수 있도록 아바타 표시 프로세싱부가 설치되어 서버와 클라이언트 간에 아바타의 이동, 모션 발생시마다 정보를 송수신하지 않도록 구현할 수 있다.
클라이언트는 수신한 아바타 정보를 이용하여 게임을 진행하게 되는데, 게임을 진행하는 과정에서 외부 환경 정보를 수신하게 된다(S2430). 외부 환경 정보란 아바타가 이동함에 따른 주변의 변화와 관련된 정보를 포함하며, 게임의 종류에 따라, NPC(Non Playable Character), 아이템(item) 등도 외부 환경 정보에 포함될 수 있다. 물론, 다른 사용자가 제어하는 아바타도 외부 환경 정보에 포함될 수 있다. 따라서, 아바타가 이동을 하거나 소정의 미션을 수행하는 과정에서 접하게 되는 사물, 공간, 다른 플레이어의 아바타, NPC 등에 대한 정보가 모두 외부 환경 정보가 될 수 있으며, 아바타가 이동을 하거나 소정의 미션을 수행하는 과정에서 접하게 되는 사물, 공간, 다른 플레이어의 아바타, NPC 등을 표시하거나 특성에 대한 정보, 변화된 사항에 대한 정보들이 모두 외부 환경 정보의 일 실시예가 될 수 있다.
클라이언트에게 송신한 외부 환경 정보에 대응하여, 클라이언트 장치에서는 아바타를 제어하여 소정의 행위 정보를 생성하게 되며, 서버는 클라이언트로부터 아바타의 행위 정보를 수신한다(S2440).
수신한 행위 정보 또는 앞서 송신한 환경 정보가 소정 카테고리에 포함되는지 확인한다(S2450). 소정 카테고리에 포함되는 경우, 포함된 카테고리 정보를 이용하여 해당 아바타의 선호 정보를 설정한다(S2460). 한편 수신한 행위 정보 또는 앞서 송신한 환경 정보가 소정 카테고리에 포함되지 않는 경우, 외부 환경 정보를 이용하여 행위 정보를 분석한다(S2470). 그리고 분석된 행위 정보를 이용하여 해당 아바타의 선호 정보를 설정한다(S2480).
카테고리가 있는 경우는 아바타의 행위의 결과가 미리 규정된 범위에 포함되는 경우를 의미한다. 예를 들어, 외부 환경 정보가 옷에 대한 선택, 무기의 선택, 혹은 차를 타거나 타지 않는 등의 선택과 같이 명확하게 미리 규정된 행위의 결과가 있는 경우를 포함한다. 이 경우, 해당 아바타의 행위 정보는 파란 옷을 선택할 경우, 옷의 색상이 행위 정보에 포함될 수 있다. 무기의 선택인 경우, 총, 칼, 또는 방패의 선택이 행위 정보에 포함될 수 있다.
한편, 미리 규정된 범위로 카테고리화 하기 어려운 경우에 해당하는 외부 환경 정보 또는 행위 정보의 실시예로는 속도, 시간과 같이 양적 특성을 가지는 경우를 포함한다. 예를 들어, 숲과 도시 중 어느 한 공간을 선택하는 경우라면 앞서 살펴본 소정 카테고리에 포함되는 것으로 볼 수 있다. 그러나, 숲이라는 외부 환경 정보가 제시된 상황에서 아바타가 숲에서 체류하는 시간, 이동하는 경로 등은 미리 카테고리화 하기 어려우므로, 이에 대한 선호 정보는 카테고리를 통해 판단하는 것이 아니라. 외부 환경 정보를 하나의 분석 결정 값으로 이용하여 행위 정보를 분석한다(S2470). 그 결과 분석된 정보를 선호 정보로 설정할 수 있다(S2480). 예를 들어, 숲을 이동하는데 소요된 시간이 긴 경우, 또는 이동 경로가 숲 전체를 포괄할 경우, 해당 아바타의 선호 정보를 숲을 좋아하는 것으로 설정할 수 있다.
도 24에서는 선호 정보를 저장하고 있으나, 비선호 정보도 저장할 수 있다. 예를 들어, 반복하여 선택되지 않은 경우, 혹은 반대되는 행위를 한 경우, 비선호 정보로 저장될 수 있다.
도 25는 본 명세서의 일 실시예에 의한 아이템을 구매하는 행위를 통해 사용자의 선호 정보를 설정하는 예를 보여주는 도면이다.
클라이언트 장치의 디스플레이부를 통해 표시되는 화면(2500)에서 아바타가 선택할 수 있는 아이템이 표시된다. 2550 역시 아바타가 소정의 행위를 할 수 있도록 디스플레이부를 통해 표시되는 화면이다. 이는 앞서 도 24에서 외부 환경 정보를 송신하는 과정(S2430)에 해당한다. 사용자가 마우스, 키보드, 터치스크린 등을 제어하여 의상 아이템(252520) 또는 여행 아이템(252530)을 선택할 경우, 해당 메뉴(252522, 253252)가 표시되고, 사용자는 이들 아이템 중에서 특정한 아이템을 선택할 수 있다. 이는 앞서 도 24의 행위 정보를 수신하는 과정(S2440)의 일 실시예가 된다.
2500에는 의상으로는 빨간색 블라우스를, 여행지로는 숲을 선택한 경우를 보여준다. 사용자가 아바타를 제어하여 특정 아이템을 선택한 정보는 하나의 행위 정보가 될 수 있으며, 이러한 행위 정보는 2524, 2534와 같이 저장된다. 2524, 2534는 행위 정보 데이터베이스의 구조에 대한 일 실시예로, 2524에는 A라는 사용자가 옷, 집, 차에 대해 각각 빨간색, 자주색, 빨간색을 선택한 행위 정보가 저장된다. 또한 B는 옷과 집에 대하여 파란색과 빨간색을, C는 집에 대해 흰색을 선택한 행위 정보가 저장되어 있다.
마찬가지로 2534에는 A라는 사용자가 시간을 달리하여 여행지로 산, 숲, 숲을 선택하였고, B는 시간을 달리하여 도시와 산을 선택한 행위 정보가 저장되어 있다. 도 25의 2524, 2534의 행위 정보는 색상 또는 지역에 대한 카테고리를 가지므로, 도 24의 S2460에 의하여 카테고리 정보를 이용하여 해당 아바타의 선호 정보를 설정할 수 있다. 따라서 그 결과 2526, 2536과 같이 색상 및 지역에 대한 선호 정보를 설정한다. 2526에서 A는 3가지의 색상에 대한 행위 정보가 빨간색과 자주색, 빨간색이므로, 빨간색을 선호 색상으로 할 수 있다. 반면, B의 경우, 빨간색과 파란색을 선택한 행위 정보가 있으나 이 두 색상의 관련성을 찾기 어려우므로 2526의 선호 색상에 대해 'NOT_DEFINED'라 설정하였다. 이는 이후 B의 색상 선택 행위 정보에 따라 재설정될 수 있다. C의 경우, 흰색을 선택하였으므로, 흰색으로 선호색상이 설정되어 잇다.
마찬가지로 2536에서는 선호 정보가 A의 경우 2534를 기준으로 숲이 3번 중 2번이 나왔으므로 숲으로 설정되며 B의 경우에는 도시와 산이라는 서로 상반된 공간에 대한 정보가 산출되었으므로, 선호 지역을 설정하지 않을 수 있다.
도 25에서 누적된 선호 정보 또는 행위 정보는 이후 사용자의 아바타의 행동 패턴이 될 수 있다. 즉, 도 25의 2522와 같이 선택이 필요한 질문이 게임에 제시되고, 사용자가 특정 항목을 선택 결정하는 경우, 선택한 답지의 내용이 사용자 행동 패턴 데이터화가 될 수 있다. 이 경우, 선택한 답지는 선호 행동 패턴으로 기록되고, 선택하지 않은 답지는 비선호 행동 패턴으로 기록하도록 할 수 있으며, 2524와 같이 횟수를 통해 혹은, 현재를 기준으로 최근에 발생한 행위를 우선권을 주어 선호/비선호 여부를 수치로 범위화하여 세분화할 수 있다.
또한, 2522와 같이 선택 항목에 의상과 색상과 같이 범주가 다른 선택사항이 포함된 경우, 복수의 행위 정보가 저장되고 행동 패턴화 할 수 있다. 예를 들어, 2522에서 빨간색을 선택하였으며 동시에 블라우스를 선택한 것이므로, 블라우스라는 의상을 선호하는 것으로 선호 정보를 저장할 수 있다. 이후, 해당 아바타가 외부의 환경에 대하여 자동으로 반응할 경우, 상기 빨간색과 블라우스가 소정의 행동 패턴이 될 수 있다. 즉, 자동으로 블라우스를 선택하거나, 혹은 빨간색 계열의 사물을 선택하는 등의 행동 패턴이 가능하다. 따라서, A범주에 대한 선택이 필요한 질문과 그에 따른 대답을 할 때, 선택지에 A 범주에 더해 B범주의 요소가 포함되어 있으면 A범주와 B범주를 각각 행동 패턴 데이터로서 활용할 수 있다.
도 25는 문자를 통한 선택 및 그에 따른 행위 정보를 저장하는 예이나, 이는 문자에 제한되지 않으며, 영상, 이미지, 오디오 데이터 등의 형태로 표시될 수 있다. 또한, 게임을 진행하며, 아바타가 취하는 모든 행위는 행위 정보에 저장될 수 있으며, 그에 따른 선호 정보도 산출되어 저장될 수 있다. 이를 기반으로 행동 패턴을 생성하여, 해당 아바타는 특정 외부 환경의 변화에 대해 미리 설정된 행동 패턴에 따라 행동 또는 행위할 수 있도록 한다.
예를 들어, 2532는 특정 공간이 문항으로 제시되어 선택할 수 있도록 표시되어 있으나, 2550과 같이, 게임 화면에서 사용자가 이동하고자 하는 방향을 그래픽 인터페이스 상의 위치를 클릭하는 방식으로 선택할 수 있다. 즉, 2550 화면과 같이 사용자가 아바타를 숲으로 이동하도록 하는 이동 행위를 제어할 경우, 이러한 행위가 누적될 경우, 행동 패턴으로 작용할 수 있다. 이 과정에서 숲을 지속적으로 선택하여 이동할 경우, 숲은 하나의 선호 정보로 저장되고, 도시는 비선호 정보로 저장되거나, 혹은 도시에 대해서는 별도의 정보를 저장하지 않을 수 있다.
도 25는 의상의 구매, 여행지의 선택과 같이 카테고리가 분명한 경우 이를 통해 사용자의 선호 정보를 설정하는 경우를 보여주었다. 도 24에서 살펴본 바와 같이, 사용자의 선호 정보는 반드시 특정 카테고리의 외부 환경 정보를 선택하거나, 미리 정의된 행위 정보에 의해 설정되는 것은 아니며, 사용자가 제어하는 아바타의 행위 정보의 누적을 통해 선호 정보가 설정될 수 있다. 이는 도 26에서 살펴보고자 한다.
도 26은 본 명세서의 다른 실시예에 의한 카테고리화 되지 않은 행위를 통해 사용자의 선호 정보를 설정하는 예를 보여주는 도면이다.
도 25에서는 사용자가 아바타를 제어하는 과정에서 구체적으로 특정 아이템 또는 특정 상황을 선택하는 경우를 살펴보았다. 그러나, 도 26은 미리 카테고리화 되지 않는 행위 정보를 누적하고, 이를 분석하여 아바타의 선호 정보를 설정할 수 있다. 도 26의 과정은 앞서 살펴본 도 24의 S2470, S2480과 관련있으나, 반드시 이에 포함되는 것은 아니다. 서버는 클라이언트에 외부 환경 정보를 송신한다(S2610). 송신한 외부 환경 정보에 대하여 클라이언트의 아바타의 행위 정보가 발생하게 되어, 행위 정보를 클라이언트로부터 수신한다(S2620). 수신한 행위 정보를 데이터베이스에 저장한다(S2630). 이 경우, 해당 아바타에 대한 식별 정보를 함께 저장하여 어떤 아바타의 행위 정보인지 확인할 수 있다. 이는 향후, 분석툴을 통해 수신한 행위 정보를 소정의 선호 정보를 설정하는데 이용하기 위함이다. 수신한 행위 정보에 대한 분석을 진행할 것인지 판단한다(S2640). 진행하지 않는 경우, 지속적으로 S2610 내지 S2630의 과정을 진행하며 외부 환경 정보에 대한 아바타의 행위 정보를 수신하게 된다. 그리고 수신한 행위 정보에 대해 분석을 진행할 경우(S2640), 먼저 수신한 행위 정보에서 행위 특징 정보를 산출한다(S2650). 예를 들어, 행위 정보가 특정 영역, 예를 들어 가상 공간에서의 도서관, 학교 등에서 걸어다닌 것을 나타낸 정보가 많은 경우, 해당 도서관, 학교가 장소로서의 특징이 될 수 있다. 또한, 걸어다니는 행위가 선호하는 이동 방식의 특징이 될 수 있다. 이러한 특징 정보를 산출하여 이를 이용하여 선호 정보를 산출한다(S2660). 선호 정보의 일 실시예로, 선호 공간을 앞서 살펴본 도서관 또는 학교가 많은 경우, 교육기관으로 설정할 수 있다. 또한, 선호하는 여가 행위를 나타내는 선호 정보로 독서가 포함될 수 있다. 만약, 가상 공간 내에서 쇼핑을 하거나, 다른 아바타와 채팅을 많이 한 행위 정보를 통해 특징 정보가 쇼핑과 채팅인 경우, 성격에 대한 선호 정보로 외향성이 될 수 있다. 이러한 행위 정보, 특징 정보 및 선호 정보와의 관계는 지속적으로 분석 툴을 사용하여 분석한 결과를 다시 피드백(feedback)으로 사용하여 분석툴의 정확도를 높일 수 있다. 산출한 선호 정보는 해당 아바타의 선호 정보로 설정한다(S2670). 그 결과 소정의 누적된 행위를 통해 해당 아바타의 선호 정보를 설정할 수 있다.
분석툴이 작동되는 다른 실시예는 가상 공간 내에서 다른 아바타와의 상호 작용이 될 수 있다. 예를 들어, 다른 사용자의 아바타와 함께 데이트를 하는 경우, 자주 방문하는 공간에 대한 정보를 해당 아바타의 선호 공간으로 설정할 수 있다. 또한 상대 아바타의 의상의 색상, 의상의 형태, 또는 상대 아바타를 통한 대화 내용 등을 행위 정보로 저장하여 이를 분석하여 선호 정보로 설정할 수 있다.
도 27은 본 명세서의 일 실시예에 의한 아바타의 선호 정보를 설정하는 과정을 보여주는 도면이다. 게임에서 아바타의 선호 정보는 다른 게이머 또는 플레이어가 제어하는 아바타의 행위에 따라 발생할 수 있다. 도 27에서 S2710, S2720은 앞서 도 24의 S2410, S2420 단계와 동일하므로 S2410, S2420 단계에 대한 설명으로 대신하고자 한다. 또한, S2710, S2720 단계는 항상 필요한 것이 아니며 게임 과정에서 1회 또는 수회 발생할 수 있는 단계이다. 서버는 클라이언트에게 상대 아바타의 정보를 송신한다(S2730).
상대 아바타란 현재 클라이언트의 아바타와 하나의 공간에 포함된 다른 사용자의 아바타를 의미하며, 본 명세서의 다른 실시예에 의할 경우 다수의 아바타의 정보도 송신할 수 있다. 송신된 상대 아바타에 대해 클라이언트로부터 해당 클라이언트의 아바타의 행위 정보를 수신한다(S2740). 행위 정보란 게임의 종류에 따라 달라지는데, 전투 게임인 경우, 상대 아바타가 적인지, 혹은 아군인지에 따라, 전투를 수행하거나, 협업을 진행하는 것일 수 있다. 롤 플레잉 게임인 경우, 상대 아바타와 소정의 미션을 수행할 수 있다. 물론, 상대 아바타와 반드시 상호 행위를 하는 것 만이 본 명세서의 행위 정보에 포함되는 것은 아니며, 상대 아바타의 근처로 이동하거나, 혹은 반대 방향으로 이동하는 등의 행위도 모두 행위 정보가 될 수 있다. 수신한 행위 정보가 소정 카테고리에 포함되는지 확인한다(S2750). 확인 결과 포함되는 경우, 행위 정보를 이용하여 클라이언트의 아바타의 선호 정보로 설정한다(S2760). 물론, 아바타의 선호 정보로 바로 설정하지 않고, 도 25에서 살펴보았던 2524, 2534와 같이, 행위 정보를 저장한 후, 별도의 분석 툴을 이용하여 선호 정보를 설정할 수 있다. 또한, 상대 아바타의 행위 정보도 함께 저장할 수 있다.
한편, 행위 정보가 소정의 카테고리에 포함되지 않는 경우, 도 26에서 살펴본 바와 같이, 행위 정보를 저장하여, 이를 분석하는 과정을 진행한다. 수신한 행위 정보를 데이터베이스에 저장한다(S2770). 이때, 해당 행위 정보를 저장함에 있어서 상대 아바타의 정보 및 상대 아바타의 행위 정보도 함께 저장할 수 있다. 그리고 수신한 행위 정보에 대한 분석을 진행할 것인지 확인하여, 진행하지 않을 경우(S2780), 게임을 진행한다. 이는 행위 정보가 충분히 저장되었는지 여부에 따라 달라질 수 있다. 이후 게임을 진행하는 과정에서 분석을 진행하고자 할 경우, 수신한 행위 정보에서 행위 특징 정보를 산출한다(S2782). 행위 특징 정보에는 상대 아바타의 행위 정보에서도 행위 특징 정보를 산출할 수 있다. 그리고 산출한 행위 특징 정보에서 선호 정보를 산출하여(S2784), 산출한 선호 정보를 해당 아바타의 선호 정보로 설정할 수 있다(S2786).
보다 상세히 살펴보면, 게임에 따라 상대 아바타의 행위와 이에 대한 행위 정보 및 선호 정보가 상이하게 구현될 수 있다. 예를 들어, 롤플레잉 또는 데이트 게임과 같이 상대 아바타와 대화 또는 협업을 수행하는 경우, 상대 아바타의 세부적인 특징이 선호 정보가 될 수 있다. 예를 들어, 롤 플레잉에서 같이 여행을 가는 역할을 수행하기 위해 상대 아바타와 협업해야 할 경우, 협업 내용이 행위 정보가 될 수 있다. 상대 아바타와 짐을 같이 들거나, 길을 같이 가는 행위들이 행위 정보로 저장된다. 또한 상대 아바타와 전투를 하는 경우, 상대 아바타가 가진 무기에 따라 어떻게 방어 혹은 공격하는지도 행위 정보가 되어 저장된다. 데이트 게임에서 상대 아바타가 어떤 의상을 착용하고 어떤 외모인지, 어떤 대화체를 사용하는지에 따라 달라지는 행위들도 행위 정보가 될 수 있다.
도 24, 25, 26, 27은 상대 아바타를 포함한 외부 환경의 변화에 따라 발생하는 아바타의 선호 정보를 저장하였다. 저장된 선호 정보는 아바타의 행동 패턴을 생성하는데 이용된다. 따라서, 아바타를 별도로 제어하지 않더라도, 외부의 환경 변화에 따라, 아바타가 자동으로 행위를 할 수 있다. 예를 들어, 선호하는 상대 아바타가 말을 거는 경우에는 해당 아바타와 미리 패턴화된 대화를 진행할 수 있으며, 선호하지 않는 상대 아바타가 말을 거는 경우, 자동으로 대화를 단절시키거나, 다른 곳으로 이동하도록 할 수 있다.
즉, 도 24, 25, 26, 27을 통해 학습, 저장된 아바타의 선호 정보는 해당 아바타가 외부 환경에 자동으로 반응하여 소정의 행위 또는 행동을 수행할 수 있도록 한다. 또한, 반복되는 행위에 대한 정보를 저장하여 이를 선호 정보와 함깨 행동 패턴으로 저장할 수 있다. 선호 정보는 행동 패턴을 생성하는 정보 인자가 될 수 있는데, 선호 정보를 통하여 행동 패턴을 생성할 수도 있고, 행위 정보의 누적을 통하여 행동 패턴을 생성할 수 있다.
행동 패턴은 하나의 행위가 될 수도 있고, 다수의 행위들의 상위 개념을 의미할 수 있다. 또한 선호 정보를 통해 발생하는 행동 패턴이 될 수 있다. 예를 들어, 특정 카테고리 내의 음악에 디스코 춤을 추거나 왈츠를 추는 행위 정보들이 모여, 특정 카테고리 음악에 대해 '춤을 춘다'는 행동 패턴이 생성될 수 있다.
또한, 붉은 색 옷, 자동차, 집을 선택한 선호 정보들이 모여, 붉은 색을 선호하는 행동 패턴이 생성될 수 있다. 따라서, 서버에서 특정 아바타의 자동 반응을 위해 제공하는 행동 패턴 정보는 개별 행위 정보도 될 수 있고, 개별 행위 정보를 통해 유추되는 행동 패턴이 될 수 있다. 이를 수신한 아바타는 개별 행위를 할 수 있고, 주어진 환경에 따라 행동 패턴을 적용하여 행위할 수 있다.
도 28은 사용자가 제어하는 아바타의 행동 패턴 정보 DB를 생성하기 위한 행동패턴 제공모듈의 구성도를 보여주는 도면이다. 네트워크 수단을 통하여 2805와 같이 클라이언트로부터 아바타의 행위 정보를 수신한다. 행위 정보는 아바타의 이동, 액션, 아이템 취득, 혹은 상대 아바타와 전투, 대화, 동행 등의 다양한 행위를 포함하며, 특정 외부 환경에 대한 행위도 포함한다. 수신한 행위 정보는 행위 정보 DB에 분류되어 저장되는데, 예를 들어, 2815와 같이 나열된 바와 같이 특정 음악, 색상, 인물, 연령, 음식, 영화, 장소, 동물에 대한 선호 행위 또는 비선호 행위로 나누어 행위 정보 DB(2810)에 저장할 수 있다. 선호, 비선호 여부는 음악, 인물, 동물, 장소 등을 선택을 하는지, 혹은 하지 않는지를 통해 선호, 비선호 행위로 저장할 수 있다. 또한, 변화된 외부 환경에 지속하여 존재하거나, 혹은 이동하는지 여부 등을 통해 선호 또는 비선호 행위로 저장할 수 있다. 또한, 앞서 도 25에서 살펴본 2524, 2534와 같이 누적시켜 선택의 결과를 저장할 수 있다.
본 명세서의 일 실시예에 의할 경우, 행위 정보를 누적하기 위하여 기존에 누적된 행위 정보가 존재하는지 확인할 수 있다. 예를 들어, 게임을 진행하는 시간동안 지속하여 사용자의 행위 정보(또는 행동 패턴 조작 정보)를 수신하고, 수신한 행위 정보를 전체 행위 정보를 기록한 데이터베이스와 그에 대한 해당 사용자의 행위 정보에 대한 기록을 모두 대조하고, 기록되지 않은 행위 정보일 경우 해당 행위 정보를 기록하고, 기록된 행위 정보일 경우 해당 행위 정보에 대한 횟수를 기록하여 그 데이터를 저장할 수 있다. 이 경우, 행위 정보의 횟수가 큰 경우에는 해당 행위 정보인 행동 패턴 조작이 해당 아바타의 자동 반응에 더 적합한 행동 패턴 조작이 될 수 있다.
행위 정보 DB(2810)에 정보가 저장되면, 이는 선호 정보 분석툴(2840)을 통해 선호 정보 DB(2820)에 선호 정보가 저장되도록 한다. 저장되는 정보로는 2825와 같이 선호하는 혹은 비선호하는 음악, 색상, 인물, 연령, 음식, 영화, 장소, 동물 등이 될 수 있다. 이렇게 저장된 선호 정보 DB(2820)의 정보와 행위 정보 DB(2810)는 행동 패턴 생성부(2850)에서 행동 패턴을 생성하는데 이용하며, 그 결과 행동 패턴 정보 DB(2830)에 정보가 저장된다.
행동 패턴 생성부(2850)은 행위 정보 DB(2810)의 행위 정보들 또는 선호 정보DB(2820)의 선호 정보를 수집하여 행동 패턴을 생성한다. 예를 들어, 행위 정보 DB에 특정 외부 환경에 대한 선호 또는 비선호 행위가 누적되어 저장된 경우, 해당 외부 환경에 대해 누적하여 저장된 행위를 수행하도록, 자동으로 반응할 수 있는 행동 패턴 정보가 저장된다. 예를 들어, 특정 음악에 대해 춤을 추는 행위 정보가 행위 정보 DB(2810)에 누적되면, 해당 음악에 대한 선호 정보가 선호 정보 DB(2820)에 저장되며, 또한 해당 음악에 대해 춤을 추는 행동 패턴 역시 행동 패턴 정보DB(2830)에 저장될 수 있다.
또한, 특정 외부 환경에서 다수의 행위 정보가 저장되어 있으나, 이들 행위 정보가 모두 비선호 행위인 경우, 행동패턴 생성부(2850)는 해당 외부 환경에 대하여 회피하는 행동 패턴을 행동 패턴 정보DB(2830)에 저장할 수 있다.
도 29는 본 명세서의 일 실시예에 의한 외부 환경의 변화에 대한 아바타의 자동 반응에 의한 행동 패턴을 제공하는 과정을 보여주는 도면이다. 도 7에서는 외부 환경 변화의 일 실시예로, 상대 아바타가 등장하여 상대 아바타와의 상호 작용을 제공할 수 있도록 제어할 수 있다.
서버는 제 1 클라이언트에게 제 2 클라이언트의 아바타의 정보를 송신한다(S2910). 제 2 클라이언트의 아바타는 상대방 아바타, 제 2 아바타가 되는데, 제 1 클라이언트의 아바타인 제 1 아바타가 존재하는 가상의 공간에 제 2 클라이언트의 사용자가 제 2 아바타를 제어하여 하나의 가상 공간으로 이동하여 같은 가상 공간 내에 존재시키는 것을 포함한다. 또한, 제 1 클라이언트의 사용자가 제 1 아바타를 가상 공간으로 이동시키는데 그 공간에 제 2 클라이언트의 사용자가 제어하는 제 2 아바타가 존재할 수도 있다.
이를 위해 제 1 클라이언트로 제 2 클라이언트의 아바타 정보를 송신하게 된다. 물론, 서버는 제 2 클라이언트에게도 제 1 클라이언트의 제1 아바타 정보를 송신할 수 있다. 다만, 도 29에서는 제 1 클라이언트를 중심으로 설명하며, 제 2 클라이언트와의 정보 교환 역시 제 1 클라이언트와의 정보 교환과 동일하므로, 제 2 클라이언트와의 정보 교환은 생략하고자 한다.
제 1 클라이언트에게 상기 상대방 아바타(제 2 클라이언트의 사용자가 제어하는)의 행위 정보, 선호 정보, 또는 행동 패턴 정보를 송신한다(S2920). 물론, 상기 상대방 아바타가 현재 어떤 의상을 입고, 어떤 형상인지에 대한 정보는 S2910 단계에 제 1 클라이언트에 송신한 상태이다. 그리고 상기 제 1 클라이언트가 자동 반응 모드인지 확인한다(S2925). 만약, 자동 반응 모드가 아니라면, 즉, 제 1 클라이언트의 사용자가 제 1 아바타를 지속적으로 제어하고 있는 중이라면, 제 1 클라이언트의 사용자는 상대방 아바타에 대하여 제 1 아바타를 제어한 결과, 소정의 행위 정보를 서버에게 송신하게 된다. 그 결과, 서버는 제 1 클라이언트로부터 상기 상대방 아바타에 대한 행위 정보를 수신하여 저장한다(S2970). 이는 앞서 도 5에서 살펴본 바와 같이 제 1 아바타의 행위 정보로 저장되어 선호 정보를 산출하게 되며, 차후 도 6에서의 구성을 통해 행동 패턴 정보가 생성되어 저장될 수 있다.
한편 자동 반응 모드인 경우(S2925), 상대방 아바타에 대해 제 1 아바타가 적절한 행위를 할 수 있도록 행동 패턴 정보를 제 1 클라이언트에 제공하는 것이 필요하다. 따라서, 상기 상대방 아바타 아바타의 특성과 행위 정보, 선호 정보, 행동 패턴 정보 등과 관련있는 제 1 클라이언트의 행동 패턴 정보를 검색한다(S2930). 예를 들어, 상대방 아바타가 특정 색상을 선호하고, 해당 색상을 착용한 상태라면, 이 색상과 관련된 제 1 아바타의 행위 정보, 선호 정보 또는 행동 패턴 정보가 존재할 수 있다. 주어진 색상에 대해 선호 또는 비선호 행동 패턴이 존재하는 경우, 제 1 클라이언트에게 연관있는 선호 또는 비선호 행동 패턴 정보를 송신한다(S2960). 그 결과 제 1 클라이언트가 자동으로 행동 패턴에 따라 반응할 수 있도록 한다. 한편, 연관있는 행동 패턴이 선호 또는 비선호로 구분하기 어려운 경우에는 저장된 행동 패턴 정보를 제 1 클라이언트에게 송신한다(S2950).
S2945에서 특정 의상에 대한 선호 또는 비선호가 존재할 경우를 예로 들어 설명하면 다음과 같다. 제 1 아바타가 '힙합 스타일 옷'을 싫어하는 비선호 정보가 설정되어 있는데, 상대방 아바타가 '힙합 스타일 옷'을 입고 등장한 경우에는 서버는 상기 비선호 정보에 따라 비선호 행동 패턴 정보를 제 1 클라이언트에게 송신한다. 그 결과, 특정 옷에 대한 비선호 행동 패턴을 적용하여 제 1 아바타는 자리를 조금 멀리 이동하거나, 다음에 만나자는 자동 채팅을 시도할 수 있다.
한편, 중립적인 행동 패턴이 존재할 수 있다. 예를 들어, 상대방 아바타가 이성인 경우에는 제 1 아바타가 커피숍이라는 가상 공간으로 이동하는 행위 정보가 설정되었으며, 동성인 경우에는 제 1 아바타가 헬스를 하는 가상 공간으로 이동하는 행위 정보가 설정된 경우, 제 1아바타의 상대방 아바타가 동성인 경우, 상기 서버는, 저장된 행동 패턴 정보인 '헬스를 하는 가상 공간으로 이동'하도록 지시하는 행동 패턴 정보를 상기 제 1 클라이언트에게 송신할 수 있다.
도 29에서는 사용자와 상대 사용자의 아바타 간에 아바타 반응 프로세스를 나타내고 있다. 사용자는 게임을 진행하면서 다른 사용자의 아바타와 매칭될 수 있고, 상기 사용자의 아바타와 대화, 협동, 대결 등의 상호작용을 할 수 있고, 상호작용에 필요한 행동 조작을 할 수 있다.
요약하면, 상기 행동 조작의 행동 패턴 범주에 따라 상대 사용자의 행동 패턴 데이터가 존재하는지 확인하고, 해당 행동 패턴 데이터가 존재하지 않을 경우, 상대 사용자 아바타는 해당 행동 조작에 대해 특별한 선호도를 나타내지 않는 일반적인 반응을 표시한다. 상대 사용자의 행동 패턴 데이터가 존재하는 경우, 해당 행동 패턴에 대한 선호 수치가 높은지 판별하여, 선호 수치가 높을 경우 상기 행동 조작에 대한 호감 반응을 나타낸다. 반면, 비선호 수치가 높을 경우 상기 행동 조작에 대한 비호감 반응을 나타낼 수 있다.
도 30은 본 명세서의 다른 실시예에 의한 행동 패턴 정보를 생성하는 과정 및 구성을 보여주는 도면이다. 도 30에서는 특징 정보와 행위 정보 데이터를 포함한다. 특징 정보는 아바타가 존재하는 공간에 표현되는 모든 외부 환경의 특징 정보를 포함한다. 예를 들어, 외부 환경이 자동차와 같은 사물, 위치, 음악 등이라면, 해당 사물, 위치, 음악 등이 가질 수 있는 모든 값을 카테고리내에 분류되어 저장된다. 즉, 아바타가 포함되는 게임에서 공간을 나타내거나, 혹은 해당 공간에 존재하는 NPC(Non Playable Character)를 나타내거나, 혹은 다른 사용자가 제어하는 아바타를 나타낼 경우, 특징 정보의 카테고리에 포함되는 값을 가지고 표시된다.
3010의 특징 정보 데이터베이스에는 색상, 음악, 연령, 음식, 영화, 머리 스타일, 의상, 공간 등을 카테고리화하여 저장된 예를 보여준다. 각각의 특징이 가질 수 있는 값의 범위는 카테고리화 하여 저장되는데, 색상의 경우, 다양한 색상을 나타내기 위하여 RGB(Red, Green, Blue) 값을 나타낼 수 있다. 다만 이 값의 범위가 매우 넓기 때문에 RGB 값을 소정 단위로 나누어, 행위 정보를 저장할 경우, 해당 단위에 속하는 대표 색상으로 저장할 수 있다.
다른 특징 정보의 경우, 카테고리가 명확하게 나누어 지는 경우, 해당 카테고리에 포함되는 행위 정보가 그대로 행위 정보 데이터베이스(3020)에 저장될 수 있다. 행위정보는 3010의 특징 정보가 포함된 외부 환경에 대해 사용자의 제어에 의해 아바타가 반응한 행위 정보가 저장되는데, 예를 들어, 특정 색상의 차와 옷을 선택하거나, 특정 음악에서 춤을 추거나 음악을 끄는 행위 등이 모두 행위 정보가 될 수 있다. UID는 아바타의 식별 정보가 된다.
이러한 행위 정보와 특징 정보는 행동 패턴 생성부(3050)를 통해 특징 정보의 특정 카테고리에 대한 선호 또는 비선호, 혹은 반복해서 누적된 행위를 그대로 수행할 것을 지시하는 행동 패턴 정보로 데이터베이스(3030)에 저장될 수 있다. 선호 또는 비선호는 선택을 하거나 혹은 거절하는 경우를 누적하여 그러한 정보를 선호 정보 또는 비선호 정보로 판단하여 저장하는 경우를 의미한다, 3030에서 A라는 아바타가 붉은 색을 선호하는 것으로 저장되어 있다. 이후 A 아바타에게 제공된 외부 환경 정보 중 특징 정보가 붉은 색을 포함하는 경우, A라는 아바타는 이에 대해 선호하는 행동 패턴을 할 수 있다. 예를 들어, A 아바타에게 제공되는 외부 환경 정보에 붉은 색 우산이 포함된 경우, A 아바타는 이에 대한 선호 행동 패턴으로 붉은 색 우산을 선택할 수 있다. 또한 A 아바타에게 제공되는 외부 환경 정보에 D라는 아바타가 붉은 색 우산을 소지하고 있는 경우, A 아바타는 이에 대한 선호 행동 패턴으로 D라는 아바타와 대화를 시작할 수 있다. 행동 패턴 정보는 특정한 행위를 지시할 수도 있으나, 특정 행위를 할 수 있는 정보를 제공할 수도 있다. 따라서 클라이언트는 수신한 행동 패턴 정보를 해석하여 아바타에게 주어진 외부 환경에 반응하는 행위를 수행하도록 제어할 수 있다. 물론, 서버에서 행동 패턴 정보를 해석하여 아바타에게 주어진 외부 환경에 반응하도록 하는 클라이언트에게 지시 정보를 송신할 수도 있다. 이는 구현 과정에서 행동 패턴 정보를 서버, 클라이언트 어느 쪽에서도 해석하여 아바타를 제어할 수 있음을 의미한다.
또한, 중립적인 행동 패턴으로 저장할 수도 있다. 3020에서 A 아바타는 힙합옷을 착용한 아바타를 거절한 횟수가 1회, 선택한 횟수가 1회로 힙합옷을 선호하는지, 혹은 비선호하는지 확인하기 어렵다. 이 경우에는 3030에 저장된 바와 같이, 힙합옷을 착용한 아바타와는 중립의 행위를 하도록 행동 패턴 정보를 저장할 수 있다.
도 30의 구성에 의하여 A, B, C 아바타의 행위 정보와 행동 패턴 정보가 저장된 상태에서 A, B, C 아바타가 하나의 가상 공간에 표시될 수 있다. 이는 A, B, C를 제어하는 각각의 클라이언트에게 서버가 공통의 가상 공간을 제공하는 과정을 통해 가능하다. A, B, C 아바타를 제어하는 각각의 클라이언트가 A, B, C 아바타를 자동 반응 모드로 설정한 경우, A, B, C 아바타가 가지는 특징 정보와 각각의 행위 정보, 행동 패턴 정보를 이용할 수 있다. 도 30의 저장된 정보들을 사용하면, A 아바타는 붉은 색을 선호하는 것이므로, B, C 아바타의 착용 의상 혹은 소지품의 색상이 붉은 색이거나, 붉은 색에 가까울 경우, 해당 아바타에게 다가가는 행위를 할 수 있다. 이는 행동 패턴 정보가 선호이므로, 선호행동패턴의 일 실시예가 되는 다가가는 행위를 수행하는 것을 의미한다. 대화하기, 악수하기 등도 선호 행동 패턴의 구현예가 될 수 있다.
한편, B 아바타가 힙합옷을 입고, C 아바타가 정장을 입은 경우, A 아바타는 정장 아바타와 대화를 유지하는 것으로 행동 패턴이 설정되어 있으므로, A 아바타의 클라이언트는 C 아바타에게 다가가서 대화를 진행하도록 자동 반응할 수 있다.
도 31는 본 명세서의 일 실시예에 의한 서버 구성을 보여주는 도면이다. 서버는 온라인 게임을 제공하며, 아바타를 제어하는 클라이언트에게 자동으로 외부 환경에 반응할 수 있는 행동 패턴 정보를 제공하는 것을 특징으로 한다.
전체 구성은 송수신부(3110), 제어부(3120), 아바타 데이터베이스부(3130), 게임정보 데이터베이스부(3140), 행동패턴정보 데이터베이스부(3150), 행동패턴 생성부(3160)로 구성된다. 보다 상세히 살펴보면 다음과 같다.
송수신부(3110)는 클라이언트와 정보를 송수신한다. 네트워크 모듈을 포함하여 통신 기능을 제공한다. 앞서 살펴본 인터넷 통신, 소켓(socket)을 이용한 네트워크 통신 등을 포함한다.
게임정보 데이터베이스부(3140)는 게임 화면, 게임 진행 정보, 게임 진행에서 발생하는 외부 환경 정보 및 게임 프로그램을 저장한다. 온라인 게임에서 서버는 게임 데이터를 클라이언트에 실시간 혹은 정해진 간격을 두고 송신해야 하며, 그러한 게임 진행 결과를 클라이언트로부터 수신할 수 있다. 게임 정보 데이터베이스부(3140)는 게임 진행과 관련된 정보와 외부 환경 정보를 저장하고 이를 클라이언트에게 제공한다.
아바타 데이터베이스부(3130)는 아바타가 게임을 진행하며 누적된 행위 정보 또는 선호 정보를 저장한다. 도 25, 28, 30 등에서 살펴본 행위 정보, 선호 정보를 아바타별로 저장할 수 있다.
행동패턴정보 데이터베이스부(3150)는 상기 아바타의 행동 패턴 정보를 저장한다. 행동패턴 정보는 앞서 살펴본 특정 외부 환경에서 아바타가 자동으로 반응할 수 있도록 하는 정보를 의미한다. 구체적인 행위 정보가 포함될 수도 있고, 선호 정보와 외부 환경이 결합하여 선호 또는 비선호 행위를 하도록 지시하는 정보를 포함하고, 이를 서버 또는 클라이언트가 해석하여 특정한 행위가 되도록 할 수 있다.
행동패턴 생성부(3160)는 상기 아바타 데이터베이스부에 저장된 행위 정보 또는 선호 정보와 상기 상기 외부 환경 정보를 결합하여 행동 패턴 정보로 생성하여 상기 행동패턴 정보 데이터베이스부에 저장한다. 앞서 도 24, 26, 27, 29, 그리고 도 28, 30의 실시예에서 살펴본 바와 같이 행위 정보와 선호 정보, 그리고 외부 환경 정보를 이용하여 행동패턴 정보를 생성한다.
제어부(3120)는 상기 송수신부(3110), 게임 정보 데이터베이스부(3140), 아바타 데이터베이스부(3130), 행동패턴 정보 데이터베이스부(3150) 및 행동패턴 생성부(3160)를 제어하며, 특정 클라이언트의 아바타가 자동 반응 모드인 경우, 외부 환경을 고려하여 해당 아바타가 자동 반응할 수 있는 행동 패턴 정보를 클라이언트에게 송신할 수 있다. 이 과정에서 행동 패턴 정보가 구체적인 행위가 아닌 경우, 해당 행위로 해석하는 작업을 추가적으로 할 수 있다. 물론, 행동 패턴 정보를 클라이언트에게 송신하고, 클라이언트가 이를 특정한 행위로 해석할 수도 있다.
도 31의 게임 정보 데이터베이스부(3140) 대신 도 30에서 살펴본 바와 같이 특징 정보 데이터베이스부를 구현할 수 있다. 이 경우 게임 정보를 제공하는 게임 정보 데이터베이스부(3140)의 역할은 다소 축소될 수 있으며, 제어부(3120)에서 게임 프로그램을 송신할 수 있다. 특징 정보 데이터베이스부는 게임 진행에서 발생하는 외부 환경 정보 및 특징 데이터를 저장할 수 있으며, 행동패턴 생성부(3160)는 상기 외부 환경 정보의 N개의 특징 데이터와 이에 대한 M개의 아바타의 행위 정보를 행동 패턴 정보로 생성하여 이를 행동 패턴 정보 데이터베이스에 저장할 수 있다.
그리고 상기 제어부(3120)는 아바타의 자동 반응을 위하여, 상기 M개의 아바타 중 제 1 아바타와 제 2 아바타가 동일 가상 공간에 배치하는 정보를 클라이언트에 송신하며 상기 제 1 아바타의 행위 정보 및 상기 제 2 아바타의 행위 정보 및 특징 정보를 상기 행동 패턴 정보 데이터베이스(3150)에서 추출하여 상기 제 1 아바타를 제어하는 클라이언트에 상기 행동 패턴 정보를 송신하도록 송수신부(3110)를 제어할 수 있다.
서버는 특정 클라이언트에게 행동 패턴 정보를 송신하여 그에 대한 행위 정보를 수신할 수 있다. 물론, 수신한 행위 정보는 다른 클라이언트의 상대방 아바타에게 전송하여 다른 클라이언트의 상대방 아바타로부터 이에 대응하는 새로운 행위 정보를 수신할 수 있다.
도 32은 본 명세서의 일 실시예에 의한 클라이언트에서 외부 환경 정보와 행위 정보를 송신하고, 행동 패턴 정보를 해석하는 과정을 보여주는 도면이다.
클라이언트는 서버로부터 아바타 및 외부 환경 정보를 수신한다(S3210). 이때, 외부 환경 정보는 앞서 살펴본 바와 같이, 공간에 대한 정보, 상대방 아바타에 대한 정보 등을 포함한다. 그리고 S3220과 같이 자동 반응 모드인지 확인하여, 자동 반응 모드인 경우, 서버로부터 행동 패턴 정보를 수신하고(S3230), 상기 수신한 행동 패턴 정보에서 행위 정보를 생성한다(S3240). 앞서 살펴본 바와 같이, 행동 패턴 정보가 특정 행위를 지시할 수도 있고, 특정 행위의 상위 개념이 되는 행동 패턴 정보를 지시할 수 있다. 즉, 붉은 옷을 선택하는 행위 정보가 그대로 행동 패턴 정보에 포함된 경우에는 붉은 옷을 선택하는 행위 정보를 생성하여 아바타가 동작하도록 할 수 있다. 반면, 외부 환경이 상대방 아바타이며, 이 상대방 아바타가 붉은 색 옷을 입은 경우, 수신한 행동 패턴 정보가 붉은 색을 선호하는 것을 지시하는 경우, 상기 붉은 색을 입은 상대방 아바타와 호감을 표시하기 위한 악수, 대화 신청 등의 행위를 할 수 있도록 행위 정보를 생성할 수 있다. 이는 행동 패턴 정보 해석 과정에서 외부 환경 정보가 무엇인지 확인하여, 행동 패턴에서 행위 정보를 생성할 수 있다.
자동 반응 모드가 아닌 경우, 외부 입력 장치로부터 수신한 제어 입력 신호에서 행위 정보를 생성한다(S3250). 자동 반응 모드가 아닌 경우, 사용자가 마우스, 키보드, 터치 스크린 등의 외부 입력 장치를 통해 아바타를 이동시키거나, 특정 아이템을 선택하는 등의 행위를 하도록 제어 입력 신호를 생성하게 된다. 이러한 제어 입력 신호에서 행위 정보를 생성하게 된다. 그리고 S3240 또는 S3250에서 생성된 행위 정보를 서버에 송신한다. 서버는 수신한 행위 정보를 게임에 반영하고, 상대방 아바타가 존재하는 경우, 해당 상대방 아바타를 제어하는 클라이언트에게 행위 정보에 대한 결과 또는 결과가 표시된 화면 정보를 송신할 수 있다. S3260에서 외부환경정보를 함께 송신할 수 있는데, 예를 들어, 특정 음악을 선택하였다거나, 특정 음악이 재생되는 상황에서 춤을 추는 행위 정보가 생성되었음을 서버에 알리기 위해 외부 환경 정보도 함께 송신할 수 있다.
도 33은 본 명세서의 일 실시예에 의한 클라이언트 장치의 구성을 보여주는 도면이다. 전체 구성은 송수신부(3310), 제어부(3320), 모드 설정부(3330), 그리고 외부 입력장치(3340)로 구성된다. 송수신부(3310)는 서버와 정보를 송수신하며 서버로부터 아바타 및 외부 환경 정보를 수신하며, 모드 설정부(3330)는 자동 반응 모드를 설정한다. 자동 반응 모드의 설정은 클라이언트의 외부 입력 장치를 이용하여 사용자가 설정할 수 있다. 상기 모드 설정부(3330)에서 설정된 모드가 자동 반응 모드인 경우, 제어부(3320)는 서버로부터 행동 패턴 정보를 수신하고, 상기 수신한 행동 패턴 정보에서 행위 정보를 생성한다. 상기 설정된 자동 반응 모드가 아닌 경우, 제어부(3320)는 외부 입력 장치(3340)로부터 수신한 제어 입력 신호에서 행위 정보를 생성한다. 그리고 생성된 행위 정보는 상기 송수신부(3330)를 통해 서버에 송신된다. 이때, 외부환경정보를 함께 송신할 수 있는데, 예를 들어, 특정 음악을 선택하였다거나, 특정 음악이 재생되는 상황에서 춤을 추는 행위 정보가 생성되었음을 서버에 알리기 위해 외부 환경 정보도 함께 송신할 수 있다.
도 31 및 도 33은 본 명세서의 일 실시예에 의한 아바타 자동 반응을 가능하게 하는 서버와 클라이언트의 구성으로, 이 외에도, 게임의 실행을 위해 다수의 구성요소를 더 포함할 수 있다. 서버 및 클라이언트 모두 일반적인 컴퓨팅 시스템 환경을 포함할 수 있다. 상기 컴퓨팅 시스템 환경은 단지 적합한 컴퓨팅 환경의 일례로서, 본 명세서의 기능 또는 용도의 범위에 임의의 제한을 가하지 않는다. 또한, 본 명세서의 서버 또는 클라이언트는 다수의 다른 범용 또는 특별 용도의 컴퓨팅 시스템 환경들 또는 구성들에 의해 동작될 수 있다. 예를 들어, 개인용 컴퓨터, 서버 컴퓨터, 휴대용 단말기, 노트북, 멀티 프로세서 시스템, 마이크로 프로세서 기반 시스템, 셋탑박스, 프로그래머블 가전제품, 네트워크 컴퓨터, 미니 컴퓨터, 메인프레임 컴퓨터, 상술된 시스템들 또는 디바이스들 중 임의의 시스템 또는 디바이스에 구현될 수 있고, 네트워크를 통해 서버의 기능이 분산 컴퓨팅에서 구현될 수도 있다.
종래의 온라인 게임에서는 사용자를 대표적으로 표현할 수 있는 아바타 시스템을 구현하는데 있어, 아바타의 이름, 외양(외모, 의상 등), 언어 및 코멘트, 행동 표현 등의 영역으로 구성하고, 이를 사용자가 직접 설정하거나, 무작위로 설정하는 기능을 제공하는 것이 일반적이었고, 이는 다른 사용자로 하여금 상대 사용자 아바타를 통해 상대 사용자에 대해 파악할 때, 설정한 정보 및 기능 이외의 내용을 파악할 수 없는 문제가 있다. 또한, 사용자가 설정한 아바타의 정보는 해당 정보를 직접적으로 표현하는 식의 단편적인 역할을 하여, 사용자가 설정한 정보를 통해 아바타의 표현이나 반응을 확장하는데 한계가 있어왔다.
반면, 본 명세서의 실시예들은 온라인 게임 환경에서, 사용자의 행동 패턴을 근거로 아바타 반응을 위한 데이터를 누적하고, 다른 사용자의 상호작용에 따른 아바타 반응 시스템을 제공할 수 있다. 이를 위해, 행동 패턴 데이터에 따른 아바타 자동 반응 체계를 설정하고, 사용자가 제어하는 아바타의 행동 패턴 데이터를 수집 및 저장한다. 그리고 다수의 사용자가 게임에 접속하여 아바타를 제어하는 환경에서, 상기 아바타와 매치할 수 있으며, 아바타들 간의 상호작용에 필요한 선택조작을 하고, 상기 선택조작의 결과에 따라, 상기 아바타 자동 반응 체계에 매치되는 반응을 출력할 수 있다.
본 명세서를 구현함으로써, 외부 환경에 사용자의 성향 또는 특성이 반영된 아바타 반응 프로세스를 구현하여, 사용자가 아바타의 행동 반응을 직접 설정하거나 실시간 조작하는 번거로움 없이, 사용자의 행동 패턴을 반영하여 아바타 행동 반응을 자동적으로 실행할 수 있고, 사용자의 아바타와 상호작용하는 다른 사용자에게 보다 인간적인 상호작용(interaction)을 제공할 수 있다.
이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 캐리어 웨이브 매체 등이 포함될 수 있다.
또한, 이상에서 기재된 "포함하다", "구성하다" 또는 "가지다" 등의 용어는, 특별히 반대되는 기재가 없는 한, 해당 구성 요소가 내재될 수 있음을 의미하는 것이므로, 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것으로 해석되어야 한다. 기술적이거나 과학적인 용어를 포함한 모든 용어들은, 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥 상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
CROSS-REFERENCE TO RELATED APPLICATION
본 특허출원은 2010년 7월 30일 한국에 출원한 특허출원번호 제 10-2010-0073927 호, 2010년 8월 26일 한국에 출원한 특허출원번호 제 10-2010-0082754 호에 대해 미국 특허법 119(a)조(35 U.S.C § 119(a))에 따라 우선권을 주장하며, 그 모든 내용은 참고문헌으로 본 특허출원에 병합된다. 아울러, 본 특허출원은 미국 이외에 국가에 대해서도 위와 동일한 동일한 이유로 우선권을 주장하면 그 모든 내용은 참고문헌으로 본 특허출원에 병합된다.

Claims (19)

  1. 하나 이상의 어플리케이션 서버로 구성된 어플리케이션 서버군 및 노티피케이션 서버로 구성된 시스템에 있어서,
    상기 어플리케이션 서버군의 제 1 어플리케이션 서버가 제 1 클라이언트에 어플리케이션을 송신하는 단계;
    상기 제 1 어플리케이션 서버가 상기 제 1 클라이언트로부터 이벤트 설정 정보 및 상기 이벤트 발생을 통보받을 사용자 정보를 수신하는 단계;
    상기 제 1 어플리케이션 서버는 상기 이벤트 설정 정보 및 상기 사용자 정보를 상기 노티피케이션 서버에 송신하는 단계;
    상기 노티피케이션 서버는 수신한 상기 이벤트 설정 정보 및 상기 사용자 정보를 저장하는 단계;
    상기 노티피케이션 서버가 상기 제 1 어플리케이션 서버로부터 상기 설정한 이벤트 발생 정보를 수신하는 단계; 및
    상기 노티피케이션 서버는 상기 어플리케이션 서버군에 포함된 하나 이상의 어플리케이션 서버에게 상기 이벤트 발생 정보를 송신하는 단계를 포함하는, SNS 상에서 어플리케이션간 이벤트 정보를 송수신하는 방법.
  2. 하나 이상의 어플리케이션 서버로 구성된 어플리케이션 서버군으로 구성된 시스템에 있어서,
    상기 어플리케이션 서버군의 제 1 어플리케이션 서버가 제 1 클라이언트에 어플리케이션을 송신하는 단계;
    상기 제 1 어플리케이션 서버가 상기 제 1 클라이언트로부터 이벤트 설정 정보 및 상기 이벤트 발생을 통보받을 사용자 정보를 수신하여 저장하는 단계;
    상기 제 1 어플리케이션 서버가 상기 설정된 이벤트가 발생한 것을 확인하여 이벤트 발생 정보를 생성하는 단계; 및
    상기 제 1 어플리케이션 서버에 상기 사용자 정보로 로그인한 클라이언트가 접속하지 않은 경우, 상기 제 1 어플리케이션 서버는 상기 어플리케이션 서버군에 포함된 하나 이상의 어플리케이션 서버에게 상기 이벤트 발생 정보를 송신하는 단계를 포함하는, SNS 상에서 어플리케이션간 이벤트 정보를 송수신하는 방법.
  3. 클라이언트에 어플리케이션의 실행에 필요한 데이터를 송신하는 어플리케이션 서버에 있어서;
    상기 어플리케이션 서버가 클라이언트에 어플리케이션의 실행에 필요한 데이터를 송신하는 단계;
    외부 서버로부터 상기 어플리케이션 서버가 이벤트 발생 정보를 수신하는 단계;
    상기 수신한 이벤트 발생 정보에 포함된 사용자 정보가 상기 클라이언트에 로그인한 사용자 정보와 동일한 경우, 상기 어플리케이션 서버가 상기 이벤트 발생 정보를 이용하여 이벤트 발생 정보 메시지를 생성하는 단계; 및
    상기 어플리케이션 서버가 상기 생성한 이벤트 발생 정보 메시지를 상기 클라이언트에 송신하는 단계를 포함하는, SNS 상에서 어플리케이션간 이벤트 정보를 송수신하는 방법.
  4. 제 1 클라이언트에게 어플리케이션을 송신하며, 상기 제 1 클라이언트로부터 이벤트 설정 정보 및 상기 이벤트 발생을 통보받을 사용자 정보를 수신하여 저장하는 제 1 어플리케이션 서버를 포함하며, 하나 이상의 어플리케이션 서버로 이루어진 어플리케이션 서버군; 및
    상기 이벤트 설정 정보 및 상기 사용자 정보를 저장하는 노티피케이션 서버를 포함하며;
    상기 제 1 어플리케이션 서버에서 상기 이벤트 발생 정보를 상기 노티피케이션 서버에 송신하는 경우, 상기 노티피케이션 서버는 상기 어플리케이션 서버군에 포함된 하나 어플리케이션 서버에게 상기 이벤트 발생 정보를 송신하는 것을 특징으로 하는, SNS 상에서 어플리케이션간 이벤트 정보를 송수신하는 시스템.
  5. 제 1 클라이언트에게 어플리케이션을 송신하며, 상기 제 1 클라이언트로부터 이벤트 설정 정보 및 상기 이벤트 발생을 통보받을 사용자 정보를 수신하여 저장하는 제 1 어플리케이션 서버를 포함하며, 하나 이상의 어플리케이션 서버로 이루어진 어플리케이션 서버군에 있어서,
    상기 제 1 어플리케이션 서버에서 상기 이벤트 발생 정보를 상기 어플리케이션 서버군에 송신하는 경우, 상기 어플리케이션 서버군에 포함된 어플리케이션 서버는 상기 사용자 정보로 로그인한 클라이언트에게 상기 이벤트 발생 정보를 송신하는 것을 특징으로 하는, SNS 상에서 어플리케이션간 이벤트 정보를 송수신하는 시스템.
  6. 클라이언트에 어플리케이션의 실행에 필요한 데이터를 송신하는 어플리케이션 서버에 있어서;
    외부 서버 또는 클라이언트와 네트워크로 정보를 송수신하는 송수신부;
    이벤트 발생 정보를 이벤트 발생 정보 메시지로 생성하는 메시지 생성부;
    상기 클라이언트에 송신할 어플리케이션 실행 정보를 저장하는 어플리케이션 저장부; 및
    상기 송수신부, 메시지 생성부, 어플리케이션 저장부를 제어하는 중앙제어부를 포함하며,
    상기 송수신부가 상기 외부 서버로부터 상기 클라이언트에 로그인한 사용자 정보를 포함하는 이벤트 발생 정보를 수신한 경우, 상기 중앙제어부는 메시지 생성부가 상기 이벤트 발생 정보를 이용하여 이벤트 발생 정보 메시지를 생성하도록 제어하며, 상기 송수신부가 상기 이벤트 발생 정보 메시지를 상기 클라이언트에 송신하도록 제어하는 것을 특징으로 하는, SNS 상에서 어플리케이션간 이벤트 정보를 송수신하는 어플리케이션 서버.
  7. 제1항 내지 제 3항 중 어느 한 항에 기재된 SNS 상에서 어플리케이션간 이벤트 정보를 송수신하는 방법을 구현하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
  8. 클라이언트로부터 제 1 사용자 정보를 수신하는 단계;
    상기 제 1 사용자 정보를 사용하여 제 2 사용자의 어플리케이션의 사용 정보를 검색하는 단계; 및
    상기 제 2 사용자의 어플리케이션 사용 정보를 상기 클라이언트에 송신하는 단계를 포함하는, SNS 상에서 어플리케이션의 사용 정보를 송신하는 방법.
  9. 서버에 제 1 사용자 정보를 송신하는 단계;
    상기 서버로부터 하나 이상의 제 2 사용자의 어플리케이션의 사용 정보를 수신하는 단계; 및
    상기 수신한 제 2 사용자의 어플리케이션의 사용 정보를 표시하는 단계를 포함하는, SNS 상에서 어플리케이션의 사용 정보를 수신하는 방법.
  10. 사용자별 어플리케이션 사용 정보를 저장하는 데이터베이스부;
    상기 데이터베이스에서 검색 기준을 적용하여 사용자별 어플리케이션 사용 정보를 추출하는 중앙제어부;
    클라이언트로부터 제 1 사용자 정보를 수신하고, 상기 데이터베이스부에서 상기 제 1 사용자 정보를 이용하여 상기 중앙제어부가 검색한 제 2 사용자의 어플리케이션 사용 정보를 상기 클라이언트로 송신하는 송수신부를 포함하는, SNS 상에서 어플리케이션의 사용 정보를 송신하는 장치.
  11. 어플리케이션을 사용할 수 있도록 실행하는 어플리케이션 실행부;
    서버로부터 정보를 송수신하며, 로그인한 제 1 사용자 정보를 상기 서버에 송신하고, 상기 서버로부터 하나 이상의 제 2 사용자의 어플리케이션 사용 정보를 수신하는 송수신부;
    상기 제 2 사용자의 어플리케이션 사용 정보를 표시하는 어플리케이션 사용 정보 표시부; 및
    상기 어플리케이션 실행부, 송수신부, 어플리케이션 사용 정보 표시부를 제어하는 중앙제어부를 포함하는, SNS 상에서 어플리케이션의 사용 정보를 수신하는 장치.
  12. 제8항 내지 제 9항 중 어느 한 항에 기재된 SNS 상에서 어플리케이션의 사용 정보를 수신하는 방법을 구현하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
  13. 클라이언트에게 제 1 아바타 정보 및 제 1 외부 환경 정보를 송신하는 단계;
    상기 클라이언트로부터 상기 제 1 아바타의 행위 정보를 수신하여 저장하는 단계;
    상기 저장한 행위 정보 및 상기 제 1 외부 환경 정보를 결합하여 선호 정보 또는 행동 패턴 정보로 생성하여 저장하는 단계;
    상기 클라이언트에게 제 2 외부 환경 정보를 송신하는 단계; 및
    상기 제 2 외부 환경에 대한 행동 패턴 정보를 상기 클라이언트에 송신하는 단계를 포함하며,
    상기 제 1 아바타는 외부의 제어 없이 자동으로 반응하는 것을 특징으로 하는, 아바타 행동 패턴을 이용한 자동 반응 방법.
  14. 외부 환경 정보의 N개의 특징 정보와 이에 대한 M개의 아바타의 행위 정보를 행동 패턴 정보로 생성하여 이를 행동 패턴 정보 데이터베이스에 저장하는 단계;
    상기 M개의 아바타 중 제 1 아바타와 제 2 아바타가 동일 가상 공간에 배치하는 정보를 클라이언트에 송신하는 단계; 및
    상기 제 1 아바타의 행위 정보 및 상기 제 2 아바타의 행위 정보 및 특징 정보를 상기 행동 패턴 정보 데이터베이스에서 추출하여 상기 제 1 아바타를 제어하는 클라이언트에 상기 행동 패턴 정보를 송신하는 단계를 포함하는, 아바타 행동 패턴을 이용한 자동 반응 방법.
  15. 서버로부터 아바타 및 외부 환경 정보를 수신하는 단계; 및
    자동 반응 모드인지 확인하여, 자동 반응 모드인 경우, 상기 서버로부터 행동 패턴 정보를 수신하고, 상기 수신한 행동 패턴 정보에서 행위 정보를 생성하며,
    자동 반응 모드가 아닌 경우, 외부 입력 장치로부터 수신한 제어 입력 신호에서 행위 정보를 생성하며,
    상기 생성된 행위 정보를 상기 서버에 송신하는 단계를 포함하는, 아바타 행동 패턴을 이용한 자동 반응 방법.
  16. 클라이언트와 정보를 송수신하는 송수신부;
    게임 화면, 게임 진행 정보, 게임 진행에서 발생하는 외부 환경 정보 및 게임 프로그램을 저장하는 게임 정보 데이터베이스부;
    아바타가 게임을 진행하며 누적된 행위 정보 또는 선호 정보를 저장하는 아바타 데이터베이스부;
    상기 아바타의 행동 패턴 정보를 저장한 행동패턴 정보 데이터베이스부;
    상기 아바타 데이터베이스부에 저장된 행위 정보 또는 선호 정보와 상기 상기 제 1 외부 환경 정보를 결합하여 행동 패턴 정보로 생성하여 상기 행동패턴 정보 데이터베이스부에 저장하는 행동패턴 생성부; 및
    상기 송수신부, 게임 정보 데이터베이스부, 아바타 데이터베이스부, 행동패턴 정보 데이터베이스부 및 행동패턴 생성부를 제어하는 제어부를 포함하며,
    상기 제어부는 제 1 클라이언트에 상기 행동 패턴 정보를 송신하도록 상기 송신부를 제어하는 것을 특징으로 하는, 게임 서버 장치.
  17. 클라이언트와 정보를 송수신하는 송수신부;
    게임 진행에서 발생하는 외부 환경 정보 및 특징 데이터를 저장하는 특징 정보 데이터베이스부;
    아바타가 게임을 진행하며 누적된 행위 정보 또는 선호 정보를 저장하는 아바타 데이터베이스부;
    상기 아바타의 행동 패턴 정보를 저장한 행동패턴 정보 데이터베이스부;
    상기 외부 환경 정보의 N개의 특징 데이터와 이에 대한 M개의 아바타의 행위 정보를 행동 패턴 정보로 생성하여 이를 행동 패턴 정보 데이터베이스에 저장하는 행동패턴 생성부; 및
    상기 송수신부, 특징 정보 데이터베이스부, 아바타 데이터베이스부, 행동패턴 정보 데이터베이스부 및 행동패턴 생성부를 제어하는 제어부를 포함하며
    상기 제어부는 상기 M개의 아바타 중 제 1 아바타와 제 2 아바타가 동일 가상 공간에 배치하는 정보를 클라이언트에 송신하며 상기 제 1 아바타의 행위 정보 및 상기 제 2 아바타의 행위 정보 및 특징 정보를 상기 행동 패턴 정보 데이터베이스에서 추출하여 상기 제 1 아바타를 제어하는 클라이언트에 상기 행동 패턴 정보를 송신하는 것을 특징으로 하는, 게임 서버 장치.
  18. 서버와 정보를 송수신하며 서버로부터 아바타 및 외부 환경 정보를 수신하는 송수신부;
    자동 반응 모드를 설정하는 모드 설정부;
    제어 입력 신호를 생성하는 외부 입력 장치;
    상기 모드 설정부에서 설정된 모드가 자동 반응 모드인 경우, 서버로부터 행동 패턴 정보를 수신하고, 상기 수신한 행동 패턴 정보에서 행위 정보를 생성하며, 상기 설정된 자동 반응 모드가 아닌 경우, 상기 외부 입력 장치로부터 수신한 제어 입력 신호에서 행위 정보를 생성하는 제어부를 포함하며,
    상기 송수신부는 상기 생성된 행위 정보를 서버에 송신하는, 클라이언트 장치.
  19. 제13항 내지 제 15항 중 어느 한 항에 기재된 아바타 행동 패턴을 이용한 자동 반응 방법을 구현하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
PCT/KR2011/005371 2010-07-30 2011-07-21 Sns 상에서 어플리케이션간 이벤트 정보를 송수신하는 방법, 장치, 및 기록매체 WO2012015196A2 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR10-2010-0073927 2010-07-30
KR1020100073927A KR20120012053A (ko) 2010-07-30 2010-07-30 Sns 상에서 어플리케이션간 이벤트 정보를 송수신하는 방법, 장치, 및 기록매체
KR10-2010-0082754 2010-08-26
KR1020100082754A KR101239096B1 (ko) 2010-08-26 2010-08-26 아바타 행동 패턴을 이용한 자동 반응 방법, 장치, 및 기록매체

Publications (2)

Publication Number Publication Date
WO2012015196A2 true WO2012015196A2 (ko) 2012-02-02
WO2012015196A3 WO2012015196A3 (ko) 2012-05-03

Family

ID=45530575

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2011/005371 WO2012015196A2 (ko) 2010-07-30 2011-07-21 Sns 상에서 어플리케이션간 이벤트 정보를 송수신하는 방법, 장치, 및 기록매체

Country Status (1)

Country Link
WO (1) WO2012015196A2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014038787A1 (ko) * 2012-09-07 2014-03-13 에스케이플래닛 주식회사 통신 이력 제공 시스템 및 방법

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030019459A (ko) * 2001-05-09 2003-03-06 가부시키가이샤 세가 게임장치, 서버장치, 프로그램 및 기록매체
KR100465582B1 (ko) * 2000-07-10 2005-01-13 인터내셔널 비지네스 머신즈 코포레이션 네트워크를 통한 이벤트-트리거 통지
US20060218287A1 (en) * 2000-10-19 2006-09-28 Dodrill Lewis D Apparatus and methods for requesting an event notfication over a network
KR20070052493A (ko) * 2005-11-17 2007-05-22 (주)윌비솔루션 게이머의 플레이 패턴 분석을 통한 게임 가이드 정보 제공방법 및 이를 구현하는 시스템
KR20090040534A (ko) * 2007-10-22 2009-04-27 에스케이 텔레콤주식회사 어플리케이션의 ui 이벤트 처리 방법 및 이를 위한이동통신 단말기
KR20100026380A (ko) * 2008-08-29 2010-03-10 주식회사 엔씨소프트 온라인 게임의 선택적 보안 강화 시스템 및 그 방법

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100465582B1 (ko) * 2000-07-10 2005-01-13 인터내셔널 비지네스 머신즈 코포레이션 네트워크를 통한 이벤트-트리거 통지
US20060218287A1 (en) * 2000-10-19 2006-09-28 Dodrill Lewis D Apparatus and methods for requesting an event notfication over a network
KR20030019459A (ko) * 2001-05-09 2003-03-06 가부시키가이샤 세가 게임장치, 서버장치, 프로그램 및 기록매체
KR20070052493A (ko) * 2005-11-17 2007-05-22 (주)윌비솔루션 게이머의 플레이 패턴 분석을 통한 게임 가이드 정보 제공방법 및 이를 구현하는 시스템
KR20090040534A (ko) * 2007-10-22 2009-04-27 에스케이 텔레콤주식회사 어플리케이션의 ui 이벤트 처리 방법 및 이를 위한이동통신 단말기
KR20100026380A (ko) * 2008-08-29 2010-03-10 주식회사 엔씨소프트 온라인 게임의 선택적 보안 강화 시스템 및 그 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014038787A1 (ko) * 2012-09-07 2014-03-13 에스케이플래닛 주식회사 통신 이력 제공 시스템 및 방법

Also Published As

Publication number Publication date
WO2012015196A3 (ko) 2012-05-03

Similar Documents

Publication Publication Date Title
WO2017188696A1 (ko) Vr 공간에서 사용자 인터페이스를 제공하는 방법, 디바이스 및 기록매체
WO2017209564A1 (ko) 앱 리스트 제공 방법 및 그 장치
WO2016068581A1 (en) Device and method of managing user information based on image
WO2016208845A1 (ko) 이동 단말기 및 그 제어방법
WO2016048102A1 (en) Image display method performed by device including switchable mirror and the device
WO2015137743A1 (en) Content management method and cloud server therefor
WO2014061872A1 (ko) 메신저 제어 방법을 위한 기록 매체, 이를 위한 장치 및 시스템
WO2010013899A2 (ko) 커뮤니케이션 그룹에 대한 통신 기능 제공 방법과 그를 위한 이동통신 단말기 및 프리젠스 서버
WO2012091360A2 (ko) 유저 맞춤형 컨텐츠 제공 방법 및 시스템
WO2017043857A1 (ko) 어플리케이션 제공 방법 및 이를 위한 전자 기기
WO2012057509A2 (ko) 소셜 네트워크 기반의 tv 방송 컨텐트 공유 방법 및 tv 방송 컨텐트 공유 서버, 소셜 네트워크 기반의 tv 방송 컨텐트 공유 서비스를 수신하는 방법 및 tv 디바이스
WO2016108660A1 (en) Method and device for controlling home device
EP3198376A1 (en) Image display method performed by device including switchable mirror and the device
WO2014163283A1 (ko) 메시지 서비스 방법, 이를 위한 장치, 시스템 및 프로그램을 기록한 기록 매체
WO2014021567A1 (ko) 메시지 서비스 제공 방법, 이를 위한 장치 및 시스템
WO2016129865A1 (ko) 위치 기반 정보 제공 시스템 및 그 방법
WO2019198846A1 (ko) 가챠 시스템의 확률 정보를 획득하는 방법, 장치 및 컴퓨터 프로그램
WO2015160039A1 (en) Method for operating image display device
WO2020032564A1 (en) Electronic device and method for providing one or more items in response to user speech
WO2020138903A2 (ko) 일정 관리 서비스 시스템 및 방법
WO2015069084A1 (en) Display apparatus, server apparatus and user interface screen providing method thereof
WO2012015196A2 (ko) Sns 상에서 어플리케이션간 이벤트 정보를 송수신하는 방법, 장치, 및 기록매체
WO2019103239A1 (ko) 게임 서비스를 제공하기 위한 장치, 방법 및 컴퓨터 프로그램
WO2020013419A1 (ko) 확률형 아이템 제공 시스템의 제어 방법, 장치 및 컴퓨터 프로그램
WO2012121447A1 (ko) 상세정보가 포함된 이미지 파일의 형성 장치 및 방법과 그것을 이용한 운영 시스템 및 방법

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: 11812726

Country of ref document: EP

Kind code of ref document: A2

NENP Non-entry into the national phase in:

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11812726

Country of ref document: EP

Kind code of ref document: A2