WO2019139192A1 - 메시징 서비스 환경에서의 사용자 상황 감지 및 사용자 상황에 기반한 메시징 서비스와의 인터랙션 - Google Patents

메시징 서비스 환경에서의 사용자 상황 감지 및 사용자 상황에 기반한 메시징 서비스와의 인터랙션 Download PDF

Info

Publication number
WO2019139192A1
WO2019139192A1 PCT/KR2018/000628 KR2018000628W WO2019139192A1 WO 2019139192 A1 WO2019139192 A1 WO 2019139192A1 KR 2018000628 W KR2018000628 W KR 2018000628W WO 2019139192 A1 WO2019139192 A1 WO 2019139192A1
Authority
WO
WIPO (PCT)
Prior art keywords
user
information
situation
computer
mobile device
Prior art date
Application number
PCT/KR2018/000628
Other languages
English (en)
French (fr)
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
Application filed by 라인플러스 주식회사 filed Critical 라인플러스 주식회사
Priority to KR1020207014342A priority Critical patent/KR102363974B1/ko
Priority to PCT/KR2018/000628 priority patent/WO2019139192A1/ko
Priority to JP2020538609A priority patent/JP7119098B2/ja
Priority to KR1020227004807A priority patent/KR102443534B1/ko
Publication of WO2019139192A1 publication Critical patent/WO2019139192A1/ko
Priority to US16/924,906 priority patent/US11356399B2/en
Priority to US17/737,208 priority patent/US20220263783A1/en
Priority to JP2022123865A priority patent/JP7321338B2/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • H04L51/046Interoperability with other network applications or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/42Mailbox-related aspects, e.g. synchronisation of mailboxes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/07User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
    • H04L51/18Commands or executable codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N99/00Subject matter not provided for in other groups of this subclass
    • 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
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/50Business processes related to the communications industry
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/214Monitoring or handling of messages using selective forwarding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/224Monitoring or handling of messages providing notification on incoming messages, e.g. pushed notifications of received messages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0407Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden
    • H04L63/0421Anonymous communication, i.e. the party's identifiers are hidden from the other party or parties, e.g. using an anonymizer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
    • H04M1/72454User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions according to context-related or environment-related conditions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/58Message adaptation for wireless communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/26Devices for calling a subscriber
    • H04M1/27Devices whereby a plurality of signals may be stored simultaneously
    • H04M1/274Devices whereby a plurality of signals may be stored simultaneously with provision for storing more than one subscriber number at a time, e.g. using toothed disc
    • H04M1/2745Devices whereby a plurality of signals may be stored simultaneously with provision for storing more than one subscriber number at a time, e.g. using toothed disc using static electronic memories, e.g. chips
    • H04M1/27453Directories allowing storage of additional subscriber data, e.g. metadata
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/26Devices for calling a subscriber
    • H04M1/27Devices whereby a plurality of signals may be stored simultaneously
    • H04M1/274Devices whereby a plurality of signals may be stored simultaneously with provision for storing more than one subscriber number at a time, e.g. using toothed disc
    • H04M1/2745Devices whereby a plurality of signals may be stored simultaneously with provision for storing more than one subscriber number at a time, e.g. using toothed disc using static electronic memories, e.g. chips
    • H04M1/27467Methods of retrieving data
    • H04M1/27475Methods of retrieving data using interactive graphical means or pictorial representations

Definitions

  • the following description relates to a user interaction in a messaging service environment and a interaction technique with a messaging service based on a user context. More specifically, the current state of a current user is inferred
  • Messaging applications installed and running on users' mobile devices for messaging services provide various functions for users to send and receive messages with other users via mobile devices. For example, if a messaging application of the prior art receives a message when the user is not using the mobile device (for example, the screen of the mobile device is turned off), the messaging application notifies the reception of the message by displaying a message window on the screen .
  • the conventional messaging application simply displays a notification window on the screen according to a preset function, and does not consider the situation of the user at all. For example, when a user can not view a screen of a mobile device, placing such a notification window on the screen merely wastes resources on the mobile device.
  • Korean Patent Registration No. 10-1725566 determines characteristic values based on sensing data, recognizes the situation by mapping the characteristic values to the class of the situation, and starts to perform a specific operation according to the recognized class of situation .
  • the mobile device recognizes the user's situation and can only utilize it to determine and perform the operation of the mobile device itself based on the recognized user's situation.
  • An interaction method capable of inferring a current user situation using current information and a recent record that can be acquired by a mobile device, and variously interacting with a messaging service using the inferred user's situation, a computer device performing the interaction method, And a computer program and its recording medium stored in a computer-readable recording medium for causing the computer to execute the interaction method in combination with the computer.
  • a method of interacting with a mobile device comprising: acquiring information associated with a status of at least one of the mobile device or a user of the mobile device, in accordance with control of an application installed and driven in the mobile device in association with a message service; Determining a status of the user based on the acquired information; Confirming a function for providing to the user through the messaging service based on the determined user's situation; Dynamically determining a configuration of a user interface provided for providing the function according to the determined status of the user; And providing the functionality through a user interface of the dynamically determined configuration.
  • the step of determining the user's situation includes a step of inputting the acquired information into a classification model that is mechanically learned to determine one of the predetermined situations through input information, It can be determined as a situation.
  • the function includes a function for providing a notification of a message received to the user via the messaging service, the user interface including a configuration for not displaying an alert window, A configuration for displaying a message, a configuration for providing a selection interface through a notification window, and a configuration for providing a message content, a selection interface, and a text input interface through a notification window.
  • the step of determining the status of the user may include a step of determining a status of the user by determining whether the user is allowed to access the device, whether the user can operate the device, Level (for example, the degrees of freedom described above).
  • a configuration of a user interface to be provided for each level is preset, and the step of providing the function includes a step of providing the function through a user interface including configurations to be provided by levels below the determined level .
  • Storing and managing information about other members having a personal relationship with each of the plurality of members using the messaging service Continuously collecting context information for each of the plurality of members; Storing and updating the collected situation information in a database in association with a corresponding member; Extracting situation information on the second member from the database when information on a second member of a personal relationship with the first member among the plurality of members is provided to the first member; And providing the extracted situation information to the first member together with information on the second member.
  • the step of extracting from the database may include extracting, from the database, status information for each of the other members when providing a list of other members having a personal relationship with the first member, May provide the first member with a list associated with the information of the other member corresponding to the extracted status information of the other members.
  • the step of providing to the first member includes: calculating a conversation participation score for the second member using the extracted situation information; And providing the calculated conversation participation score to the first member together with information about the second member.
  • the interaction method includes extracting, from the database, status information of each of the members participating in the chat session when the first member provides information on the chat session participated in by the first member; Calculating a conversation participation score for the conversation session based on context information of each of the members participating in the conversation session; And providing the calculated conversation participation score to the first member together with information on the conversation session.
  • the interaction method comprises the steps of: sorting the list of chat sessions in which the first member participated, based on the chat participant score for each chat session in which the first member participated; And providing the sorted list to the first member.
  • the step of calculating the interactive participant score may include calculating a higher score according to the status information of each of the members participating in the chat session and the number of messages transmitted and / or received through the chat session The more the conversation participation possible score can be calculated.
  • the interaction method further comprises, through an application installed and run on the mobile device of the first member in association with the messaging service, allowing the first member to communicate with other members And providing a user interface for setting the status information to each of the other members.
  • the interaction method includes determining whether a third member having the same status information as the status information of the first member among the other members or having the status information preset by the first member ; Recommending the third member to the first member; And creating a chat session with the first member and the third member as participants if the recommended third member is selected.
  • the interaction method may further include selecting members having the same situation information among the plurality of members to create an anonymous chat session between the selected members.
  • the interaction method includes: searching for an anonymous chat session corresponding to context information set by the first member; And providing information on the searched anonymous talk session to the first member.
  • At least one processor configured to execute instructions readable by the computer, wherein, by the at least one processor, in accordance with control of an application installed and driven in association with the message service,
  • the method comprising: acquiring information associated with a situation of at least one of a user of the mobile device, determining a status of the user based on the acquired information, and providing the user with the messaging service based on the determined status of the user And dynamically determining a configuration of a user interface provided for providing the function according to the determined user's state and performing operations for providing the function through the dynamically determined configuration user interface
  • a computer device is provided.
  • At least one processor configured to execute instructions readable by a computer, wherein the at least one processor is configured to store and store information about other members for whom a personal relationship is established for each of the plurality of members utilizing the messaging service, And continuously collects the situation information for each of the plurality of members, stores and updates the collected situation information in a database in association with the corresponding member, and stores a personal relationship with the first member of the plurality of members Extracting the context information for the second member from the database and providing the extracted context information together with the information about the second member to the first member, 1 < / RTI > member.
  • the present situation of the current user is inferred by using the current information and the latest record that can be acquired by the mobile device and the degree of freedom of the user is determined according to whether the device can be accessed or not, And determines the interaction method with the messaging service according to the determined degree of freedom, thereby providing different user interfaces according to the user's situation in providing the same function (for example, providing the notification).
  • the messaging service collects and manages information on the status of users to thereby provide status information of other users who have a personal relationship with the specific user to the specific user.
  • information about the conversation availability score for each chat session set in the messaging service can be provided and / or displayed.
  • the messaging service can provide and / or display information about the conversation concentration of the participants of the chat session.
  • users can provide a function of searching, creating and participating in an anonymous-based conversation session according to the situation of users.
  • FIG. 1 is a diagram illustrating an example of a network environment according to an embodiment of the present invention.
  • FIG. 2 is a block diagram illustrating an example of a computing device in accordance with an embodiment of the present invention.
  • FIG. 3 is a diagram illustrating an example of a process of detecting a user's situation in an embodiment of the present invention.
  • 4 to 8 are views showing examples of providing different user interfaces according to degrees of freedom in the embodiment of the present invention.
  • FIG. 9 is a diagram showing an example of displaying status information of another user in an embodiment of the present invention.
  • FIG. 10 is a diagram illustrating an example of providing conversation participant points in an embodiment of the present invention.
  • FIG. 11 is a flowchart illustrating an example of an interaction method according to an embodiment of the present invention.
  • FIG. 12 is a flowchart illustrating another example of an interaction method according to an embodiment of the present invention.
  • the interaction method according to embodiments of the present invention can be implemented through a computer device such as an electronic device or a server to be described later.
  • a computer program according to an embodiment of the present invention can be installed and driven in the computer device, and the computer device can perform the interaction method according to the embodiments of the present invention under the control of the computer program driven.
  • the above-described computer program may be stored in a computer-readable recording medium in combination with a computer device to cause the computer to execute the interaction method.
  • 1 is a diagram illustrating an example of a network environment according to an embodiment of the present invention. 1 shows an example in which a plurality of electronic devices 110, 120, 130, 140, a plurality of servers 150, 160, and a network 170 are included. 1, the number of electronic devices and the number of servers are not limited to those shown in FIG.
  • the plurality of electronic devices 110, 120, 130, 140 may be a fixed terminal implemented as a computer device or a mobile terminal.
  • Examples of the plurality of electronic devices 110, 120, 130 and 140 include a smart phone, a mobile phone, a navigation device, a computer, a notebook, a digital broadcast terminal, a PDA (Personal Digital Assistants) ), And tablet PCs.
  • FIG. 1 illustrates the shape of a smartphone as an example of the first electronic device 110, but in the embodiments of the present invention, the first electronic device 110 transmits the network 170 using a wireless or wired communication method.
  • any of a variety of physical computer devices capable of communicating with other electronic devices 120, 130, 140 and / or servers 150 any of a variety of physical computer devices capable of communicating with other electronic devices 120, 130, 140 and / or servers 150,
  • the communication method is not limited, and may include a communication method using a communication network (for example, a mobile communication network, a wired Internet, a wireless Internet, a broadcasting network) that the network 170 may include, as well as a short-range wireless communication between the devices.
  • the network 170 may be a personal area network (LAN), a local area network (LAN), a campus area network (CAN), a metropolitan area network (MAN), a wide area network (WAN) , A network such as the Internet, and the like.
  • the network 170 may also include any one or more of a network topology including a bus network, a star network, a ring network, a mesh network, a star-bus network, a tree or a hierarchical network, It is not limited.
  • Each of the servers 150 and 160 may be connected to one or more computer devices (not shown) that communicate with a plurality of electronic devices 110, 120, 130 and 140 via a network 170 and provide commands, codes, files, . ≪ / RTI >
  • the server 150 may be a system that provides a first service to a plurality of electronic devices 110, 120, 130, 140 connected through a network 170, 170, and 140 to the first and second electronic devices 110, 120, 130, and 140, respectively.
  • it may be a social network service as a first service.
  • the server 150 may transmit various services that can be provided as a social network service such as a messaging service, a timeline service, and the like through the application to a plurality of electronic devices 110, 120, 130, Lt; / RTI >
  • the server 160 may provide a service for distributing the installation file for installing the application to the plurality of electronic devices 110, 120, 130, 140 as a second service.
  • FIG. 2 is a block diagram illustrating an example of a computing device in accordance with an embodiment of the present invention.
  • Each of the plurality of electronic devices 110, 120, 130, and 140 or servers 150 and 160 described above may be implemented by the computer device 200 shown in FIG.
  • a computer program according to an embodiment may be installed and operated in the computer device 200, and the computer device 200 may perform the interaction method according to the embodiments of the present invention, Can be performed.
  • the computer device 200 may include a memory 210, a processor 220, a communication interface 230, and an input / output interface 240, as shown in FIG.
  • the memory 210 may be a computer-readable recording medium and may include a permanent mass storage device such as a random access memory (RAM), a read only memory (ROM), and a disk drive.
  • the non-decaying mass storage device such as a ROM and a disk drive, may be included in the computer device 200 as a separate persistent storage device separate from the memory 210.
  • the memory 210 may store an operating system and at least one program code. These software components may be loaded into the memory 210 from a computer readable recording medium separate from the memory 210.
  • Such a computer-readable recording medium may include a computer-readable recording medium such as a floppy drive, a disk, a tape, a DVD / CD-ROM drive, and a memory card.
  • the software components may be loaded into the memory 210 via the communication interface 230 rather than from a computer readable recording medium.
  • the software components may be loaded into the memory 210 of the computer device 200 based on a computer program installed by files received via the network 170.
  • the processor 220 may be configured to process instructions of a computer program by performing basic arithmetic, logic, and input / output operations.
  • the instructions may be provided to the processor 220 by the memory 210 or the communication interface 230.
  • the processor 220 may be configured to execute a command received in accordance with a program code stored in a recording device, such as the memory 210.
  • the communication interface 230 may provide functionality for the computer device 200 to communicate with another device (e. G., The storage devices described above) via the network 170. For example, a request, command, data, file, or the like, generated by the processor 220 of the computer device 200 according to the program code stored in the recording device such as the memory 210, 170 to other devices. Conversely, signals, commands, data, files, etc., from other devices may be received by the computer device 200 via the communication interface 230 of the computer device 200 via the network 170. Data or the like received via the communication interface 230 may be transferred to the processor 220 or the memory 210 and the file or the like may be transferred to a storage medium Permanent storage).
  • the input / output interface 240 may be a means for interfacing with the input / output device 250.
  • the input device may include a device such as a microphone, a keyboard or a mouse, and an output device may include a device such as a display, a speaker, and the like.
  • the input / output interface 240 may be a means for interfacing with a device having integrated functions for input and output, such as a touch screen.
  • the input / output device 250 may be composed of the computer device 200 and one device.
  • the computer device 200 may include fewer or more components than the components of FIG. However, there is no need to clearly illustrate most prior art components.
  • the computer device 200 may be implemented to include at least some of the input / output devices 250 described above, or may further include other components such as a transceiver, database, and the like.
  • FIG. 3 is a diagram illustrating an example of a process of detecting a user's situation in an embodiment of the present invention.
  • FIG. 3 shows the first to eighth processes 310 to 380.
  • FIG. 3 shows the first to eighth processes 310 to 380.
  • the first process 310 may be an example of a process for the user to detect a hand using a mobile device, and the mobile device may use the acceleration sensor and the gyro sensor to detect information about a hand using the mobile device by the user .
  • information about the status of one of "left hand”, “right hand”, “both hands” and "hang” may be provided.
  • 'Left hand' means that the user holds the mobile device with his left hand
  • 'Right hand' means that the user holds the mobile device with his right hand
  • 'Both hands' means that the user holds the mobile device with both hands, Quot; is in a state in which the mobile device is not being held.
  • vibration or vibration in either direction is prominent with respect to the center axis of the device through the acceleration sensor and / or the gyro sensor, and / (ie, orientation or width or height) and compare it with a pre-stored data set related to one-handed device usage patterns to determine whether the device is being used with either hand or both hands have.
  • the second process 320 may be an example of a process for detecting whether or not the one-hand use mode is used.
  • the one-handed mode is a mode for providing a function for the user to control the mobile device with a single hand through a specific mobile device or a specific application.
  • the mobile device is a mode in which the one-handed mode is on or off Off " state). At this time, if the mobile device does not provide the one-hand use mode, it may be included in the off state.
  • the third process 330 may be an example of a process for detecting the moving state of the user.
  • the mobile device may provide information on the current movement state of the user through the third process 330.
  • Examples of the moving state may include any one of 'stop', 'walking', 'run', 'bus', 'subway', 'passenger car', and 'bicycle'.
  • the third process 330 may further provide information on the moving speed of the user.
  • the mobile device may be configured to change the geographical location (e.g., latitude / longitude coordinates) of the mobile device provided through the information of the base station or WiFi access points (APs) of the GPS and the surrounding wireless telephone network,
  • the information about the moving speed of the mobile device can be obtained through the measurement values of the acceleration sensor included in the mobile terminal.
  • the mobile device can obtain information on the moving state of the user based on the obtained moving speed and / or the vibration or vibration pattern of the mobile device measured using the acceleration sensor and / or the gyro sensor included in the mobile device .
  • Such a technique for acquiring information on the moving speed or the moving state can be easily understood by those skilled in the art through known techniques such as 'Google Activity Recognition API'.
  • the fourth step 340 may be an example of a process for detecting the status information of the mobile device.
  • the mobile device may include information about an On or Off state of the LCD, information about whether the application is currently being used by the user (information about which application is being used by the user if it is being used, Information about whether it is running on the ground or in the background) and information on whether or not the screen lock is released.
  • the fifth step 350 may be an example of a process for detecting the location information of the mobile device.
  • the location information may not include a geographical location, but may include location information such as a pocket of a garment the user is wearing, a bag in which the user is carrying, or an external exposure.
  • a mobile device can detect and provide location information of a mobile device by utilizing an acceleration sensor, an illumination sensor, a microphone, and a near field sensor.
  • the sixth step 360 may be an example of a process for detecting the geographical location information of the mobile device.
  • the mobile device can acquire and provide geographical location information such as current latitude / longitude location information of the mobile device by using various information such as GPS, WiFi positioning, and base station.
  • the sixth step 360 may provide information on whether to use geographical location information. For example, if the user is using a navigation app, it can be determined that geographic location information is being used.
  • the specific techniques for the first to third processes (310) to (360) described above can be easily understood by those skilled in the art through already well known techniques.
  • the technology for detecting the movement state of the user through the third process 330 can be easily understood by the ordinary artisan through the 'Google Activity Recognition API'.
  • the embodiments of the present invention are not concerned with how to acquire such individual information but how to utilize the acquired information to automatically detect and utilize the user's situation. It will be appreciated by those skilled in the art that, according to the embodiment, only a part of the first process 310 to the sixth process 360 is performed or a new process for acquiring another information may be added There will be.
  • the seventh process 370 may be an example of a process of determining the user's situation through the information provided through the first process 310 through the sixth process 360.
  • the seventh process 370 may be performed through a mobile device, or may be a server (e.g., a server) that receives information provided through the first process 310 through the sixth process 360 through a mobile device, Server 150).
  • the decision of the user situation is classified by using machine learning.
  • a classification model using probabilities or a non-probabilistic classification model can be utilized.
  • Naive Bayes Classification can be used in classification models that use probabilities.
  • the Naive Bayes classification is a kind of probability classifier applying Bayesian theorem that assumes independence between properties.
  • Equation (1) it is difficult to apply the Bayesian model directly to the probability table when the number of the characteristics N is large or when one characteristic can have a large number of values. Therefore, the above equation can be rearranged as shown in Equation 2 using Bayesian theorem and conditional probability.
  • 'posterior' means posterior probability
  • 'prior' means 'prior probability'
  • 'likelihood' means likelihood
  • 'evidence' observation means respectively.
  • the value of the denominator is given so as to be a constant in the case of the values F i of the properties, without depending on the given C value.
  • the molecular part is a joint probability model as shown in the following equation (4).
  • Equation (4) can be rewritten as Equation (5) by using a chain rule in which the conditional probability is repeatedly applied.
  • Equation (7) Equation (7).
  • Equation (8) The conditional distribution of the class variable C under the assumption of independence can be expressed by Equation (8) below.
  • Z p (x) is a constant if the characteristic values are given, that is, x 1 , ... , < / RTI > xn only.
  • the Naive Bay classification is a combination of these probabilistic models and decision rules, and one common rule is to choose the most likely hypothesis. This is to select the maximum value of the post or MAP decision rule. That is Naive Bayes classification in class k, i.e., find the class k having the maximum probability for the C k by the following equation (9).
  • the computer device 200 may assume that the situation according to the information provided through the first process 310 to the sixth process 360 is an independent event, You can collect the frequency of events. In addition, the computer device 200 can calculate the occurrence probability based on the number of occurrences of the event, and can calculate the probability of the individual situation with respect to the desired result value, thereby generating the event model. In the future, you can enter a context event for the test and estimate the result through the generated event model.
  • a support vector machine can be utilized as a non-probabilistic classification model.
  • the support vector machine is one of the fields of machine learning. It is a learning model for pattern recognition and data analysis. It is mainly used for classification and regression analysis. Given a set of data belonging to either category, the SVM algorithm builds a non-probabilistic binary linear classification model that determines, based on a given set of data, which categories the new data belongs to. The generated classification model is represented as a boundary in the space where data is mapped. The SVM algorithm is an algorithm for finding the boundary having the largest width. SVM can be used in nonlinear classification as well as linear classification. In order to perform nonlinear classification, it is necessary to map the given data to the high dimensional feature space. In order to do this efficiently, we use kernel tricks.
  • the computer device 200 determines which category (data vector) belongs to the category of data provided through the first process 310 through the sixth process 360 By successively classifying, the situation (category) of the user corresponding to the set of data can be determined.
  • This seventh step 370 may be performed by the computer device 200 including the event model.
  • the computer device 200 may be a user's mobile device or a server 150 that receives information from the mobile device over the network 170.
  • the computer device 200 may combine the individual situations provided through the first to the sixth processes (360 to 360) to provide information on the user's overall situation and information such as the degree of freedom to be described later can do.
  • the computer device 200 classifies the user's accessibility to the device, whether the device is operable, whether text input is possible, etc. through the event model, and provides degrees of freedom . Table 1 below shows an example of determining the degree of freedom in four stages according to the user situation.
  • step 530 it is determined whether the location information of the mobile device is 'bag'.
  • the event model can determine whether or not the device can be accessed, whether the device can be operated, and whether the text input is possible for the first example situation described above. Based on this determination and Table 1, Can be determined as " 1 ".
  • the information provided by the mobile device may include information such as 'bicycle', 'external exposure', 'middle speed moving', 'LCD on', 'using navigation application' .
  • the event model can determine the degree of freedom of the second example situation to be '2' according to the determination that the user can access the device, the device operation is difficult, and the text input is also difficult.
  • the information provided by the mobile device includes information such as' walking ',' external exposure ',' low speed moving ',' LCD off ',' application recording history within 10 minutes', ' .
  • the event model can determine that the user can access the device and manipulate the device, but the text input is difficult, and according to this determination, the degree of freedom of the third example situation can be determined as '3'.
  • a fourth example situation one may consider a situation where a user is sitting in an office and using a mobile device.
  • the information provided by the mobile device may include information such as 'stop', 'LCD on', 'both hands', 'application is in use', and 'no position information is used'.
  • the event model can determine the degree of freedom of the fourth example situation as '4' by determining that the user can access the device, operate the device, and input text.
  • Table 1 shows an example in which the degree of freedom is classified into four levels according to whether the device can be accessed, whether the device can be operated, and whether text input is possible.
  • conditions and degrees of freedom can be variously set according to the embodiment Will be readily apparent to those of ordinary skill in the art.
  • 4 to 8 are views showing examples of providing different user interfaces according to degrees of freedom in the embodiment of the present invention.
  • FIG. 4 illustrates examples in which, when a mobile device 410 receives a message through a messaging service, different user interfaces are provided according to the current degrees of freedom of the user.
  • FIG. 5 shows an example of a screen 510 of the electronic device 1 (110) which does not display a notification window even though a message has been received.
  • the mobile device can display a notification window containing the contents of the message.
  • 6 shows an example in which a notification window 620 is displayed on the screen 610 of the electronic device 110 by receiving a message. 6, only the information 630 of the sender of the message and the message content 640 are displayed in the notification window 620 without providing a separate user interface through the notification window 620 For example.
  • FIG. 7 shows an example in which a notification window 720 is displayed on the screen 710 of the electronic device 1 (110) as a message is received.
  • the notification window 720 of FIG. 7 not only displays the information 630 of the sender of the message and the message content 640, And a user interface 760 for closing the user interface 750 and the notification window 720.
  • the notification window 720 is further configured with user interfaces 770 and 780 for transmitting predetermined customized forms ('now busy', 'next call').
  • the electronic device 1 110 includes an auto- To the recipient corresponding to the information 630 on the sender.
  • it is determined that the current state of the user does not allow the selection of the boilerplate such as when the user is operating or the portable terminal is in the bag through information from the base station or the illumination sensor of the GPS and the surrounding wireless telephone network, It is also possible to automatically transmit the corresponding boilerplate without receiving the user's selection.
  • the user can access the device, operate the device, and input text.
  • the mobile device can further provide a user interface for directly inputting an answer through the notification window.
  • FIG. 8 shows an example in which a notification window 820 is displayed on the screen 810 of the electronic device 1 (110) as a message is received.
  • the message 8 displays the information 830 of the sender of the message and the message content 840 Not only provide simple user interfaces 850, 860, 870, 880, but also provide a user with a character input interface that can input replies to the message, as shown in dotted box 890. [ For example, when the user selects an area indicated by the dotted box 890, the user may be provided with a function for inputting characters.
  • 9 is a diagram showing an example of displaying status information of another user in an embodiment of the present invention.
  • the server 150 providing the messaging service can also specifically obtain the situation of the users using the messaging service.
  • 9 shows an example of providing a list of other users whose personal relationship with the user is set through the screen 910 of the electronic device 1 (110). At this time, information on the status of another user can be displayed for at least one other user.
  • FIG. 9 shows that another user BBB is 'in conference' as in the first dashed box 920 and another user CCC is 'cycling' as in the second dashed box 930, the third dashed box 940 ), Another user EEE is informing that ' messengerger is in use', and provides information on the situation of other users.
  • the server 150 receives information collected through the first process 310 through the sixth process 360 described above with reference to FIG. 3 from the mobile devices of the users using the messaging service through the network 170 , And the seventh process (370) is performed to classify the user's situation.
  • the server 150 may receive and use the information on the status of the classified user have.
  • the server 150 may provide status information of at least one other user in providing a list of other users who have a personal relationship with the user through the messaging service, and the mobile device may be installed and operated in the mobile device
  • the status information of at least one other user can be displayed on the screen together with the information of the other user according to the control of the messenger application. At this time, the displayed status information does not need to include all status information collected for other users.
  • the server 150 may selectively provide representative status information among the status information collected for other users.
  • the mobile device can provide a user interface through which a user can set another user to display the status information through the messenger application.
  • the embodiment of FIG. 9 may refer to a case where at least the other users BBB, CCC, and EEE are set to provide their own status information to the user of the electronic device 1 (110).
  • the display of the situation information can allow the users to communicate with the other users who have established the personal relationship through the situation information even though the users do not conduct the conversation through the messaging service.
  • the server 150 may display a conversability score of each chat room through a chat room (chat session) list.
  • the server 150 may provide a degree of probability that a user is likely to participate in a conversation in the conversation session, as a conversation participation possibility score, by digitizing, through the context information of each participant of the specific conversation session.
  • 10 is a diagram illustrating an example of providing conversation participant points in an embodiment of the present invention.
  • 10 shows an example of displaying a list of chat sessions (chat rooms) in which a user is a participant through a screen 1010 of the electronic device 1 (110).
  • the dotted box 1020 indicates the conversation participation score of each of the conversation sessions.
  • the example of FIG. 10 shows an example in which the number of conversation participation possibilities is determined to be a number between 0 and 100, and the higher the conversation participation possibility score, the higher the probability that the user can participate in the conversation in the chatting room .
  • the conversation participation score may be set low because the user can not enter the chat room and receive a response even if the user enters the chat room.
  • the conversation participant score may be displayed by color (for example, red, yellow, green) or a level (for example, three levels of high, mid, low).
  • This interactive participant score can be determined based on the freedom of each participant participating in the conversation session and the record in which each participant sends and receives messages in the chat room.
  • the server 150 can set a high possibility of conversation participation as the degree of freedom of the participant participating in the conversation session is high and the number of times of message transmission and / or reception within the recently preset time is large.
  • the server 150 may sort and provide the chat rooms included in the chat room (chat session) list according to the chat participation possibility score. In other words, a list can be provided to the user displaying the chat rooms in the order of the chat rooms where as many people as possible can participate in the chat now.
  • the server 150 may provide only the chat rooms having the conversation participation possibility score equal to or greater than a preset value among the chat rooms sorted according to the chat participation possibility score, or may provide the chat rooms among the chat rooms Only a predetermined number of chat rooms may be included in the list in the order of the highest possible score.
  • such conversation participation score may be set for each user.
  • the user instead of displaying the situation information of other users having the personal relationship, the user may be able to calculate and display the conversation participation score for each user.
  • the user's conversational participation score can be determined based on the degree of freedom of the user and the record in which the user sends and receives the message.
  • the server 150 may set a high possibility of conversation participation as the degree of freedom of the user is high and the number of times that the user has sent and / or received the message within the recently preset time. More specifically, for the participant B in the conversation session A, the higher the number of messages sent by the user B compared to the total number of messages transmitted during the predetermined time in the conversation session A, have.
  • server 150 may provide such user-specific conversation participation score as the conversation concentration of each of the participants in the chat room. For example, assuming that user A, user B, and user C participate in chat room A, server 150 can display the conversation concentration of user A, user B, and user C in the chat room in association with the user have. Conversely, it may provide context information (eg, jumping, in the middle of a meeting, bus, bicycle) of the participants in a chat room.
  • context information eg, jumping, in the middle of a meeting, bus, bicycle
  • the server 150 notifies each of the individual users via the messenger application whether the status information is displayed or not, and the conversation concentration (conversation participation possible score) is displayed for each of the friends (other users having the personal relationship in the messaging service) Whether or not the user can set a user interface.
  • the server 150 may provide a function for helping the user to create a chat room based on the context information to the users through the messenger application. For example, the server 150 may recommend a participant of a chat session to a user through a messenger application based on the status of the users when the chat session is created. For example, the server 150 may recommend a friend to the user in the same situation as the user or in a situation preset by the user. As another example, the server 150 may recommend a friend who has high conversation concentration to the user. At this time, the server 150 can create and provide a new chat room of the friend selected by the user.
  • the server 150 may generate anonymous based instant open chat rooms based on context information. For example, the server 150 may create an anonymous-based chat room with participants in the same situation as a participant in a specific area, and recommend that the users participate in the chat room created. In addition, when the user sets a region and / or a situation, the server 150 may search a chat room that matches the set region and / or the situation and provide the searched chat room list. In this anonymous-based chatting room, the user can set his / her status information or whether or not the conversation concentration score (conversation participation score) is displayed.
  • the conversation concentration score conversation participation score
  • This capability can provide an opportunity to exchange information between anonymous users in certain situations, or to easily converse among users gathered in association with a specific event.
  • people gathered to experience games for each booth at a game exhibition can receive information about the length of each row of booths, information related to the identity of a vehicle on a specific road, the situation of a playground in an amusement park, You can exchange opinions and related information among people through anonymous based chat rooms.
  • the server 150 may induce anonymous users in certain situations to participate in anonymous-based chat rooms to exchange information.
  • the interaction method according to the present embodiment can be performed by the computer apparatus 200 described above.
  • the computer device 200 according to the present embodiment may correspond to the mobile device or the electronic device 110 described above and may receive the messaging service through the network 170 from the server 150 providing the messaging service .
  • the processor 220 of the computer device 200 may be implemented to execute control instructions in accordance with the code of the operating system or the code of at least one program that the memory 210 includes.
  • the processor 220 may cause the computer device 200 to perform steps 1110 through 1150, including the interaction method of Figure 11, in accordance with the control command provided by the code stored in the computer device 200 Can be controlled.
  • the computer device 200 may obtain information associated with the status of at least one of the mobile device or the user of the mobile device, in accordance with control of the application installed and driven in association with the message service.
  • the information related to the user's situation has been described in detail through the first to third processes (310) to (360) of FIG.
  • the computer device 200 may determine the user's situation based on the acquired information. For example, the computer device 200 may input the information acquired in the machine-learned classification model to determine one of the predetermined situations through the information input in the step 1120, As shown in FIG.
  • the machine-learned classification model has been described in detail using the Naive Bayes classification as a classification model using probabilities and the support vector machine (SVM) as a non-probabilistic classification model.
  • the computer device 200 can determine the capabilities for providing to the user via the messaging service, based on the determined user's situation.
  • the function may include a function for providing a notification of a message received to a user through a messaging service.
  • the user interface may include a configuration for not displaying a notification window, a configuration for displaying the contents of a message through a notification window A configuration for providing a content of a message and a selection interface via a notification window, and a configuration for providing a message content, a selection interface, and a text input interface through a notification window.
  • the computer device 200 determines whether one of the plurality of levels is selected in accordance with a combination of whether the user can access the device, whether the user can operate the device, Can be determined.
  • the level may be determined through information received from the computer device 200 by the server 150 that is connected to the computer device 200 via the network 170 and provides the messaging service to the computer device 200 according to an embodiment .
  • the computer device 200 may dynamically determine the configuration of the user interface provided for the provision of the function, according to the determined user's situation.
  • the configuration of the user interface for providing the user interface can be determined dynamically according to the user's situation.
  • the computer device 200 may provide functionality through a dynamically determined configuration user interface. Accordingly, the user is provided with a user interface including different configurations according to his / her situation, and can interact with the messaging service through the user interface according to the situation.
  • FIG. 12 is a flowchart illustrating another example of an interaction method according to an embodiment of the present invention.
  • the interaction method according to the present embodiment can be performed by the computer apparatus 200 described above.
  • the computer device 200 according to the present embodiment may correspond to the server 150 providing the messaging service.
  • the processor 220 of the computer device 200 may be implemented to execute control instructions in accordance with the code of the operating system or the code of at least one program that the memory 210 includes.
  • the processor 220 is configured to cause the computer device 200 to perform steps 1210 through 1250 of the interaction method of FIG. 12 in accordance with a control command provided by a code stored in the computer device 200 Can be controlled.
  • the computer device 200 may store and manage information about other members for whom a personal relationship is established for each of the plurality of members using the messaging service.
  • the computer device 200 may be the subject of providing the messaging service and therefore may manage information about the personal relationship between the members in the messaging service.
  • the computer device 200 may continuously collect status information for each of the plurality of members. For example, in each of the mobile devices of the members of the messaging service, the information provided through the first through third processes 310 through 360 of FIG. 3 may be collected by the computer device 200 have. In this case, the computer device 200 may perform the seventh process 370 to determine the status information and / or the level of the members (for example, the degree of freedom described in Table 1) from the collected information. The first to third processes 310 to 370 may be performed in each of the mobile devices of the members according to the embodiment. In this case, the computer device 200 may collect status information and / or levels from each of the mobile devices.
  • the computer device 200 may store and update the collected status information in a database in association with the corresponding member.
  • the computer device 200 may periodically collect status information from mobile devices and update the database.
  • step 1240 if the computer device 200 provides the first member with information about a second member for whom a personal relationship with a first member of the plurality of members is established, the context information for the second member is extracted from the database can do. If the first device 200 provides a list of other members who have established a personal relationship with the first member, the computer device 200 may extract the context information for each of the other members from the database.
  • the computer device 200 may provide the extracted status information to the first member along with information about the second member. As described above, if providing the list of other members whose personal relationship with the first member is established, the computer device 200 displays the list associated with the information of the other member corresponding to the extracted status information of the other members 1 member.
  • the computer device 200 may calculate and provide the conversation participation possibility score together with the situation information or instead of the situation information.
  • the computer device 200 calculates the possibility of conversation participation for the second member using the context information extracted from the database, and transmits the calculated conversation participation possibility score to the first member .
  • the conversational participation score can be calculated to be higher as the value of the level for the situation of the second member is higher, and as the number of messages sent and received by the second member through the conversation session is higher.
  • the computing device 200 may provide a conversation participant score for the chat room. For example, when the first member provides information on the chat session in which the first member participates, the computer device 200 extracts the situation information of each of the members participating in the chat session from the database, Based on the information, a conversation participation score for the conversation session can be calculated. In this case, the computer device 200 may provide the calculated conversation participant score to the first member along with information about the chat session. The higher the level according to the situation information of each member participating in the conversation session, and the higher the number of messages transmitted and / or received through the conversation session, the higher the conversational participant score can be calculated. In addition, the computer device 200 may also sort the list of chat sessions in which the first member participated based on the conversation eligible score for each of the chat sessions in which the first member participated, and provide the sorted list to the first member have.
  • the computer device 200 may be configured to send contextual information (e. G., Textual information) to other members with whom the first member has established a relationship with the first member through an application installed and run on the mobile device of the first member,
  • the user interface can be provided for each of the other members.
  • each of the members of the messaging service can set up for each of the friends whether or not to expose their situation information to their friends.
  • a user interface for setting not only the situation information but also the exposure possibility of the conversation participation possibility score for each of the friends can be provided.
  • the computer device 200 may determine the third member that has the same status information as the status information of the first member among other members, or that has the status information preset by the first member, 3 member to the first member, and when the recommended third member is selected, a conversation session with the first member and the third member as participants can be created.
  • the computer device 200 can recommend a friend having the same situation to each member, a friend having a situation set by the members, and a function of making a chat room with a friend can do.
  • the computer device 200 may select members having the same status information from among a plurality of members to create an anonymous chat session between the selected members.
  • the computer device 200 may search for an anonymous chat session corresponding to the situation information set by the first member, and may provide information about the anonymous chat session searched for to the first member.
  • the geographical location may be further utilized for members' selection or search. For example, anonymous chat rooms between people with the same situation in the same area can be created, searched, and provided.
  • the embodiments of the present invention it is possible to deduce the current user's situation by using the current information and the recent record that can be acquired by the mobile device, to determine whether the device can be accessed or not, And determines the degree of freedom of the user according to whether or not text input is possible, and determines the degree of freedom of the user according to the degree of freedom determined, thereby determining the manner of interaction with the messaging service, A different user interface can be provided according to the user interface.
  • state information of other users having a personal relationship with the specific user can be provided to the specific user.
  • information on the conversation participation possibility score for each chat session set in the messaging service can be provided and / or displayed.
  • information on conversation concentration of the participants of the conversation session can be provided and / or displayed in the messaging service.
  • users can provide a function of searching, creating and participating in an anonymous-based conversation session according to the situation of users.
  • the system or apparatus described above may be implemented as a hardware component, a software component or a combination of hardware components and software components.
  • the apparatus and components described in the embodiments may be implemented within a computer system, such as, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA) , A programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions.
  • the processing device may execute an operating system (OS) and one or more software applications running on the operating system.
  • the processing device may also access, store, manipulate, process, and generate data in response to execution of the software.
  • OS operating system
  • the processing device may also access, store, manipulate, process, and generate data in response to execution of the software.
  • the processing apparatus may be described as being used singly, but those skilled in the art will recognize that the processing apparatus may have a plurality of processing elements and / As shown in FIG.
  • the processing unit may comprise a plurality of processors or one processor and one controller.
  • Other processing configurations are also possible, such as a parallel processor.
  • the software may include a computer program, code, instructions, or a combination of one or more of the foregoing, and may be configured to configure the processing device to operate as desired or to process it collectively or collectively Device can be commanded.
  • the software and / or data may be in the form of any type of machine, component, physical device, virtual equipment, computer storage media, or device As shown in FIG.
  • the software may be distributed over a networked computer system and stored or executed in a distributed manner.
  • the software and data may be stored on one or more computer readable recording media.
  • the method according to an embodiment may be implemented in the form of a program command that can be executed through various computer means and recorded in a computer-readable medium.
  • the computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination.
  • the program instructions to be recorded on the medium may be those specially designed and configured for the embodiments, or may be available to those skilled in the art of computer software.
  • Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like.
  • Such a recording medium may be a variety of recording means or storage means in the form of a single or a plurality of hardware combined and is not limited to a medium directly connected to any computer system but may be dispersed on a network.
  • Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Environmental & Geological Engineering (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Human Computer Interaction (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Tourism & Hospitality (AREA)
  • Computer Hardware Design (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • General Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)
  • User Interface Of Digital Computer (AREA)
  • Operations Research (AREA)
  • Telephonic Communication Services (AREA)

Abstract

메시징 서비스 환경에서의 사용자 상황 감지 및 사용자 상황에 기반한 메시징 서비스와의 인터랙션 기술을 개시한다. 본 발명의 실시예들에 따른 모바일 기기의 인터랙션 방법은, 메시지 서비스와 연관하여 상기 모바일 기기에 설치 및 구동된 어플리케이션의 제어에 따라, 상기 모바일 기기 또는 상기 모바일 단말의 사용자 중 적어도 하나의 상황과 연관된 정보를 취득하는 단계, 상기 취득된 정보에 기반하여 상기 사용자의 상황을 결정하는 단계, 상기 결정된 사용자의 상황에 기초하여, 상기 메시징 서비스를 통해 상기 사용자에게 제공하기 위한 기능을 확인하는 단계, 상기 기능의 제공을 위해 제공되는 사용자 인터페이스의 구성을 상기 결정된 사용자의 상황에 따라 동적으로 결정하는 단계 및 상기 동적으로 결정된 구성의 사용자 인터페이스를 통해 상기 기능을 제공하는 단계를 포함할 수 있다.

Description

메시징 서비스 환경에서의 사용자 상황 감지 및 사용자 상황에 기반한 메시징 서비스와의 인터랙션
아래의 설명은 메시징 서비스 환경에서의 사용자 상황 감지 및 사용자 상황에 기반한 메시징 서비스와의 인터랙션 기술에 관한 것으로, 보다 자세하게는 모바일 기기로 취득 가능한 현재 정보와 최근 기록을 사용하여 현재 사용자의 상황을 추론하고, 추론된 사용자의 상황을 이용하여 메시징 서비스와 다양하게 인터랙션할 수 있는 인터랙션 방법, 상기 인터랙션 방법을 수행하는 컴퓨터 장치, 그리고 컴퓨터와 결합되어 상기 인터랙션 방법을 컴퓨터에 실행시키기 위해 컴퓨터 판독 가능한 기록매체에 저장된 컴퓨터 프로그램과 그 기록매체에 관한 것이다.
메시징 서비스를 위해 사용자들의 모바일 기기에 설치 및 구동되는 메시징 어플리케이션들은 사용자들이 모바일 기기를 통해 다른 사용자들과 메시지들을 송수신하기 위한 다양한 기능들을 제공한다. 예를 들어, 종래기술의 메시징 어플리케이션은 사용자가 모바일 기기를 사용하지 않고 있는 경우(일례로, 모바일 기기의 화면이 꺼져 있는 경우)에 메시지를 수신하게 되면, 알림창을 화면에 띄워서 메시지의 수신을 알린다. 그러나, 이러한 종래기술의 메시징 어플리케이션은 단순히 미리 설정된 기능에 따라 알림창을 화면에 띄울 뿐, 사용자의 상황을 전혀 고려하지 않는다. 예를 들어, 사용자가 모바일 기기의 화면을 볼 수 없는 상황에서 이러한 알림창을 화면에 띄우는 것은 아무런 의미 없이 모바일 기기의 자원을 낭비할 뿐이다.
또한, 모바일 기기가 사용자의 모바일 기기 혹은 사용자의 상황을 인지하고, 인식된 상황에 기반하여 모바일 기기를 다양하게 제어하기 위한 종래기술들이 존재한다. 예를 들어, 한국등록특허 제10-1725566호)는 센싱 데이터에 기초하여 특징 값을 결정하고, 특징 값을 상황 클래스로 맵핑하여 상황을 인식하며, 인식된 상황 클래스에 따라 특정한 동작을 수행함을 개시하고 있다. 그러나, 이러한 종래기술들에서는 모바일 기기가 사용자의 상황을 인식하고, 인식된 사용자의 상황에 기반하여 모바일 기기 자체적인 동작을 결정 및 수행하는데 활용할 수 있을 뿐이다.
모바일 기기로 취득 가능한 현재 정보와 최근 기록을 사용하여 현재 사용자의 상황을 추론하고, 추론된 사용자의 상황을 이용하여 메시징 서비스와 다양하게 인터랙션할 수 있는 인터랙션 방법, 상기 인터랙션 방법을 수행하는 컴퓨터 장치, 그리고 컴퓨터와 결합되어 상기 인터랙션 방법을 컴퓨터에 실행시키기 위해 컴퓨터 판독 가능한 기록매체에 저장된 컴퓨터 프로그램과 그 기록매체를 제공한다.
모바일 기기의 인터랙션 방법에 있어서, 메시지 서비스와 연관하여 상기 모바일 기기에 설치 및 구동된 어플리케이션의 제어에 따라, 상기 모바일 기기 또는 상기 모바일 기기의 사용자 중 적어도 하나의 상황과 연관된 정보를 취득하는 단계; 상기 취득된 정보에 기반하여 상기 사용자의 상황을 결정하는 단계; 상기 결정된 사용자의 상황에 기초하여, 상기 메시징 서비스를 통해 상기 사용자에게 제공하기 위한 기능을 확인하는 단계; 상기 기능의 제공을 위해 제공되는 사용자 인터페이스의 구성을 상기 결정된 사용자의 상황에 따라 동적으로 결정하는 단계; 및 상기 동적으로 결정된 구성의 사용자 인터페이스를 통해 상기 기능을 제공하는 단계를 포함하는 인터랙션 방법을 제공한다.
일측에 따르면, 상기 사용자의 상황을 결정하는 단계는, 입력되는 정보를 통해 기 설정된 상황들 중 하나의 상황을 결정하도록 기계학습된 분류 모델에 상기 취득된 정보를 입력하여 결정되는 상황을 상기 사용자의 상황으로서 결정할 수 있다.
다른 측면에 따르면, 상기 기능은 상기 메시징 서비스를 통해 상기 사용자에게 수신된 메시지에 대한 알림을 제공하기 위한 기능을 포함하고, 상기 사용자 인터페이스는, 알림창을 표시하지 않는 구성, 알림창을 통해 메시지의 내용을 표시하는 구성, 알림창을 통해 메시지의 내용 및 선택 인터페이스를 제공하는 구성 및 알림창을 통해 메시지의 내용, 선택 인터페이스 및 텍스트 입력 인터페이스를 제공하는 구성을 포함할 수 있다.
또 다른 측면에 따르면, 상기 사용자의 상황을 결정하는 단계는, 상기 사용자의 기기 접근의 가능 여부, 상기 사용자의 기기 조작의 가능 여부 및 상기 사용자의 텍스트 입력의 가능 여부 각각에 대한 조합에 따라 복수의 레벨(일례로, 앞서 설명한 자유도) 중 하나의 레벨을 결정할 수 있다.
또 다른 측면에 따르면, 상기 레벨별로 제공될 사용자 인터페이스의 구성이 기설정되고, 상기 기능을 제공하는 단계는, 상기 결정된 레벨 이하의 레벨들에 의해 제공될 구성들이 포함된 사용자 인터페이스를 통해 상기 기능을 제공할 수 있다.
메시징 서비스를 이용하는 복수의 회원들 각각에 대해 인적 관계가 설정된 다른 회원들에 대한 정보를 저장 및 관리하는 단계; 상기 복수의 회원들 각각에 대한 상황 정보를 지속적으로 수집하는 단계; 상기 수집된 상황 정보를 대응하는 회원과 연계하여 데이터베이스에 저장 및 갱신하는 단계; 상기 복수의 회원들 중 제1 회원과 인적 관계가 설정된 제2 회원에 대한 정보를 상기 제1 회원에게 제공하는 경우, 상기 제2 회원에 대한 상황 정보를 상기 데이터베이스에서 추출하는 단계; 및 상기 추출된 상황 정보를 상기 제2 회원에 대한 정보와 함께 상기 제1 회원에게 제공하는 단계를 포함하는 인터랙션 방법을 제공한다.
일측에 따르면, 상기 데이터베이스에서 추출하는 단계는, 상기 제1 회원과 인적 관계가 설정된 다른 회원들의 리스트를 제공하는 경우, 상기 다른 회원들 각각에 대한 상황 정보를 상기 데이터베이스에서 추출하고, 상기 제1 회원에게 제공하는 단계는, 상기 추출된 다른 회원들 각각에 대한 상황 정보가 대응하는 다른 회원의 정보와 연계된 리스트를 상기 제1 회원에게 제공할 수 있다.
다른 측면에 따르면, 상기 제1 회원에게 제공하는 단계는, 상기 추출된 상황 정보를 이용하여 상기 제2 회원에 대한 대화 참여 가능 점수를 계산하는 단계; 및 상기 계산된 대화 참여 가능 점수를 상기 제2 회원에 대한 정보와 함께 상기 제1 회원에게 제공하는 단계를 포함할 수 있다.
또 다른 측면에 따르면, 상기 인터랙션 방법은 상기 제1 회원이 참여한 대화 세션에 대한 정보를 제공하는 경우, 상기 대화 세션에 참여한 회원들 각각의 상황 정보를 상기 데이터베이스에서 추출하는 단계; 상기 대화 세션에 참여한 회원들 각각의 상황 정보에 기반하여 상기 대화 세션에 대한 대화 참여 가능 점수를 계산하는 단계; 및 상기 계산된 대화 참여 가능 점수를 상기 대화 세션에 대한 정보와 함께 상기 제1 회원에게 제공하는 단계를 더 포함할 수 있다.
또 다른 측면에 따르면, 상기 인터랙션 방법은 상기 제1 회원이 참여한 대화 세션들 각각에 대한 대화 참여 가능 점수에 기반하여 상기 제1 회원이 참여한 대화 세션들의 리스트를 정렬하는 단계; 및 상기 정렬된 리스트를 상기 제1 회원에게 제공하는 단계를 더 포함할 수 있다.
또 다른 측면에 따르면, 상기 대화 참여 가능 점수를 계산하는 단계는, 상기 대화 세션에 참여한 회원들 각각의 상황 정보에 따른 레벨이 높을수록, 그리고 상기 대화 세션을 통해 송신 및/또는 수신된 메시지들의 수가 많을수록 상기 대화 참여 가능 점수를 높게 계산할 수 있다.
또 다른 측면에 따르면, 상기 인터랙션 방법은, 상기 메시징 서비스와 연관하여 상기 제1 회원의 모바일 기기에 설치 및 구동되는 어플리케이션을 통해, 상기 제1 회원이 상기 제1 회원과 인적 관계가 설정된 다른 회원들에게 상황 정보의 제공할 것인지 여부를 상기 다른 회원들 각각에 대해 설정할 수 있는 사용자 인터페이스를 제공하는 단계를 더 포함할 수 있다.
또 다른 측면에 따르면, 상기 인터랙션 방법은 상기 다른 회원들 중 상기 제1 회원의 상황 정보와 동일한 상황 정보를 가지고 있거나 또는 상기 제1 회원이 기설정한 상황 정보를 가지고 있는 제3 회원을 결정하는 단계; 상기 제3 회원을 상기 제1 회원에게 추천하는 단계; 및 상기 추천된 제3 회원이 선택되는 경우, 상기 제1 회원 및 상기 제3 회원을 참여자로 하는 대화 세션을 생성하는 단계를 더 포함할 수 있다.
또 다른 측면에 따르면, 상기 인터랙션 방법은 상기 복수의 회원들 중 동일한 상황 정보를 가지고 있는 회원들을 선택하여 상기 선택된 회원들간의 익명의 대화 세션을 생성하는 단계를 더 포함할 수 있다.
또 다른 측면에 따르면, 상기 인터랙션 방법은 상기 제1 회원에 의해 설정되는 상황 정보에 대응하는 익명의 대화 세션을 검색하는 단계; 및 상기 검색된 익명의 대화 세션에 대한 정보를 상기 제1 회원에게 제공하는 단계를 더 포함할 수 있다.
컴퓨터와 결합되어 상기 인터랙션 방법을 컴퓨터에 실행시키기 위해 컴퓨터 판독 가능한 기록매체에 저장된 컴퓨터 프로그램을 제공한다.
상기 인터랙션 방법을 컴퓨터에 실행시키기 위한 프로그램이 기록되어 있는 컴퓨터에서 판독 가능한 기록매체를 제공한다.
컴퓨터에서 판독 가능한 명령을 실행하도록 구현되는 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서에 의해, 메시지 서비스와 연관하여 상기 모바일 기기에 설치 및 구동된 어플리케이션의 제어에 따라, 상기 모바일 기기 또는 상기 모바일 기기의 사용자 중 적어도 하나의 상황과 연관된 정보를 취득하고, 상기 취득된 정보에 기반하여 상기 사용자의 상황을 결정하고, 상기 결정된 사용자의 상황에 기초하여, 상기 메시징 서비스를 통해 상기 사용자에게 제공하기 위한 기능을 확인하고, 상기 기능의 제공을 위해 제공되는 사용자 인터페이스의 구성을 상기 결정된 사용자의 상황에 따라 동적으로 결정하고, 상기 동적으로 결정된 구성의 사용자 인터페이스를 통해 상기 기능을 제공하는 동작들을 수행하는 컴퓨터 장치를 제공한다.
컴퓨터에서 판독 가능한 명령을 실행하도록 구현되는 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서에 의해, 메시징 서비스를 이용하는 복수의 회원들 각각에 대해 인적 관계가 설정된 다른 회원들에 대한 정보를 저장 및 관리하고, 상기 복수의 회원들 각각에 대한 상황 정보를 지속적으로 수집하고, 상기 수집된 상황 정보를 대응하는 회원과 연계하여 데이터베이스에 저장 및 갱신하고, 상기 복수의 회원들 중 제1 회원과 인적 관계가 설정된 제2 회원에 대한 정보를 상기 제1 회원에게 제공하는 경우, 상기 제2 회원에 대한 상황 정보를 상기 데이터베이스에서 추출하고, 상기 추출된 상황 정보를 상기 제2 회원에 대한 정보와 함께 상기 제1 회원에게 제공하는 동작들을 수행하는 컴퓨터 장치를 제공한다.
모바일 기기로 취득 가능한 현재 정보와 최근 기록을 사용하여 현재 사용자의 상황을 추론하고, 추론된 사용자의 상황에 따른 기기 접근 가능 여부, 기기 조작 가능 여부 및 텍스트 입력 가능 여부에 따라 사용자의 자유도 수준을 결정하며, 결정된 자유도 수준에 따라 메시징 서비스와의 인터랙션 방식을 결정함으로써, 동일한 기능(일례로, 알림의 제공)을 제공함에 있어서도 사용자의 상황에 따라 서로 다른 사용자 인터페이스를 제공할 수 있다.
메시징 서비스에서 사용자들의 상황에 대한 정보들을 취합하여 관리함으로써, 특정 사용자와 인적 관계가 설정된 다른 사용자들의 상태 정보를 해당 특정 사용자에게 제공할 수 있다.
메시징 서비스에서 사용자들의 상황에 대한 정보들을 취합하여 관리함으로써, 메시징 서비스에서 설정된 대화 세션들 각각에 대한 대화 참여 가능 점수에 대한 정보를 제공 및/또는 표시할 수 있다.
메시징 서비스에서 사용자들의 상황에 대한 정보들을 취합하여 관리함으로써, 메시징 서비스에서 대화 세션의 참여자들의 대화 집중도에 대한 정보를 제공 및/또는 표시할 수 있다.
메시징 서비스에서 사용자들의 상황에 대한 정보들을 취합하여 관리함으로써, 대화 세션의 생성 시 사용자들의 상황에 기반하여 대화 세션의 참여자를 추천할 수 있다.
메시징 서비스에서 사용자들의 상황에 대한 정보들을 취합하여 관리함으로써, 사용자들이 익명 기반의 대화 세션을 사용자들의 상황에 따라 검색, 생성 및 참여할 수 있는 기능을 제공할 수 있다.
도 1은 본 발명의 일실시예에 따른 네트워크 환경의 예를 도시한 도면이다.
도 2는 본 발명의 일실시예에 따른 컴퓨터 장치의 예를 도시한 블록도이다.
도 3은 본 발명의 일실시예에 있어서, 사용자의 상황을 감지하는 과정의 예를 도시한 도면이다.
도 4 내지 도 8은 본 발명의 실시예에 있어서, 자유도에 따라 서로 다른 사용자 인터페이스를 제공하는 예를 도시한 도면들이다.
도 9는 본 발명의 일실시예에 있어서, 다른 사용자의 상태 정보를 표시하는 예를 도시한 도면이다.
도 10은 본 발명의 일실시예에 있어서, 대화 참여 가능 점수를 제공하는 예를 도시한 도면이다.
도 11은 본 발명의 일실시예에 따른 인터랙션 방법의 예를 도시한 흐름도이다.
도 12는 본 발명의 일실시예에 따른 인터랙션 방법의 다른 예를 도시한 흐름도이다.
이하, 실시예를 첨부한 도면을 참조하여 상세히 설명한다.
본 발명의 실시예들에 따른 인터랙션 방법은 이후 설명될 전자 기기나 서버와 같은 컴퓨터 장치를 통해 구현될 수 있다. 이때, 컴퓨터 장치에는 본 발명의 일실시예에 따른 컴퓨터 프로그램이 설치 및 구동될 수 있고, 컴퓨터 장치는 구동된 컴퓨터 프로그램의 제어에 따라 본 발명의 실시예들에 따른 인터랙션 방법을 수행할 수 있다. 상술한 컴퓨터 프로그램은 컴퓨터 장치와 결합되어 인터랙션 방법을 컴퓨터에 실행시키기 위해 컴퓨터 판독 가능한 기록매체에 저장될 수 있다.
도 1은 본 발명의 일실시예에 따른 네트워크 환경의 예를 도시한 도면이다. 도 1의 네트워크 환경은 복수의 전자 기기들(110, 120, 130, 140), 복수의 서버들(150, 160) 및 네트워크(170)를 포함하는 예를 나타내고 있다. 이러한 도 1은 발명의 설명을 위한 일례로 전자 기기의 수나 서버의 수가 도 1과 같이 한정되는 것은 아니다.
복수의 전자 기기들(110, 120, 130, 140)은 컴퓨터 장치로 구현되는 고정형 단말이거나 이동형 단말일 수 있다. 복수의 전자 기기들(110, 120, 130, 140)의 예를 들면, 스마트폰(smart phone), 휴대폰, 네비게이션, 컴퓨터, 노트북, 디지털방송용 단말, PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), 태블릿 PC 등이 있다. 일례로 도 1에서는 전자 기기 1(110)의 예로 스마트폰의 형상을 나타내고 있으나, 본 발명의 실시예들에서 전자 기기 1(110)은 실질적으로 무선 또는 유선 통신 방식을 이용하여 네트워크(170)를 통해 다른 전자 기기들(120, 130, 140) 및/또는 서버(150, 160)와 통신할 수 있는 다양한 물리적인 컴퓨터 장치들 중 하나를 의미할 수 있다.
통신 방식은 제한되지 않으며, 네트워크(170)가 포함할 수 있는 통신망(일례로, 이동통신망, 유선 인터넷, 무선 인터넷, 방송망)을 활용하는 통신 방식뿐만 아니라 기기들간의 근거리 무선 통신 역시 포함될 수 있다. 예를 들어, 네트워크(170)는, PAN(personal area network), LAN(local area network), CAN(campus area network), MAN(metropolitan area network), WAN(wide area network), BBN(broadband network), 인터넷 등의 네트워크 중 하나 이상의 임의의 네트워크를 포함할 수 있다. 또한, 네트워크(170)는 버스 네트워크, 스타 네트워크, 링 네트워크, 메쉬 네트워크, 스타-버스 네트워크, 트리 또는 계층적(hierarchical) 네트워크 등을 포함하는 네트워크 토폴로지 중 임의의 하나 이상을 포함할 수 있으나, 이에 제한되지 않는다.
서버(150, 160) 각각은 복수의 전자 기기들(110, 120, 130, 140)과 네트워크(170)를 통해 통신하여 명령, 코드, 파일, 컨텐츠, 서비스 등을 제공하는 하나 또는 둘 이상의 컴퓨터 장치로 구현될 수 있다. 예를 들어, 서버(150)는 네트워크(170)를 통해 접속한 복수의 전자 기기들(110, 120, 130, 140)로 제1 서비스를 제공하는 시스템일 수 있으며, 서버(160) 역시 네트워크(170)를 통해 접속한 복수의 전자 기기들(110, 120, 130, 140)로 제2 서비스를 제공하는 시스템일 수 있다. 보다 구체적인 예로, 제1 서비스로서 소셜 네트워크 서비스일 수 있다. 이 경우, 서버(150)는 서비스와 연계된 어플리케이션이 설치된 복수의 전자 기기들(110, 120, 130, 140)로 상기 어플리케이션을 통해 메시징 서비스, 타임라인 서비스 등과 같이 소셜 네트워크 서비스로서 제공 가능한 다양한 서비스들을 제공할 수 있다. 또한, 서버(160)는 상술한 어플리케이션의 설치를 위한 설치 파일을 복수의 전자 기기들(110, 120, 130, 140)로 배포하기 위한 서비스를 제2 서비스로서 제공할 수 있다.
도 2는 본 발명의 일실시예에 따른 컴퓨터 장치의 예를 도시한 블록도이다. 앞서 설명한 복수의 전자 기기들(110, 120, 130, 140) 각각이나 서버들(150, 160) 각각은 도 2를 통해 도시된 컴퓨터 장치(200)에 의해 구현될 수 있다. 예를 들어, 컴퓨터 장치(200)에는 일실시예에 따른 컴퓨터 프로그램이 설치 및 구동될 수 있고, 컴퓨터 장치(200)는 구동된 컴퓨터 프로그램의 제어에 따라 본 발명의 실시예들에 따른 인터랙션 방법을 수행할 수 있다.
이러한 컴퓨터 장치(200)는 도 2에 도시된 바와 같이, 메모리(210), 프로세서(220), 통신 인터페이스(230) 그리고 입출력 인터페이스(240)를 포함할 수 있다. 메모리(210)는 컴퓨터에서 판독 가능한 기록매체로서, RAM(random access memory), ROM(read only memory) 및 디스크 드라이브와 같은 비소멸성 대용량 기록장치(permanent mass storage device)를 포함할 수 있다. 여기서 ROM과 디스크 드라이브와 같은 비소멸성 대용량 기록장치는 메모리(210)와는 구분되는 별도의 영구 저장 장치로서 컴퓨터 장치(200)에 포함될 수도 있다. 또한, 메모리(210)에는 운영체제와 적어도 하나의 프로그램 코드가 저장될 수 있다. 이러한 소프트웨어 구성요소들은 메모리(210)와는 별도의 컴퓨터에서 판독 가능한 기록매체로부터 메모리(210)로 로딩될 수 있다. 이러한 별도의 컴퓨터에서 판독 가능한 기록매체는 플로피 드라이브, 디스크, 테이프, DVD/CD-ROM 드라이브, 메모리 카드 등의 컴퓨터에서 판독 가능한 기록매체를 포함할 수 있다. 다른 실시예에서 소프트웨어 구성요소들은 컴퓨터에서 판독 가능한 기록매체가 아닌 통신 인터페이스(230)를 통해 메모리(210)에 로딩될 수도 있다. 예를 들어, 소프트웨어 구성요소들은 네트워크(170)를 통해 수신되는 파일들에 의해 설치되는 컴퓨터 프로그램에 기반하여 컴퓨터 장치(200)의 메모리(210)에 로딩될 수 있다.
프로세서(220)는 기본적인 산술, 로직 및 입출력 연산을 수행함으로써, 컴퓨터 프로그램의 명령을 처리하도록 구성될 수 있다. 명령은 메모리(210) 또는 통신 인터페이스(230)에 의해 프로세서(220)로 제공될 수 있다. 예를 들어 프로세서(220)는 메모리(210)와 같은 기록 장치에 저장된 프로그램 코드에 따라 수신되는 명령을 실행하도록 구성될 수 있다.
통신 인터페이스(230)은 네트워크(170)를 통해 컴퓨터 장치(200)가 다른 장치(일례로, 앞서 설명한 저장 장치들)와 서로 통신하기 위한 기능을 제공할 수 있다. 일례로, 컴퓨터 장치(200)의 프로세서(220)가 메모리(210)와 같은 기록 장치에 저장된 프로그램 코드에 따라 생성한 요청이나 명령, 데이터, 파일 등이 통신 인터페이스(230)의 제어에 따라 네트워크(170)를 통해 다른 장치들로 전달될 수 있다. 역으로, 다른 장치로부터의 신호나 명령, 데이터, 파일 등이 네트워크(170)를 거쳐 컴퓨터 장치(200)의 통신 인터페이스(230)를 통해 컴퓨터 장치(200)로 수신될 수 있다. 통신 인터페이스(230)를 통해 수신된 신호나 명령, 데이터 등은 프로세서(220)나 메모리(210)로 전달될 수 있고, 파일 등은 컴퓨터 장치(200)가 더 포함할 수 있는 저장 매체(상술한 영구 저장 장치)로 저장될 수 있다.
입출력 인터페이스(240)는 입출력 장치(250)와의 인터페이스를 위한 수단일 수 있다. 예를 들어, 입력 장치는 마이크, 키보드 또는 마우스 등의 장치를, 그리고 출력 장치는 디스플레이, 스피커와 같은 장치를 포함할 수 있다. 다른 예로 입출력 인터페이스(240)는 터치스크린과 같이 입력과 출력을 위한 기능이 하나로 통합된 장치와의 인터페이스를 위한 수단일 수도 있다. 입출력 장치(250)는 컴퓨터 장치(200)와 하나의 장치로 구성될 수도 있다.
또한, 다른 실시예들에서 컴퓨터 장치(200)는 도 2의 구성요소들보다 더 적은 혹은 더 많은 구성요소들을 포함할 수도 있다. 그러나, 대부분의 종래기술적 구성요소들을 명확하게 도시할 필요성은 없다. 예를 들어, 컴퓨터 장치(200)는 상술한 입출력 장치(250) 중 적어도 일부를 포함하도록 구현되거나 또는 트랜시버(transceiver), 데이터베이스 등과 같은 다른 구성요소들을 더 포함할 수도 있다.
도 3은 본 발명의 일실시예에 있어서, 사용자의 상황을 감지하는 과정의 예를 도시한 도면이다. 도 3은 제1 과정(310) 내지 제8 과정(380)을 도시하고 있다.
제1 과정(310)은 사용자가 모바일 기기를 사용하고 있는 손을 감지하기 위한 과정의 예일 수 있으며, 모바일 기기는 가속도 센서와 자이로 센서를 이용하여 사용자가 모바일 기기를 사용하고 있는 손에 대한 정보를 제공할 수 있다. 예를 들어, '왼손', '오른손', '양손' 및 '거치' 중 하나의 상태에 대한 정보가 제공될 수 있다. '왼손'은 사용자가 왼손으로 모바일 기기를 들고 사용중임을, '오른손'은 사용자가 오른손으로 모바일 기기를 들고 사용중임을, '양손'은 사용자가 양손으로 모바일 기기를 들고 사용중임을, '거치'는 사용자가 모바일 기기를 들고 있지 않은 상태로 사용중임을 각각 의미할 수 있다. 예를 들어, 한 손으로 기기를 조작하여 타이핑을 하는 경우, 가속도 센서 및/또는 자이로 센서를 통해, 기기의 중앙 축을 기준으로 어느 한쪽 방향으로의 흔들림 또는 진동이 두드러 지는지, 및/또는 기기의 방향 (orientation, 즉, 가로인지 세로인지)를 파악할 수 있고, 이를 한 손 기기 사용 패턴과 관련된 기저장된 데이터 군(data set)과 비교하여 어느 한 손으로 기기가 사용되고 있는지 또는 양손으로 사용되고 있는지를 결정할 수 있다.
제2 과정(320)은 한손 사용 모드의 사용 여부를 감지하기 위한 과정의 예일 수 있다. 한손 사용 모드는 특정 모바일 기기나 특정 어플리케이션을 통해 사용자가 하나의 손으로 모바일 기기를 제어할 수 있는 기능을 제공하기 위한 모드로, 모바일 기기는 이러한 한손 사용 모드가 온(On) 상태인지 아니면 오프(Off) 상태인지에 대한 정보를 제공할 수 있다. 이때, 모바일 기기가 한손 사용 모드를 제공하지 않는 경우는 오프(Off) 상태에 포함될 수 있다.
제3 과정(330)은 사용자의 이동 상태를 감지하기 위한 과정의 예일 수 있다. 모바일 기기는 제3 과정(330)을 통해 사용자가 현재 어떠한 이동 상태에 위치하는가에 대한 정보를 제공할 수 있다. 이동 상태에 대한 예시는 '정지', '걷기', '뛰기', '버스', '지하철', '승용차' 및 '자전거' 중 어느 하나를 포함할 수 있다. 또한, 제3 과정(330)은 사용자의 이동 속도에 대한 정보를 더 제공할 수 있다. 일례로 모바일 기기는 GPS및 주변의 무선전화 망의 기지국 혹은 와이파이(WiFi) AP(Access Point)들의 정보를 통해 제공되는 모바일 기기의 지리적 위치(일례로, 위도/경도의 좌표)의 변화 또는 모바일 기기가 포함하는 가속도 센서의 측정값 등을 통해 모바일 기기의 이동 속도에 대한 정보를 얻을 수 있다. 또한, 모바일 기기는 얻어진 이동 속도 및/또는 모바일 기기가 포함하는 가속도 센서 및/또는 자이로 센서를 이용하여 측정되는 모바일 기기의 진동이나 진동의 패턴에 기초하여 사용자의 이동 상태에 대한 정보를 얻을 수 있다. 이러한 이동 속도나 이동 상태에 대한 정보를 획득하기 위한 기술은 일례로 'Google Activity Recognition API'와 같이 이미 알려진 기술들을 통해 당업자가 쉽게 이해할 수 있을 것이다.
제4 과정(340)은 모바일 기기의 상태 정보를 감지하기 위한 과정의 예일 수 있다. 모바일 기기는 LCD의 온(On) 또는 오프(Off)에 대한 정보, 어플리케이션이 현재 사용자에 의해 사용되고 있는지 여부에 대한 정보(사용되고 있다면 어떠한 어플리케이션이 사용자에 의해 사용되고 있는가에 대한 정보, 또는 특정 어플리케이션이 포어그라운드에서 또는 백그라운드에서 기동되고 있는지 여부에 대한 정보) 및 그리고 스크린 락의 해제 여부에 대한 정보 중 적어도 하나를 제공할 수 있다.
제5 과정(350)은 모바일 기기의 위치 정보를 감지하기 위한 과정의 예일 수 있다. 여기서 위치 정보는 지리적 위치가 아닌, 사용자가 입고 있는 의류의 주머니 안, 사용자가 메고 있는 가방 안, 또는 외부 노출 등과 같은 위치 정보를 포함할 수 있다. 예를 들어, 모바일 기기는 가속도 센서, 조도 센서, 마이크 및 근거리 센서 등을 활용하여 모바일 기기의 위치 정보를 감지 및 제공할 수 있다.
제6 과정(360)은 모바일 기기의 지리적 위치 정보를 감지하기 위한 과정의 예일 수 있다. 모바일 기기는 GPS, WiFi 포지셔닝, 기지국 등 다양한 정보를 활용하여 모바일 기기의 현재 위도/경도 위치 정보와 같은 지리적 위치 정보를 획득 및 제공할 수 있다. 또한, 제6 과정(360)은 지리적 위치 정보의 사용 여부에 대한 정보를 제공할 수 있다. 예를 들어, 사용자가 네비게이션 앱을 사용하는 경우, 지리적 위치 정보를 사용하고 있는 것으로 결정될 수 있다.
이상에서 설명한 제1 과정(310) 내지 제6 과정(360)을 위한 구체적인 기술들은 이미 잘 알려진 기술들을 통해 통상의 기술자가 쉽게 이해할 수 있을 것이다. 예를 들어, 제3 과정(330)을 통해 사용자의 이동 상태를 감지하는 기술은 이미 설명한 바와 같이 'Google Activity Recognition API'를 통해 통상의 기술자가 쉽게 이해할 수 있을 것이다. 본 발명의 실시예들은 이러한 개별적인 정보들을 어떻게 획득할 수 있는가에 관한 것이 아니라, 획득한 정보들을 어떻게 활용하여 사용자의 상황을 자동으로 감지 및 활용할 수 있는가에 관한 것이다. 또한, 실시예에 따라 제1 과정(310) 내지 제6 과정(360) 중 일부의 과정만이 수행되거나 또는 또 다른 정보를 획득하기 위한 새로운 과정이 추가될 수도 있음을 통상의 기술자가 쉽게 이해할 수 있을 것이다.
제7 과정(370)은 제1 과정(310) 내지 제6 과정(360)을 통해 제공되는 정보들을 통해 사용자 상황을 결정하는 과정의 예일 수 있다. 제7 과정(370)은 모바일 기기를 통해 수행될 수도 있고, 실시예에 따라 모바일 기기를 통해 제1 과정(310) 내지 제6 과정(360)을 통해 제공되는 정보들을 수신한 서버(일례로, 서버(150))를 통해 수행될 수도 있다. 사용자 상황의 결정은 기계학습을 이용한 분류 방법들로서 확률을 사용하는 분류 모델이나 비확률적 분류 모델이 활용될 수 있다.
예를 들어, 확률을 사용하는 분류 모델에서는 나이브 베이즈 분류(Naive Bayes Classification)가 활용될 수 있다. 나이브 베이즈 분류는 특성들 사이의 독립을 가정하는 베이즈 정리를 적용한 확률 분류기의 일종이다.
나이브 베이즈는 조건부 확률 모델로, 분류될 인스턴스들은 N 개의 특성 (종속변수)을 나타내는 벡터
Figure PCTKR2018000628-appb-I000001
로 표현되며, 나이브 베이즈 분류기는 이 벡터를 이용하여 k개의 가능한 확률적 결과들(클래스)을 다음 수학식 1과 같이 할당한다.
Figure PCTKR2018000628-appb-M000001
이러한 수학식 1은 특성 N의 수가 많은 경우나 하나의 특성이 많은 수의 값을 가질 수 있는 경우 확률 테이블에 베이지안 모델을 바로 적용하기 어려움이 있다. 그러므로, 위의 식은 베이즈 정리와 조건부 확률을 이용하여 다음 수학식 2와 같이 정리 가능하다.
Figure PCTKR2018000628-appb-M000002
베이지안 확률 용어를 사용하여 위의 식은 다음 수학식 3으로도 표현 가능하다.
Figure PCTKR2018000628-appb-M000003
여기서, 'posterior'는 사후 확률을, 'prior'는 사전확률을, 'likelihood'는 우도를, 'evidence' 관찰값을 각각 의미할 수 있다.
실제로, 위 수학식 3에서 분자 부분만이 의미가 있다. 분모 부분의 경우에는 주어진 C 값에 의존하지 않고, 특성들의 값 F i의 경우 분모의 값이 상수가 되도록 주어지기 때문이다. 분자 부분은 다음 수학식 4와 같은 결합확률 모델이다.
Figure PCTKR2018000628-appb-M000004
이때, 수학식 4는 조건부 확률을 반복적으로 적용한 연쇄 법칙을 사용하여 다음 수학식 5와 같이 다시 쓸 수 있다.
Figure PCTKR2018000628-appb-M000005
나이브 베이즈에서 조건부 독립성은 다음 수학식 6과 같이 표현될 수 있다.
Figure PCTKR2018000628-appb-M000006
이때, 카테고리 종류 C가 주어질 경우, 어떤 특성 F i의 경우 모든 F j (j i)에 대해서 조건부 독립이다. 즉, 수학식 6은 j ik, l에 대해 성립하게 되며, 이를 바탕으로 결합 모델은 다음 수학식 7과 같이 표현될 수 있다.
Figure PCTKR2018000628-appb-M000007
수학식 7은 독립성 가정 하에서 클래스 변수 C의 조건부 분포는 아래 수학식 8과 같이 표현될 수 있다.
Figure PCTKR2018000628-appb-M000008
여기서 Z=p(x)는 특성값들이 주어진 경우 상수가 되는, 즉, x 1, …, x n에만 의존하는 스케일링 팩터이다.
나이브 베이즈 분류는 이러한 확률 모델과 결정 규칙을 조합한 것으로, 하나의 공통적인 규칙은 가장 가능성 높은 가설을 선택하는 것이다. 이것은 사후 또는 MAP 결정 규칙의 최대치를 선택하는 것이다. 즉 나이브 베이즈 분류에서는 클래스 k, 즉 C k에 대해서 다음 수학식 9를 통해 최대 확률을 갖는 클래스 k를 찾아낸다.
Figure PCTKR2018000628-appb-M000009
일례로, 제7 과정(370)에서 컴퓨터 장치(200)는 제1 과정(310) 내지 제6 과정(360)을 통해 제공되는 정보들에 따른 상황이 독립사건임을 가정하고, 각각의 상황에 대한 이벤트 발생 횟수를 수집할 수 있다. 또한, 컴퓨터 장치(200)는 이러한 이벤트 발생 횟수에 기반한 발생 확률을 계산할 수 있으며, 원하는 결과값에 대해서 개별 상황이 어떤 확률을 가지는 지에 대해 계산하여 이벤트 모델을 생성할 수 있다. 차후, 테스트를 위한 상황 이벤트를 입력하고 생성된 이벤트 모델을 통해 결과값을 추정할 수 있다.
한편, 비확률적 분류 모델로서는 서포트 벡터 머신(Support Vector Machine, SVM)이 활용될 수 있다. 서포트 벡터 머신은 기계 학습의 분야 중 하나로 패턴 인식, 자료 분석을 위한 지도 학습 모델이며, 주로 분류와 회귀 분석을 위해 사용한다. 두 카테고리 중 어느 하나에 속한 데이터의 집합이 주어졌을 때, SVM 알고리즘은 주어진 데이터 집합을 바탕으로 하여 새로운 데이터가 어느 카테고리에 속할지 판단하는 비확률적 이진 선형 분류 모델을 만든다. 만들어진 분류 모델은 데이터가 사상된 공간에서 경계로 표현되는데 SVM 알고리즘은 그 중 가장 큰 폭을 가진 경계를 찾는 알고리즘이다. SVM은 선형 분류와 더불어 비선형 분류에서도 사용될 수 있다. 비선형 분류를 하기 위해서 주어진 데이터를 고차원 특징 공간으로 사상하는 작업이 필요한데, 이를 효율적으로 하기 위해 커널 트릭을 사용하기도 한다.
일례로, 제7 과정(370)에서 컴퓨터 장치(200)는 제1 과정(310) 내지 제6 과정(360)을 통해 제공되는 정보들이라는 데이터의 집합(데이터들의 벡터)이 어느 카테고리에 속할지를 연속적으로 분류함으로써, 데이터의 집합에 대응하는 사용자의 상황(카테고리)을 결정할 수 있다.
이러한 제7 과정(370)은 이벤트 모델을 포함하는 컴퓨터 장치(200)에 의해 수행될 수 있다. 이러한 컴퓨터 장치(200)는 사용자의 모바일 기기일 수도 있고, 모바일 기기로부터 네트워크(170)를 통해 정보들을 수신한 서버(150)일 수도 있다. 예를 들어, 컴퓨터 장치(200)는 제1 과정(310) 내지 제6 과정(360)을 통해 제공되는 개별 상황들을 조합하여 사용자의 종합적인 상황에 대한 정보나 이후 설명될 자유도와 같은 정보를 제공할 수 있다. 예를 들어, 컴퓨터 장치(200)는 제7 과정(370)에서 이벤트 모델을 통해 사용자의 기기 접근 가능 여부, 기기 조작 가능 여부, 텍스트 입력 가능 여부 등을 분류하여 결과값의 예로서 자유도를 제공할 수 있다. 아래 표 1은 사용자 상황에 따라 4 단계의 자유도를 결정하는 예를 나타내고 있다.
자유도 기기 접근 기기 조작 텍스트 입력
1 X X X
2 O X X
3 O O X
4 O O O
예를 들어, 사용자가 출근길 버스 안에서 서서 가고 있으며, 모바일 기기가 가방 안에 들어 있는 제1 예제 상황을 고려할 수 있다. 모바일 기기는 제3 과정(330)을 통해 사용자의 이동 상태(일례로, '버스 안', 이동 속도는 시속 50km)에 대한 정보를 제공할 수 있고, 제4 과정(340)을 통해 사용자가 30분 동안 어떠한 어플리케이션도 사용하지 않았음에 대한 정보를 제공할 수 있으며, 제5 과정(350)을 통해 모바일 기기의 위치 정보가 '가방'임을 파악하여 제공할 수 있다. 이 경우, 이벤트 모델은 상술한 제1 예제 상황에 대해 기기 접근의 가능 여부, 기기 조작의 가능 여부 및 텍스트 입력의 가능 여부 각각을 결정할 수 있으며, 이러한 결정 및 표 1을 통해 상술한 제1 예제 상황의 자유도를 '1'로서 결정할 수 있다.
제2 예제 상황으로, 사용자가 자전거를 타면서 자전거에 거치된 모바일 기기를 네비게이션 용도로 사용중인 상황을 고려할 수 있다. 이때, 모바일 기기에서 제공하는 정보는 '자전거', '외부 노출', '중속이동 중', 'LCD 온(On)' '거치중', '네비게이션 어플리케이션 사용 중' 등과 같은 정보들을 포함할 수 있다. 이 경우, 이벤트 모델은 사용자가 기기 접근은 가능하고, 기기 조작은 어려우며, 텍스트 입력 역시 어렵다는 결정에 따라 제2 예제 상황의 자유도를 '2'로서 결정할 수 있다.
제3 예제 상황으로, 사용자가 한손에 모바일 기기를 쥔 상태로 거리를 걸어가고 있는 상황을 고려할 수 있다. 이때, 모바일 기기에서 제공하는 정보는 '걷기', '외부 노출', '저속이동 중', 'LCD 오프(Off)', '10분 이내에 어플리케이션의 사용 기록 존재', '한손' 등과 같은 정보들을 포함할 수 있다. 이 경우, 이벤트 모델은 사용자가 기기 접근과 기기 조작은 가능하나 텍스트 입력은 어렵다고 결정할 수 있으며, 이러한 결정에 따라 제3 예제 상황의 자유도를 '3'으로서 결정할 수 있다.
제4 예제 상황으로, 사용자가 사무실 자리에 앉아서 모바일 기기를 사용하고 있는 상황을 고려할 수 있다. 이때, 모바일 기기에서 제공하는 정보는 '정지', 'LCD 온(On)', '양손', '어플리케이션 사용 중', '위치정보 사용안함'과 같은 정보들을 포함할 수 있다. 이 경우, 이벤트 모델은 사용자가 기기 접근, 기기 조작 및 텍스트 입력이 모두 가능한 것으로 판단하여 제4 예제 상황의 자유도를 '4'로서 결정할 수 있다.
표 1을 통해서는 기기 접근의 가능 여부, 기기 조작의 가능 여부 및 텍스트 입력의 가능 여부에 따라 자유도를 4 단계로 분류한 예를 나타내고 있으나, 조건이나 자유도의 단계는 실시예에 따라 다양하게 설정 가능함을 통상의 기술자가 쉽게 이해할 수 있을 것이다.
도 4 내지 도 8은 본 발명의 실시예에 있어서, 자유도에 따라 서로 다른 사용자 인터페이스를 제공하는 예를 도시한 도면들이다.
도 4의 실시예에서는 메시지가 도착한 경우에 사용자에게 알림창을 제공함에 있어서 자유도를 활용하는 하나의 예시를 설명한다. 도 4는 모바일 기기(410)가 메시징 서비스를 통해 메시지를 수신한 경우에, 사용자의 현재 자유도에 따라 서로 다른 사용자 인터페이스를 제공하는 예들을 나타내고 있다.
이때, 자유도 1(420)의 경우, 사용자는 기기 접근, 기기 조작 및 텍스트 입력이 모두 어려운 상태이기 때문에, 화면에 알림창을 표시하는 것은 특별한 의미가 없다. 이 경우, 모바일 기기는 알림창을 표시하지 않을 수 있다. 도 5는 메시지를 수신하였음에도 알림창을 표시하지 않는 전자 기기 1(110)의 화면(510) 예를 나타내고 있다.
자유도 2(430)의 경우, 사용자는 기기 접근은 가능하나 기기 조작과 텍스트 입력은 어려운 상태이다. 이 경우, 기기 접근이 가능하다는 것은 기기 화면에 표시되는 정보를 사용자가 볼 수 있음을 의미하기 때문에, 모바일 기기는 메시지의 내용을 포함하는 알림창을 표시할 수 있다. 도 6은 메시지를 수신함에 따라 전자 기기 1(110)의 화면(610)에 알림창(620)이 표시된 예를 나타내고 있다. 이때, 사용자의 기기 조작이 어렵기 때문에 도 6에서는 알림창(620)을 통해 별도의 사용자 인터페이스를 제공할 필요 없이 메시지의 발신자에 대한 정보(630)와 메시지 내용(640)만이 알림창(620)에 표시된 예를 나타내고 있다.
자유도 3(440)의 경우, 사용자는 기기 접근과 기기 조작은 가능하나 텍스트 입력이 어려운 상태이다. 이 경우, 사용자가 적어도 한 손으로 모바일 기기의 조작은 가능하기 때문에 모바일 기기는 메시지의 내용을 화면에 표시할 뿐만 아니라, 간단한 입력을 통해 조작 가능한 기능들을 제공하기 위한 사용자 인터페이스들을 함께 제공할 수 있다. 도 7은 메시지를 수신함에 따라 전자 기기 1(110)의 화면(710)에 알림창(720)이 표시된 예를 나타내고 있다. 이때, 사용자가 간단한 기기 조작은 가능하기 때문에, 도 7의 알림창(720)은 메시지의 발신자에 대한 정보(630)와 메시지 내용(640)을 표시할 뿐만 아니라, 메신저의 대화방을 통해 메시지를 보기 위한 사용자 인터페이스(750)와 알림창(720)을 닫기 위한 사용자 인터페이스(760)를 더 포함하여 구성되어 있다. 이에 더해, 알림창(720)은 기설정된 상용구('지금 바쁨', '이따 전화할게')를 전송하기 위한 사용자 인터페이스들(770, 780)을 더 포함하여 구성되어 있다. 사용자가 사용자 인터페이스들(770, 780) 중 어느 하나를 선택(일례로 터치스크린 환경에서 해당 사용자 인터페이스가 표시된 영역을 터치)하는 경우, 전자 기기 1(110)은 선택된 사용자 인터페이스에 대응하는 상용구를 포함하는 메시지를 발신자에 대한 정보(630)에 대응하는 수신자에게 전송할 수 있다. 또한, GPS 및 주변의 무선전화 망의 기지국 또는 조도 센서 등으로부터의 정보를 통해 사용자가 운전 중이거나 휴대 단말이 가방 안에 있는 경우 등, 사용자의 현재 상태가 상용구 선택을 하지 못하는 경우라고 판정되는 경우, 사용자의 선택을 받지 않고, 자동으로 해당 상용구를 전송할 수도 있다.
자유도 4(450)의 경우, 사용자는 기기 접근, 기기 조작 및 텍스트 입력이 모두 가능한 상태이다. 이 경우, 사용자는 수신된 메시지의 내용을 보고 원하는 경우 직접 답변을 입력 및 전송할 수 있기 때문에, 모바일 기기는 알림창을 통해 답변을 직접 입력하기 위한 사용자 인터페이스를 더 제공할 수 있다. 도 8은 메시지를 수신함에 따라 전자 기기 1(110)의 화면(810)에 알림창(820)이 표시된 예를 나타내고 있다. 이미 설명한 바와 같이, 사용자는 기기 접근과 기기 조작뿐만 아니라, 텍스트의 입력도 가능한 상황이기 때문에, 도 8의 알림창(820)은 메시지의 발신자에 대한 정보(830)와 메시지 내용(840)을 표시하고, 간단한 사용자 인터페이스들(850, 860, 870, 880)을 제공할 뿐만 아니라, 점선박스(890)에 나타난 바와 같이 메시지에 대한 답장을 입력할 수 있는 문자 입력 인터페이스를 사용자에게 더 제공할 수 있다. 예를 들어, 사용자가 점선박스(890)로 표시된 영역을 선택하는 경우, 사용자에게는 문자를 입력하기 위한 기능이 제공될 수 있다.
이와 같이, 본 실시예에 따르면, 메시징 서비스와 연관하여 하나의 기능을 제공함에 있어서도 사용자의 상황에 따라 결정되는 자유도에 따라 다양한 사용자 인터페이스가 제공될 수 있음을 나타내고 있다. 이러한 자유도의 활용이 메시징 서비스와 연관된 다양한 기능들에 활용될 수 있음을 통상의 기술자라면 앞서 설명한 실시예들을 통해 쉽게 이해 가능할 것이다.
이하에서는 사용자의 상황을 활용하는 다양한 실시예들을 설명한다.
도 9는 본 발명의 일실시예에 있어서, 다른 사용자의 상태 정보를 표시하는 예를 도시한 도면이다. 앞서 설명한 바와 같이, 사용자의 모바일 기기뿐만 아니라 메시징 서비스를 제공하는 서버(150) 역시 메시징 서비스를 이용하는 사용자들의 상황을 구체적으로 획득할 수 있다. 도 9는 전자 기기 1(110)의 화면(910)을 통해 사용자와 인적 관계가 설정된 다른 사용자들의 리스트를 제공하는 예를 나타내고 있다. 이때, 적어도 하나의 다른 사용자에 대해 다른 사용자의 상황에 대한 정보가 표시될 수 있다. 도 9에서는 제1 점선박스(920)에서와 같이 다른 사용자 BBB가 '회의 중'임을, 제2 점선박스(930)에서와 같이 다른 사용자 CCC가 '자전거 타는 중'임을, 제3 점선박스(940)에서와 같이 다른 사용자 EEE가 '메신저 사용 중'임을 알림으로써 다른 사용자들의 상황에 대한 정보를 제공하고 있다.
이를 위해, 서버(150)는 메시징 서비스를 이용한 사용자들의 모바일 기기들로부터 앞서 도 3을 통해 설명한 제1 과정(310) 내지 제6 과정(360)을 통해 수집되는 정보들을 네트워크(170)를 통해 수신하고, 제7 과정(370)을 수행하여 사용자의 상황을 분류할 수 있다. 또한, 사용자들의 모바일 기기들 각각에서 제1 과정(310) 내지 제6 과정(360)을 통해 사용자의 상황이 분류된 후, 서버(150)는 분류된 사용자의 상황에 대한 정보를 수신하여 활용할 수도 있다.
이처럼, 서버(150)는 메시징 서비스를 통해 사용자와 인적 관계가 설정된 다른 사용자들의 리스트를 제공함에 있어서, 적어도 하나의 다른 사용자의 상황 정보를 함께 제공할 수 있으며, 모바일 기기는 모바일 기기에 설치 및 구동된 메신저 어플리케이션의 제어에 따라, 적어도 하나의 다른 사용자의 상황 정보가 해당 다른 사용자의 정보와 함께 표시된 리스트를 화면에 표시할 수 있다. 이때, 표시되는 상황 정보는 다른 사용자에 대해 수집된 모든 상황 정보를 포함할 필요는 없다. 서버(150)는 다른 사용자에 대해 수집된 상황 정보들 중 대표적인 상황 정보를 선별적으로 제공할 수 있다.
또한, 모바일 기기는 메신저 어플리케이션을 통해 사용자의 상황 정보를 표시할 다른 사용자를 설정할 수 있는 사용자 인터페이스를 제공할 수 있다. 예를 들어, 도 9의 실시예는 적어도 다른 사용자 BBB, CCC, EEE가 전자 기기 1(110)의 사용자에게 자신의 상황 정보를 제공하도록 설정한 경우를 의미할 수 있다.
이러한 상황 정보의 표시는 사용자들이 메시징 서비스를 통해 대화를 진행하지 않더라도 인적 관계가 설정된 다른 사용자들과 상황 정보를 통해 정보 제공을 교감할 수 있도록 해줄 수 있다.
또 다른 실시예로, 서버(150)는 대화방(대화 세션) 리스트를 통해 각 대화방의 대화 참여 가능 점수(Joinability score)를 표시할 수 있다. 예를 들어, 서버(150)는 특정 대화 세션의 참여자들 각각의 상황 정보를 통해, 해당 대화 세션에서 사용자가 대화에 참여할 수 있는 확률이 높은 정도를 대화 참여 가능 점수로서 수치화하여 제공할 수 있다.
도 10은 본 발명의 일실시예에 있어서, 대화 참여 가능 점수를 제공하는 예를 도시한 도면이다. 도 10은 전자 기기 1(110)의 화면(1010)을 통해 사용자를 참여자로 하는 대화 세션들(대화방들)의 리스트를 표시한 예를 나타내고 있다. 이때, 점선박스(1020)는 대화 세션들 각각의 대화 참여 가능 점수를 나타내고 있다. 도 10의 실시예는 대화 참여 가능 점수가 0~100 사이의 수로 결정된 예를 나타내고 있으며, 대화 참여 가능 점수가 높을수록 사용자가 해당 대화방에서 사용자가 대화에 참여할 수 있는 확률이 높음을 의미할 수 이다. 예를 들어, 대화방의 참여자들이 모두 바쁜 상황이라면 사용자가 해당 대화방에 들어가서 메시지를 전송하여도 그에 대한 답변을 받기 어렵기 때문에 대화 참여 가능 점수는 낮게 설정될 수 있다. 실시예에 따라 대화 참여 가능 점수는 점수가 아닌 색깔(일례로, 빨간색, 노란색, 녹색)이나 레벨(일례로, High, Mid, Low의 세 단계의 레벨) 등으로 표시될 수도 있다.
이러한 대화 참여 가능 점수는 대화 세션에 참여한 참여자들 각각의 자유도와 참여자들 각각이 대화방에서 메시지를 송수신한 기록에 기반하여 결정될 수 있다. 예를 들어, 서버(150)는 대화 세션에 참여한 참여자들의 자유도가 높을수록, 그리고 최근 기설정된 시간 이내의 메시지 송신 및/또는 수신 횟수가 많을수록 대화 참여 가능 점수를 높게 설정할 수 있다.
또한, 서버(150)는 대화방(대화 세션) 리스트에 포함된 대화방들을 대화 참여 가능 점수에 따라 정렬하여 제공할 수도 있다. 다시 말해, 가능한 한 많은 사람들이 지금 바로 대화에 참여할 수 있는 대화방의 순서로 대화방들을 표시한 리스트가 사용자에게 제공될 수 있다. 또한, 서버(150)는 대화 참여 가능 점수에 따라 정렬된 대화방들 중 대화 참여 가능 점수가 기설정된 값 이상인 대화방들만을 리스트에 포함시켜 제공하거나 또는 대화 참여 가능 점수에 따라 정렬된 대화방들 중 대화 참여 가능 점수가 높은 순서로 기설정된 수의 대화방들만을 리스트에 포함시켜 제공할 수도 있다.
한편, 이러한 대화 참여 가능 점수는 사용자별로 설정될 수도 있다. 예를 들어, 도 9에서 인적 관계가 설정된 다른 사용자들의 상황 정보를 표시하는 대신 사용자별 대화 참여 가능 점수를 계산하여 표시할 수도 있다. 이 경우, 사용자의 대화 참여 가능 점수는 해당 사용자의 자유도와 해당 사용자가 메시지를 송수신한 기록에 기반하여 결정될 수 있다. 예를 들어, 서버(150)는 사용자의 자유도가 높을수록, 그리고 사용자가 최근 기설정된 시간 이내에 메시지를 송신 및/또는 수신한 회수가 많을수록 대화 참여 가능 점수를 높게 설정할 수 있다. 보다 구체적인 예로, 대화 세션 A의 참여자 B에 대해, 대화 세션 A에서 기설정된 시간 동안 송신되는 전체 메시지의 수 대비 사용자 B가 송신한 메시지의 수가 높을수록 사용자 B의 대화 참여 가능 점수가 높게 설정될 수 있다.
또한, 서버(150)는 이러한 사용자별 대화 참여 가능 점수를 대화방 내의 참여자들의 각각의 대화 집중도로서 제공할 수도 있다. 예를 들어, 대화방 A에 사용자 A, 사용자 B, 사용자 C가 참여하고 있다고 가정할 때, 서버(150)는 사용자 A, 사용자 B, 사용자 C의 대화 집중도를 해당 사용자와 연계하여 대화방내에 표시할 수 있다. 역으로, 대화방 내에서 참여자들의 상황 정보(일례로, 뛴다, 회의 중, 버스, 자전거)를 제공할 수도 있다.
또한, 서버(150)는 메신저 어플리케이션을 통해 개별 사용자들 각각이 자신의 친구들(메시징 서비스에서 인적 관계가 설정된 다른 사용자들) 각각에 대해 상황 정보의 표시 여부, 대화 집중도(대화 참여 가능 점수)의 표시 여부 등을 설정할 수 있는 사용자 인터페이스를 제공할 수 있다.
한편, 서버(150)는 상황 정보에 기반하여 대화방 생성에 도움을 주기 위한 기능을 메신저 어플리케이션을 통해 사용자들에게 제공할 수도 있다. 예를 들어, 서버(150)는 대화 세션의 생성 시 사용자들의 상황에 기반하여 대화 세션의 참여자를 메신저 어플리케이션을 통해 사용자에게 추천할 수 있다. 예를 들어, 서버(150)는 사용자와 동일한 상황 또는 사용자가 미리 설정한 상황에 있는 친구를 사용자에게 추천할 수 있다. 다른 예로, 서버(150)는 대화 집중도가 높은 친구를 사용자에게 추천할 수도 있다. 이때, 서버(150)는 사용자가 추천된 친구들 중 선택한 친구의 새로운 대화방을 생성하여 제공할 수 있다.
다른 실시예로, 서버(150)는 상황 정보에 기반하여 익명기반의 인스턴트 오픈 대화방을 생성할 수도 있다. 예를 들어, 서버(150)는 특정 지역에서 같은 상황에 있는 사람들을 참여자로 하는 익명 기반의 대화방을 생성하고, 해당 사용자들에게 생성된 대화방에 참여할 것을 추천할 수 있다. 또한 서버(150)는 사용자가 지역 및/또는 상황을 설정하는 경우, 설정된 지역 및/또는 상황에 맞는 대화방을 검색하여 검색된 대화방 리스트를 제공할 수도 있다. 이러한 익명 기반의 대화방에서도 사용자는 자신의 상황 정보나 대화 집중도(대화 참여 가능 점수)의 표시 여부를 설정할 수 있다.
이러한 기능은 특정 상황에서 익명의 사용자들간에 정보를 교환하거나 또는 특수한 이벤트와 연관하여 모인 사용자들간에 쉽게 모여서 이야기를 나눌 수 있는 기회를 제공할 수 있다. 구체적인 예로, 게임 전시회에서 각 부스별 게임을 체험하기 위해 모여 있는 사람들이 부스 별 줄의 길이에 대한 정보나, 특정 도로에서 차량의 정체와 관련된 정보를, 유원지의 놀이기구 상황이나 또는 동일한 공연에 온 사람들끼리의 감상이나 관련 정보를 익명 기반의 대화방을 통해 교환할 수 있다. 다시 말해, 서버(150)는 특정 상황에 있는 익명의 사용자들이 익명 기반 대화방에 참여하여 정보를 교환하도록 유도할 수 있다.
도 11은 본 발명의 일실시예에 따른 인터랙션 방법의 예를 도시한 흐름도이다. 본 실시예에 따른 인터랙션 방법은 앞서 설명한 컴퓨터 장치(200)에 의해 수행될 수 있다. 본 실시예에 따른 컴퓨터 장치(200)는 앞서 설명한 모바일 기기나 전자 기기 1(110)에 대응할 수 있으며, 메시징 서비스를 제공하는 서버(150)로부터 네트워크(170)를 통해 메시징 서비스를 제공받을 수 있다. 예를 들어, 컴퓨터 장치(200)의 프로세서(220)는 메모리(210)가 포함하는 운영체제의 코드나 적어도 하나의 프로그램의 코드에 따른 제어 명령(instruction)을 실행하도록 구현될 수 있다. 여기서, 프로세서(220)는 컴퓨터 장치(200)에 저장된 코드가 제공하는 제어 명령에 따라 컴퓨터 장치(200)가 도 11의 인터랙션 방법이 포함하는 단계들(1110 내지 1150)을 수행하도록 컴퓨터 장치(200)를 제어할 수 있다.
단계(1110)에서 컴퓨터 장치(200)는 메시지 서비스와 연관하여 모바일 기기에 설치 및 구동된 어플리케이션의 제어에 따라, 모바일 기기 또는 모바일 기기의 사용자 중 적어도 하나의 상황과 연관된 정보를 취득할 수 있다. 사용자의 상황과 연관된 정보에 대해서는 앞서 도 3의 제1 과정(310) 내지 제6 과정(360)을 통해 자세히 설명한 바 있다.
단계(1120)에서 컴퓨터 장치(200)는 취득된 정보에 기반하여 사용자의 상황을 결정할 수 있다. 예를 들어, 컴퓨터 장치(200)는 단계(1120)에서 입력되는 정보를 통해 기 설정된 상황들 중 하나의 상황을 결정하도록 기계학습된 분류 모델에 취득된 정보를 입력하여 결정되는 상황을 사용자의 상황으로서 결정할 수 있다. 이러한 기계학습된 분류 모델에 대해서는 앞서 확률을 사용하는 분류 모델로서의 나이브 베이즈 분류(Naive Bayes Classification)와 비확률적 분류 모델인 서포트 벡터 머신(Support Vector Machine, SVM)을 통해 자세히 설명한 바 있다.
단계(1130)에서 컴퓨터 장치(200)는 결정된 사용자의 상황에 기초하여, 메시징 서비스를 통해 사용자에게 제공하기 위한 기능을 확인할 수 있다. 앞서 도 4 내지 도 8의 실시예에서는 메시지의 수신에 따라 알림창을 사용자에게 제공하는 기능에 대해 자세히 설명한 바 있다. 예를 들어, 상기 기능은 메시징 서비스를 통해 사용자에게 수신된 메시지에 대한 알림을 제공하기 위한 기능을 포함할 수 있으며, 사용자 인터페이스는 알림창을 표시하지 않는 구성, 알림창을 통해 메시지의 내용을 표시하는 구성, 알림창을 통해 메시지의 내용 및 선택 인터페이스를 제공하는 구성 및 알림창을 통해 메시지의 내용, 선택 인터페이스 및 텍스트 입력 인터페이스를 제공하는 구성을 포함할 수 있다. 이 경우, 컴퓨터 장치(200)는 단계(1130)에서 사용자의 기기 접근의 가능 여부, 사용자의 기기 조작의 가능 여부 및 사용자의 텍스트 입력의 가능 여부 각각에 대한 조합에 따라 복수의 레벨 중 하나의 레벨을 결정할 수 있다. 레벨은 실시예에 따라 컴퓨터 장치(200)와 네트워크(170)를 통해 연결되어 컴퓨터 장치(200)로 메시징 서비스를 제공하는 서버(150)가 컴퓨터 장치(200)로부터 수신되는 정보들을 통해 결정할 수도 있다.
단계(1140)에서 컴퓨터 장치(200)는 기능의 제공을 위해 제공되는 사용자 인터페이스의 구성을 결정된 사용자의 상황에 따라 동적으로 결정할 수 있다. 예를 들어, 레벨별로 제공될 사용자 인터페이스의 구성이 기설정될 수 있으며, 컴퓨터 장치(200)는 단계(1130)에서 결정된 레벨 이하의 레벨들에 의해 제공될 구성들이 포함된 사용자 인터페이스를 통해 상기 기능의 제공을 위한 사용자 인터페이스의 구성을 사용자의 상황에 따라 동적으로 결정할 수 있다.
단계(1150)에서 컴퓨터 장치(200)는 동적으로 결정된 구성의 사용자 인터페이스를 통해 기능을 제공할 수 있다. 따라서, 사용자는 자신의 상황에 따라 서로 다른 구성을 포함하는 사용자 인터페이스를 제공받아 상황별로 사용자 인터페이스를 통해 메시징 서비스와 인터랙션할 수 있게 된다.
도 12는 본 발명의 일실시예에 따른 인터랙션 방법의 다른 예를 도시한 흐름도이다. 본 실시예에 따른 인터랙션 방법은 앞서 설명한 컴퓨터 장치(200)에 의해 수행될 수 있다. 본 실시예에 따른 컴퓨터 장치(200)는 메시징 서비스를 제공하는 서버(150)에 대응할 수 있다. 예를 들어, 컴퓨터 장치(200)의 프로세서(220)는 메모리(210)가 포함하는 운영체제의 코드나 적어도 하나의 프로그램의 코드에 따른 제어 명령(instruction)을 실행하도록 구현될 수 있다. 여기서, 프로세서(220)는 컴퓨터 장치(200)에 저장된 코드가 제공하는 제어 명령에 따라 컴퓨터 장치(200)가 도 12의 인터랙션 방법이 포함하는 단계들(1210 내지 1250)을 수행하도록 컴퓨터 장치(200)를 제어할 수 있다.
단계(1210)에서 컴퓨터 장치(200)는 메시징 서비스를 이용하는 복수의 회원들 각각에 대해 인적 관계가 설정된 다른 회원들에 대한 정보를 저장 및 관리할 수 있다. 컴퓨터 장치(200)는 메시징 서비스를 제공하는 주체일 수 있으며, 따라서 메시징 서비스에서 회원들간의 인적 관계에 대한 정보를 관리할 수 있다.
단계(1220)에서 컴퓨터 장치(200)는 복수의 회원들 각각에 대한 상황 정보를 지속적으로 수집할 수 있다. 예를 들어, 메시징 서비스의 회원들의 모바일 기기들 각각에서 도 3의 제1 과정(310) 내지 제6 과정(360)을 통해 제공되는 정보들이 네트워크(170)를 컴퓨터 장치(200)로 수집될 수 있다. 이 경우, 컴퓨터 장치(200)는 제7 과정(370)을 수행하여 수집되는 정보들로부터 회원들의 상황 정보 및/또는 레벨(일례로 표 1을 통해 설명한 자유도)을 결정할 수 있다. 실시예에 따라 회원들의 모바일 기기들 각각에서 제1 과정(310) 내지 제7 과정(370)이 모두 수행될 수도 있다. 이 경우, 컴퓨터 장치(200)는 모바일 기기들 각각으로부터 상황 정보 및/또는 레벨을 수집할 수도 있다.
단계(1230)에서 컴퓨터 장치(200)는 수집된 상황 정보를 대응하는 회원과 연계하여 데이터베이스에 저장 및 갱신할 수 있다. 컴퓨터 장치(200)는 주기적으로 모바일 기기들로부터 상황 정보를 수집하여 데이터베이스를 갱신해나갈 수 있다.
단계(1240)에서 컴퓨터 장치(200)는 복수의 회원들 중 제1 회원과 인적 관계가 설정된 제2 회원에 대한 정보를 제1 회원에게 제공하는 경우, 제2 회원에 대한 상황 정보를 데이터베이스에서 추출할 수 있다. 만약, 제1 회원과 인적 관계가 설정된 다른 회원들의 리스트를 제공한다면, 컴퓨터 장치(200)는 다른 회원들 각각에 대한 상황 정보를 데이터베이스에서 추출할 수 있다.
단계(1250)에서 컴퓨터 장치(200)는 추출된 상황 정보를 제2 회원에 대한 정보와 함께 제1 회원에게 제공할 수 있다. 앞서 설명한 바와 같이, 제1 회원과 인적 관계가 설정된 다른 회원들의 리스트를 제공한다면, 컴퓨터 장치(200)는 추출된 다른 회원들 각각에 대한 상황 정보가 대응하는 다른 회원의 정보와 연계된 리스트를 제1 회원에게 제공할 수 있다.
실시예에 따라, 컴퓨터 장치(200)는 상황 정보와 함께, 또는 상황 정보 대신 대화 참여 가능 점수를 계산하여 제공할 수도 있다. 예를 들어, 컴퓨터 장치(200)는 데이터베이스에서 추출된 상황 정보를 이용하여 제2 회원에 대한 대화 참여 가능 점수를 계산하고, 계산된 대화 참여 가능 점수를 제2 회원에 대한 정보와 함께 제1 회원에게 제공할 수 있다. 이미 설명한 바와 같이, 대화 참여 가능 점수는 제2 회원의 상황에 대한 레벨의 값이 높을수록, 그리고 대화 세션을 통해 제2 회원이 송수신한 메시지들의 수가 많을수록 높게 계산될 수 있다.
다른 실시예로, 컴퓨터 장치(200)는 대화방에 대한 대화 참여 가능 점수를 제공할 수도 있다. 예를 들어, 컴퓨터 장치(200)는 제1 회원이 참여한 대화 세션에 대한 정보를 제공하는 경우, 대화 세션에 참여한 회원들 각각의 상황 정보를 데이터베이스에서 추출하고, 대화 세션에 참여한 회원들 각각의 상황 정보에 기반하여 대화 세션에 대한 대화 참여 가능 점수를 계산할 수 있다. 이 경우, 컴퓨터 장치(200)는 계산된 대화 참여 가능 점수를 대화 세션에 대한 정보와 함께 제1 회원에게 제공할 수 있다. 대화 참여 가능 점수는 대화 세션에 참여한 회원들 각각의 상황 정보에 따른 레벨이 높을수록, 그리고 대화 세션을 통해 송신 및/또는 수신된 메시지들의 수가 많을수록 높게 계산될 수 있다. 또한, 컴퓨터 장치(200)는 제1 회원이 참여한 대화 세션들 각각에 대한 대화 참여 가능 점수에 기반하여 제1 회원이 참여한 대화 세션들의 리스트를 정렬하고, 정렬된 리스트를 제1 회원에게 제공할 수도 있다.
또 다른 실시예로, 컴퓨터 장치(200)는 메시징 서비스와 연관하여 제1 회원의 모바일 기기에 설치 및 구동되는 어플리케이션을 통해, 제1 회원이 제1 회원과 인적 관계가 설정된 다른 회원들에게 상황 정보의 제공할 것인지 여부를 다른 회원들 각각에 대해 설정할 수 있는 사용자 인터페이스를 제공할 수 있다. 다시 말해, 메시징 서비스의 회원들 각각은 자신의 상황 정보를 친구들에게 노출할 것인지 여부를 친구들 각각에 대해 설정할 수 있다. 실시예에 따라 상황 정보뿐만 아니라, 대화 참여 가능 점수의 노출 여부 역시 친구들 각각에 대해 설정하기 위한 사용자 인터페이스가 제공될 수 있다.
또 다른 실시예로, 컴퓨터 장치(200)는 다른 회원들 중 제1 회원의 상황 정보와 동일한 상황 정보를 가지고 있거나 또는 제1 회원이 기설정한 상황 정보를 가지고 있는 제3 회원을 결정하고, 제3 회원을 제1 회원에게 추천하고, 추천된 제3 회원이 선택되는 경우, 제1 회원 및 제3 회원을 참여자로 하는 대화 세션을 생성할 수 있다. 다시 말해, 컴퓨터 장치(200)는 각각의 회원들에게 동일한 상황을 가진 친구나 회원들이 설정한 상황을 가진 친구를 추천할 수 있으며, 추천한 친구와 함께 대화방을 만들 수 있는 기능을 회원들에게 제공할 수 있다.
또 다른 실시예로, 컴퓨터 장치(200)는 복수의 회원들 중 동일한 상황 정보를 가지고 있는 회원들을 선택하여 선택된 회원들간의 익명의 대화 세션을 생성할 수 있다. 또한, 컴퓨터 장치(200)는 제1 회원에 의해 설정되는 상황 정보에 대응하는 익명의 대화 세션을 검색하고, 검색된 익명의 대화 세션에 대한 정보를 제1 회원에게 제공할 수 있다. 이때, 회원들의 선택이나 검색에는 지리적 위치가 더 활용될 수도 있다. 예를 들어, 동일한 지역에서 동일한 상황을 가진 사람들간의 익명 대화방이 생성, 검색 및 제공될 수 있게 된다.
이상에서와 같이, 본 발명의 실시예들에 따르면, 모바일 기기로 취득 가능한 현재 정보와 최근 기록을 사용하여 현재 사용자의 상황을 추론하고, 추론된 사용자의 상황에 따른 기기 접근 가능 여부, 기기 조작 가능 여부 및 텍스트 입력 가능 여부에 따라 사용자의 자유도 수준을 결정하며, 결정된 자유도 수준에 따라 메시징 서비스와의 인터랙션 방식을 결정함으로써, 동일한 기능(일례로, 알림의 제공)을 제공함에 있어서도 사용자의 상황에 따라 서로 다른 사용자 인터페이스를 제공할 수 있다.
또한, 메시징 서비스에서 사용자들의 상황에 대한 정보들을 취합하여 관리함으로써, 특정 사용자와 인적 관계가 설정된 다른 사용자들의 상태 정보를 해당 특정 사용자에게 제공할 수 있다.
또한, 메시징 서비스에서 사용자들의 상황에 대한 정보들을 취합하여 관리함으로써, 메시징 서비스에서 설정된 대화 세션들 각각에 대한 대화 참여 가능 점수에 대한 정보를 제공 및/또는 표시할 수 있다.
또한, 메시징 서비스에서 사용자들의 상황에 대한 정보들을 취합하여 관리함으로써, 메시징 서비스에서 대화 세션의 참여자들의 대화 집중도에 대한 정보를 제공 및/또는 표시할 수 있다.
또한, 메시징 서비스에서 사용자들의 상황에 대한 정보들을 취합하여 관리함으로써, 대화 세션의 생성 시 사용자들의 상황에 기반하여 대화 세션의 참여자를 추천할 수 있다.
또한, 메시징 서비스에서 사용자들의 상황에 대한 정보들을 취합하여 관리함으로써, 사용자들이 익명 기반의 대화 세션을 사용자들의 상황에 따라 검색, 생성 및 참여할 수 있는 기능을 제공할 수 있다.
이상에서 설명된 시스템 또는 장치는 하드웨어 구성요소, 소프트웨어 구성요소 또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 어플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 통상의 기술자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 이러한 기록매체는 단일 또는 수개 하드웨어가 결합된 형태의 다양한 기록수단 또는 저장수단일 수 있으며, 어떤 컴퓨터 시스템에 직접 접속되는 매체에 한정되지 않고, 네트워크 상에 분산 존재하는 것일 수도 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.

Claims (10)

  1. 모바일 기기의 인터랙션 방법에 있어서,
    메시지 서비스와 연관하여 상기 모바일 기기에 설치 및 구동된 어플리케이션의 제어에 따라, 상기 모바일 기기 또는 상기 모바일 기기의 사용자 중 적어도 하나의 상황과 연관된 정보를 취득하는 단계;
    상기 취득된 정보에 기반하여 상기 사용자의 상황을 결정하는 단계;
    상기 결정된 사용자의 상황에 기초하여, 상기 메시징 서비스를 통해 상기 사용자에게 제공하기 위한 기능을 확인하는 단계;
    상기 기능의 제공을 위해 제공되는 사용자 인터페이스의 구성을 상기 결정된 사용자의 상황에 따라 동적으로 결정하는 단계; 및
    상기 동적으로 결정된 구성의 사용자 인터페이스를 통해 상기 기능을 제공하는 단계
    를 포함하는 인터랙션 방법.
  2. 제1항에 있어서,
    상기 사용자의 상황을 결정하는 단계는,
    입력되는 정보를 통해 기 설정된 상황들 중 하나의 상황을 결정하도록 기계학습된 분류 모델에 상기 취득된 정보를 입력하여 결정되는 상황을 상기 사용자의 상황으로서 결정하는, 인터랙션 방법.
  3. 제1항에 있어서,
    상기 기능은 상기 메시징 서비스를 통해 상기 사용자에게 수신된 메시지에 대한 알림을 제공하기 위한 기능을 포함하고,
    상기 사용자 인터페이스는, 알림창을 표시하지 않는 구성, 알림창을 통해 메시지의 내용을 표시하는 구성, 알림창을 통해 메시지의 내용 및 선택 인터페이스를 제공하는 구성 및 알림창을 통해 메시지의 내용, 선택 인터페이스 및 텍스트 입력 인터페이스를 제공하는 구성을 포함하는, 인터랙션 방법.
  4. 제1항에 있어서,
    상기 사용자의 상황을 결정하는 단계는,
    상기 사용자의 기기 접근의 가능 여부, 상기 사용자의 기기 조작의 가능 여부 및 상기 사용자의 텍스트 입력의 가능 여부 각각에 대한 조합에 따라 복수의 레벨 중 하나의 레벨을 결정하는, 인터랙션 방법.
  5. 제4항에 있어서,
    상기 레벨별로 제공될 사용자 인터페이스의 구성이 기설정되고,
    상기 기능을 제공하는 단계는,
    상기 결정된 레벨 이하의 레벨들에 의해 제공될 구성들이 포함된 사용자 인터페이스를 통해 상기 기능을 제공하는, 인터랙션 방법.
  6. 컴퓨터와 결합되어 제1항 내지 제5항 중 어느 한 항의 방법을 컴퓨터에 실행시키기 위해 컴퓨터 판독 가능한 기록매체에 저장된 컴퓨터 프로그램.
  7. 제1항 내지 제5항 중 어느 한 항의 방법을 컴퓨터에 실행시키기 위한 프로그램이 기록되어 있는 것을 특징으로 하는 컴퓨터에서 판독 가능한 기록매체.
  8. 컴퓨터에서 판독 가능한 명령을 실행하도록 구현되는 적어도 하나의 프로세서
    를 포함하고,
    상기 적어도 하나의 프로세서에 의해,
    메시지 서비스와 연관하여 상기 모바일 기기에 설치 및 구동된 어플리케이션의 제어에 따라, 상기 모바일 기기 또는 상기 모바일 기기의 사용자 중 적어도 하나의 상황과 연관된 정보를 취득하고,
    상기 취득된 정보에 기반하여 상기 사용자의 상황을 결정하고,
    상기 결정된 사용자의 상황에 기초하여, 상기 메시징 서비스를 통해 상기 사용자에게 제공하기 위한 기능을 확인하고,
    상기 기능의 제공을 위해 제공되는 사용자 인터페이스의 구성을 상기 결정된 사용자의 상황에 따라 동적으로 결정하고,
    상기 동적으로 결정된 구성의 사용자 인터페이스를 통해 상기 기능을 제공하는
    동작들을 수행하는 컴퓨터 장치.
  9. 제8항에 있어서,
    상기 적어도 하나의 프로세서에 의해,
    입력되는 정보를 통해 기 설정된 상황들 중 하나의 상황을 결정하도록 기계학습된 분류 모델에 상기 취득된 정보를 입력하여 결정되는 상황을 상기 사용자의 상황으로서 결정하는
    동작을 수행하는, 컴퓨터 장치.
  10. 제14항에 있어서,
    상기 적어도 하나의 프로세서에 의해,
    상기 추출된 상황 정보를 이용하여 상기 제2 회원에 대한 대화 참여 가능 점수를 계산하고,
    상기 계산된 대화 참여 가능 점수를 상기 제2 회원에 대한 정보와 함께 상기 제1 회원에게 제공하는
    동작들을 수행하는 컴퓨터 장치.
PCT/KR2018/000628 2018-01-12 2018-01-12 메시징 서비스 환경에서의 사용자 상황 감지 및 사용자 상황에 기반한 메시징 서비스와의 인터랙션 WO2019139192A1 (ko)

Priority Applications (7)

Application Number Priority Date Filing Date Title
KR1020207014342A KR102363974B1 (ko) 2018-01-12 2018-01-12 메시징 서비스 환경에서의 사용자 상황 감지 및 사용자 상황에 기반한 메시징 서비스와의 인터랙션
PCT/KR2018/000628 WO2019139192A1 (ko) 2018-01-12 2018-01-12 메시징 서비스 환경에서의 사용자 상황 감지 및 사용자 상황에 기반한 메시징 서비스와의 인터랙션
JP2020538609A JP7119098B2 (ja) 2018-01-12 2018-01-12 メッセージングサービス環境におけるユーザ状況の感知と、ユーザ状況に基づくメッセージングサービスとのインタラクション
KR1020227004807A KR102443534B1 (ko) 2018-01-12 2018-01-12 메시징 서비스 환경에서의 사용자 상황 감지 및 사용자 상황에 기반한 메시징 서비스와의 인터랙션
US16/924,906 US11356399B2 (en) 2018-01-12 2020-07-09 User context recognition in messaging service environment and interaction with messaging service based on user context recognition
US17/737,208 US20220263783A1 (en) 2018-01-12 2022-05-05 User context recognition in messaging service environment and interaction with messaging service based on user context recognition
JP2022123865A JP7321338B2 (ja) 2018-01-12 2022-08-03 メッセージングサービス環境におけるユーザ状況の感知と、ユーザ状況に基づくメッセージングサービスとのインタラクション

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/KR2018/000628 WO2019139192A1 (ko) 2018-01-12 2018-01-12 메시징 서비스 환경에서의 사용자 상황 감지 및 사용자 상황에 기반한 메시징 서비스와의 인터랙션

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US16/924,906 Continuation US11356399B2 (en) 2018-01-12 2020-07-09 User context recognition in messaging service environment and interaction with messaging service based on user context recognition

Publications (1)

Publication Number Publication Date
WO2019139192A1 true WO2019139192A1 (ko) 2019-07-18

Family

ID=67219623

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2018/000628 WO2019139192A1 (ko) 2018-01-12 2018-01-12 메시징 서비스 환경에서의 사용자 상황 감지 및 사용자 상황에 기반한 메시징 서비스와의 인터랙션

Country Status (4)

Country Link
US (2) US11356399B2 (ko)
JP (1) JP7119098B2 (ko)
KR (2) KR102363974B1 (ko)
WO (1) WO2019139192A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11089109B1 (en) * 2019-11-20 2021-08-10 Sprint Communications Company L.P. Smart device management via a mobile communication device based on privacy preferences
US11093217B2 (en) * 2019-12-03 2021-08-17 International Business Machines Corporation Supervised environment controllable auto-generation of HTML
DE102021113470A1 (de) 2020-05-26 2021-12-02 Hyundai Mobis Co., Ltd. Leistungshalbleitervorrichtung und verfahren zur herstellung davon
CN113051381B (zh) * 2021-03-23 2024-03-08 京东科技控股股份有限公司 信息质检方法、装置、计算机系统和计算机可读存储介质
US11776255B2 (en) * 2021-10-22 2023-10-03 Kyndryl, Inc. Dynamic input system for smart glasses based on user availability states

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120059780A1 (en) * 2009-05-22 2012-03-08 Teknologian Tutkimuskeskus Vtt Context recognition in mobile devices
US20120109862A1 (en) * 2010-10-27 2012-05-03 Samsung Sds Co., Ltd. User device and method of recognizing user context
US20130328665A1 (en) * 2012-06-06 2013-12-12 Apple Inc. Generating Context-Based Options for Responding to a Notification
US20140201675A1 (en) * 2013-01-11 2014-07-17 Samsung Electronics Co., Ltd. Method and mobile device for providing recommended items based on context awareness
US20160021249A1 (en) * 2014-07-18 2016-01-21 Ebay Inc. Systems and methods for context based screen display

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7921368B2 (en) * 2004-01-22 2011-04-05 International Business Machines Corporation Method and system for sensing and communicating updated status information for remote users accessible through an instant messaging system
KR100810540B1 (ko) * 2005-12-08 2008-03-10 한국전자통신연구원 대화도구를 이용한 실시간 협력학습에서의 학습 참여자간상호작용 촉진 방법
US8583079B2 (en) * 2007-08-14 2013-11-12 Mpanion, Inc. Rich presence status based on location, activity, availability and transit status of a user
KR20100095205A (ko) * 2009-02-20 2010-08-30 주식회사 씽크풀 채팅 제공 시스템
US8863185B2 (en) * 2011-01-04 2014-10-14 Verizon Patent And Licensing Inc. Social television
US20130029681A1 (en) * 2011-03-31 2013-01-31 Qualcomm Incorporated Devices, methods, and apparatuses for inferring a position of a mobile device
KR101215066B1 (ko) * 2012-04-06 2012-12-24 주식회사 로가톡 메신저 목록 제공 방법, 서버 및 메신저 목록 디스플레이 방법
KR101971720B1 (ko) * 2012-08-06 2019-04-24 에스케이플래닛 주식회사 메시지 내용 분석 방법, 이를 위한 장치 및 시스템
US9015099B2 (en) * 2012-08-14 2015-04-21 Sri International Method, system and device for inferring a mobile user's current context and proactively providing assistance
KR20160133154A (ko) * 2015-05-12 2016-11-22 삼성전자주식회사 전자 장치 및 그의 그래픽 유저 인터페이스 제공 방법
JP6172765B2 (ja) * 2015-09-02 2017-08-02 Necプラットフォームズ株式会社 通知制御装置、通知制御方法及び通知制御プログラム
JP2017174018A (ja) * 2016-03-22 2017-09-28 Line株式会社 表示制御方法、プログラム、及び端末
US9990108B2 (en) * 2016-03-29 2018-06-05 Cisco Technology, Inc. Read activity of chat rooms
KR101910581B1 (ko) * 2017-06-16 2018-10-22 라인 가부시키가이샤 사용자 대화 활동성 및 대화 상황 정보를 활용한 대화방 정렬 방법 및 그 시스템

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120059780A1 (en) * 2009-05-22 2012-03-08 Teknologian Tutkimuskeskus Vtt Context recognition in mobile devices
US20120109862A1 (en) * 2010-10-27 2012-05-03 Samsung Sds Co., Ltd. User device and method of recognizing user context
US20130328665A1 (en) * 2012-06-06 2013-12-12 Apple Inc. Generating Context-Based Options for Responding to a Notification
US20140201675A1 (en) * 2013-01-11 2014-07-17 Samsung Electronics Co., Ltd. Method and mobile device for providing recommended items based on context awareness
US20160021249A1 (en) * 2014-07-18 2016-01-21 Ebay Inc. Systems and methods for context based screen display

Also Published As

Publication number Publication date
US11356399B2 (en) 2022-06-07
JP7119098B2 (ja) 2022-08-16
US20220263783A1 (en) 2022-08-18
JP2021516474A (ja) 2021-07-01
KR20220025239A (ko) 2022-03-03
KR102363974B1 (ko) 2022-02-16
KR102443534B1 (ko) 2022-09-15
KR20200064148A (ko) 2020-06-05
US20200344195A1 (en) 2020-10-29

Similar Documents

Publication Publication Date Title
WO2019139192A1 (ko) 메시징 서비스 환경에서의 사용자 상황 감지 및 사용자 상황에 기반한 메시징 서비스와의 인터랙션
CN107368508B (zh) 利用通讯工具服务的关键词检索方法及系统
WO2015133880A1 (ko) 광고 정보 갱신 방법 및 장치
WO2018174314A1 (ko) 스토리영상 제작 방법 및 시스템
WO2019059435A1 (ko) 위치 데이터가 포함된 컨텐츠를 이용한 추천 방법 및 그 시스템
JP7408785B2 (ja) 仮想プロップの割り当て方法及び関連装置
WO2019235653A1 (ko) 근거리 무선 통신을 기반으로 근처 지인을 파악하기 위한 방법과 시스템 및 비-일시적인 컴퓨터 판독 가능한 기록 매체
WO2018030554A1 (ko) 메시지 기반 통지를 제공하기 위한 방법 및 시스템
CN111459569A (zh) 快捷交通方法、装置、电子设备及存储介质
KR102646276B1 (ko) 새로운 사람을 소개해주는 영상통화의 통화시간을 공평하게 과금하는 방법 및 시스템
WO2019098423A1 (ko) 메시지의 대화 흐름을 파악하기 위한 방법과 시스템 및 비-일시적인 컴퓨터 판독 가능한 기록 매체
CN111246231B (zh) 直播管理方法、装置、服务器及计算机可读存储介质
CN111600729B (zh) 群成员添加方法及电子设备
CN109474889A (zh) 信息传输方法、移动终端及服务器
US20220279065A1 (en) Information processing terminal and automatic response method
WO2019156263A1 (ko) 대화방을 3차원 형태로 제공하는 방법과 시스템 및 비-일시적인 컴퓨터 판독 가능한 기록 매체
JP2009205504A (ja) 案内システム、サーバシステム、案内方法及びプログラム
JP7321338B2 (ja) メッセージングサービス環境におけるユーザ状況の感知と、ユーザ状況に基づくメッセージングサービスとのインタラクション
WO2019135614A1 (ko) 시간 위치 데이터를 이용한 사용자 활동 기반 조언 시스템 및 그 방법
KR20220035549A (ko) 자동 답변 봇을 이용하여 대화방 운영을 관리하는 방법 및 시스템
KR20160124055A (ko) 지도 상에서의 드로잉을 통한 개인 경로의 생성 및 공유
WO2019151548A1 (ko) 얼굴 인식에 기초하여 정보를 제공하는 방법과 시스템 및 비-일시적인 컴퓨터 판독 가능한 기록 매체
WO2019124851A1 (ko) 지오펜싱 기반의 컨텐츠를 클라우드소싱하는 방법 및 그 시스템
KR20210006122A (ko) 사용자의 위치 정보와 행사장 별 이벤트 정보를 이용하여 사용자의 관심사를 분석하는 방법, 시스템, 및 비-일시적인 컴퓨터 판독가능한 기록 매체에 저장되는 컴퓨터 프로그램
JP7093396B2 (ja) 情報処理端末および自動応答方法

Legal Events

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

Ref document number: 18899541

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 20207014342

Country of ref document: KR

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 2020538609

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18899541

Country of ref document: EP

Kind code of ref document: A1