Service data processing method and device, and recording medium
The method integrates data from multiple services within a single application, addressing the limitation of single-service applications by promoting relevant services based on user and system data, thereby expanding user access to a wider range of services.
Patent Information
- Application Number
- PCT/KR2024/020113
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-02-23
- Filing Date
- 2024-12-10
- Publication Date
- 2025-08-28
AI Technical Summary
Existing applications lack the ability to seamlessly integrate and promote multiple services simultaneously, limiting user access to a wider range of services.
A method and system for determining whether to display data from a second service within an application providing a first service, based on user and system data, and generating application data accordingly, allowing integrated display of both services when promotion is needed.
Enables users to access a broader variety of services through a single application, enhancing promotional effects by selectively displaying relevant services based on predefined filters and rules.
Smart Images

Figure KR2024020113_28082025_PF_FP_ABST
Abstract
Description
Service data processing method, device and recording medium
[0001] The present disclosure relates to a technology for processing service data. More specifically, the present disclosure relates to a technology for displaying data from a service different from a specific service within an application providing a specific service.
[0002] With the advancement of communication technology, users can now run applications on their terminals to provide specific services and use specific services through the applications.
[0003] For example, a user can use a first service by running a first application on a terminal to provide a first service (e.g., a product ordering service) and selecting at least one item of the first service displayed within the first application.
[0004] As another example, a user may use a second service by running a second application on a terminal to provide a second service (e.g., a food ordering service) and selecting at least one item of the second service displayed within the second application.
[0005] As a business strategy to achieve a synergy effect of simultaneously increasing sales of related services and a promotional effect of simultaneously promoting various services, a strategy of displaying data from a specific service and other services together within the application while the application providing the specific service is running on the user's terminal can be considered.
[0006] To this end, the present disclosure aims to provide a technology that allows a user to access a wider range of services through a single application by displaying data of a second service that is different from a first service within an application that provides a first service.
[0007] In addition, the present disclosure aims to provide a technology that can display data of a first service and data of a second service together within an application only when there is a need to promote the second service to the user, by determining whether to display data of a second service within the application while the application for providing the first service is running on the user's terminal.
[0008] The technical problems of the present disclosure are not limited to the technical problems mentioned above, and other technical problems not mentioned will be clearly understood by those skilled in the art of the present disclosure from the description below.
[0009] According to the present disclosure, a service data processing method performed by an electronic device may be provided for displaying data of a second service, different from a first service, together within an application for providing the first service. The method may include: receiving a data request for the application from a client terminal; determining, in response to receiving the data request, whether to display data of the second service within the application; generating data of the application based on the determination of whether to display data of the second service within the application; and transmitting data of the application to the client terminal.
[0010] In one embodiment, the step of generating data of the application may include generating data of the application such that data of the second service is displayed together with the data of the second service within the application in response to a decision to display data of the second service within the application.
[0011] In one embodiment, the step of generating data of the application may include, in response to a decision not to display data of the second service within the application, generating data of the application such that data of the second service is not displayed within the application.
[0012] In one embodiment, the data of the application may include data of a page to be displayed on the application.
[0013] In one embodiment, the data of the second service may include data about an item of the second service.
[0014] In one embodiment, if it is decided to display data of the second service within the application, items of the second service may be displayed on at least a portion of the page, and if it is decided not to display data of the second service within the application, items of the second service may not be displayed on the page.
[0015] In one embodiment, items of the first service may be displayed on at least a portion of the page.
[0016] In one embodiment, the step of determining whether to display data of the second service within the application may include, in response to receiving the data request, checking one or more filters set for the data of the second service, each filter indicating a display condition that must be satisfied to display the data of the second service within the application; and, based on whether user data or system data of the client terminal satisfies one or more display conditions indicated by the one or more filters, determining whether to display the data of the second service within the application.
[0017] In one embodiment, the step of determining whether to display data of the second service within the application may include: determining to display data of the second service within the application in response to the user data or the system data satisfying all of the one or more display conditions indicated by the one or more filters; and determining not to display data of the second service within the application in response to the user data or the system data not satisfying at least some of the one or more display conditions indicated by the one or more filters.
[0018] In one embodiment, the method may further include a step of acquiring data of the second service when the user data or the system data satisfies all of the one or more display conditions indicated by the one or more filters.
[0019] In one embodiment, the step of checking the one or more filters set for the data of the second service may include the step of obtaining a display rule for one or more filter lists; determining a filter list to be applied to the data of the second service from among the one or more filter lists based on the display rule; and the step of checking one or more filters included in the determined filter list.
[0020] In one embodiment, the one or more filter lists may be configured to correspond to each of one or more locations for displaying data of the second service within the application.
[0021] In one embodiment, the one or more filters may include filters for evaluating at least one of a user identifier, location, date, day of the week, time, membership subscription, or system load factor.
[0022] In one embodiment, the one or more filters include a location filter for evaluating whether the user's location is a specific location, wherein the specific location can be determined based on a location history in which the user used the second service.
[0023] In one embodiment, the one or more filters include a time filter for evaluating whether the time at which the data request was received is a specific time, wherein the specific time can be determined based on a time history of the user using the second service.
[0024] In one embodiment, the user data may indicate at least one of a user identifier of the client terminal, a location associated with a user of the client terminal, a date on which the data request was received from the client terminal, a day of the week on which the data request was received from the client terminal, a time on which the data request was received from the client terminal, or whether the user of the client terminal is subscribed to a membership.
[0025] In one embodiment, the location associated with the user of the client terminal may be determined based on at least one of the location of the client terminal, the location of the user set for the first service, or the location of the user set for the second service.
[0026] In one embodiment, the system data may indicate a system load factor at the time the data request is received from the client terminal.
[0027] In one embodiment, priorities may be set between the one or more filters.
[0028] In one embodiment, the step of determining whether to display data of the second service within the application based on whether user data or system data of the client terminal satisfies one or more display conditions indicated by one or more filters may include the step of determining, based on the priorities, whether display conditions indicated by the filters are satisfied by the user data or the system data in order from the filter with the highest priority among the one or more filters.
[0029] According to the present disclosure, an electronic device may be provided for displaying data of a second service, different from the first service, together within an application for providing the first service. The electronic device may include one or more processors, one or more memories storing instructions executed by the one or more processors, and when the instructions are executed by the one or more processors, the one or more processors may be configured to execute a method according to the present disclosure.
[0030] According to the present disclosure, a non-transitory computer-readable recording medium may be provided, which records instructions that, when executed by one or more processors, cause the one or more processors to perform operations. The instructions may be configured to cause the one or more processors to execute a method according to the present disclosure.
[0031] According to the present disclosure, by displaying data of a second service different from the first service within an application for providing the first service, a user can access a wider variety of services through a single application.
[0032] In addition, according to the present disclosure, by determining whether to display data of a second service within the application while the application for providing the first service is running on the user's terminal, it is possible to display data of the first service and data of the second service together within the application only when there is a need to promote the second service to the user.
[0033] The effects according to the technical idea of the present disclosure are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the description of the specification.
[0034] FIG. 1 is a diagram illustrating an application execution environment according to one embodiment of the present disclosure.
[0035] FIG. 2 is a drawing for explaining a computing device according to one embodiment of the present disclosure.
[0036] FIG. 3 is a diagram for explaining a process of processing application data in an application execution environment according to one embodiment of the present disclosure.
[0037] FIG. 4 is a diagram illustrating a first service-related backend according to one embodiment of the present disclosure.
[0038] FIG. 5 is a diagram illustrating a second service-related backend according to one embodiment of the present disclosure.
[0039] FIG. 6 is a diagram for explaining a process of setting display rules for data of a second service according to one embodiment of the present disclosure.
[0040] FIG. 7A is a diagram illustrating a process for determining whether to display data of a second service within an application for providing a first service according to one embodiment of the present disclosure.
[0041] FIG. 7b is a diagram illustrating a process for determining whether to display data of a second service within an application for providing a first service according to one embodiment of the present disclosure.
[0042] FIG. 8 is a diagram illustrating detailed operations of a first option for determining whether to display data of a second service within an application for providing a first service according to one embodiment of the present disclosure.
[0043] FIG. 9 is a diagram illustrating detailed operations of a second option for determining whether to display data of a second service within an application for providing a first service according to one embodiment of the present disclosure.
[0044] FIG. 10 is a diagram for explaining display rules for data of a second service according to one embodiment of the present disclosure.
[0045] FIG. 11 is a diagram illustrating a process of processing data of an application for providing a first service according to one embodiment of the present disclosure.
[0046] FIG. 12 is a drawing for explaining a screen displayed on a client terminal according to a result of a decision on whether to display data of a second service within an application for providing a first service according to one embodiment of the present disclosure.
[0047] FIG. 13 is a diagram for explaining a process of processing page data of an application for providing a first service according to one embodiment of the present disclosure.
[0048] FIG. 14 is a drawing for explaining a screen displayed on a client terminal according to a result of a decision on whether to recommend an item of a second service within an application for providing a first service according to one embodiment of the present disclosure.
[0049] FIG. 15 is a flowchart illustrating a service data processing method performed by an electronic device according to one embodiment of the present disclosure.
[0050] The various embodiments described in this document are exemplified for the purpose of clearly explaining the technical concept of the present disclosure and are not intended to limit it to a specific embodiment. The technical concept of the present disclosure includes various modifications, equivalents, alternatives, and embodiments selectively combining all or part of each embodiment described in this document. Furthermore, the scope of the technical concept of the present disclosure is not limited to the various embodiments presented below or the specific descriptions thereof.
[0051] Terms used in this document, including technical or scientific terms, unless otherwise defined, may have the meaning commonly understood by one of ordinary skill in the art to which this disclosure belongs.
[0052] The expressions "includes," "may include," "comprises," "may have," "have," and "may have" used in this document imply the presence of a target feature (e.g., a function, operation, or component), but do not exclude the presence of other additional features. In other words, such expressions should be understood as open-ended terms that imply the possibility of including other embodiments.
[0053] The singular forms used in this document may include the plural form unless the context clearly indicates otherwise, and this also applies to the singular forms set forth in the claims.
[0054] The expressions "first," "second," or "first", "second", etc. used in this document, unless the context indicates otherwise, are used to refer to multiple similar objects and to distinguish one object from another, and do not limit the order or importance among the objects.
[0055] As used herein, the expressions "A, B, and C," "A, B, or C," "A, B, and / or C," or "at least one of A, B, and C," "at least one of A, B, or C," "at least one of A, B, and / or C," "at least one selected from A, B, and C," "at least one selected from A, B, or C," "at least one selected from A, B, and / or C," and the like can mean each of the listed items or all possible combinations of the listed items. For example, "at least one selected from A and B" can refer to (1) A, (2) at least one of A, (3) B, (4) at least one of B, (5) at least one of A and at least one of B, (6) at least one of A and B, (7) at least one of B and A, and (8) both A and B.
[0056] The expression "based on" or "according to" as used in this document is used to describe one or more factors that influence the decision, act of judgment, or action described in the phrase or sentence containing the expression, and this expression does not exclude additional factors that influence the decision, act of judgment, or action.
[0057] As used herein, the expression that a component (e.g., a first component) is “connected” or “connected” to another component (e.g., a second component) may mean that the component is directly connected or connected to the other component, as well as connected or connected via a new other component (e.g., a third component).
[0058] The expression "configured to" as used in this document can have the meanings of "set to", "having the ability to", "modified to", "made to", and "capable of", depending on the context. The expression is not limited to the meaning of "specifically designed in hardware", and for example, a processor configured to perform a specific operation can mean a special purpose computer structured through programming to perform the specific operation.
[0059] Hereinafter, various embodiments of the present disclosure will be described with reference to the attached drawings. In the attached drawings and the description of the drawings, identical or substantially equivalent components may be assigned the same reference numerals. Furthermore, in the description of various embodiments below, duplicate descriptions of identical or corresponding components may be omitted, but this does not mean that the corresponding components are not included in the embodiments.
[0060] FIG. 1 is a drawing for explaining an application execution environment (100) according to one embodiment of the present disclosure.
[0061] The execution environment (100) illustrated in FIG. 1 is an environment in which an application for providing a specific service to a user is executed, and may include at least one of a client terminal (110), an electronic device (120), or a management device (130). Meanwhile, FIG. 1 merely illustrates an example of the execution environment (100), and the present disclosure is not limited thereto. For example, other components not illustrated in FIG. 1 may also be included in the execution environment (100).
[0062] In one embodiment, the client terminal (110) may display an interface (user interface) of an application for providing the first service. That is, the interface of the application may be displayed on the display of the client terminal (110). Here, the interface is a physical or virtual medium for interaction between the user and the client terminal (110), and the user may operate the application through the application interface. For example, the user may request data of the application corresponding to the selected interface by selecting the interface of the application displayed on the display of the client terminal (110). The interface of such an application may include basic elements for displaying specific data, such as images or text, and elements for receiving user input, such as buttons that can be configured using these basic elements. For example, the user selecting (clicking) an application interface may be expressed as receiving a user input corresponding to the interface.
[0063] For example, a client terminal (110) running an application for providing a first service may receive a user input corresponding to the interface of the application and transmit a data request for the application to an electronic device (120) or a management device (130) to process the user input. In response to the data request for the application, the client terminal (110) may receive data of the application from the electronic device (120) or the management device (130). Based on the data of the application, the client terminal (110) may display the interface of the application on the display.
[0064] Meanwhile, in the present disclosure, the client terminal (110) may be referred to as a terminal, user terminal, client, or UE (user equipment) that can perform the same or similar functions.
[0065] In one embodiment, the electronic device (120) may process data required to execute an application. Here, the data required to execute the application may include data of an application for providing a first service, data of a first service, or data of a second service.
[0066] For example, the electronic device (120) may receive a data request for an application for providing a first service from a client terminal (110).
[0067] For example, in response to a data request for an application, the electronic device (120) may receive data of a first service from a management device (130) or an external device (not shown). Here, the data of the first service may include item data indicating one or more first items of the first service.
[0068] As another example, the electronic device (120) may, in response to a data request for an application, determine whether to display data from a second service within the application. The operation of determining whether to display data from a second service within the application may refer to the descriptions of FIGS. 7A and 7B .
[0069] For example, in response to a decision to display data of a second service within an application, the electronic device (120) may receive data of a second service that is different from the first service from the management device (130) or an external device (not shown).
[0070] For example, the electronic device (120) can generate data of an application based on at least one of data of a first service or data of a second service.
[0071] For example, if the electronic device (120) decides not to display data of the second service within the application and thus does not receive data of the second service, the electronic device (120) may generate data of the application based on data of the first service. The electronic device (120) may transmit the data of the application to the client terminal (110). Accordingly, data of the first service may be displayed within the application on the display of the client terminal (110), and data of the second service may not be displayed.
[0072] For example, if the electronic device (120) decides to display data of a second service within an application and receives data of the second service, the electronic device (120) can generate data of the application based on the data of the first service and the data of the second service. The electronic device (120) can transmit the data of the application to the client terminal (110). Accordingly, the data of the first service and the data of the second service can be displayed together within the application on the display of the client (110).
[0073] Meanwhile, in the present disclosure, the electronic device (120) may be referred to as a server, management server, management system, etc. that can perform the same or similar functions.
[0074] In one embodiment, the management device (130) may store and manage data required to execute an application. Here, the data required to execute an application may include user data, system data, AB test data, etc.
[0075] For example, the management device (130) may receive a user data request from the electronic device (120) and, in response, transmit the user data to the electronic device (120).
[0076] For example, the management device (130) may receive a system data request from the electronic device (120) and, in response, transmit the system data to the electronic device (120).
[0077] For example, the management device (130) may receive an AB test data request from the electronic device (120) and, in response, transmit the AB test data to the electronic device (120).
[0078] Meanwhile, the application execution environment (100) can be divided into a frontend and a backend from the perspective of application development. The frontend may include the client terminal (110) in that the application interface is displayed on the screen of the client terminal (110) so that the user can see it. That is, the frontend of the application for providing the first service performing an operation may be expressed as the client terminal (110) performing the corresponding operation. In addition, one or more devices included in the frontend in the present disclosure may also be referred to as a frontend device. On the other hand, the backend may include at least one of the electronic device (120), the management device (130), and the external device (not shown) in that the data exchange between the electronic device (120), the management device (130), and the external device (not shown) and the data processing of the electronic device (120) are not visible to the user. That is, the backend of the application for providing the first service may be expressed as each of the electronic device (120), the management device (130), and the external device (not shown) performing the operation, or as the electronic device (120) performing the operation. In addition, in the present disclosure, one or more devices, such as the electronic device (120), the management device (130), or the external device (not shown), included in the backend may also be referred to as a backend device.
[0079] In one embodiment, the client terminal (110), the electronic device (120), or the management device (130) may be independent entities. In this case, the client terminal (110), the electronic device (120), or the management device (130) may exchange data via an inter-device network. However, the present disclosure is not limited thereto. For example, at least two or more of the client terminal (110), the electronic device (120), or the management device (130) may be implemented as a single entity. As a specific example, the environment (100) may include a device having a module (or processor) for performing the function of the electronic device (120) and a module (or processor) for performing the function of the management device (130). In this case, the module (or processor) for performing the function of the electronic device (120) and the module (or processor) for performing the function of the management device (130) may exchange data via an intra-device network.
[0080] In addition, although FIG. 1 illustrates that the client terminal (110), the electronic device (120), and the management device (130) are each implemented as a single device, the present disclosure is not limited thereto. For example, the client terminal (110) may be implemented as a system including one or more computing devices for performing the same function as the client terminal (110). As another example, the electronic device (120) may be implemented as a system including one or more computing devices for performing the same function as the client terminal (110). As another example, the management device (130) may be implemented as a system including one or more computing devices for performing the same function as the client terminal (110). The computing devices may be described in FIG. 2.
[0081] FIG. 2 is a drawing for explaining a computing device (200) according to one embodiment of the present disclosure.
[0082] In one embodiment, the client terminal (110), the electronic device (120), and the management device (130) may each be implemented as one or more computing devices (200). For convenience of explanation, the following description will focus on one computing device (200).
[0083] In one embodiment, the computing device (200) may include one or more processors (210), one or more memories (220), or a communication interface (230). Meanwhile, some components may be deleted from the computing device (200), or other components (such as a display or input device) may be added to the computing device (200). Additionally or alternatively, some components may be implemented in an integrated manner, or implemented as a single or multiple entities. In the present disclosure, one or more processors (210) may be referred to as a processor (210). The term “processor (210)” may mean a set of one or more processors, unless the context clearly indicates otherwise. In addition, in the present disclosure, one or more memories (220) may be referred to as a memory (220). The term “memory (220)” may mean a set of one or more memories, unless the context clearly indicates otherwise. Alternatively, in the present disclosure, the term communication interface (230) may mean a set of one or more communication circuits, unless the context clearly indicates otherwise.
[0084] Below, each component illustrated in Fig. 2 will be described in more detail.
[0085] In one embodiment, the processor (210) may perform calculations or information processing related to control or communication of each component of the computing device (200). Specifically, the processor (210) may control at least one component of the computing device (200) connected to the processor (210) by executing software (or a computer program) received from another component. As an example, the processor (210) may load a command (e.g., an instruction, a code, or a code segment) or information into the memory (220), process the command or information stored in the memory (220), and store result information according to the processing in the memory (220). In addition, the processor (210) may be operatively connected to the components of the computing device (200) to perform various operations such as calculations, processing, generation, or processing related to the present disclosure.
[0086] In one embodiment, the memory (220) may store various information. The information stored in the memory (220) may include software, which is information acquired, processed, or used by at least one component of the computing device (200). The software may include one or more instructions that, when loaded into the memory (220), cause the processor (210) to perform operations according to various embodiments of the present disclosure. That is, the processor (210) may perform operations according to various embodiments of the present disclosure by executing the one or more instructions described above. In addition, the memory (220) may implement (store) a database for recording a history related to inspection requests for code changes. The memory (220) may include, for example, volatile or non-volatile memory.
[0087] In one embodiment, the program is software stored in the memory (220), and may include an operating system for controlling the resources of the computing device (200), an application, or middleware for providing various functions to the application so that the application can utilize the resources of the computing device (200).
[0088] In one embodiment, the communication interface (230) can establish a wired or wireless communication channel with another device and transmit and receive various information with the other device.
[0089] In one embodiment, the communication interface (230) may include at least one port for connecting to another device via a wired cable in order to communicate with another device via a wired connection. In this case, the communication interface (230) may communicate with another device via the wired connection through the at least one port. In one embodiment, the communication interface (230) may be configured to connect to a cellular network (e.g., 3G, LTE, 5G, Wibro, or Wimax) by including a cellular communication module. In one embodiment, the communication interface (230) may include a short-range communication module to transmit and receive information with another device using short-range communication (e.g., Wi-Fi, Bluetooth, Bluetooth Low Energy (BLE), UWB).
[0090] In one embodiment, the communication interface (230) may include a contactless communication module for contactless communication. The contactless communication may include at least one contactless proximity communication technology, such as Near Field Communication (NFC), Radio Frequency Identification (RFID), or Magnetic Secure Transmission (MST). In addition to the various examples described above, the computing device (200) may be implemented in various known ways for communicating with other devices, and the scope of the present disclosure is not limited by the examples described above.
[0091] In one embodiment, the computing device (200) may include a display. The display may display various screens (e.g., one or more pages) based on the control of the processor (210). For example, when the computing device (200) receives data that causes it to display a specific screen, the processor (210) may control the display to display the specific screen. In addition, in order to display screens to which various interfaces are applied on the display, for example, a web browser or a dedicated application may be installed on the computing device (200). In addition, the display may be a component that can interact with a user and receive user input from the user. Such a display may be implemented in the form of a touch sensor panel (TSP) that can recognize the contact or proximity of various external objects (e.g., a user's finger or stylus).
[0092] In one embodiment, the computing device (200) may include an input device (e.g., a mouse or a keyboard). The input device may receive information to be used in components of the computing device (200) from an external source (e.g., a user) of the computing device (200).
[0093] The processor (210), memory (220), and communication interface (230) illustrated in FIG. 2 are connected to each other through a bus, GPIO (General Purpose Input / Output), SPI (Serial Peripheral Interface), or MIPI (Mobile Industry Processor Interface), and can send or receive information or signals.
[0094] Below, methods according to various embodiments of the present disclosure are described in detail. While operations are depicted in a specific order in the drawings below, it should be noted that the operations do not necessarily have to be performed in the specific order depicted or in a sequential order, or that all depicted operations must be performed to achieve the desired results.
[0095] In addition, the operation of the method to be described with reference to the drawings below may be performed by a computing device (200) constituting one or at least a portion of the client terminal (110), the electronic device (120), or the management device (130). In other words, the operation of the method may be implemented by one or more instructions executed by a processor (210) of a computing device (200) constituting one or at least a portion of the client terminal (110), the electronic device (120), or the management device (130). All operations included in this method may be executed by a single physical computing device, but for example, a first operation of the method may be performed by a first computing device, and a second operation of the method may be performed by a second computing device. In other words, the operations included in the method may be performed by being divided among a plurality of computing devices.
[0096] Meanwhile, as a business strategy to achieve a synergy effect of simultaneously increasing sales of related services and a promotional effect of simultaneously promoting various services, a strategy of displaying data of a specific service and other services together within the application while the application providing a specific service is running on the user's terminal can be considered.
[0097] To this end, the present disclosure proposes a method for enabling users to access a wider range of services through a single application by displaying data for a second service, different from the first service, within an application providing the first service. This will be described in detail below with reference to FIGS. 3 to 15.
[0098] FIG. 3 is a diagram for explaining a process of processing application data in an application execution environment (300) according to one embodiment of the present disclosure. The application execution environment (300) of FIG. 3 illustrates an environment in which an application for providing a first service is executed. As described in FIG. 1, in the application execution environment (300) of FIG. 3, the front-end may indicate a front-end device including a client terminal (110), and the back-end may indicate a back-end device including at least one of an electronic device (120), a management device (130), or an external device (not shown).
[0099] In one embodiment, the client terminal (110) may display an interface (310) of an application for providing a first service. The client terminal (110) may receive a user input corresponding to the application interface (310) and transmit a data request for the application to a backend device in response to the user input.
[0100] In one embodiment, the backend may include a first service-related backend (320) and a second service-related backend (330).
[0101] For example, the first service-related backend (320) of the backend device is a backend that generates data of an application for providing the first service, and may be an entity that can be physically or virtually configured based on at least a portion of one or more processors or one or more memories of the backend device. The first service-related backend (320) of the backend device may obtain at least one of data of the first service or data of the second service, and generate data of an application for providing the first service based on the obtained data. Here, the application data generated by the first service-related backend (320) of the backend device may differ depending on whether the first service-related backend (320) of the backend device has obtained data of the second service. For example, if the first service-related backend (320) of the backend device has not obtained data of the second service, the first service-related backend (320) of the backend device may generate data of the application based on the data of the first service so that the data of the first service is displayed within the application. As another example, when a backend (320) related to a first service of a backend device obtains data of a second service, the backend (320) related to a first service of the backend device can generate data of an application so that the data of the first service and the data of the second service are displayed together within the application based on the data of the first service and the data of the second service.
[0102] For example, the second service-related backend (330) of the backend device may be a backend that determines whether to display data of the second service within an application for providing the first service, and may be an entity that may be physically or virtually configured based on at least a portion of one or more processors or one or more memories of the backend device. The second service-related backend (330) of the backend device may obtain data for determining whether to display data of the second service within an application for providing the first service, and may determine whether to display data of the second service within the application based on the obtained data.
[0103] In one embodiment, the second service-related backend (330) of the backend device can transmit the result of performing the operation to the first service-related backend (320) of the backend device. Through this, the first service-related backend (320) of the backend device can perform the operation for the first service based on the result of performing the operation for the second service-related backend (330).
[0104] For example, if the second service-related backend (330) of the backend device decides to display data of the second service within an application for providing the first service, the first service-related backend (320) of the backend device may obtain data of the first service and data of the second service, and generate data of the application so that the data of the first service and the data of the second service are displayed together within the application. Thereafter, the first service-related backend (320) of the backend device may transmit the generated data of the application to the client terminal (110). Accordingly, the data of the first service and the data of the second service may be displayed within the application on the display of the client terminal (110). That is, the interface (310) of the application on the display of the client terminal (110) may include a first interface generated based on data of the first service and a second interface generated based on data of the second service.
[0105] For example, if the second service-related backend (330) of the backend device determines not to display data of the second service within the application for providing the first service, the first service-related backend (320) of the backend device may obtain data of the first service and generate application data so that the data of the first service is displayed within the application. Thereafter, the first service-related backend (320) of the backend device may transmit the generated application data to the client terminal (110). Accordingly, the data of the first service may be displayed within the application on the display of the client terminal (110), and the data of the second service may not be displayed. In other words, the interface (310) of the application on the display of the client terminal (110) may include a first interface generated based on the data of the first service.
[0106] FIG. 4 is a diagram for explaining a first service-related backend (400) according to one embodiment of the present disclosure.
[0107] In one embodiment, a first service-related backend (400) of a backend device can perform one or more operations for one or more services. Referring to FIG. 4, the first service-related backend (400) of the backend device can request data of Service 2 from a server (or an external device) and receive the same. Alternatively, the first service-related backend (400) of the backend device can request data of Service 3 from a database and receive the same. Alternatively, the first service-related backend (400) of the backend device can generate data of Service 1 based on data of other services, such as Service 2 and Service 3.
[0108] FIG. 5 is a diagram for explaining a second service-related backend (500) according to one embodiment of the present disclosure.
[0109] In one embodiment, a second service-related backend (500) of a backend device can perform one or more operations for one or more services associated with a traffic agent (510) of the backend device. Here, the traffic agent (510) of the backend device constitutes a part of the second service-related backend (500) and can be an entity that can be physically or virtually configured based on at least a portion of one or more processors or one or more memories of the backend device as a backend for determining whether to display data of the second service within an application for providing the first service for the purpose of controlling data traffic of the second service.
[0110] In one embodiment, the traffic agent (510) of the backend device may request a display rule for the data of the second service from the traffic admin (515) and receive the display rule from the traffic admin (515). Here, the traffic admin (515) may be a backend for receiving and storing the display rule for the data of the second service from the user, and may be an entity that may be physically or virtually configured based on at least a portion of one or more processors or one or more memories of the backend device. Alternatively, the traffic admin (515) may be a server or external device capable of receiving and storing the display rule for the data of the second service from the user or having such a function. Meanwhile, the display rule for the data of the second service may refer to the descriptions of FIGS. 7A and 7B.
[0111] The traffic agent (510) of the backend device may collect data for determining whether to display data of the second service within the application for providing the first service based on the display rules. Specifically, the traffic agent (510) of the backend device may determine a filter list to be applied in determining whether to display data of the second service within the application for providing the first service based on the display rules, and may collect data for evaluating each of one or more filters included in the determined filter list. Referring to FIG. 5 as an example, the traffic agent (510) of the backend device may request data of service B from server B (or database B) and receive the same. Here, service B may be a service that manages user data. In this case, the data of service B may be user data. Alternatively, the traffic agent (510) of the backend device may request data of service C from database C (server C) and receive the same. Here, service C may be a service that manages system data. In this case, the data of service C may be system data. Alternatively, the traffic agent (510) of the backend device may generate data for Service A based on data from other services, such as Service B or Service C. Here, Service A may be a service that determines whether to display data from a second service within an application for providing a first service. In this case, the data from Service A may be data indicating whether to display data from the second service within the application for providing the first service. Alternatively, the traffic agent (510) of the backend device may request data from database E for the second service and receive it.
[0112] FIG. 6 is a diagram for explaining a process of setting display rules for data of a second service according to one embodiment of the present disclosure.
[0113] Referring to FIG. 6, the operator of the first service or the operator of the second service can set display rules for the data of the second service in the traffic agent (610) of the backend device through the traffic admin (620). For example, if the operator of the first service or the operator of the second service inputs (or selects) the display rules for the data of the second service into the interface of the traffic admin (620), the traffic admin (620) can store the display rules. Thereafter, the traffic admin (620) can set the traffic agent (610) of the backend device to apply the display rules for the data of the second service. As a specific example, when the traffic admin (620) is implemented as at least a portion of one or more processors or one or more memories in the backend, the traffic admin (620) of the backend device can receive an input of the operator corresponding to the interface of the traffic admin (620) and store the display rules for the data of the second service included in the input of the operator. Thereafter, the traffic agent (610) of the backend device can perform an operation for each of one or more services associated with the traffic agent (610) based on the stored display rules.
[0114] FIG. 7A is a diagram illustrating a process for determining whether to display data of a second service within an application for providing a first service according to one embodiment of the present disclosure. Meanwhile, from a management perspective of a service provider, the backend of the application may be divided into a first service domain and a second service domain. As illustrated in FIG. 7A, a first service-related backend (710) of a backend device may belong to a first service domain that may be managed by a provider of the first service. In addition, some of the second service-related backends (740) of the backend device may belong to a second service domain that may be managed by a provider of the second service. Alternatively, another part (720, 730) of the second service-related backends of the backend device may belong to an edge layer, which is a boundary between the first service domain and the second service domain, so as to be managed by a provider of the first or second service.
[0115] In one embodiment, one or more services for a first service-related backend (710) of a backend device may be managed (added, deleted, or changed) by a provider of the first service. For example, the first service-related backend (710) of the backend device may receive a management request for one or more services for the first service-related backend (710) from a provider of the first service, and may manage (add, delete, or change) one or more services according to the management request.
[0116] In one embodiment, one or more services for some of the backends (740) related to the second service of the backend device may be managed (added, deleted, or changed) by the operator of the second service. For example, some of the backends (740) related to the second service of the backend device may receive a management request for one or more services for some of the backends (740) related to the second service from the operator of the second service, and may manage (add, delete, or change) one or more services according to the management request.
[0117] In one embodiment, the traffic agent of the backend device may have a display rule (720) for data of the second service set by at least one of the operator of the first service or the operator of the second service through the traffic admin. For example, the traffic agent of the backend device may receive the display rule (720) for data of the second service through the traffic admin, and based on the received display rule (720), request data of one or more services from the support backend (730) of the backend device, and receive the data. Here, the support backend (730) of the backend device may be a backend that manages data for determining whether to display data of the second service within an application for providing the first service, and may be an entity that may be physically or virtually configured based on at least a portion of one or more processors or one or more memories of the backend device. Alternatively, the support backend (730) may be a server or an external device that may perform an operation for managing data for determining whether to display data of the second service within an application for providing the first service, or may have such a function. The traffic agent of the backend device can determine whether to display data of the second service within the application for providing the first service based on data received from the support backend (730).
[0118] Hereinafter, referring to FIG. 7a, a first option for processing data of a second service when it is decided to display data of a second service within an application for providing a first service is described.
[0119] In step 0, the traffic agent of the backend device can receive display rules for data of the second service from the traffic administrator. Through this, display rules can be set (720) in the traffic agent.
[0120] In step 1, the traffic agent of the backend device may receive a query from the backend (710) related to the first service of the backend device as to whether to display data of the second service within the application for providing the first service.
[0121] In step 2, the traffic agent of the backend device determines the data required to determine whether to display data of the second service based on the established display rules, and requests the data from the support backend (730) of the backend device that supports determining whether to display data of the second service. Here, the data required to determine whether to display data of the second service may include at least one of user data and system data.
[0122] In step 3, the traffic agent of the backend device can receive data necessary for determining whether to display data of the second service from the support backend (730) of the backend device. Based on the data necessary for determining whether to display data of the second service, the traffic agent of the backend device can determine whether to display data of the second service within the application for providing the first service by determining whether one or more display conditions indicated by one or more filters in the filter list set by the display rules are satisfied.
[0123] If it is decided to display data of the second service within the application for providing the first service, in step 4.1.1, the traffic agent of the backend device can request data of the second service from the backend (740) related to the second service of the backend device.
[0124] In step 4.1.2, the traffic agent of the backend device can receive data of the second service from the second service-related backend (740) of the backend device.
[0125] In step 4.1.3, the traffic agent of the backend device may transmit data of the second service to the first service-related backend (710) of the backend device. Thus, the first option may refer to a method in which the traffic agent of the backend device directly acquires data of the second service and transmits it to the first service-related backend (710) of the backend device. Accordingly, the first service-related backend (710) of the backend device may generate application data for providing the first service based on the data of the first service and the data of the second service.
[0126] FIG. 7b is a diagram illustrating a process for determining whether to display data of a second service within an application for providing a first service according to one embodiment of the present disclosure.
[0127] Hereinafter, referring to FIG. 7b, a second option for processing data of a second service when it is decided to display data of a second service within an application for providing a first service is described.
[0128] In step 1, the traffic agent of the backend device may receive a query from the backend (710) related to the first service of the backend device as to whether to display data of the second service within the application for providing the first service.
[0129] In step 2, the traffic agent of the backend device may determine the data required to determine whether to display data of the second service based on the established display rules, and request the required data from the support backend (730) of the backend device. Here, the data required to determine whether to display data of the second service may include at least one of user data and system data.
[0130] In step 3, the traffic agent of the backend device can receive data necessary to determine whether to display data of the second service from the support backend (730) of the backend device. Based on the data received from the support backend (730), the traffic agent of the backend device can determine whether to display data of the second service within the application for providing the first service by determining whether one or more display conditions indicated by one or more filters in the filter list set by the display rule are satisfied.
[0131] In step 4.2.1, the traffic agent of the backend device may transmit instruction data to the backend (710) of the backend device related to the first service, indicating whether to display data of the second service within the application for providing the first service. Here, the instruction data may indicate either displaying or not displaying data of the second service.
[0132] If the instruction data indicates that data of the second service is to be displayed, in step 4.2.2, the first service-related backend (710) of the backend device can request data of the second service to the second service-related backend (740) of the backend device.
[0133] In step 4.2.3, the first service-related backend (710) of the backend device can receive data of the second service from the second service-related backend (740) of the backend device. In this way, the second option may refer to a method in which the traffic agent of the backend device only determines whether to display data of the second service and notifies the first service-related backend (710) of the backend device of this, and the first service-related backend (710) of the backend device directly obtains data of the second service. According to the second option, the possibility of a bottleneck occurring in the traffic agent can be minimized, thereby improving data processing efficiency. Thereafter, the first service-related backend (710) of the backend device can generate data of an application for providing the first service based on the data of the first service and the data of the second service. According to the second option, the possibility of a bottleneck occurring in the traffic agent can be minimized, thereby improving data processing efficiency.
[0134] Meanwhile, although the first option and the second option have been described separately with reference to FIGS. 7A and 7B , the present disclosure is not limited thereto. Either the first option or the second option may be selected, and data of the second service may be processed according to the selected option. That is, if the first option is selected, the traffic agent of the backend device may directly obtain data of the second service and transmit it to the backend (710) related to the first service of the backend device. Alternatively, if the second option is selected, the traffic agent of the backend device may only transmit whether or not data of the second service is displayed to the backend (710) related to the first service of the backend device, and the backend (710) related to the first service of the backend device may directly obtain data of the second service.
[0135] For example, if the system load ratio is below a certain value, the first option may be selected, and data from the second service may be processed according to the first option. Alternatively, if the system load ratio exceeds a certain value, the second option may be selected, and data from the second service may be processed according to the second option.
[0136] For example, if the data size (or quantity) of the second service is below a certain value, the first option may be selected and the data of the second service may be processed according to the first option. Alternatively, if the data size (or quantity) of the second service exceeds a certain value, the second option may be selected and the data of the second service may be processed according to the second option.
[0137] FIG. 8 is a diagram for explaining the detailed operation of a first option (800) for determining whether to display data of a second service within an application for providing a first service according to one embodiment of the present disclosure.
[0138] At step 810, the traffic agent of the backend device may receive a query message asking whether to display data of the second service within the application for providing the first service.
[0139] At step 820, the traffic agent of the backend device can check the header of the inquiry message. For example, the traffic agent of the backend device can check whether the inquiry message includes a header indicating a scenario. Here, the scenario can indicate the type of page on which data from the second service is displayed within the application providing the first service, and how the data from the second service is displayed on that page.
[0140] If the inquiry message does not contain a header indicating a scenario, at step 830, the traffic agent of the backend device may decide not to respond to the inquiry message. For example, steps 4.1.1, 4.1.2, and 4.1.3 of FIG. 7a may not be performed.
[0141] If the inquiry message includes a header indicating a scenario, at step 840, the traffic agent of the backend device may determine a filter list set for the scenario indicated by the header based on the display rules for data of the second service, and check one or more filters included in the filter list. Furthermore, the traffic agent of the backend device may obtain data for determining whether to display data of the second service as a comparison target with one or more filters.
[0142] In one embodiment, one or more filters may indicate display conditions that must be satisfied in order to display data of a second service within an application providing a first service.
[0143] For example, one or more filters may include filters to evaluate at least one of a user identifier, location, date, day of the week, time of day, membership status, or system load factor.
[0144] For example, one or more filters may include a location filter for evaluating whether the location of the user of the client terminal (110) is a specific location. For example, the specific location that is the target of the location filter evaluation may be determined based on the location history of the user of the client terminal (110) using the second service.
[0145] For example, one or more filters may include a time filter for evaluating whether the time at which the inquiry message was received corresponds to a specific time. For example, the specific time for which the time filter is evaluated may be determined based on the time history of the user of the client terminal (110) using the second service.
[0146] In one embodiment, the data for determining whether to display data of the second service may include at least one of user data, system data, or AB test data.
[0147] For example, the user data may include a user identifier of the client terminal (110).
[0148] For example, a user identifier may include at least one of a unique identifier and a quasi-identifier. A unique identifier may include data that directly identifies the user, such as a name, phone number, resident registration number, or biometric information. Quasi-identifiers may also include data that indirectly identifies the user, such as gender, nationality, blood type, credit rating, occupation, device ID, or IP address.
[0149] For example, a user identifier may include a de-identified unique identifier or quasi-identifier. For example, a user identifier may include a member number (memberSrl), an order number, an invoice number, a persistent cookie ID (PCID), etc., as a result of de-identifying a unique identifier or quasi-identifier. In this way, a user identifier may not identify a user on its own, but may be composed of numbers or letters that correspond to that user.
[0150] For example, the user data may include location data associated with the user of the client terminal (110).
[0151] For example, location data associated with a user may include location data of a client terminal (110). Here, the location data of the client terminal (110) may indicate global positioning system (GPS) coordinates of the client terminal (110).
[0152] For example, location data associated with a user may include location data of the user set for a first service. Here, the location data of the user set for the first service may indicate a location preset by the user in an application for providing the first service.
[0153] For example, location data associated with a user may include the user's location history data for a first service. Here, the user's location history data for the first service may indicate the user's location when using the first service. Alternatively, the user's location when using the first service may be the user's location when an item from the first service is provided to the user. In other words, the user's location when using the first service may be the delivery location for the item from the first service.
[0154] For example, location data associated with a user may include location data of the user set for a second service. Here, the location data of the user set for the second service may indicate a location preset by the user in an application for providing the second service.
[0155] For example, location data associated with a user may include the user's location history data for a second service. Here, the user's location history data for the second service may indicate the user's location when using the second service. Alternatively, the user's location when using the second service may be the location of the user when an item from the second service is provided to the user. In other words, the user's location when using the second service may be the delivery location for the item from the second service.
[0156] For example, user data may include date data, where the date data may indicate the date the inquiry message was received.
[0157] For example, user data may include day of the week data, where the day of the week data may indicate the day of the week on which the inquiry message was received.
[0158] For example, user data may include time data, where the time data may indicate the time at which the inquiry message was received.
[0159] For example, user data may include service usage history data.
[0160] For example, the service usage history data may include at least one of the first service usage history data or the second service usage history data.
[0161] For example, the first service usage history data may indicate a user's history of using the first service. Here, the user's history of using the first service may include the number of uses, the period of use, the start date of use, the end date of use, the location of use, the most recent delivery location of items from the first service, the number of times an application for providing the first service was executed, or the time between the execution and termination of an application for providing the first service.
[0162] For example, the second service usage history data may indicate a user's history of using the second service. Here, the user's history of using the second service may include the number of uses, the period of use, the start date of use, the end date of use, the location of use, the most recent delivery location of items from the second service, the number of times an application for providing the second service was executed, or the time between the execution and termination of an application for providing the second service.
[0163] For example, user data may include membership data. Here, membership may refer to an entitlement or status that entitles a user to additional monetary or non-monetary benefits when using the first or second service. Monetary benefits may include free shipping, free returns, coupon issuance, and additional discounts. Non-monetary benefits may include content viewing benefits. Users can subscribe to membership by paying a certain amount of membership fee.
[0164] For example, membership data may indicate whether a user has subscribed to a membership (membership status).
[0165] For example, system data may include system status data, where the system status data may indicate a system load factor.
[0166] For example, AB test data may include first group data and second group data.
[0167] For example, the first group data may indicate a user belonging to the first group. Specifically, the first group data may include at least one of a first group identifier or a first group user identifier. When an application for providing the first service is executed on a client terminal (110) of a user belonging to the first group, data for the first service and data for the second service may be displayed together within the application.
[0168] For example, the second group data may indicate a user belonging to the second group. Specifically, the second group data may include at least one of a second group identifier or a user identifier of the second group. When an application for providing the first service is executed on a client terminal (110) of a user belonging to the second group, only data for the first service may be displayed within the application, and data for the second service may not be displayed.
[0169] Meanwhile, whether a user belongs to the first group or the second group can be determined randomly. Alternatively, whether a user belongs to the first group or the second group can be determined based on the user's history. Here, the user's history can include at least one of a first service usage history or a second service usage history. For example, if the user has no history of using the second service, the user can be set to belong to the second group. Alternatively, if the user has a history of using the second service, the user can be set to belong to the second group. Alternatively, if the number of times the user has used the second service is a predetermined number of times (e.g., 3 times) or more, the user can be set to belong to the first group. Alternatively, if the period of time the user has used the second service is a predetermined period of time (e.g., 3 months) or more, the user can be set to belong to the first group. Alternatively, if the number of times the user has executed an application for providing the second service on the client terminal (110) is a predetermined number of times (e.g., 5 times) or more, the user can be set to belong to the first group. In this way, if a user is likely to use the second service, by setting the user to belong to the first group, data of the second service can be displayed within the application while the user is executing the application for providing the first service on the client terminal (110). In addition, by dividing users using the first service or the second service into the first group or the second group, the number of users who use the second service after displaying the data of the second service within the application for providing the first service among the users belonging to the first group and the number of users who use the second service after displaying only the data of the first service without displaying the data of the second service within the application for providing the first service among the users belonging to the second group can be determined.Accordingly, it will be possible to continuously monitor the extent to which the promotional effect of the second service can be achieved by displaying the data of the second service within the application for providing the first service.
[0170] At step 850, the traffic agent of the backend device can determine whether the data for determining whether to display data of the second service passes all of one or more filters. That is, the traffic agent of the backend device can determine whether the data for determining whether to display data of the second service satisfies all of one or more display conditions indicated by one or more filters.
[0171] For example, if one or more filters include a user identifier filter, the traffic agent of the backend device can determine whether a user identifier contained in the user data passes the user identifier filter. Specifically, the traffic agent of the backend device can determine whether a user identifier contained in the user data matches a user identifier (indication condition) indicated by the user identifier filter.
[0172] For example, if one or more filters include a location filter, the traffic agent of the backend device can determine the reference location of the user based on the location data associated with the user included in the user data, and determine whether the reference location of the user passes the location filter. Specifically, the traffic agent of the backend device can determine whether the reference location of the user matches a specific location (display condition) indicated by the location filter. Meanwhile, the reference location of the user can indicate a location that serves as a reference for determining whether a second service needs to be promoted to the user. For example, if the location data associated with the user includes the user's location history data for the second service, the traffic agent of the backend device can determine the location when the second service was used as the user's reference location. For example, if the location data associated with the user does not include the user's location history data for the second service, but includes the user's location data set for the second service, the traffic agent of the backend device can determine the location preset by the user in the application for providing the second service as the user's reference location. For example, if the location data associated with a user does not include the user's location history data for a second service and the user's location data set for the second service, but includes the user's location history data for a first service, the traffic agent of the backend device can determine the location when the user used the first service as the user's reference location.For example, if the location data associated with the user does not include the user's location history data for the second service, the user's location data set for the second service, and the user's location history data for the first service, but does include the user's location data set for the first service, the traffic agent of the backend device may determine the location preset by the user in the application for providing the first service as the user's reference location. For example, if the location data associated with the user does not include the user's location history data for the second service, the user's location data set for the second service, the user's location history data for the first service, and the user's location data set for the first service, the traffic agent of the backend device may determine the location (e.g., GPS coordinates) of the client terminal (110) as the user's reference location.
[0173] For example, if one or more filters include a date filter, the traffic agent of the backend device can determine whether the date data contained in the user data passes the date filter. Specifically, the traffic agent of the backend device can determine whether the date data contained in the user data matches the date (display condition) indicated by the date filter.
[0174] For example, if one or more filters include a date filter, the traffic agent of the backend device can determine whether the date data contained in the user data passes the date filter. Specifically, the traffic agent of the backend device can determine whether the date data contained in the user data matches the date (display condition) indicated by the date filter.
[0175] For example, if one or more filters include a day-of-week filter, the traffic agent of the backend device can determine whether the day-of-week data contained in the user data passes the day-of-week filter. Specifically, the traffic agent of the backend device can determine whether the day-of-week data contained in the user data matches the day of the week (display condition) indicated by the date filter.
[0176] For example, if one or more filters include a time filter, the traffic agent of the backend device can determine whether the time data contained in the user data passes the time filter. Specifically, the traffic agent of the backend device can determine whether the time data contained in the user data matches the time (display condition) indicated by the time filter.
[0177] For example, if one or more filters include a membership filter, the traffic agent of the backend device can determine the user's membership subscription status based on the membership data included in the user data and determine whether the user's membership status passes the membership filter. Specifically, the traffic agent of the backend device can determine whether the user's membership status is a subscription status (indication condition) indicated by the membership filter.
[0178] For example, if one or more filters include a system load filter, the traffic agent of the backend device can determine whether the system load rate contained in the system data passes through the system load filter. Specifically, the traffic agent of the backend device can determine whether the system load rate contained in the system data is less than a value (indication condition) indicated by the system load filter.
[0179] For example, if one or more filters include an AB test filter, the traffic agent of the backend device can determine the group to which the user belongs based on the AB test data and determine whether the group to which the user belongs passes the AB test filter. Specifically, the traffic agent of the backend device can determine whether the group to which the user belongs matches the group (display condition) indicated by the AB test filter.
[0180] If the data does not pass one or more filters to determine whether to display data from the second service, the traffic agent of the backend device may decide not to respond to the inquiry message at step 830. For example, steps 4.1.1, 4.1.2, and 4.1.3 of FIG. 7a may not be performed.
[0181] If the data passes one or more filters to determine whether to display data from the second service, then at step 860, the traffic agent of the backend device can request data from the second service.
[0182] At step 870, the traffic agent of the backend device can obtain data of the second service.
[0183] At step 880, the traffic agent of the backend device can transmit data of the second service so that the data of the second service is displayed within the application for providing the first service.
[0184] FIG. 9 is a diagram for explaining the detailed operation of a second option (900) for determining whether to display data of a second service within an application for providing a first service according to one embodiment of the present disclosure.
[0185] At step 910, the traffic agent of the backend device may receive a query message asking whether to display data of the second service within the application for providing the first service.
[0186] At step 920, the traffic agent of the backend device can check the header of the inquiry message. For example, the traffic agent of the backend device can check whether the inquiry message contains a header indicating the scenario.
[0187] If the inquiry message does not include a header indicating a scenario, at step 930, the traffic agent of the backend device may determine not to display data of the second service within the application providing the first service. Accordingly, the traffic agent of the backend device may transmit instruction data in response to the inquiry message, indicating not to display data of the second service within the application providing the first service.
[0188] If the inquiry message includes a header indicating a scenario, at step 940, the traffic agent of the backend device may determine a filter list set for the scenario indicated by the header based on the display rules for data from the second service, and check one or more filters included in the filter list. Furthermore, the traffic agent of the backend device may obtain data for determining whether to display the data from the second service as a comparison target with one or more filters. This may be referred to the description of FIG. 8.
[0189] At step 950, the traffic agent of the backend device may determine whether the data for determining whether to display data from the second service passes all of one or more filters. For example, the traffic agent of the backend device may determine whether the data for determining whether to display data from the second service satisfies all of one or more display conditions indicated by one or more filters. This may be referred to the description in FIG. 8.
[0190] If the data used to determine whether to display data of the second service does not pass one or more filters, at step 930, the traffic agent of the backend device may determine not to display data of the second service within the application providing the first service. Accordingly, the traffic agent of the backend device may transmit, in response to the inquiry message, instruction data indicating not to display data of the second service within the application providing the first service.
[0191] If the data for determining whether to display data from the second service passes one or more filters, at step 960, the traffic agent of the backend device may determine to display data from the second service within the application for providing the first service. Accordingly, the traffic agent of the backend device may transmit instruction data in response to the inquiry message, indicating that data from the second service should be displayed within the application for providing the first service.
[0192] FIG. 10 is a diagram for explaining display rules for data of a second service according to one embodiment of the present disclosure.
[0193] In one embodiment, the display rule for the data of the second service may indicate one or more scenarios and a filter list set for each of the one or more scenarios. That is, the display rule may be set so that one or more scenarios and one or more filter lists have a one-to-one correspondence. Here, the scenario may indicate the type of page on which the data of the second service is displayed within the application for providing the first service and the display method of the data of the second service within the page. The type of page on which the data of the second service is displayed may indicate any one of a gateway page, a cart page, a search page, etc. The display method of the data of the second service may indicate the type (or form) of the interface. As a specific example, scenario 1 of FIG. 10 may indicate that the data of the second service is displayed on a gateway page within the application for providing the first service, and that the type of interface on which the data of the second service is displayed within the gateway page is a carousel-type interface. As another example, Scenario 2 of FIG. 10 may indicate that data from a second service is displayed on a shopping cart page within an application providing a first service, and that the interface within the shopping cart page displaying the data from the second service is a snack bar-type interface. Furthermore, the filter list may include one or more filters, and each of the one or more filters may include a filter for evaluating at least one of a user identifier, location, date, day of the week, time, membership subscription status, or system load factor. In other words, each of the one or more filters may indicate a display condition for displaying data from the second service within the application providing the first service.
[0194] In one embodiment, priorities may be set among one or more filters included in a filter list. Referring to FIG. 10, the filter list set in scenario 1 includes filter A, filter C, and filter E, where filter A has the highest priority and filter E has the lowest priority. Accordingly, when determining whether data for determining whether to display data of a second service passes one or more filters, the data for determining whether to display data of the second service may be compared with filter A first. In other words, whether the display conditions indicated by the filters among the one or more filters are satisfied by the data for determining whether to display data of the second service may be determined in order, starting with the filter with the highest priority.
[0195] FIG. 11 is a diagram illustrating a process of processing data of an application for providing a first service according to one embodiment of the present disclosure.
[0196] In step 1, the client terminal (110) may receive a user input corresponding to the interface of the application (1110) and, in response thereto, transmit a data request for the application (1110) to a first service-related backend (1120) of the backend device.
[0197] In step 2, the first service-related backend (1120) of the backend device can transmit an inquiry message to the second service-related backend (traffic agent) (1130) of the backend device regarding whether to display data of the second service within an application for providing the first service.
[0198] In step 3, the second service-related backend (1130) of the backend device can determine whether to display data of the second service within an application for providing the first service, and transmit the determination result to the first service-related backend (1120) of the backend device.
[0199] In step 4, the first service-related backend (1120) of the backend device can generate application data based on the decision result of whether to display data of the second service within the application for providing the first service. For example, if it is decided to display data of the second service within the application for providing the first service, the first service-related backend (1120) of the backend device can generate application data based on the data of the first service and the data of the second service. That is, the first service-related backend (1120) of the backend device can generate application data so that data of the second service is displayed within the application. On the other hand, if it is decided not to display data of the second service within the application for providing the first service, the first service-related backend (1120) of the backend device can generate application data based on the data of the first service. That is, the first service-related backend (1120) of the backend device can generate application data so that data of the second service is not displayed within the application.
[0200] FIG. 12 is a drawing for explaining a screen (1210, 1220) displayed on a client terminal (110) according to a result of a decision on whether to display data of a second service within an application for providing a first service according to one embodiment of the present disclosure.
[0201] In one embodiment, if it is decided to display data of a second service within an application for providing a first service, the screen (1210) displayed on the client terminal (110) may display data of the first service and data of the second service together.
[0202] In one embodiment, if it is decided not to display data of a second service within an application for providing a first service, data of the first service may be displayed on the screen (1220) displayed on the client terminal (110).
[0203] FIG. 13 is a diagram for explaining a process of processing page data of an application for providing a first service according to one embodiment of the present disclosure.
[0204] In step 1, the client terminal (110) may receive a user input corresponding to the interface of the application (1310) and, in response, transmit a page data request for the application (1310) to the backend device.
[0205] In step 2, the backend for the page providing service (1320) for the first service of the backend device can request the backend for the recommendation item determination service (1330) for the first service of the backend device to recommend items to be displayed within the application.
[0206] In step 3, the backend for the recommended item determination service (1330) for the first service of the backend device can inquire whether to recommend an item of the second service to the traffic agent (1340) of the backend device. That is, the backend for the recommended item determination service (1330) for the first service of the backend device can inquire whether to recommend an item of the second service to the user by displaying the item of the second service within the application for providing the first service to the traffic agent (1340) of the backend device.
[0207] In step 4, the traffic agent (1340) of the backend device may request data for determining whether to recommend an item of the second service to a support backend (1350) that supports determining whether to recommend an item of the second service. Here, the support backend (1350) may include at least one of a configuration management database (CMDB), a backend for an AB test service, a business configuration database, a backend for a user data collection service of the first service, or a backend for a user data collection service of the second service. For example, the backend for the AB test service may include a server or database that stores and manages AB test data. For example, the backend for the user data collection service of the first service may include a server or database that stores and manages user data of the first service. For example, the backend for the user data collection service of the second service may include a server or database that stores and manages user data of the second service.
[0208] In step 5, the traffic agent (1340) of the backend device may receive data from the support backend (1350) to determine whether to recommend an item of the second service. For example, the traffic agent (1340) of the backend device may receive AB test data from the backend for the AB test service. For example, the traffic agent (1340) of the backend device may receive user data of the first service from the backend for the user data collection service of the first service. For example, the traffic agent (1340) of the backend device may receive user data of the second service from the backend for the user data collection service of the second service.
[0209] In step 6, the traffic agent (1340) of the backend device can determine whether to recommend an item of the second service based on data for determining whether to recommend an item of the second service, and transmit the decision result to the backend for the recommendation item decision service (1330) for the first service of the backend device.
[0210] If it is decided to recommend an item of the second service, in step 7, the backend for the recommendation item determination service (1330) for the first service of the backend device can request the backend for the recommendation item determination service (1360) for the second service of the backend device to recommend an item of the second service.
[0211] In step 8, the backend for the recommendation item determination service (1330) for the first service of the backend device can receive recommendation item data of the second service from the backend for the recommendation item determination service (1360) for the second service of the backend device. Here, the recommendation item data of the second service can include item identifiers for each of one or more items of the second service.
[0212] In step 9, the backend for the recommended item determination service (1330) for the first service of the backend device can transmit the recommended item data of the second service to the backend for the page provision service (1320) for the first service of the backend device.
[0213] In step 10, the backend for the page providing service (1320) for the first service of the backend device can request the backend for the recommendation item interface generating service (1370) of the backend device to generate an interface for recommendation items of the second service to be displayed in the application.
[0214] In step 11, the backend for the page providing service (1320) for the first service of the backend device can receive data of an interface for a recommended item of the second service to be displayed in the application from the backend for the recommended item interface generating service (1370) of the backend device. Here, the data of the interface for the recommended item of the second service to be displayed in the application can indicate the type (or form) of the interface and the image (or text) of the recommended item of the second service.
[0215] In step 12, the backend for the page providing service (1320) for the first service of the backend device can generate data of a page on which the interface is to be displayed based on data of an interface for recommended items of a second service to be displayed in the application, and transmit the data of the page to the client terminal (110). Here, the data of the page can include data of the interface for recommended items of the first service and data of the interface for recommended items of the second service. Meanwhile, the data of the interface for recommended items of the first service can indicate the type (or form) of the interface and the image (or text) of the recommended items of the first service.
[0216] FIG. 14 is a drawing for explaining a screen (1410, 1420) displayed on a client terminal (110) according to a decision result on whether to recommend an item of a second service within an application for providing a first service according to one embodiment of the present disclosure.
[0217] In one embodiment, if it is decided to recommend an item of a second service within an application for providing a first service, the items of the first service and the items of the second service may be displayed together on a screen (1410) displayed on the client terminal (110).
[0218] In one embodiment, if it is decided not to recommend an item of a second service within an application for providing a first service, an item of the first service may be displayed on a screen (1420) displayed on the client terminal (110).
[0219] FIG. 15 is an operational flowchart (1500) for explaining a service data processing method performed by an electronic device (120) according to one embodiment of the present disclosure. The operations according to the operational flowchart (1500) of FIG. 15 can be understood as being performed by a backend device including the electronic device (120).
[0220] At step 1510, the electronic device (120) can receive a data request for an application for providing a first service from a client terminal (110).
[0221] At step 1520, the electronic device (120) may, in response to receiving a data request for the application, determine whether to display data of a second service different from the first service within the application.
[0222] In one embodiment, the electronic device (120) may, in response to receiving a data request for an application, check one or more filters.
[0223] In one embodiment, the electronic device (120) may acquire display rules for data of the second service. Here, the display rules may indicate one or more scenarios and one or more filter lists set for each scenario. Based on the display rules, the electronic device (120) may determine a filter list to be applied to data of the second service from one or more filter lists. For example, the electronic device (120) may determine a scenario for data of the second service and determine a filter list set for the determined scenario. Here, the scenario indicates the type of page on which data of the second service is displayed within an application for providing the first service and the display method of the data of the second service within the corresponding page. The scenario may be expressed as corresponding to a location for displaying data of the second service within the application. Accordingly, one or more filter lists set in a one-to-one correspondence with one or more scenarios may be set to correspond to one or more locations for displaying data of the second service within the application. The electronic device (120) may check one or more filters included in the determined filter list.
[0224] In one embodiment, one or more filters may indicate display conditions that must be satisfied in order to display data of a second service within an application providing a first service.
[0225] For example, one or more filters may include filters to evaluate at least one of a user identifier, location, date, day of the week, time of day, membership status, or system load factor.
[0226] For example, one or more filters may include a location filter for evaluating whether the location of the user of the client terminal (110) is a specific location. For example, the specific location that is the target of the location filter evaluation may be determined based on the location history of the user of the client terminal (110) using the second service.
[0227] For example, one or more filters may include a time filter for evaluating whether the time at which the electronic device (120) received a data request for an application from the client terminal (110) is a specific time. For example, the specific time at which the time filter is evaluated may be determined based on a time history of a user of the client terminal (110) using the second service.
[0228] In one embodiment, the electronic device (120) may determine whether to display data of a second service within the application based on whether user data or system data of the client terminal (110) satisfies one or more display conditions indicated by one or more filters. For example, in response to the user data or system data satisfying all one or more display conditions indicated by one or more filters, the electronic device (120) may determine to display data of the second service within the application. Alternatively, in response to the user data or system data satisfying all one or more display conditions indicated by one or more filters, the electronic device (120) may obtain data of the second service. In another example, in response to the user data or system data not satisfying at least some one or more display conditions indicated by one or more filters, the electronic device (120) may determine not to display data of the second service within the application. The operation of determining whether user data or system data satisfies one or more display conditions indicated by one or more filters may refer to the description of FIG. 8.
[0229] In one embodiment, priorities may be set between one or more filters. Based on the priorities set between one or more filters, the electronic device (120) may determine whether the display conditions indicated by the filters, starting with the highest priority filter among the one or more filters, are satisfied by the user data or system data of the client terminal (110).
[0230] At step 1530, the electronic device (120) may generate data of the application based on whether to display data of the second service within the application for providing the first service.
[0231] In one embodiment, in response to a decision to display data of a second service within an application for providing a first service, the electronic device (120) may generate data of the application such that data of the second service is displayed together within the application.
[0232] In one embodiment, in response to a decision not to display data of a second service within an application for providing a first service, the electronic device (120) may generate data of the application such that data of the second service is not displayed within the application.
[0233] In one embodiment, the application's data may include data for a page to be displayed on the application.
[0234] For example, data of a second service may include data about an item of the second service.
[0235] For example, if you decide to display data from a second service within your application, items from the second service may be displayed on at least some of the pages of your application.
[0236] For example, if you decide not to display data from a second service within your application, items from the second service may not appear on your application's pages.
[0237] For example, items from a first service may be displayed on at least part of a page of an application.
[0238] At step 1540, the electronic device (120) can transmit data of the application to the client terminal (110).
[0239] The service data processing method proposed in this disclosure has been described above. According to this disclosure, by displaying data from a second service, different from the first service, within an application providing the first service, users can access a wider range of services through a single application. Furthermore, according to this disclosure, by determining whether to display data from the second service within the application while the application providing the first service is running on the user's terminal, data from both the first service and the second service can be displayed together within the application only when it is necessary to promote the second service to the user.
[0240] Although the process steps, method steps, and algorithms illustrated in the flowcharts herein are described in a sequential order, such processes, methods, and algorithms may be configured to operate in any suitable order. In other words, the steps of the processes, methods, and algorithms described in various embodiments of the present disclosure need not be performed in the order described herein. Furthermore, even if some steps are described as being performed asynchronously, in other embodiments, such some steps may be performed concurrently. Furthermore, the illustration of a process by depiction in the drawings does not imply that the illustrated process excludes other variations and modifications thereof, nor does it imply that the illustrated process or any of its steps is essential to one or more of the various embodiments of the present disclosure, nor does it imply that the illustrated process is preferred.
[0241] While the method has been described through specific embodiments, the method can also be implemented as computer-readable code on a computer-readable recording medium. A computer-readable recording medium includes any type of recording device that stores data that can be read by a computer system. Examples of computer-readable recording media include ROMs, RAMs, CD-ROMs, magnetic tapes, floppy disks, optical data storage devices, and the like. Furthermore, the computer-readable recording medium can be distributed across network-connected computer systems, such that the computer-readable code can be stored and executed in a distributed manner. In addition, functional programs, codes, and code segments for implementing the above embodiments can be readily inferred by programmers skilled in the art to which the present disclosure pertains.
Claims
1. A service data processing method performed by an electronic device for displaying data of a second service different from the first service together within an application for providing the first service, A step of receiving a data request for the application from a client terminal; In response to receiving the data request, determining whether to display data of the second service within the application; A step of generating data of the application based on determining whether to display data of the second service within the application; and A method comprising the step of transmitting data of the above application to the client terminal.
2. In paragraph 1, The steps for generating data for the above application are: A method comprising: generating data of the application such that data of the second service is displayed together with the data of the second service within the application in response to a decision to display the data of the second service within the application.
3. In paragraph 1, The steps for generating data for the above application are: A method comprising: generating data of the application in response to a decision not to display data of the second service within the application; 4. In paragraph 1, A method wherein the data of the above application includes data of a page to be displayed on the above application.
5. In paragraph 4, A method wherein the data of the second service includes data on items of the second service.
6. In paragraph 5, If it is decided to display data of the second service within the application, items of the second service are displayed on at least a portion of the page, A method in which items of the second service are not displayed on the page if it is decided not to display data of the second service within the application.
7. In paragraph 6, A method wherein an item of the first service is displayed on at least a portion of the above page.
8. In paragraph 1, The step of determining whether to display the data of the second service within the application is as follows: In response to receiving the data request, the step of checking one or more filters, each filter indicating display conditions that must be satisfied to display data of the second service within the application; and A method comprising a step of determining whether to display data of the second service within the application based on whether user data or system data of the client terminal satisfies one or more display conditions indicated by the one or more filters.
9. In paragraph 8, The step of determining whether to display the data of the second service within the application is as follows: A step of determining to display data of the second service within the application in response to the user data or the system data satisfying all of the one or more display conditions indicated by the one or more filters; and A method comprising: determining not to display data of the second service within the application in response to the user data or the system data not satisfying at least some of the one or more display conditions indicated by the one or more filters.
10. In paragraph 8, A method further comprising the step of acquiring data of the second service when the user data or the system data satisfies all of the one or more display conditions indicated by the one or more filters.
11. In paragraph 8, The step of checking one or more of the above filters is: A step of obtaining display rules for data of the second service, the display rules indicating one or more filter lists; A step of determining a filter list to be applied to the data of the second service from among the one or more filter lists based on the display rules; and A method comprising the step of checking one or more filters included in the determined filter list.
12. In paragraph 11, A method wherein said one or more filter lists are set to correspond to each of one or more locations for displaying data of said second service within said application.
13. In paragraph 8, A method wherein said one or more filters include a filter for evaluating at least one of a user identifier, a location, a date, a day of the week, a time, a membership subscription, or a system load factor.
14. In paragraph 13, wherein said one or more filters include a location filter for evaluating whether said user's location is a specific location; A method wherein the specific location is determined based on the location history of the user using the second service.
15. In paragraph 13, wherein said one or more filters include a time filter for evaluating whether the time at which said data request was received is a specific time; A method wherein the specific time is determined based on the time history of the user using the second service.
16. In paragraph 8, The above user data is, User identifier of the above client terminal, The location associated with the user of the above client terminal, The date on which the data request was received from the client terminal; The day of the week on which the data request was received from the client terminal, The time at which the data request was received from the client terminal, or A method for indicating at least one of membership subscription status of a user of the client terminal.
17. In paragraph 16, The location associated with the user of the above client terminal is, The location of the above client terminal, The user's location set for the above first service, or A method determined based on at least one of the user's locations set for the second service.
18. In paragraph 8, A method wherein the above system data indicates the system load ratio at the time the data request is received from the client terminal.
19. In paragraph 8, A priority is set between one or more of the above filters, The step of determining whether to display data of the second service within the application based on whether user data or system data of the client terminal satisfies one or more display conditions indicated by the one or more filters is as follows: A method comprising a step of determining, based on the above priorities, whether the display conditions indicated by the filters are satisfied by the user data or the system data, starting from the filter with the highest priority among the one or more filters.
20. In electronic devices, One or more processors, comprising one or more memories storing instructions executed by the one or more processors; An electronic device, wherein when the instructions are executed by the one or more processors, the one or more processors are configured to execute a method according to any one of claims 1 to 19.
21. A non-transitory computer-readable recording medium having recorded thereon instructions that, when executed by one or more processors, cause the one or more processors to perform an operation, A non-transitory computer-readable recording medium, wherein the instructions are configured to cause the one or more processors to execute a method according to any one of claims 1 to 19.
Citation Information
Patent Citations
Time and location-based non-intrusive advertisements and informational messages
KR1020070118266A
Method and user device and web server for providing using cache into browser among heterogeneous service
KR1020140112643A
Method, device and recording medium of processing service data
KR102737827B1
Method and Apparatus for Displaying Application Interface, and Electronic Device
US20160092064A1
System and method for providing an information-centric application
US20170053033A1