Program, information processing method, and terminal
The program or information processing method dynamically suggests stickers in a chat room based on user input text, addressing the challenge of selecting appropriate stickers, thereby enhancing user convenience in messenger applications.
Patent Information
- Application Number
- JP2024110744
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-07-10
- Publication Date
- 2026-01-23
AI Technical Summary
Users face difficulty in easily selecting stickers that correspond to their dialogue in messenger applications.
A program or information processing method that displays candidate stickers in a chat room based on user input text, allowing for dynamic selection and suggestion of stickers.
Enhances the convenience of using stickers by facilitating easy selection based on user input, improving user experience in messenger applications.
Smart Images

Figure 2026010768000001_ABST
Abstract
Description
[Technical Field]
[0001] The present disclosure relates to a program and the like. [Background technology]
[0002] In a messenger application for online communication, stamps (stickers) are sometimes used to broaden the range of user expressions that can be sent and received. For example, Patent Document 1 discloses a method for generating video stamps. However, with the method disclosed in Patent Document 1, there may be cases where it is difficult for a user to easily select a stamp that corresponds to a dialogue. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Patent No. 7112508 Summary of the Invention [Problem to be solved by the invention]
[0004] An object of the present invention is to improve the convenience of using stickers. [Means for solving the problem]
[0005] According to a first aspect of the present invention, a program executed by a terminal displaying a chat room in which content is displayed causes the terminal to: display on a display unit of the terminal a first display of candidate stickers to be displayed as content in the chat room based on text entered by a user of the terminal; display in the chat room as content based on a first input by the user of the terminal regarding the display of content; and display on the display unit a second display of candidate stickers to be displayed as content in the chat room based on the first input. According to a second aspect of the present invention, an information processing method for a terminal displaying a chat room in which content is displayed includes displaying on a display unit of the terminal a first display of candidate stickers to be displayed as content in the chat room based on text entered by a user of the terminal, displaying the text in the chat room as content based on a first input by the user of the terminal regarding the display of content, and displaying on the display unit a second display of candidate stickers to be displayed as content in the chat room based on the first input. According to a third aspect of the present invention, a terminal displaying a chat room in which content is displayed comprises a display unit that displays a first display of candidate stickers to be displayed as content in the chat room based on text entered by a user of the terminal, displays the text as content in the chat room based on a first input by the user of the terminal regarding the display of content, and displays a second display of candidate stickers to be displayed as content in the chat room based on the first input. [Brief explanation of the drawings]
[0006] [Figure 1-1] FIG. 1 is a diagram showing an example of a system configuration of a communication system according to a first embodiment. [Figure 1-2] FIG. 3 is a diagram showing an example of functions realized by a control unit of the server according to the first embodiment. [Figure 1-3] FIG. 3 is a diagram showing an example of information stored in a storage unit of the server according to the first embodiment. [Figure 1-4] FIG. 3 is a diagram showing an example of account registration data according to the first embodiment. [Figure 1-5] FIG. 3 is a diagram showing an example of a stamp set management database according to the first embodiment. [Figure 1-6] FIG. 2 is a diagram showing an example of functions realized by a control unit of the terminal according to the first embodiment. [Figure 1-7] FIG. 3 is a diagram showing an example of information stored in a storage unit of the terminal according to the first embodiment. [Figure 1-8] FIG. 3 is a diagram showing an example of a screen displayed on a display unit of the terminal according to the first embodiment. [Figure 1-9] FIG. 3 is a diagram showing an example of a screen displayed on a display unit of the terminal according to the first embodiment. [Figure 1-10] 4 is a flowchart showing an example of the flow of processing executed by each device according to the first embodiment. [Figure 1-11] 4 is a flowchart showing an example of the flow of processing executed by each device according to the first embodiment. [Figure 1-12] 10 is a table showing processing subjects of stamp pre-suggestion processing and stamp post-suggestion processing according to the first embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0007] <Compliance with legal matters> It should be noted that the disclosures set forth herein are subject to compliance with the laws of the country of implementation, such as communications privacy, as required for the implementation of the disclosures.
[0008] <Embodiment> In this specification, for the sake of clarity, there are places where the words "for example" or "for example" are used, but please note that not only those places but also the entire embodiment described below are not limited to the contents of those words.
[0009] An embodiment for implementing a program etc. according to the present disclosure will be described with reference to the drawings.
[0010] The production of a terminal of the claimed invention (terminal of the claimed invention) may include the concept that, for example, a program (e.g., an application program) described in this specification is received (or received and stored in) on a terminal owned (possessed) by a user, thereby creating a state in which the functions of the claimed invention can be realized on the terminal (creating a state in which the claimed invention can be executed).
[0011] Furthermore, the production of the system of the claimed invention (the system of the claimed invention) may include the concept that, for example, a state in which the functions of the claimed invention of the system are realizable (a state in which the claimed invention is executable is created) is created by receiving a program (e.g., an application program) described in this specification transmitted from a server included in the system at a terminal included in the system (or by storing the received program in the terminal).
[0012] In this specification, a system may be configured to include, for example, a plurality of devices. The plurality of devices may be a combination of devices of the same type, a combination of devices of different types, or a combination of devices of the same type and devices of different types. A system can also be thought of as, for example, a number of devices working together to perform some kind of processing.
[0013] Furthermore, a system relating to a client (client device) and a server can be considered to be, for example, at least one of the following: (1) Terminals and servers (2) Server (3) Terminal
[0014] (1) is, for example, a system including at least one terminal and at least one server. An example of this is a client-server system.
[0015] The server is configured, for example, by the following devices, and may be a single device or a combination of multiple devices.
[0016] Specifically, a server is configured to have, for example, at least one processor (e.g., CPU: Central Processing Unit, GPU: Graphics Processing Unit, APU: Accelerated Processing Unit, DSP: Digital Signal Processor (e.g., ASIC: Application Specific Integrated Circuit, FPGA: Field Programmable Gate Array), etc.), computer device (processor + memory), control device, arithmetic device, processing device, etc., and may be configured to have multiple of the same type of device (e.g., CPU + CPU, homogeneous multi-core processor, etc.), or multiple of different types of device (e.g., CPU + DSP, heterogeneous multi-core processor, etc.), or may be a combination of multiple devices (e.g., processor + computer device, processor + arithmetic device, multiple devices made heterogeneous, etc.). The processor may be a virtual processor.
[0017] Furthermore, when a server performs some processing, if the server is configured with a single device, the processing described in the embodiments is performed by the single device. Furthermore, if the server is configured with multiple devices, some processing may be performed by one device, and other processing may be performed by another device. For example, if the server is configured with a processor and an arithmetic device, the processor may perform a first processing, and the arithmetic device may perform a second processing. Furthermore, when a plurality of devices are used, the devices may be located at positions physically separated from one another.
[0018] Furthermore, the functions of the server may be provided in the form of, for example, PaaS, IaaS, or SaaS in cloud computing.
[0019] The control unit of the system can be at least one of the control unit of the terminal and the control unit of the server. That is, for example, the control unit of the system can be either (1A) only the control unit of the terminal, (1B) only the control unit of the server, or (1C) both the control unit of the terminal and the control unit of the server.
[0020] Furthermore, the control and processing (hereinafter collectively referred to as "control, etc.") performed by the control unit of the system may be performed by (1A) only the control unit of the terminal, (1B) only the control unit of the server, or (1C) both the control unit of the terminal and the control unit of the server. In addition, in (1C), for example, some of the controls performed by the control unit of the system may be performed by the control unit of the terminal, and the remaining controls may be performed by the control unit of the server. In this case, the allocation (allocation) of the controls may be equal or may be allocated in different proportions.
[0021] Furthermore, when referring to the communication unit of a server, if the server is configured with a single device, it may refer to the communication unit itself that the single device has, or if the server is configured with multiple devices, it may be configured to include each communication unit that each device has. For example, if a server has a first device and a second device, and the first device has a first communication unit and the second device has a second communication unit, the communication unit of the server may be considered to include the first communication unit and the second communication unit.
[0022] (2) can be, for example, a system consisting of multiple servers (hereinafter referred to as a "server system") In this case, the configuration of each server can be similarly applied to the configuration described above.
[0023] The control etc. performed by the server system may be performed by only one of the multiple servers (2A), by only the other servers (2B), or by both the one server and the other servers (2C). In addition, in (2C), for example, one server may perform some of the control, etc., performed by the server system, and another server may perform the remaining control, etc. In this case, the allocation (allocation) of the control, etc. may be equal or may be allocated in different proportions.
[0024] (3) can be, for example, a system made up of multiple terminals. This system can be, for example, the following system. A system that gives server functions to terminals (distributed system). This can be realized using blockchain technology, for example. A system in which terminals communicate wirelessly with each other. This can be achieved by using short-range wireless communication technology such as Bluetooth (registered trademark) to communicate in a P2P (peer-to-peer) format.
[0025] The above is not limited to the control unit, but also applies to each functional unit such as an input / output unit, a communication unit, a storage unit, and a clock unit that may be components of the system.
[0026] In the following embodiment, for example, a system including a terminal and a server (for example, a client-server system) will be illustrated. It is also possible to apply the server system described in (2) above as the server.
[0027] Furthermore, instead of a system including a terminal and a server, it is also possible to apply a system that does not include a server, such as the system (3) above. In this case, the embodiment can be configured based on the above-mentioned blockchain technology. Specifically, for example, data stored and managed in a server described in the following embodiment is stored on the blockchain. Then, a terminal generates a transaction to the blockchain, and when the transaction is approved on the blockchain, the data stored on the blockchain is updated.
[0028] It should be noted that even when the term "terminal" is used, this is not limited to the meaning of a terminal as a client device in a client server. That is, a terminal may include the concept of a device that is not in a client-server context. Furthermore, when a part or all of the inventions described in this specification are executed by a program installed in a terminal, the program may be a program that has been installed in the terminal beforehand at the time of shipping the terminal (for example, a program pre-installed by the terminal manufacturer), or a program that is additionally installed after shipping the terminal. In other words, it also includes the case where a program included in an application or the like that is installed by the terminal seller or end user via a predetermined recording medium or a wired connection to a server or a connection via the Internet executes the inventions described in this specification.
[0029] Furthermore, in this specification, the expression "through a communication I / F" is used as appropriate. This may indicate, for example, that a device transmits and receives various information and data via a communication I / F (via a communication unit) based on the control of a control unit (such as a processor).
[0030] Furthermore, in this specification, when the terms "related to" and "related to" are used, such as "B related to A" or "B related to A," it may mean "B" that has some kind of relationship with "A." Specific examples of this will be described later.
[0031] Furthermore, in this specification, when a device performs processing on two or more objects, such as "sending A and B" or "receiving A and B," this may include performing "A" and "B" at the same time (hereinafter referred to as "simultaneous"), and performing "A" and "B" at different times (hereinafter referred to as "non-simultaneous"). For example, when referring to transmitting first information and second information, this may include both concepts of transmitting the first information and the second information at the same time, and transmitting the first information and the second information at different times. In addition, taking into account the lag (time lag), "simultaneous" may include "almost simultaneously."
[0032] Note that even though "A" and "B" are performed at different times, this only needs to be done with "A" and "B" as the processing targets, and the purposes do not necessarily have to be the same. For example, when transmitting first information and second information as described above, it is sufficient to transmit the first information and the second information, and this may include cases where the first information and the second information are transmitted for the same purpose, as well as cases where the first information and the second information are transmitted for different purposes.
[0033] In the following embodiments, a messaging service is exemplified as an example of a service that allows users to chat (hereinafter referred to as a "chat service"). Furthermore, an application that realizes the chat service is referred to as a "chat application," and an application that realizes the messaging service is referred to as a "messaging application." A chat application may, for example, allow users to chat in chat rooms. In the following embodiments, the name of the messaging application may be shown as "Messaging App" on the screen images.
[0034] Note that messaging services (MS) (including instant messaging services (IMS)) can also be considered one form of social networking services (SNS). Therefore, messaging services and social networking services may or may not be distinguished. In other words, messaging services may be included in social networking services.
[0035] In the following embodiments, an example of a messaging service is an IMS (Instant Messaging Service) that transmits and receives simple messages between a plurality of devices (for example, terminals) via a server. An instant messaging application, for example, may allow users to talk in talk rooms.
[0036] A chat room (for example, a talk room) can be a UI (User Interface) or GUI (Graphical User Interface) that allows each user to view content transmitted and received between terminals of multiple users.
[0037] In a messaging service, a user can exchange messages via a chat room by, for example, registering any account as a "friend."
[0038] Note that "friend" may refer to a relationship between a first user and a second user when, for example, the first user's account and the second user's account in a messaging application are unilaterally or bilaterally associated with each other. For example, if a first user's account and a second user's account are mutually associated, the first user and the second user may be said to be "friends." Also, if a first user's account is associated with a second user's account, the first user and the second user may be said to be "friends" even if the second user's account is not associated with the first user's account.
[0039] In addition, talk rooms can include one-on-one user talk rooms (hereinafter referred to as "one-on-one talk rooms"), group talk rooms including multiple users (hereinafter referred to as "group talk rooms"), and talk rooms with OA businesses (for example, businesses affiliated with messaging service providers) (hereinafter referred to as "OA talk rooms"), etc.
[0040] Furthermore, a messaging application account that is an account of a business operator and not a general user may be referred to as an "OA (Official Account)," and the user of this official account may be referred to as an "official user." This may also be referred to as an "official account user" or an "official account business operator," etc. In contrast, a messaging application account that is owned by a user who is not an OA provider is called a "general account," and a user of a general account is called a "general user." This may also be called a "general account user," etc. In other words, messaging application accounts may include general accounts and official accounts.
[0041] Furthermore, an OA business may also be able to use a terminal similar to that of a user with a general account to send and receive messages to and from other devices via the server.
[0042] Furthermore, a message (message information) is, for example, information that defines a sender and a destination used in a messaging service, and may be information that is made up of identification information (message ID) for identifying the message and message content. Furthermore, the message content may refer to the contents of the message excluding the message ID, for example. The message content may be one or more pieces of content.
[0043] Moreover, information set as identification information for identifying a message is called a "message ID." It can also be considered that message content included in messages with the same message ID is identified by this message ID. Therefore, identification information for identifying a message can also be considered to be essentially synonymous with identification information for identifying message content. Alternatively, individual identification information (message content ID) may be set for each message content, but this is not required.
[0044] The content may include, for example, text content in text format, image content in image format (including at least one of still images and moving images), and sound content in sound format (including voice). In addition, it may also include operation content such as buttons and icons for user operations, and link content such as URIs (including URLs).
[0045] The text may include, for example, at least one of characters from each country represented by a character code, extended characters, machine-dependent characters, numbers, symbols, figures, and codes. The text does not have to include at least one of the above characters, extended characters, machine-dependent characters, numbers, symbols, figures, and signs, and may include other text.
[0046] The image may include at least one of various types of image information such as an icon, a button, a stamp (sticker), a pictogram, and a banner image.
[0047] Unlike the above definition, it is possible to define that a superordinate concept of a message is content, or that content and message are synonymous, but it is not necessary to define them in this way.
[0048] <First Example> In the first embodiment, for example, in a chat room including a first user and a second user, when the first user inputs text to send to the chat room, a stamp is suggested based on the text being input. Also, when the first user sends text to the chat room, a stamp is suggested based on the text after input (the sent text). The contents described in the first embodiment can be similarly applied to any of the other embodiments and other modified examples.
[0049] In the following embodiments, one or more stamps suggested while a user is entering text to send to a chat room are referred to as "pre-suggested stamps." Furthermore, one or more stamps suggested in relation to the text sent to a chat room after the user has entered the text are referred to as "post-suggested stamps." Pre-suggested stamps and post-suggested stamps may also be referred to as "pre-suggested stickers" and "post-suggested stickers." Furthermore, "stamp content" may also be referred to as "sticker content." The pre-suggest stamp and the post-suggest stamp may be examples of sticker candidates (hereinafter referred to as "sticker candidates") to be displayed as content in a chat room.
[0050] In the following description, the user of terminal 20A communicating with server 10 that provides messaging services is referred to as "user AA," the user of terminal 20B as "user BB," the user of terminal 20C as "user CC," and so on.
[0051] <System configuration> 1-1 is a diagram illustrating an example of a system configuration of a communication system 1 according to this embodiment. In the communication system 1, for example, a server 10 is connected to one or more terminals 20 (terminal 20A, terminal 20B, terminal 20C, ...) via a network 30.
[0052] The server 10 has a function of providing, for example, a messaging service to a terminal 20 or the like owned by a user via a network 30. The server 10 can also be expressed as a messaging service server, an IMS server, etc. In this embodiment, for example, the user of the server 10 is a company that provides a messaging service (a messaging service provider). Note that the number of servers 10 and the number of terminals 20 connected to the network 30 are not limited to those described above. In this embodiment, the "messaging service" is a service provided by a business operator (server 10) such as a company that provides messaging services, and may be provided to a user (user terminal 20), for example.
[0053] The terminal 20 (terminal 20A, terminal 20B, terminal 20C, etc.) may be any information processing terminal capable of implementing the functions described in each embodiment. The terminal 20 includes, for example, a smartphone, a mobile phone (feature phone), a computer (e.g., a desktop, laptop, tablet, etc.), a media computer platform (e.g., a cable or satellite set-top box, digital video recorder), a handheld computer device (e.g., a PDA (personal digital assistant), an email client, etc.), a wearable device (glasses-type device, watch-type device, etc.), a VR (Virtual Reality) terminal, a smart speaker (a device for voice recognition), or other types of computers or communication platforms. The terminal 20 may also be referred to as an information processing terminal.
[0054] The configurations of terminal 20A, terminal 20B, and terminal 20C can be the same, for example. Furthermore, as necessary, the terminal used by user X may be expressed as terminal 20X, and user information in a predetermined service associated with user X or terminal 20X may or may not be expressed as user information X. The user information is information of a user associated with an account used by the user in a predetermined service. The user information includes, for example, information associated with the user, such as the user's name, user icon image, user age, user gender, user address, user hobbies and interests, and user identifier, which is input by the user or assigned by the predetermined service, and may be any one of these, or a combination thereof, or may not be all of these.
[0055] The network 30 serves to connect the devices that make up the communication system 1. In other words, the network 30 refers to a communication network that provides connection paths so that the above-mentioned various devices can be connected and then transmit and receive data.
[0056] One or more portions of network 30 may or may not be a wired or wireless network. Network 30 may include, for example, an ad hoc network, an intranet, an extranet, a virtual private network (VPN), a local area network (LAN), a wireless LAN (WLAN), a wide area network (WAN), a wireless WAN (WWAN), a metropolitan area network (MAN), a portion of the Internet, a portion of the Public Switched Telephone Network (PSTN), a cellular network, integrated service digital networks (ISDN), wireless LAN, long term evolution (LTE), code division multiple access (CDMA), Bluetooth, satellite communications, etc., or a combination of two or more thereof. Network 30 may include one or more networks 30.
[0057] The server 10 (which is not limited to an example of a server, information processing device, or information management device) has a function of providing a predetermined service (a messaging service in this embodiment) to the terminal 20, etc. The server 10 may be any device that is an information processing device that can realize the functions described in each embodiment. The server 10 includes, for example, a server device, a computer (e.g., a desktop, a laptop, a tablet, etc.), a media computer platform (e.g., a cable or satellite set-top box, a digital video recorder), a handheld computer device (e.g., a PDA, an email client, etc.), or other types of computers or communication platforms. The server 10 may also be referred to as an information processing device. When there is no need to distinguish between the server 10 and the terminal 20, the server 10 and the terminal 20 may or may not each be referred to as an information processing device.
[0058] [Hardware (HW) configuration of each device] The hardware configuration of each device included in the communication system 1 will be described.
[0059] (1) Hardware configuration of the terminal FIG. 1-1 shows an example of the hardware configuration of the terminal 20. The terminal 20 includes, for example, a control unit 21 (CPU: central processing unit), a storage unit 28, a communication I / F 22 (interface), an input / output unit 23, a clock unit 29A, and a position calculation information detection unit 29B. The HW components of the terminal 20 are connected to each other, for example, via a bus B. It is not essential that the HW configuration of the terminal 20 includes all of the components. For example, the terminal 20 may or may not be configured so that individual components or multiple components can be removed.
[0060] The communication I / F 22 transmits and receives various data via the network 30. The communication may be performed either wired or wirelessly, and any communication protocol may be used as long as mutual communication is possible. The communication I / F 22 has a function of communicating with various devices such as the server 10 via the network 30. The communication I / F 22 transmits various data to various devices such as the server 10 in accordance with instructions from the control unit 21. The communication I / F 22 also receives various data transmitted from various devices such as the server 10 and transmits it to the control unit 21. The communication I / F 22 may also be simply referred to as a communication unit. When the communication I / F 22 is configured as a physically structured circuit, it may also be referred to as a communication circuit.
[0061] The input / output unit 23 includes a device for inputting various operations to the terminal 20, a device for outputting processing results processed by the terminal 20, etc. The input / output unit 23 may be an integrated input unit and an output unit, or may be separate input unit and output unit, or may not be so.
[0062] The input unit is realized by any one or a combination of all types of devices that can accept input from a user and transmit information related to the input to the control unit 21. The input unit includes, for example, a touch panel, a touch display, hardware keys such as a keyboard, a pointing device such as a mouse, a camera (for operation input via moving images), and a microphone (for operation input by voice).
[0063] The output unit is realized by any one or a combination of all types of devices that can output the processing results processed by the control unit 21. The output unit includes, for example, a touch panel, a touch display, a speaker (audio output), a lens (for example, 3D (three dimensions) output or hologram output), a printer, etc.
[0064] By way of example only, the input / output unit 23 includes, for example, a display unit 24, a sound input unit 25, a sound output unit 26, and an imaging unit 27.
[0065] The display unit 24 is realized by any one of all types of devices or a combination thereof that can display according to the display data written to the frame buffer. The display unit 24 includes, for example, a touch panel, a touch display, a monitor (e.g., a liquid crystal display or an organic electroluminescence display (OLED)), a head mounted display (HDM), a projection mapping, a hologram, a device that can display images, text information, etc. in air (which may or may not be a vacuum), etc. Note that these display units 24 may or may not be capable of displaying display data in 3D.
[0066] The sound input unit 25 is used to input sound data (including voice data; the same applies below.) The sound input unit 25 includes a microphone and the like. The sound output unit 26 is used to output sound data and includes a speaker and the like. The imaging unit 27 is used to acquire image data (including still image data and moving image data; the same applies below.) The imaging unit 27 includes a camera and the like.
[0067] When the input / output unit 23 is a touch panel, the input / output unit 23 and the display unit 24 may be disposed opposite each other and have approximately the same size and shape.
[0068] The clock unit 29A is a built-in clock of the terminal 20, and outputs time information (timekeeping information). The clock unit 29A is configured to include, for example, a clock that uses a crystal oscillator. The clock unit 29A can also be expressed as, for example, a timekeeping unit or a time information detection unit.
[0069] The clock unit 29A may or may not have a clock that conforms to the NITZ (Network Identity and Time Zone) standard or the like.
[0070] The position calculation information detection unit 29B is a functional unit that detects (measures) information (hereinafter referred to as "position calculation information") necessary for the control unit 21 to calculate (measure) the position of its own terminal 20. The position calculation information detection unit 29B can also be expressed as, for example, a position calculation sensor unit.
[0071] The position calculation information detection unit 29B includes, for example, a satellite positioning sensor (satellite positioning unit) which is a sensor or unit for calculating the position of the terminal 20 using a satellite positioning system such as GPS (Global Positioning System), an inertial measurement sensor (inertial measurement unit (IMU (Inertial Measurement Unit))) which is a sensor or unit for calculating the position of the terminal 20 using an inertial navigation system, a UWB positioning sensor (UWB positioning unit) which is a sensor or unit for calculating the position of the terminal 20 using UWB (Ultra Wide Band), and the like.
[0072] The satellite positioning unit includes, for example, an RF receiving circuit that converts RF (Radio Frequency) signals, including positioning satellite signals transmitted from positioning satellites and received by an antenna (not shown), into digital signals, and a baseband processing circuit that performs correlation calculation processing on the digital signals output from the RF receiving circuit to capture the positioning satellite signals, and outputs information such as satellite orbit data and time data extracted from the positioning satellite signals as information for position calculation.
[0073] The inertial measurement unit has an inertial sensor that is a sensor that detects information necessary for calculating the position of the terminal 20 by inertial navigation calculation. The inertial sensor includes, for example, a three-axis acceleration sensor and a three-axis gyro sensor, and outputs the acceleration detected by the acceleration sensor and the angular velocity detected by the gyro sensor as information for position calculation.
[0074] The UWB positioning unit includes, for example, an ultra-wideband RF (Radio Frequency) receiving circuit that converts an ultra-wideband RF signal, including an ultra-wideband pulse signal for positioning transmitted from a positioning beacon and received by an antenna not shown, into a digital signal, and a relative position calculation processing circuit that calculates the relative position between the terminal 20 and the positioning beacon based on the digital signal output from the ultra-wideband RF receiving circuit. For example, the UWB positioning unit may or may not cause the terminal 20 to function as a positioning beacon by transmitting an ultra-wideband RF signal including an ultra-wideband pulse signal for positioning from an antenna not shown.
[0075] Control unit 21 calculates the position of its own terminal 20 at regular intervals or specific intervals based on the position calculation information detected by position calculation information detection unit 29B, for example. The position of the terminal is referred to as the "terminal position," and the calculated terminal position is referred to as the "calculated terminal position." Control unit 21 may, but need not, associate the calculated terminal position with the date and time when the calculated terminal position was calculated and store the calculated terminal position in storage unit 28 as calculated terminal position history data.
[0076] The control unit 21 has a physically structured circuit for executing the functions realized by the codes or instructions contained in the program, and is realized by, for example, a data processing device built into hardware. Therefore, the control unit 21 may or may not be expressed as a control circuit.
[0077] The control unit 21 includes, for example, a central processing unit (CPU), a microprocessor, a processor core, a multiprocessor, an application-specific integrated circuit (ASIC), and a field programmable gate array (FPGA).
[0078] The storage unit 28 has a function of storing various programs and various data required for the operation of the terminal 20. The storage unit 28 includes various storage media, such as a hard disk drive (HDD), a solid state drive (SSD), a flash memory, a random access memory (RAM), and a read only memory (ROM). The storage unit 28 may or may not be expressed as a memory.
[0079] Terminal 20 stores program P in storage unit 28, and by executing this program P, control unit 21 executes the processing of each unit included in control unit 21. In other words, program P stored in storage unit 28 causes terminal 20 to realize each function executed by control unit 21. Furthermore, this program P may or may not be expressed as a program module.
[0080] (2) Server hardware configuration FIG. 1-1 shows an example of the hardware configuration of the server 10. In FIG. The server 10 includes, for example, a control unit 11 (CPU), a storage unit 15, a communication I / F 14 (interface), an input / output unit 12, a display unit 13, and a clock unit 19. The components of the HW of the server 10 are connected to each other, for example, via a bus B. Note that the HW of the server 10 does not necessarily have to include all components as the configuration of the HW of the server 10. For example, the HW of the server 10 may or may not be configured so that individual components or multiple components can be removed.
[0081] The control unit 11 has circuits that are physically structured to execute functions realized by the codes or instructions contained in the program, and is realized, for example, by a data processing device built into hardware.
[0082] The control unit 11 is typically a central processing unit (CPU), but may also be a microprocessor, a processor core, a multiprocessor, an ASIC, or an FPGA. In the present disclosure, the control unit 11 is not limited to these.
[0083] The storage unit 15 has a function of storing various programs and various data required for the operation of the server 10. The storage unit 15 is realized by various storage media such as an HDD, an SSD, and a flash memory. However, in the present disclosure, the storage unit 15 is not limited to these. Furthermore, the storage unit 15 may or may not be expressed as a memory.
[0084] The communication I / F 14 transmits and receives various data via the network 30. The communication may be performed either wired or wirelessly, and any communication protocol may be used as long as mutual communication is possible. The communication I / F 14 has a function of communicating with various devices such as the terminal 20 via the network 30. The communication I / F 14 transmits various data to various devices such as the terminal 20 in accordance with instructions from the control unit 11. The communication I / F 14 also receives various data transmitted from various devices such as the terminal 20 and transmits it to the control unit 11. The communication I / F 14 may also be simply referred to as a communication unit. When the communication I / F 14 is configured as a physically structured circuit, it may also be referred to as a communication circuit.
[0085] The input / output unit 12 includes a device for inputting various operations to the server 10, a device for outputting processing results processed by the server 10, etc. The input / output unit 12 may be an integrated input unit and an output unit, or may be separate input unit and output unit, or may not be the same.
[0086] The input unit is realized by any one of or a combination of all types of devices that can accept input from a user and transmit information related to the input to the control unit 11. The input unit is typically realized by hardware keys such as a keyboard or a pointing device such as a mouse. Note that the input unit may or may not include, for example, a touch panel, a camera (for operation input via moving images), or a microphone (for operation input by voice).
[0087] The output unit is realized by any one or a combination of all kinds of devices that can output the processing results processed by the control unit 11. The output unit includes, for example, a touch panel, a touch display, a speaker (sound output), a lens (for example, 3D (three dimensions) output or hologram output), a printer, etc.
[0088] By way of example only, the input / output unit 12 includes a display unit 13, for example.
[0089] The display unit 13 is realized by a display or the like. The display is typically realized by a monitor (for example, a liquid crystal display or an organic electroluminescence display (OLED)). The display may or may not be a head-mounted display (HDM) or the like. These displays may or may not be capable of displaying display data in 3D. In the present disclosure, the display is not limited to these.
[0090] The clock unit 19 is a built-in clock of the server 10, and outputs time information (timekeeping information). The clock unit 19 is configured to have, for example, an RTC (Real Time Clock) as a hardware clock, a system clock, etc. The clock unit 19 can also be expressed as, for example, a timekeeping unit or a time information detection unit.
[0091] (3) Other Server 10 stores program P in storage unit 15, and by executing this program P, control unit 11 executes the processes of each unit included in control unit 11. In other words, program P stored in storage unit 15 causes server 10 to realize each function executed by control unit 11. This program P may or may not be expressed as a program module. The same applies to other devices.
[0092] In each embodiment of the present disclosure, the description will be given assuming that the CPU of the terminal 20 and / or the server 10 executes the program P to realize the present invention. The same applies to other devices.
[0093] The control unit 21 of the terminal 20 and / or the control unit 11 of the server 10 may or may not realize each process not only by a CPU having a control circuit but also by a logic circuit (hardware) formed in an integrated circuit (IC (Integrated Circuit) chip, LSI (Large Scale Integration)), or a dedicated circuit. These circuits may be realized by one or more integrated circuits, and multiple processes shown in each embodiment may or may not be realized by a single integrated circuit. LSIs may also be called VLSIs, super LSIs, ultra LSIs, etc. depending on the degree of integration. Therefore, the control unit 21 may or may not be expressed as a control circuit. The same applies to other devices.
[0094] Furthermore, the program P (e.g., a software program, a computer program, or a program module) of each embodiment of the present disclosure may or may not be provided in a state stored in a computer-readable storage medium. The storage medium can store the program P in a "non-transitory tangible medium." The program P may or may not be intended to realize part of the functions of each embodiment of the present disclosure. Furthermore, the program P may or may not be a so-called differential file (differential program) that can realize the functions of each embodiment of the present disclosure in combination with a program P already recorded on a storage medium.
[0095] The storage medium may include one or more semiconductor-based or other integrated circuits (ICs) (e.g., field programmable gate arrays (FPGAs) or application-specific ICs (ASICs)), hard disk drives (HDDs), hybrid hard drives (HHDs), optical disks, optical disk drives (ODDs), magneto-optical disks, magneto-optical drives, floppy diskettes, floppy disk drives (FDDs), magnetic tapes, solid-state drives (SSDs), RAM drives, secure digital cards, or drives, any other suitable storage media, or any suitable combination of two or more of these. The storage medium may be volatile, nonvolatile, or a combination of volatile and nonvolatile, as appropriate. The storage medium is not limited to these examples and may be any device or medium capable of storing the program P. Furthermore, the storage medium may or may not be referred to as memory.
[0096] The server 10 and / or the terminal 20 can implement the functions of the multiple functional units shown in each embodiment by reading out the program P stored in the storage medium and executing the read out program P. The same applies to other devices.
[0097] Furthermore, the program P of the present disclosure may or may not be provided to the server 10 and / or the terminal 20 via any transmission medium capable of transmitting a program (such as a communication network or broadcast waves). The server 10 and / or the terminal 20 executes the program P downloaded via the Internet or the like, for example, to realize the functions of the multiple functional units shown in each embodiment. The same applies to other devices.
[0098] In addition, each embodiment of the present disclosure may also be realized in the form of a data signal in which the program P is embodied by electronic transmission. At least a part of the processing in the server 10 and / or the terminal 20 may or may not be realized by cloud computing configured by one or more computers. At least a part or all of the processing in the terminal 20 may or may not be performed by the server 10. In this case, at least a part or all of the processing of each functional unit of the control unit 21 of the terminal 20 may or may not be performed by the server 10. At least a part or all of the processing in the server 10 may or may not be performed by the terminal 20. In this case, at least a part or all of the processing of each functional unit of the control unit 11 of the server 10 may or may not be performed by the terminal 20. Unless explicitly stated otherwise, the judgment configuration in the embodiments of the present disclosure is not essential, and a predetermined process may or may not be performed when the judgment condition is met, or when the judgment condition is not met.
[0099] The program of the present disclosure is implemented using, for example, a scripting language such as ActionScript or JavaScript (registered trademark), a compiler language such as Objective-C or Java (registered trademark), or a markup language such as HTML Living Standard.
[0100] [Functional configuration of each device] (1) Server functional configuration FIG. 1-2 is a diagram showing an example of functions realized by the control unit 11 of the server 10 in this embodiment. The control unit 11 includes, for example, an application management processing unit 111 as a functional unit.
[0101] The application management processing unit 111 has a function of executing application management processing in accordance with an application management processing program 151 stored in the storage unit 15, for example.
[0102] FIG. 1-3 is a diagram showing an example of information stored in the storage unit 15 of the server 10 in this embodiment. The storage unit 15 stores, for example, an application management processing program 151 executed as application management processing, account registration data 153, and a stamp set management database 155.
[0103] The account registration data 153 is registration data relating to the account of an application (messaging application in this embodiment), and an example of the data configuration is shown in FIG. 1-4. The account registration data 153 stores, for example, a user name, an application ID, and other registration information in association with each other.
[0104] The user name is the name of the account of the terminal 20 that uses this application, and for example, the name that the user of the terminal 20 registers when using the application is stored.
[0105] The application ID is information used to identify an application account, or the account itself. This application ID is preferably a value that is unique for each account, and for example, a unique value (proper value) is set and stored by the server 10 for each account. The application ID is information associated with the terminal 20 or the user of the terminal 20, and is an example of information about the terminal or information about the user of the terminal.
[0106] Other registration information may include various types of information, such as identification information for identifying terminal 20, the telephone number (terminal telephone number) of terminal 20, an email address (terminal email address), and authentication information such as passwords (login password, authentication password, etc.) used for various authentications in applications. The other registration information may also store, for example, stamp set IDs that can be used (transmitted) by the account identified by the application ID. The stamp set IDs will be described later.
[0107] The identification information for identifying the terminal 20 may be, for example, a terminal ID (for example, an IMEI (International Mobile Equipment Identity)).
[0108] For example, the other registered information may be stored in association with user information.
[0109] Note that the application ID may or may not be replaced with a "user ID." Furthermore, if the application allows only one account to be registered per terminal 20, for example, "identification information for identifying the terminal 20 = identification information for identifying the user of the terminal 20 = application ID" may be used.
[0110] Also, for example, it may or may not be possible to assign multiple terminal IDs to one application ID. In this case, it may or may not be possible to simultaneously launch an application on multiple terminals 20 using one application ID as an identification (login) target.
[0111] Furthermore, instead of various IDs such as application IDs, it is also possible to apply a method of managing accounts using information such as terminal phone numbers. In this case, instead of storing information on IDs such as application IDs in account registration data 153, information on terminal telephone numbers and the like can be stored in account registration data 153. It is also possible to have one-to-one correspondence between information on IDs such as application IDs and information on terminal telephone numbers and the like, without replacing information on IDs such as application IDs with information on terminal telephone numbers and the like, but this is not required.
[0112] In the following embodiment, for the sake of simplicity, it is assumed that one account is registered for one terminal 20. Furthermore, in this case, as described above, "identification information for identifying terminal 20 = identification information for identifying the user of terminal 20 = application ID," so the term "user of the account" used in the following explanation may or may not be substantially synonymous with "terminal of the account."
[0113] The stamp set management database 155 is a database for managing information about stamp sets created and registered by, for example, messaging service providers, users, etc., and an example of the data configuration thereof is shown in FIG. 1-5. Stamp set management data is stored as management data for each stamp set in the stamp set management database 155. A stamp set may be said to be a collection of stamps, each of which is a collection of individual stamps grouped together by character or the like.
[0114] In each stamp set management data, for example, a stamp set ID, a stamp set name, a creator application ID, other stamp set information, and stamp management data are stored in association with each other.
[0115] The stamp set ID is information for identifying a created stamp set, and for example, when a stamp set is registered, a unique value (proper value) is set and stored for each stamp set by the server 10.
[0116] The stamp set name is the name of the stamp set, and for example, the name set by the user when registering the stamp set is stored.
[0117] The creator application ID is information for identifying the user who created this stamp set, and for example, the application ID of the user who created the stamp set, registered in the account registration data 153, is stored. If the user who created the stamp set is a user of the server 10 (the administrator of the service), the creator application ID may store identification information indicating the administrator. Furthermore, the user (creator) who created the stamp set may be the owner of the stamp set, and it may be that "creator = owner" or "creator ≠ owner."
[0118] Other stamp set information may also include various other information such as a description of the stamp set, the selling price of the stamp set, and the period during which the stamp set can be used (expiration date).
[0119] The stamp management data is data for managing information about each stamp included in the stamp set. For example, the stamp management data stores a stamp ID, stamp attribute, stamp type, and stamp image URI in association with each other.
[0120] The stamp ID is information for identifying a stamp in a stamp set, and is, for example, assigned a unique value (e.g., a serial number) for each stamp and stored by the server 10. For example, by specifying the stamp set ID and the stamp ID, an individual stamp (stamp image) can be specified.
[0121] The stamp attribute is label information for identifying the meaning or situation associated with the stamp. For example, the stamp attribute may be set to attributes such as "greeting," "thanks," "affirmative," "negative," "fun," "cute," and "scary." The stamp attributes may be set by the user for each stamp when registering a stamp set, or may be automatically set based on the results of image semantic analysis of the stamp images performed by the server 10 after the stamp set is registered.
[0122] The stamp type is label information for identifying the visual (image) characteristics of the stamp. For example, the following types may be set as the stamp type. · With text: A stamp that contains an image of a character or other object and text strings related to stamp attributes. · No text: A stamp that contains only an image of a character or other object. Text only: A stamp that contains only text strings related to stamp attributes in the stamp image. The stamp type may be set by the user for each stamp when registering a stamp set, or may be automatically set based on the result of image analysis processing of the stamp image by the server 10 when the stamp set is registered.
[0123] The stamp image URI is information indicating the storage location of the registered stamp image. For example, when a stamp image is registered, the server 10 stores the location where the image file of the stamp image is saved.
[0124] (2) Functional configuration of the terminal FIG. 1-6 is a diagram showing an example of functions realized by the control unit 21 of the terminal 20 in this embodiment. The control unit 21 includes, as a functional unit, an application processing unit 211 for executing application processing in accordance with an application processing program 281 stored in the storage unit 28, for example.
[0125] FIG. 1-7 is a diagram showing an example of data stored in the storage unit 28 of the terminal 20 in this embodiment. The storage unit 28 stores, for example, an application processing program 281 to be executed as application processing, and an application ID 283 corresponding to the terminal 20 or the account of the user of the terminal 20.
[0126] <Display screen> Examples of display screens will be described below. The transitions of the display screens described below are merely examples of transitions of the display screens for realizing the technique of the present disclosure. In the transitions of the display screens exemplified below, the display of some of the display screens may be omitted, or other display screens may be added. Furthermore, the terms used on the display screens described below may differ from the terms used in the processes described thereafter (some terms may not be consistent).
[0127] In the following, for example, the terminal 20 is a smartphone equipped with a display unit 24 that is a vertically long display. In the smartphone, for example, a touch panel that functions as an input unit is disposed opposite the display, forming a touch screen. When an element such as an icon, button, item, or input area is displayed on the display, and a part of the touch panel that faces the area where the element is displayed is operated by the user, a program associated with the element or a subroutine of the program may be executed.
[0128] Note that there may be cases where the flow of screen transitions is explained by showing a specific screen displayed on different terminals 20 within one drawing or across multiple drawings. In this case, for example, a specific screen may be displayed on a different terminal 20 based on (triggered by) at least one of the following: - Automatically displayed A notification (including a push notification, etc.; the same applies below) is sent to the terminal 20, and is displayed when the user performs an operation in response to the notification. No notification is sent to the terminal 20, but it is displayed when the user performs a predetermined operation on the application. A notification is sent to the terminal 20, and the message is displayed when the user performs a predetermined operation on the application that sent the notification.
[0129] In the following, a case will be exemplified in which the terminal 20A of user AA is used as an example of an account for sending text messages and stamps.
[0130] FIG. 1-8 is a diagram showing an example of a screen displayed on the display unit 24 of the terminal 20A in this embodiment.
[0131] The left side of FIG. 1-8 shows an example of a talk room screen displayed on terminal 20A, and the left side displays a screen of a one-to-one talk room in which user BB is the talk partner (chat partner).
[0132] The chat room screen is configured to display an area CR where content and similar information are displayed (hereinafter referred to as the "content display area"), and for example, content sent by the user (content originating from the user) may be displayed on the right side of the screen, and content sent by the other user (content originating from the other user) may be displayed on the left side of the screen. The content may also be displayed in association with information that allows the sender to be specified or identified, such as a registered icon image of the user. The content may also be displayed in a speech bubble. In this case, the text in the speech bubble may be considered to be the content, or the speech bubble may be considered to be the content. Also, depending on the type of content or the information contained in the content, it may be possible not to display the content in a balloon.
[0133] Also, for example, a message input area MIR for inputting content to be sent to the talk room is displayed at the bottom of the talk room screen. On this screen, the text string to be sent as text content, "OK! Let's meet at the park," is partially entered and displayed in the text input area TIR provided in the message input area MIR, based on user input into the keyboard area that pops up from the bottom of the screen.
[0134] For example, a pre-suggest stamp display area PRS for displaying pre-suggest stamps is configured to be displayed above the message input area MIR based on the text input in the text input area TIR. In this example, the pre-suggest stamp display area PRS is configured as an area superimposed on the content display area CR. In the pre-suggest stamp display area PRS, for example, based on the word "OK" at the beginning of the string of characters entered in the text input area TIR, stamp ST1 of the stamp type "with text", stamp ST2 of the stamp type "without text", stamp ST3 of the stamp type "text only", etc. are displayed as pre-suggest stamps. In addition, in the pre-suggest stamp display area PRS, for example, 12 pre-suggest stamps are displayed in a 2-row, 6-column display format so that they can be viewed at once. For example, each pre-suggest stamp has a ranking (suitability), and on this screen, the pre-suggest stamp display area PRS may display the top 12 pre-suggest stamps.
[0135] For example, when a stamp displayed in the pre-suggested stamp display area PRS is tapped by a user, the tapped stamp is sent to the talk room. For example, by performing a horizontal swipe on the pre-suggest stamp display area PRS, other (lower ranked) pre-suggest stamps that do not fit within the 2-row, 6-column display mode may be made visible.
[0136] For example, when the user has finished entering the text to be sent in the text input area TIR and tapped the content send button SBT, the display changes to the chat room screen shown in the center of Figure 1-8. On this screen, the text content CT1 that was input and sent on the left side of FIG. 1-8 is displayed in the content display area CR.
[0137] Also, a post-suggestion stamp display area POS for displaying post-suggestion stamps is configured to be displayed based on the character string of the text content CT1 sent by the user AA. In this example, the post-suggestion stamp display area POS is configured as an area superimposed on the content display area CR, similar to the pre-suggestion stamp display area PRS. In the post-suggestion stamp display area POS, a post-suggestion stamp different from the pre-suggestion stamp is displayed based on the content of the text content CT1 that asks the user BB whether to meet in front of Koen Station, for example. In addition, in the post suggestion stamp display area POS, for example, six post suggestion stamps are displayed side by side in a display format of one row and six columns so that they can be viewed at once. For example, each post suggestion stamp has a ranking (suitability), and on this screen, the post suggestion stamp display area POS may display the top six post suggestion stamps.
[0138] For example, the display area (area) occupied by the post-suggest stamp display area POS is smaller (narrower) than the pre-suggest stamp display area PRS, so that the post-suggest stamps can be presented to the user without interfering with the visibility of the series of contents displayed in the content display area CR. Here, to ensure that the user AA can see the text content CT1 sent just before, the position of the post-suggest stamp display area POS may be adjusted so that it does not overlap with the text content CT1. Also, for example, by performing a horizontal swipe on the post suggestion stamp display area POS, other (lower ranked) post suggestion stamps that do not fit within the 1 row, 6 column display format may be made visible.
[0139] Note that the pre-suggested stamps may be displayed as they are in the post-suggested stamp display area POS. Pre-suggest stamps and post-suggest stamps may be selected based on the same criteria. The pre-suggested stamp display area PRS and the post-suggested stamp display area POS may be, for example, in a display mode that allows the same number of stamps to be displayed at a glance, or may be display areas that occupy the same area.
[0140] For example, the stamp type "text only" may not be selected for post suggestion stamps. This prevents redundancy between the content of the post suggestion stamp and the content sent immediately before. Furthermore, pictograms may be selected for pre-suggested stamps, but pictograms may not be selected for post-suggested stamps.
[0141] For example, when the user taps stamp ST4 displayed in the post suggestion stamp display area POS, the display changes to the chat room screen shown on the right side of Figure 1-8. On this screen, in the content display area CR, the stamp content CT2 is displayed following the text content CT1 and is sent to the user BB.
[0142] In addition, on the chat room screen in the center of Figure 1-8, for example, the post suggestion stamp display area POS may be hidden after a predetermined time (e.g., 10 seconds) has elapsed since it was displayed. This can improve the visibility of information in the content display area CR when the user does not intend to send a stamp in addition to the content they have sent.
[0143] Figure 1-9 shows another example of a method for presenting post suggestion stamps. The screen on the left side of Figure 1-9 is, for example, another example of the chat room screen in the center of Figure 1-8. On this screen, a post suggestion stamp sending area SA for displaying post suggestion stamps is displayed below the text content CT1 in the content display area CR. Note that the dotted line surrounding the post suggestion stamp sending area SA may be a conceptual line for explanation that is not actually drawn, or may be a line drawn on the screen.
[0144] The post suggestion stamp sending area SA is configured to display, for example, the top stamp among the selected post suggestion stamps. For example, when a stamp (in this example, stamp ST4) displayed in the post suggestion stamp sending area SA is long tapped (pressed and held), the stamp displayed in the post suggestion stamp sending area SA is sent to the chat room.
[0145] For example, when the stamp change icon CB below the post-suggestion stamp sending area SA is tapped, the post-suggestion stamp sending area SA is configured to display, for example, the stamp with the next highest ranking. It should be noted that, for example, the post suggestion stamp displayed in the post suggestion stamp sending area SA may be changed by performing a horizontal swipe operation on the post suggestion stamp sending area SA. Furthermore, after the post suggestion stamp sending area SA is displayed, the post suggestion stamp sending area SA may be made invisible after a predetermined time (for example, 5 seconds) has elapsed.
[0146] For example, when the stamp change icon CB is tapped, the display changes to the chat room screen shown in the center of Figure 1-9. On this screen, the next most popular stamp ST1 is displayed in the post suggestion stamp sending area SA. For example, when stamp ST1 is long tapped, the display changes to the chat room screen shown on the right side of Figure 1-9. On this screen, stamp content CT3 is sent and displayed following text content CT1 in the content display area CR.
[0147] <Processing> 1-10 and 1-11 are flowcharts showing an example of the flow of processing executed by each device in this embodiment. From the left, the diagram shows an example of processing executed by the control unit 21 of the terminal 20A of user AA, an example of processing executed by the control unit 11 of the server 10, and an example of processing executed by the control unit 21 of the terminal 20B of user BB. Note that the processes described below are merely examples of processes for realizing the method of the present disclosure, and are not limited to these. Furthermore, other steps may be added to the processing described below, or some steps may be omitted (deleted) from the processing described below.
[0148] First, terminal 20A transmits chat request information to the server 10 via the communication I / F 22 (omitted) to request a chat with the user of terminal 20B via a talk room, for example, based on an input to the input / output unit 23 of terminal 20A (for example, a user input (such as a user operation input or sound input); the same applies below). Upon receiving the chat request information from terminal 20A via the communication I / F 14 (omitted), the server 10 executes chat start processing to conduct a chat between terminal 20A and terminal 20B via the talk room (S110). In the chat start processing, the server 10 generates, for example, a talk room ID for identifying the talk room, and transmits the generated talk room ID to each terminal 20 participating in the talk room via the communication I / F 14 (omitted).
[0149] For example, when a talk room ID is received from the server 10 via the communication I / F 22 (omitted), the terminals 20A and 20B execute a chat start process to conduct a chat between the terminals 20A and 20B via the talk room (A110-B110). In the chat start process, each terminal 20 displays, for example, a talk room screen on the display unit 24.
[0150] The chat request information may be transmitted from the terminal 20B to the server 10.
[0151] For example, based on a user input to the terminal 20A, the terminal 20A executes a text reception process (A120). In the text reception process, the terminal 20A receives, for example, a character string to be sent to a talk room. Then, the terminal 20A transmits the currently accepted text information including the accepted character string to the server 10 (A130).
[0152] When the currently accepted text information is received from the terminal 20A, the server 10 executes, for example, a pre-suggest stamp selection process (S120). The pre-suggest stamp selection process may be said to be a stamp selection process based on the currently accepted text information.
[0153] In the pre-suggest stamp selection process, the server 10 estimates, for example, stamp attributes (referred to as "pre-suggest attributes") that are considered to be closely related to the character string based on, for example, the character string included in the currently accepted text information. Then, the server 10 may refer to, for example, the stamp set management database 155 and select, as a pre-suggest stamp, a stamp with a stamp ID whose similarity between the stamp attribute of the stamp management data identified by the stamp set ID usable by the application ID of the terminal 20A and the pre-suggest attribute is equal to or greater than a threshold value. The similarity between the pre-suggest attribute and the stamp attribute of each stamp may be calculated, for example, by cosine similarity in which each attribute is embedded in a vector space. Then, the server 10 may determine the ranking of the pre-suggested stamps in descending order of similarity, for example.
[0154] The presuggest attribute may be an attribute determined based on an incomplete character string as a sentence included in the currently accepted text information, for example. Therefore, when a long sentence is being input, the presuggest attribute may be an attribute that is easily influenced by the text at the beginning of the sentence (for example, the text "OK" in Figure 1-8). The presuggest attribute may be an attribute determined to analyze the entire input character string. If it is determined that analysis is impossible because the character string being input does not make sense, for example, the presuggest attribute may take a "NULL" value. In other words, if it is difficult to select a presuggest stamp from the currently accepted text information, a presuggest stamp may not be selected.
[0155] In the process of selecting a pre-suggest stamp, the server 10 may select a pre-suggest stamp in order of frequency of selection for the currently input character string, for example, based on the character string currently being input by the user in the past and the pre-suggest stamp selected based on the character string currently being input.
[0156] Then, the server 10 transmits pre-suggest stamp information, which is information about the pre-suggest stamp selected in the pre-suggest stamp selection process, to the terminal 20A based on the currently accepted text information (S130). The pre-suggested stamp information may be, for example, a list of stamp set IDs and stamp IDs (stamp list) stored in order of pre-suggested stamps.
[0157] When the terminal 20A receives the pre-suggest stamp information from the server 10, the terminal 20A displays the received pre-suggest stamp information on the display unit 24 (A140). For example, the terminal 20A may display a first predetermined number of stamps (e.g., "12") from the pre-suggest stamp information at one time in a visually recognizable manner.
[0158] The display in A140 may be an example of a first display of sticker candidates to be displayed as content in the chat room. The first display may be understood as a display based on text entered by the user of the terminal, a display based on text entered by the user of the terminal, a display while accepting text entered by the user of the terminal, a display suggesting stickers to be displayed as content in the chat room, etc.
[0159] Then, the terminal 20A determines whether or not the acceptance of the content has been completed (A150). The condition for the completion of the acceptance of the content may be, for example, the input for sending text content based on the text accepted in the text acceptance process (for example, a tap operation on the content send button SBT in FIG. 1-8). Alternatively, the condition for the completion of the acceptance of the content may be, for example, the input for sending stamp content based on the stamp presented as the pre-suggested stamp information (for example, a tap operation on the stamp).
[0160] When it is determined that the reception of the content has not been completed (A150: NO), the terminal 20A returns to, for example, the text reception process and continues the process (A120).
[0161] When it is determined that the reception of the content has been completed (A150: YES), the terminal 20A transmits, for example, first content transmission request information to the server 10 for transmitting the received text content or stamp content to the talk room (A160).
[0162] When it is determined that the first content transmission request information has been received from the terminal 20A (S140: YES), the server 10 transmits the first content information to the terminal 20A and the terminal 20B based on the received first content transmission request information (S150). The first content is, for example, text content or stamp content.
[0163] When determining that the first content transmission request information has not been received from the terminal 20A (S140: NO), the server 10 returns the process to, for example, receiving the acceptance text information.
[0164] When the terminal 20A receives the first content information from the server 10, the terminal 20A outputs the first content information (for example, displays it on the display unit 24) (A170).
[0165] When it is determined that the first content information has been received from the server 10 (B120: YES), the terminal 20B outputs the first content information (for example, displays it on the display unit 24) (B130).
[0166] For example, the server 10 determines whether the first content is text content (S160). If it is determined that the first content is text content (S160: YES), the server 10 executes, for example, a post-suggestion stamp selection process (S170). The post-suggestion stamp selection process may be referred to as a stamp selection process based on first content information.
[0167] In the post-suggest stamp selection process, the server 10 estimates, for example, stamp attributes (referred to as "post-suggest attributes") that are considered to be closely related to a character string, for example, based on the character string included in the first content information. Then, similarly to the pre-suggest stamp selection process, for example, the server 10 may select, as a post-suggest stamp, a stamp with a stamp ID that can be used by the user of the terminal 20A and whose similarity between the post-suggest attribute and the stamp attribute is equal to or greater than a threshold. The post-suggest attribute may be an attribute determined based on a complete character string transmitted as the first content, and is therefore more likely to be a stable and accurate attribute estimate than the pre-suggest attribute.
[0168] Note that the pre-suggest attribute and the post-suggest attribute for the same character string may be estimated to be the same or similar attributes, i.e., stamps selected for the same character string may be assumed to be the same or similar. Furthermore, for example, different attributes may be estimated as pre-suggest attributes and post-suggest attributes for the same character string due to differences in character string analysis methods, such as performing morphological analysis and dependency analysis to estimate post-suggest attributes, but performing only morphological analysis without dependency analysis to estimate pre-suggest attributes. In other words, different stamps may be selected for the same character string.
[0169] Furthermore, in estimating post-suggest attributes, weighting may be applied to the endings of a character string or the latter half of a sentence. That is, while pre-suggest stamps are selected by referring to the beginning or the entire character string, post-suggest stamps may be selected based on the endings or the latter half of a character string.
[0170] In the post-suggestion stamp selection process, the server 10 may determine the similarity based on, for example, the stamp type. For example, the server 10 may perform a similarity determination only on stamps whose stamp type is "no text" so that only stamps whose stamp type is "no text" are selected as post-suggestion stamps. Furthermore, for example, the server 10 may double the similarity of stamps whose stamp type is "no text" so that stamps whose stamp type is "no text" are preferentially selected as post-suggestion stamps compared to stamps whose stamp type is "with text." Also, for example, stamps whose stamp type is "text only" may have a similarity score of "0" so that stamps whose stamp type is "text only" are not selected as post suggest stamps.
[0171] Then, the server 10 transmits post suggestion stamp information, which is information about the post suggestion stamps selected in the post suggestion stamp selection process, to the terminal 20A based on the first content information (S190). The post-suggestion stamp information may be, for example, a list of stamp set IDs and stamp IDs (stamp list) stored in order of post-suggestion stamp ranking.
[0172] When it is determined that post suggest stamp information has been received from the server 10 (A180: YES), the terminal 20A displays the received post suggest stamp information on the display unit 24 (A190). For example, the terminal 20A may display a second predetermined number (e.g., "6") of stamps from the post suggest stamp information in a manner that allows them to be viewed at one time. The second predetermined number may be equal to or less than the first predetermined number.
[0173] The display in A190 may be an example of a second display regarding sticker candidates to be displayed as content in the chat room. The second display may be understood as a display based on a first input regarding the display of content by the user of the terminal, a display after receiving text input by the user of the terminal, a display suggesting stickers to be displayed as content in the chat room, etc.
[0174] Then, the terminal 20A determines whether to send a stamp based on, for example, a user input for the post-suggested stamp information (A200). If it determines to send a stamp (A200: YES), the terminal 20A transmits second content transmission request information to the server 10 for transmitting the accepted stamp content to the talk room (A210).
[0175] When it is determined that the second content transmission request information has been received from the terminal 20A (S190: YES), the server 10 transmits the second content information to the terminal 20A and the terminal 20B based on the received second content transmission request information (S200). The second content is, for example, stamp content.
[0176] Then, the server 10 determines whether to end the process (S290). If it is determined that the process should be continued (S290: NO), the server 10 waits for reception of the currently accepted text information, for example, and returns the process to S120. On the other hand, if it is determined that the process should be ended (S290: YES), the server 10 ends the process.
[0177] When the terminal 20A receives the second content information from the server 10, the terminal 20A outputs the second content information (for example, displays it on the display unit 24) (A220).
[0178] When it is determined that the second content information has been received from the server 10 (B140: YES), the terminal 20B outputs the second content information (for example, displays it on the display unit 24) (B150).
[0179] Then, the terminal 20A determines whether or not to end the process (A290). If it is determined to continue the process (A290: NO), the terminal 20A returns the process to, for example, A120. On the other hand, if it is determined to end the process (A290: YES), the control unit 21 of the terminal 20A ends the process.
[0180] The same applies to the terminal 20B (B290).
[0181] Note that the pre-suggest stamp selection process and the post-suggest stamp selection process are not limited to being executed by the server 10. For example, as shown in FIG. 1-12, they may be executed by the terminal 20 and / or the server 10.
[0182] For example, in pattern (A), the pre-suggest stamp selection process and the post-suggest stamp selection process are executed by the terminal 20. This reduces the load on the server 10. Furthermore, the user of the terminal 20 can conceal the character string that he or she is inputting (thinking) from the server 10, thereby preventing invasion of privacy, etc. Furthermore, the amount of communication between the terminal 20 and the server 10 can be reduced. For example, in pattern (C), the pre-suggest stamp selection process is executed by the terminal 20, and the post-suggest stamp selection process is executed by the server 10. This reduces the amount of communication between the terminal 20 and the server 10, mitigating privacy violations, and also allows the server 10, which has ample processing resources, to perform the post-suggest stamp selection process, thereby enabling stamps to be selected quickly and accurately even for long content.
[0183] For example, in the pre-suggest stamp selection process and / or the post-suggest stamp selection process, distributed learning using network shuffling may be performed between the server 10 and the terminal 20 to execute a learning process for learning associations between text and selected stamps. For more information on network shuffling, see, for example, Seng Pei Liew, Tsubasa Takahashi, Shun Takagi, Fumiyuki Kato, Yang Cao, Masatoshi Yoshikawa, “Network Shuffling: Privacy Amplification via Random Walks,” SIGMOD / PODS '22, doi:10.1145 / 3514221.3526162. For example, the terminal 20 may perform an inference process for selecting stamps based on text in the pre-suggest stamp selection process and / or the post-suggest stamp selection process.
[0184] Furthermore, although the above example illustrates a one-to-one talk room, it can also be applied to a group talk room or an OA talk room.
[0185] The first display and the second display may be displays related to the sticker candidate, and may display information that allows the user to identify the sticker candidate, for example. A sticker image (stamp image) may be displayed so that it is easy for the user to understand, but this is not limited to this, and information such as sticker attributes (stamp attributes) or sticker type (stamp type) may be displayed. A combination of these may also be displayed.
[0186] Furthermore, the first display and the second display do not have to be displayed in the chat room. For example, the display unit 24 may be divided into two display areas, with the chat room displayed in one display area and the first display and the second display displayed in the other display area. Alternatively, the chat room may be switched to another screen to display the first display and the second display.
[0187] Furthermore, the second display may be displayed, for example, when a predetermined time has passed after the user has input text without detecting any input by the user. In other words, the second display does not necessarily have to be displayed based on the first input related to the display of the content, but may be displayed at some other opportunity.
[0188] <Effects of the First Embodiment> According to this embodiment, terminal 20 displays a chat room (e.g., a talk room) in which content (e.g., text content, sticker content) is displayed. Terminal 20 displays on display unit 24 a first display (e.g., pre-suggested stamps) regarding sticker candidates to be displayed as content in the chat room based on text input by a user of terminal 20, displays the text input by the user of terminal 20 as content in the chat room based on a first input (e.g., input to send text content) regarding the display of content by the user of terminal 20, and displays on display unit 24 a second display (e.g., post-suggested stamps) regarding sticker candidates to be displayed as content in the chat room based on the first input. As an example of the effect of an embodiment obtained by such a configuration, sticker candidates to be displayed as content in a chat room can be suggested to the user of the terminal by using a first display that is displayed based on text entered by the user of the terminal and a second display that is displayed based on a first input regarding the display of content.
[0189] Furthermore, the second display may be a display of sticker candidates to be displayed as content in the chat room after the text is displayed as content in the chat room. As an example of an effect of an embodiment obtained by such a configuration, after text entered by a user of a terminal is displayed as content in a chat room, candidate stickers to be displayed as content in the chat room can be suggested to the user of the terminal.
[0190] The second display may be different from the first display. As an example of the effect of the embodiment obtained by such a configuration, it is possible to suggest to the terminal user sticker candidates to be displayed as content in the chat room by using two different displays.
[0191] In addition, in this embodiment, the first display may be configured so that sticker candidates are displayed in a first area (e.g., a pre-suggested stamp display area) in the chat room that is different from the area in which the content is displayed, and the second display may be configured so that sticker candidates are displayed in a second area (e.g., a post-suggested stamp display area) in the chat room that is different from the area in which the content is displayed. As an example of the effect of this embodiment obtained by such a configuration, sticker candidates can be suggested to the terminal user by displaying them in an area of the chat room that is different from the area where the content is displayed.
[0192] The number of sticker candidates displayed in the second area may be smaller than the number of sticker candidates displayed in the first area. As an example of the effect of this embodiment obtained by such a configuration, it is easier to select sticker candidates in the second display than in the first display, and the ease of selecting sticker candidates can be increased.
[0193] The second region may have a smaller area than the first region. As an example, the second region may have the same width as the first region and a shorter vertical length than the first region.
[0194] In addition, the second display may be such that the sticker candidates are displayed in an area in the chat room where the content is displayed. As an example of the effect of this embodiment obtained by such a configuration, the user can easily select sticker candidates.
[0195] The second display may also be displayed so as not to overlap with the text displayed in the chat room based on the first input. As an example of an effect of the embodiment obtained by such a configuration, the user can reliably view the text displayed in the chat room based on the first input.
[0196] Furthermore, when a predetermined time has elapsed since the second display was displayed on the display unit 24, the terminal 20 may hide the second display. As an example of the effect of an embodiment obtained by such a configuration, when the user of the terminal does not intend to select a sticker candidate in the second display, the second display is hidden, thereby improving the visibility of the content displayed in the chat room.
[0197] The second display may also be a display of sticker candidates based on text that is input by the user of the terminal 20 and displayed as content in the chat room. As an example of an effect of an embodiment obtained by such a configuration, sticker candidates can be suggested to the user of the terminal through the second display, taking into account the content of the text entered by the user of the terminal and displayed as content in the chat room.
[0198] In this case, the second display may be a display of sticker candidates based on a portion of the text entered by the user of the terminal 20 and displayed as content in the chat room. As an example of an effect of an embodiment obtained by such a configuration, by taking into consideration a portion of the text entered by the user of the terminal and displayed as content in the chat room, it becomes possible to suggest to the user of the terminal, for example, sticker candidates that differ from those in the first display, in the second display.
[0199] The second display may be a display of sticker candidates without text. As an example of an effect of an embodiment obtained by such a configuration, it is possible to suggest to the user of the terminal, through the second display, stickers that are not redundant in relation to the text entered by the user and displayed as content in the chat room.
[0200] In addition, in this embodiment, terminal 20 may display on display unit 24 a display regarding sticker candidates to be displayed as content in the chat room (e.g., post suggestion stamps) based on or after the user of terminal 20 has finished inputting text (or accepting text input) to be displayed as content in the chat room.
[0201] <First Modification Example (1)> In the above embodiment, in the post-suggestion stamp selection process, post-suggestion stamps are selected based on post-suggestion attributes based on the first content information, but this is not limiting. In the post-suggestion stamp selection process, for example, the server 10 may select, as post-suggestion stamps, stamp contents that have been frequently sent immediately after the text content sent by the user as the first content (or text content similar to the first content) in order of appearance frequency, based on the transmission history of past text content and stamp content. Since the submitted text content is a complete sentence, the association between the text content and the stamp content submitted immediately thereafter is likely to lead to a more valid association than the association with the stamp content based on the character string being entered.
[0202] In other words, the post suggestion stamp selected for the first user may be selected based on the first content sent by the first user and the transmission history of the text content and stamp content sent by the first user before sending the first content. In this case, the post suggestion stamp selected for the first user may be displayable, for example, in any chat room that includes the first user.
[0203] In addition, when storing the association between the transmitted text content and the stamp content, for example, if the transmitted text content is "Thank you!!", data cleansing may be performed to store the association with the character string "Thank you".
[0204] In addition, the stamps referenced as transmission history may be only stamps selected and sent by the user from post-suggested stamps, or stamps selected and sent by the user regardless of whether they are post-suggested stamps or not.
[0205] This variant example shows a configuration in which, after text (e.g., text content entered by the user of terminal 20 and displayed in a talk room) is displayed in a chat room (e.g., a talk room), terminal 20 displays a first sticker selected by the user of terminal 20 from among the sticker candidates in the second display, or from elsewhere, as content (e.g., first stamp content) in the chat room based on a second input by the user of terminal 20 regarding the display of content (e.g., an input to send stamp content), and when a first chat room (e.g., any talk room including the user of the terminal) is displayed on display unit 24 and first text that is considered to be identical to the above text (e.g., ``Text = Thank you!!'', ``First text = Thank you'') is entered by the user of terminal 20, a second display in which the first sticker is a sticker candidate is displayed on display unit 24 based on the first input by the user of terminal 20 regarding the display of content. As an example of the effect of this modified example obtained by such a configuration, a first sticker that was previously entered by a user and displayed as content in a chat room can be suggested to the user of the terminal through a second display when a chat room is displayed and text that is considered to be identical is entered again, thereby improving the convenience of using stickers.
[0206] <First Modification Example (2)> In the above embodiment, in the post suggestion stamp selection process, post suggestion stamps are selected based on the first content sent to the chat room, but this is not limiting. For example, post suggestion stamps may be selected based on the first content sent to the chat room and the account to which the first content was sent.
[0207] For example, the server 10 may store a stamp sending history relating to stamp set IDs and stamp IDs sent by a first user, user AA, to a second user, user BB. Then, for example, if user AA frequently uses stamps with a specific stamp set ID or stamps with specific stamp attributes for user BB, the server 10 may preferentially select, as post suggest stamps, stamps that user AA frequently uses for user BB based on the stamp sending history in the post suggest stamp selection process.
[0208] That is, the post suggestion stamp selected for the first user may be selected based on the first content sent by the first user and the second user to whom the first content is sent.
[0209] In this case, for example, the stamp sending history of the first user in a one-to-one chat room between the first user and the second user may be referenced, and the selected post suggestion stamp may be displayed when the same one-to-one chat room is displayed on the first user's terminal 20. However, without being limited to this, it may be displayed when a group talk room including the first user and the second user is displayed on the terminal 20 of the first user.
[0210] Also, for example, the stamp sending history of the first user in a talk in a group talk room including the first user and the second user may be referenced, and the selected post suggestion stamp may be displayed when the same group talk room is displayed on the first user's terminal 20. However, without being limited to this, it may be displayed when a one-to-one talk room between the first user and the second user is displayed on the terminal 20 of the first user.
[0211] In this variant, after text is displayed in a first chat room (e.g., a talk room including the user of the terminal and the first user), terminal 20 displays the sticker candidates of the second display, or a first sticker selected by the user of terminal 20 from elsewhere, as content (e.g., first stamp content) in the first chat room based on a second input by the user of terminal 20 regarding the display of content; and when the first chat room is displayed on display unit 24 and second text (whether or not it is the same text as the above text) is input by the user of terminal 20, a second display in which the first sticker is a sticker candidate is displayed on display unit 24 based on the first input by the user of terminal 20 regarding the display of content. As an example of the effect of the modified example obtained by such a configuration, a first sticker that was previously input by a user and displayed as content in a first chat room including the user of the terminal and the first user can be suggested to the user of the terminal through a second display based on the first chat room being displayed and some text being input again, thereby improving the convenience of using stickers.
[0212] <First Modification (3)> In the above embodiment, if the first content sent by the first user to the chat room is text content, a post suggestion stamp is selected. However, this is not limiting. For example, if the first content is stamp content, a post suggestion stamp may be selected.
[0213] In the post-suggest stamp selection process, the server 10 estimates post-suggest attributes based on, for example, the stamp attributes of the stamp content included in the first content information, the stamp set ID, etc. Then, the server 10 may select, as a post-suggest stamp, a stamp with a stamp ID that can be used by the user of the terminal 20A and whose similarity between the post-suggest attribute and the stamp attribute is equal to or greater than a threshold.
[0214] This allows the user to easily transmit, as the second content, a stamp related to the stamp of the first content after transmitting the stamp as the first content.
[0215] <First Modification (4)> In the above embodiment, the terminal 20 of the first user who transmitted the first content acquires the post suggestion stamp information, but this is not limiting. For example, the terminal 20 of the second user who received the first content may acquire the post suggestion stamp information, or the terminal 20 of the first user and the terminal 20 of the second user may acquire the post suggestion stamp information.
[0216] The first content may be text content or stamp content. For example, in the post-suggestion stamp selection process, if the first content is text content such as "Thank you" or a stamp with the stamp attribute "Thanks," the server 10 may select a stamp with a stamp attribute meaning "You're welcome" as the post-suggestion stamp for the second user. Also, a stamp with a stamp attribute indicating a simple reply such as "Yes," "No," or "Okay" may be selected as the post-suggestion stamp for the second user.
[0217] <First Modification (5)> In the above embodiment, the terminal 20 of the first user who sends the content displays a pre-suggest stamp while the first content is being input, and a post-suggest stamp after the first content is sent, but this is not limiting. For example, the terminal 20 of the first user may display a pre-suggest stamp while the first content is being input, and the pre-suggest stamp may continue to be displayed even after the first content is sent.
[0218] That is, the second display may be the same as the first display, or the first display may continue to be displayed as the second display. This allows the first display to be carried over to the second display, and sticker candidates can be suggested to the terminal user. Also, since the sticker candidates suggested by the second display do not have to be determined by the terminal or server, the processing load can be reduced.
[0219] It is also possible to configure the system so that a first predetermined number of pre-suggest stamps are displayed in a visible manner while the first content is being input, and a second predetermined number of pre-suggest stamps are displayed in a visible manner after the first content is transmitted. The second predetermined number may be, for example, equal to or less than the first predetermined number. Also, the pre-suggest stamps may be hidden after a predetermined time has elapsed after the first content is transmitted. Regardless of whether the second predetermined number is the same as the first predetermined number, both are displays based on the pre-suggest stamp selection process, so the second display may be considered to be the same as the first display.
[0220] <First Modification (6)> In the above embodiment, the post-suggestion stamp selection process selects a post-suggestion stamp based on the first content transmitted immediately before, but the present invention is not limited to this. For example, post suggestion stamps may be selected based on content sent by a first user to a second user within a predetermined time period (for example, within "five minutes"). Furthermore, for example, post suggestion stamps may be selected based on content sent and received by a first user and a second user within a predetermined time period.
[0221] Furthermore, in the post suggest stamp selection process, post suggest stamps may be selected based on the contents of the most recent "N" messages ("N" is a positive integer) sent by the first user to the second user. Furthermore, for example, post suggestion stamps may be selected based on the contents of the most recent "N" messages sent and received by the first user and the second user.
[0222] This modified example shows a configuration in which the second display is a display of sticker candidates based on text entered by a user of terminal 20 and first text entered by the user of the terminal and displayed as content in the chat room before this text was displayed as content in the chat room. As an example of the effect of the modified example obtained by such a configuration, the second display can suggest sticker candidates to the user of the terminal that take into account not only the most recent text entered by the user of the terminal, but also first text entered by the user of the terminal earlier and displayed as content in the chat room.
[0223] In addition, this modified example shows a configuration in which the chat room is a first chat room including a user of terminal 20 and a first user different from the user of terminal 20, and the second display is a display of sticker candidates based on text entered by the user of terminal 20 and second text entered by the first user into the first terminal and displayed as content in the first chat room before the entered text is displayed as content in the chat room. As an example of the effect of the modified example obtained by such a configuration, the second display can suggest sticker candidates to the user of the terminal that take into account not only the most recent text entered by the user of the terminal, but also a second text that was entered earlier by the first user into the first terminal and displayed as content in the first chat room.
[0224] <First Modification (7)> The first user may suggest a stamp to send back to the second user based on the content (message content or stamp content) sent by the second user to the first user, i.e., the content received by the first user from the second user.
[0225] For example, based on receiving text with an attribute of gratitude such as "Thank you" or stamp content with an attribute of gratitude, the terminal 20 may display, on the display unit 24, a display suggesting, for example, a stamp with an attribute of returning gratitude to the other party (for example, a stamp including the characters "You're welcome"). In this case, the terminal 20 may receive, for example, information about content sent from the second user to the first user, and suggest a stamp at the timing of displaying the content (or at a timing slightly later than that). In this case, the suggested stamps may be selected based on, for example, the content sent from the second user to the first user within a predetermined time period (for example, within "5 minutes"), or the content of the last "M" messages ("M" is a positive integer) sent from the second user to the first user.
[0226] Furthermore, at a stage before the user inputs text (for example, at a stage when the first user has checked the content sent from the second user to the first user and is about to start writing a reply), the terminal 20 may suggest stamps with simple reply attributes such as "Yes," "No," or "Got it." In this case, after receiving the content sent from the second user to the first user and displaying it in the chat room, the terminal 20 may suggest stamps at the timing (or a slightly delayed timing) when it detects an input by the user of the terminal 20 at a stage before the content input (for example, an input of tapping on the message input area).
[0227] For example, a UI similar to that of post suggest stamps may be applied to such stamp suggestions. Specifically, a UI similar to that of the screen shown in the center of Figure 1-8 may be applied. In this case, to ensure that the first user can see the content transmitted from the second user to the first user and displayed in the content display area, the suggest stamp may be displayed so as not to overlap this content. Alternatively, for example, a UI similar to that of the screen shown in Figure 1-9 may be applied, and the suggest stamp may be displayed below the content transmitted from the second user to the first user and displayed in the content display area, on the side where the content transmitted by the first user (the first user) is displayed (on the right side in the example of Figure 1-9). Suggested stamps may also be displayed outside of chat rooms.
[0228] In addition to such stamp suggestions, pre-suggested stamp suggestions and post-suggested stamp suggestions may also be provided.
[0229] In this modification, terminal 20, which displays a chat room in which content is displayed, displays a first chat room including the user of terminal 20 and a first user different from the user of terminal 20. Terminal 20 is configured to display on display unit 24 a display relating to sticker candidates to be displayed as content in the first chat room, based on receiving information about content (e.g., text content or sticker content) input by the first user to the first terminal of the first user. As an example of the effect of this modified example obtained by such a configuration, it is possible to suggest to the user of the terminal sticker candidates to be used as a reply sticker to the first user.
[0230] <Other> As mentioned above, the contents described in the above embodiment and modified examples are not limited to one-to-one talk rooms, but may also be applied to talks in group talk rooms or OA talk rooms. Furthermore, the present invention may be similarly applied to chatting in chat rooms of any chat application other than the chat rooms of the above-mentioned messaging application.
[0231] At least a part of the processing that is to be performed by the server 10 in the above embodiment may be performed by the terminal 20. Conversely, at least a part of the processing that is to be performed by the terminal 20 in the above example may be performed by the server 10.
[0232] In addition, the processing described in the above embodiments may be realized by a single server, or the processing described in the above embodiments may be shared and realized by a server system consisting of multiple servers. A system configured with one or more servers may be defined as a server system, and the server of the present invention may be considered as a server system.
[0233] Furthermore, in the above-described embodiments, a server for distributing various applications (a server from which the terminal 20 downloads applications) may be configured as a server different from a server for providing the corresponding service (application). In other words, a server for distributing applications and a server for performing application management processing, etc., described in the above-described embodiments, etc., may be configured as physically separated servers, or may be configured as a single server.
[0234] Furthermore, in the above embodiments, for example, a method of realizing the present invention using a client-server system has been described, but the present invention is not limited to this. As mentioned above, the present invention may be realized by a system such as a distributed system in which the functions of a server or server system are provided to the terminal 20. For example, the processing described as being performed by a server or server system in the flowcharts described in the above embodiments may be performed by a terminal.
[0235] Furthermore, as mentioned above, the contents described in the above-mentioned embodiments, modifications, other embodiments, etc. can be applied in combination with each other. [Explanation of symbols]
[0236] 1. Communication Systems 10 Servers 20 terminals 30 Network
Claims
1. A program to be executed on a terminal that displays a chat room in which content is displayed, displaying, on a display unit of the terminal, a first display of sticker candidates to be displayed as the content in the chat room based on text input by a user of the terminal; displaying the text as the content in the chat room based on a first input by a user of the terminal regarding the display of the content; and displaying, on the display unit, a second display relating to sticker candidates to be displayed as the content in the chat room, based on the first input.
2. 2. The program according to claim 1, The second display is a display related to sticker candidates to be displayed as the content in the chat room after the text is displayed as the content in the chat room.
3. 3. The program according to claim 2, The second representation is different from the first representation.
4. 4. The program according to claim 3, the first display displays sticker candidates in a first area in the chat room that is different from an area in which the content is displayed; In the second display, sticker candidates are displayed in a second area in the chat room that is different from the area in which the content is displayed.
5. 5. The program according to claim 4, The number of sticker candidates displayed in the second area is smaller than the number of sticker candidates displayed in the first area.
6. 5. The program according to claim 4, The second region has an area smaller than that of the first region.
7. 4. The program according to claim 3, In the second display, sticker candidates are displayed in an area of the chat room where the content is displayed.
8. 4. The program according to claim 3, The second display is displayed so as not to overlap the text displayed in the chat room.
9. 4. The program according to claim 3, When a predetermined time has elapsed since the second display was displayed on the display unit, the terminal is caused to stop displaying the second display.
10. 4. The program according to claim 3, The second display is a display of sticker candidates based on the text.
11. The program according to claim 10, The second display is a display of possible stickers based on a portion of the text.
12. 4. The program according to claim 3, The second display is a display of sticker candidates without text.
13. 4. The program according to claim 3, After the text is displayed in the chat room, a first sticker selected by the user of the terminal from the sticker candidates in the second display or from other options is displayed as the content in the chat room based on a second input by the user of the terminal regarding the display of the content; When a first chat room is displayed on the display unit and a first text that is considered to be identical to the text is input by a user of the terminal, the terminal is caused to display the second display on the display unit, with the first sticker as a sticker candidate, based on the first input by the user of the terminal.
14. 4. The program according to claim 3, the chat room is a first chat room including a user of the terminal and a first user different from the user of the terminal, After the text is displayed in the first chat room, a first sticker selected by the user of the terminal from the sticker candidates in the second display or other options is displayed as the content in the first chat room based on a second input by the user of the terminal regarding the display of the content; When the first chat room is displayed on the display unit and second text is input by the user of the terminal, the terminal is caused to display the second display on the display unit, with the first sticker as a sticker candidate, based on the first input by the user of the terminal.
15. 4. The program according to claim 3, The second display is a display of sticker candidates based on the text and a first text that was displayed as the content in the chat room before the text was displayed as the content in the chat room.
16. 4. The program according to claim 3, the chat room is a first chat room including a user of the terminal and a first user different from the user of the terminal, The second display is a display of sticker candidates based on the text and second text that was entered by the first user into the first terminal of the first user and displayed as the content in the first chat room before the text was displayed as the content in the chat room.
17. An information processing method for a terminal that displays a chat room in which content is displayed, comprising: displaying, on a display unit of the terminal, a first display of sticker candidates to be displayed as the content in the chat room based on text input by a user of the terminal; displaying the text as the content in the chat room based on a first input by a user of the terminal regarding the display of the content; The method further includes displaying, on the display unit, a second display relating to sticker candidates to be displayed as the content in the chat room based on the first input.
18. A terminal that displays a chat room in which content is displayed, The device includes a display unit that displays a first display of candidate stickers to be displayed as the content in the chat room based on text input by a user of the terminal, displays the text as the content in the chat room based on a first input by the user of the terminal regarding the display of the content, and displays a second display of candidate stickers to be displayed as the content in the chat room based on the first input.
Citation Information
Patent Citations
Video stamp generation method, computer program and computer device
JP7112508B2